This tutorial will walk you through downloading, installing, and testing the Arduino software (also known as the Arduino IDE - short for Integrated Development Environment). Before you jump to the page for your operating system, make sure you've got all the right equipment.
Required MaterialsTo follow along with this tutorial, you will need the following materials. You may not need everything though depending on what you have. Add it to your cart, read through the guide, and adjust the cart as necessary.
This is the new Arduino Uno R3. In addition to all the features of the previous board, the Uno now uses an ATmega16U2 instead…
USB Cable A to B - 6 Foot CAB-00512This is a standard issue USB 2.0 cable. This is the most common A to B Male/Male type peripheral cable, the kind that's usual…
Suggested ReadingIf you're new to Arduino in general, you'll want to check out this tutorial to familiarize yourself with everyone's favorite microcontroller platform.
Note:There are several variants that use the Arduino Uno R3 footprint. Depending on the design, you may need to install additional drivers for your USB-to-serial converter before you are able to able to upload code to your microcontroller. For example, the
RedBoard uses an FTDIwhile the
RedBoard Plus uses the CH340.
Both use different drivers compared to the Arduino Uno R3. Make sure to look closely at your board and its respective hookup guide to determine USB-to-serial converter that is on board. You will probably have either an FTDI or CH340 populated on the board.
Other boards using a different architecture like the RedBoard Turbo (SAMD21) have a built-in USB communication, eliminating the need to have a separate piece of hardware. For more information, check out the blog post on drivers: What Drives your SparkFun Inventor's Kit?.
If you're ready to get started, click on the link in the column on the left that matches up with your operating system, or you can jump to your operating system here.
Downloading the Arduino IDEYou can download the Arduino IDE from their website. They have installation instructions, but we will also go over the installation process as well. Make sure you download the version that matches your operating system.
The installation procedure is fairly straightforward, but it does vary by OS. Here are some tips to help you along.
Troubleshooting TipsThis page will show you how to install and test the Arduino software with a Windows operating system (Windows 10, Windows 7, Vista, and XP).
Go to the Arduino download page and download the latest version of the Arduino software for Windows if you have not already.
InstallerThe Windows version of Arduino is offered in two options: an installer or a zip file. The installer is the easier of the two options, just download that, and run the executable file to begin the installation.
Windows install steps. Click the image to get a bigger view.
When you're prompted to install a driver during installation, select "Install". This will install drivers for Arduino specific boards (like the Uno, Nano, etc.) that you may use in the future.
ZIPIf you choose to download the zip file version of Arduino, you'll need to extract the files yourself. Don't forget which folder you extract the files into! You will need to run the executable Arduino file in the folder to start the Arduino IDE.
When the download is finished, un-zip it and open up the Arduino folder to confirm that yes, there are indeed some files and sub-folders inside. The file structure is important so don't be moving any files around unless you really know what you're doing.
Note: On Windows 10, there is an option to install Arduino through their app store. we do not recommend installing the Arduino IDE from the app store. You may run into issues because the OS will automatically update to the most recent release of the Arduino IDE, which may have unknown bugs.
Connecting Your ArduinoPower up your Arduino by connecting your Arduino board to your computer with a USB cable (or FTDI cable if you're using an Arduino Pro). You should see the an LED labeled 'ON' light up. (this diagram shows the placement of the power LED on the UNO).
Drivers for Arduino Uno on WindowsTo install the drivers for the Arduino Uno, you will need to plug in your board to your computer's USB port. Once the board is connected, you will need to wait for Windows to begin it's driver installation process. After a few moments, the process will probably fail, despite its best efforts.
Open up a search, type in Device Manager, and hit ENTER.
Note: Searching is the easiest method to open the Device Manager. However, there is more than one method of opening the device manager. The longer method is to click on the Start Menu > Windows System > System and Security > System > Device Manager.
Look under Ports (COM & LPT) tree. You should see an open port named "Arduino UNO (COMxx)". If there is no COM & LPT section, look under "Other devices" for "Unknown Device. Right click on the "Arduino UNO (COMxx)" or "Unknown device" port and choose the "Update Driver Software" option.
Next, choose the "Browse my computer for Driver software" option
Finally, navigate to the Arduino IDE folder. This should be where you unzipped the Arduino IDE (e.g. it should be similar to the following path with a different version number: C:\Program Files\arduino-1.8.5\drivers). Depending on what version of Windows you have, you may be able to select the Uno's driver file, named "Arduino.inf", located in the "Drivers" folder (not the "FTDI USB Drivers" sub-directory). If you cannot see the *.inf file, it is probably just hidden. You can select the "drivers" folder with the "include sub-folders" option selected instead.
Windows will finish up the driver installation from there! Your computer will enumerate with a COM port. You may see a COM port number depending on what is currently saved in your computer. Try to remember what the number is when uploading. If not, you can always navigate back to the device manager and power cycle the Arduino to determine what number your Arduino enumerated on.
For earlier versions of the Arduino boards (e.g. Arduino Duemilanove, Nano, or Diecimila) check out this page for specific directions.
Drivers for RedBoard on WindowsDepending on your board, there may be different USB-to-serial converters on your board. If you are using a RedBoard you will need to go to the How to Install FTDI Drivers tutorial. If you are using the or RedBoard Qwiic, you will need to go to the How to Install CH340 Drivers tutorial. Make sure to look closely at your board and its respective hookup guide to determine USB-to-serial converter that is on board.
Launch and Blink!After following the appropriate steps for your software install, we are now ready to test your first program with your Arduino board! Launch the Arduino application. If you disconnected your board, plug it back in.
Note: Depending on your method of installing the Arduino IDE, the application may be on your desktop or the program folder.
Open the Blink example sketch by going to: File > Examples > 01.Basics > Blink.
Select the type of Arduino board you're using: Tools > Board > Arduino Uno.
Note: As you move to other architectures, you may need to select a different board definition depending on your development board. For the Arduino Uno R3 and RedBoard development boards with ATmega328P, you can simply select Arduino Uno. Certain Arduino IDE versions may have you select Arduino/ Genuino Uno.
Select the serial/COM port that your Arduino is attached to: Tools > Port > COMxx. In this case it was COM11.
Note: If you're not sure which serial device is your Arduino, take a look at the available ports, then unplug your Arduino and look again. The one that disappeared is your Arduino.
With your Arduino board connected, and the Blink sketch open, press the "Upload" button.
After a second, you should see some LEDs flashing on your Arduino, followed by the message "Done Uploading" in the status bar of the Blink sketch.
If everything worked, the onboard LED on your Arduino should now be blinking! You just programmed your first Arduino!
Note: Depending on the architecture and development board, the built-in LED may be defined on a different pin. You may need to adjust LED_BUILTIN
or pin 13
to a different value before uploading.
This guide from Arduino has some more details and troubleshooting tips if you get stuck.
MacThis page will show you how to install and test the Arduino software on a Mac computer running OSX.
Go to the Arduino download page and download the latest version of the Arduino software for Windows if you have not already.
When the download is finished your Mac should automatically un-zip the contents. This will probably in your Downloads folder.
You can leave the program in the Downloads folder or move it into your Applications folder.
Connecting Your ArduinoPower up your Arduino by connecting your Arduino board to your computer with a USB cable (or FTDI cable if you're using an Arduino Pro). You should see the an LED labeled 'ON' light up. (this diagram shows the placement of the power LED on the UNO).
Drivers for Arduino Uno on MacFor the Arduino Uno, you do not need to install drivers for Mac! You can skip on down and try uploading a blink sketch!
Drivers for RedBoard on MacDepending on your board, there may be different USB-to-serial converters on your board. If you are using a RedBoard you will need to go to the How to Install FTDI Drivers tutorial. If you are using the or RedBoard Qwiic, you will need to go to the How to Install CH340 Drivers tutorial. Make sure to look closely at your board and its respective hookup guide to determine USB-to-serial converter that is on board.
Launch and Blink!After following the appropriate steps for your software install, we are now ready to test your first program with your Arduino board!
Launch the Arduino application wherever the program is located. If you disconnected your board, plug it back in.
Open the Blink example sketch by going to: File > Examples > 01.Basics > Blink.
Select the type of Arduino board you're using: Tools > Board > Arduino Uno.
Note: As you move to other architectures, you may need to select a different board definition depending on your development board. For the Arduino Uno R3 and RedBoard development boards with ATmega328P, you can simply select Arduino Uno. Certain Arduino IDE versions may have you select Arduino/ Genuino Uno.
Select the serial port that your Arduino is attached to: Tools > Port > xxxxxx. It'll probably look something like "/dev/tty.usbmodemfd131" or "/dev/tty.usbserial-131" but probably with a different number. In this case, it was /dev/cu.usbmodemFD131.
Note: If you're not sure which serial device is your Arduino, take a look at the available ports, then unplug your Arduino and look again. The one that disappeared is your Arduino.
With your Arduino board connected and the Blink sketch open, press the "Upload" button.
After a second, you should see some LEDs flashing on your Arduino, followed by the message "Done Uploading" in the status bar of the Blink sketch.
If everything worked, the onboard LED on your Arduino should now be blinking! You just programmed your first Arduino!
Note: Depending on the architecture and development board, the built-in LED may be defined on a different pin. You may need to adjust LED_BUILTIN
or pin 13
to a different value before uploading.
If you're having problems, check out this troubleshooting guide from Arduino.
LinuxIf you are a Linux user, you probably know that there are many different distribution 'flavors' of Linux out there. Unsurprisingly, installing Arduino is slightly different for many of these distributions. Luckily, the Arduino community has done an excellent job of providing instructions for most of the popular versions. Click on the link below that covers your flavor of Linux:
If the above directions did not work for you, or you don't see your distribution, try this catch-all guide.
You can go to the download page and download the latest version of Arduino for Linux (there are 32-bit and 64-bit versions available) when your system is properly set up.
Note:Raspberry Pi users with Raspbian installed should use the
Linux ARMdownload. Do not use the command line installation process. For more information, please refer to this
blog post from Arduino.
Connecting Your ArduinoPower up your Arduino by connecting your Arduino board to your computer with a USB cable (or FTDI cable if you're using an Arduino Pro). You should see the an LED labeled 'ON' light up. (this diagram shows the placement of the power LED on the UNO).
ZIP Note:You'll need to know if your Linux distribution is running on 32-bit or 64-bit when downloading the Arduino IDE. Type the following command in the serial terminal to determine what version your OS is running on.
uname -a
If you receive an output with x86_64
, this indicates that it is a 64-bit OS.
Once you download the zip file version of Arduino, you'll need to extract the files yourself. Don't forget which folder you extract the files into! Once downloaded, open a serial terminal and navigate to the Arduino program folder that was unzipped using the cd
command and the folder path. In this case, we downloaded Arduino IDE v1.8.5, 64-bit version for the Ubuntu distribution. The path and folders may be different depending on the version that is downloaded. You may need to use the ls
command to navigate.
language:bash
cd /Downloads/arduino-1.8.5-linux64/arduino-1.8.5
Once you are in the Arduino program folder, you'll need to enter the following command in the terminal window to install.
language:bash
./install.sh
At this point, your terminal window will probably look like the following.
When finished, the Arduino IDE will be installed on the desktop!
Drivers for RedBoard on LinuxFor the Arduino Uno, you do not need to install drivers for Linux! You may need to change the COM port permissions which will be explained further below. You can skip on down and try uploading a blink sketch!
Drivers for RedBoard on LinuxDepending on your board, there may be different USB-to-serial converters on your board. If you are using a RedBoard you will need to go to the How to Install FTDI Drivers tutorial. If you are using the or RedBoard Qwiic, you will need to go to the How to Install CH340 Drivers tutorial. Make sure to look closely at your board and its respective hookup guide to determine USB-to-serial converter that is on board.
Launch and Blink!After following the appropriate steps for your software install, we are now ready to test your first program with your Arduino board!
Launch the Arduino application. If you disconnected your board, plug it back in.
Open the Blink example sketch by going to: File > Examples > 01.Basics > Blink.
Select the type of Arduino board you're using: Tools > Board > Arduino Uno.
Note: As you move to other architectures, you may need to select a different board definition depending on your development board. For the Arduino Uno R3 and RedBoard development boards with ATmega328P, you can simply select Arduino Uno. Certain Arduino IDE versions may have you select Arduino/ Genuino Uno.
Select the serial port that your Arduino is attached to: Tools > Port > xxxxxx (it'll probably look something like "/dev/ttyACM0" but probably with a different number)
Note: If you're not sure which serial device is your Arduino, take a look at the available ports, then unplug your Arduino and look again. The one that disappeared is your Arduino.
With your Arduino board connected and the Blink sketch open, press the "Upload" button.
After a second, you should see some LEDs flashing on your Arduino, followed by the message "Done Uploading" in the status bar of the Blink sketch.
Troubleshooting Tip:Having trouble uploading? If you receive the following error when uploading, this could be
due to a few reasons. Most likely there is something with the user permissions if you have not used the Arduino Uno on your computer before.
avrdude: ser_open(): can't open device "/dev/ttyACM0" Permission denied Problem uploading to board.
You'll see the output at the bottom of the Arduino IDE.
Try adjusting the permissions by opening a terminal window.
ls -l /dev/ttyACM*
You'll get something similar to the following output.
crw-rw---- 1 root dialout 188, 0 Jul 30 14:14 /dev/ttyACM0
Then type the following command where the <username> is your Linux account user. Make sure to enter your password to change the settings.
sudo usermod -a -G dialout <username>
You'll probably see something similar to the output below with a different username. In this case, our username was "pdev."
You'll need to restart your Linux for the changes to take effect. Since we are already in the terminal window, type the following command to restart your computer. Of course, you can use the GUI as well to restart if you prefer.
sudo reboot
If everything worked, the onboard LED on your Arduino should now be blinking! You just programmed your first Arduino!
Note: Depending on the architecture and development board, the built-in LED may be defined on a different pin. You may need to adjust LED_BUILTIN
or pin 13
to a different value before uploading.
The Arduino Playground Linux section is a great resource for figuring out any problems with your Arduino installation.
Board Add-Ons with Arduino Board ManagerWith Arduino v1.6.4+, a new boards manager feature makes it easy to add third-party boards (like the SparkFun RedBoard, Digital Sandbox, and RedBot) to the Arduino IDE.
To start, highlight and copy (CTRL + C / CMD + C) the text below for the boards manager URL. You'll need this to configure Arduino.
language:bash
https://raw.githubusercontent.com/sparkfun/Arduino_Boards/main/IDE_Board_Manager/package_sparkfun_index.json
Heads Up:
GitHub has recently
moved awayfrom having default branches as "
master
" and changed the default to "
main
". SparkFun has followed this move as well. If you're unable to see a particular board inside of Arduino it may be that you are using the older "
master
" link. As a result, you will only see the previous changes on the old
master
branch. Please change to the '
main
' json url listed above and all should be well.
Open up Arduino:
That's it! Boards are all installed. This also gives you access to all of our library files as well through the built-in Library Manager tool in Arduino. Looking for more information about adding other custom boards? Check out the the following tutorial to install other Arduino cores.
Installing Board Definitions in the Arduino IDESeptember 9, 2020
How do I install a custom Arduino board/core? It's easy! This tutorial will go over how to install an Arduino board definition using the Arduino Board Manager. We will also go over manually installing third-party cores, such as the board definitions required for many of the SparkFun development boards.
Resources and Going FurtherNow that you've got the Arduino software installed on your system and tested it with your Arduino board successfully, you're ready for your next steps into the world of embedded electronics. If you want to learn about some of the concepts that will help you build your projects, check out some of the following tutorials:
Installing an Arduino LibraryHow do I install a custom Arduino library? It's easy! This tutorial will go over how to install an Arduino library using the Arduino Library Manager. For libraries not linked with the Arduino IDE, we will also go over manually installing an Arduino library.
Asynchronous serial communication concepts: packets, signal levels, baud rates, UARTs and more!
Logic LevelsLearn the difference between 3.3V and 5V devices and logic levels.
I2CAn introduction to I2C, one of the main embedded communications protocols in use today.
Installing an Arduino BootloaderThis tutorial will teach you what a bootloader is and why you would need to install or reinstall it. We will also go over the process of burning a bootloader by flashing a hex file to an Arduino microcontroller.
Analog vs. DigitalThis tutorial covers the concept of analog and digital signals, as they relate to electronics.
Data Types in ArduinoLearn about the common data types and what they signify in the Arduino programming environment.
Processor Interrupts with ArduinoWhat is an interrupt? In a nutshell, there is a method by which a processor can execute its normal program while continuously monitoring for some kind of event, or interrupt. There are two types of interrupts: hardware and software interrupts. For the purposes of this tutorial, we will focus on hardware interrupts.
How to Use a MultimeterLearn the basics of using a multimeter to measure continuity, voltage, resistance and current.
How to Work with Jumper Pads and PCB TracesHandling PCB jumper pads and traces is an essential skill. Learn how to cut a PCB trace, add a solder jumper between pads to reroute connections, and repair a trace with the green wire method if a trace is damaged.
Or check out the some of the Adventures in Science videos focused on Arduino.
Looking for the right Arduino?Check out our Arduino Comparison Guide! We've compiled every Arduino development board we carry, so you can quickly compare them to find the perfect one for your needs.
If you'd rather jump right in to building something, check out these links to projects here on learn as well as some other places to find Arduino-based projects:
Or any of our tutorials tagged with Arduino.
BadgerHack: Sensor Add-On KitTurn your Badger or Redstick into a temperature and soil moisture sensing display with the BadgerHack Sensor Add-On Kit
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4