loading

In this short Instructable we are going to learn how to load a program to an Arduino UNO board using Atmel Studio instead of the Arduino IDE. This is useful when you need to develop a program using more advance features or in another language, in this case we are going to use Assembly language. If you have already try this you should know that loading a program via de arduino USB is very tricky because Atmel Studio don't have the option for doing that ,instead you should use a ICSP programmer. But we don't want to do that, so we are going to integrate the built in USB programming capabilities of our board. To do that we are going to use "avrdude" and "external tools" option in Atmel Studio.

Let's get started, the first step is download and install the Arduino IDE and Atmel Studio. You can download it from here:

This will take a lot of time to complete, but is the easiest way to have everything we will need. When you are done you can continue to the next step.

Step 1: Configuring Atmel Studio

Now plug your Arduino UNO board into your computer and wait while the drivers installs. When is done take note of the COM port it is using. You can check it in the device administrator if you missed it. In my case is "COM4" but yours may be different, so pay attention to this.

Now the real fun begins, open Atmel Studio click in the menu "tools/external tools" You will see a dialog box asking for some parameters. So let's fill the required information.

  1. In title: "Send to Arduino UNO" or the name you want.
  2. In command: "C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe" this may vary according to the installation directory of the Arduino IDE. Check for avrdude.exe directory in your install.
  3. In arguments: "-C "C:\Program Files (x86)\Arduino\hardware\tools\avr\etc\avrdude.conf" -p atmega328p -c arduino -P COM4 -b 115200 -U flash:w:"$(ProjectDir)Debug\$(TargetName).hex":i" again this can vary according to the installation directory of the Arduino IDE. You need to replace the COM4 with the actual COM port your board is using as we see in the device administrator.
  4. Check "Use output window" box.
  5. Click OK.

We are done, you will see the new option "Send to Arduino UNO" in the tools menu.

Note: for Atmel Studio 6 users you will need to click in Tools\Select Profile and then set it to Advanced before doing this steps. Thanks to "cysix" for the information.

<p>Now we have to learn a new language? that does not look anything like what i use in the arduino ide, even though it works. Thanks for the tutorial.</p>
<p>Not exactly, It just for people who want to use more functions and characteristic that are not included in the Arduino IDE and only are possible trouht Atmel Studio</p>
<p>Unlike with Atmel Studio 6.x, before Tool\External Tools will even show up in the menu, you have to go to Tools\Select Profile and then set it to Advanced. Once you do this, the rest of the steps work as documented.</p>
<p>Thanks for the information, I will update the instructable soon for Atmel Studio 6 users. I used Atmel Studio 7 so I didn't have that problem. <br><br>Thanks for sharing!</p>
<p>Thanks for the information, I will update the instructable soon for Atmel Studio 6 users. I used Atmel Studio 7 so I didn't have that problem. <br><br>Thanks for sharing!</p>

About This Instructable

5,488views

139favorites

License:

Bio: I´m a guy interested in new tecnologies and the things that we can make in house with a few components and a bit of ... More »
More by Daniel ArturoF:How to load programs to an Arduino UNO from Atmel Studio 7Neopixel ClockRaspberry Pi IoT ticket printer for online stores
Add instructable to: