Arduino for Atmel Studio

Atmel Studio now has an extension designed as a simple alternative to the Arduino IDE.

The Arduino IDE is relatively simple. It is great to get started with AVR programming, and has some useful examples to get you started, but lacks many of the features that experienced programmers call for like detailed compiler warnings, debugging capabilities, auto-completion and unit testing.

Arduino IDE
Arduino IDE

Programming for AVR at a lower level in Atmel Studio can also have performance improvements. Shifting bits rather than using Arduino IDE’s ‘digitalwrite’ can have a 10x speed improvement for example.

Atmel Studio supports a wider range of AVR microchips. This can be useful if you aim to program one of Atmel’s huge range of microchips. I have a ATtiny13A, which uses considerably less power than the ATMega328 in my Arduino board (190 µA in active mode, and 24 µA vs. 0.2 mA in active mode, 0.1 µA in power-down mode, and 0.75 µA in power-save mode).

Atmel Studio

So if you feel you are outgrowing the Arduino IDE, give Atmel Studio a try. You may find this tutorial useful: Using Atmel Studio 6 with Arduino projects, or How to Setup Atmel Studio for Arduino Development.

Simplicity can be more important though, and the Arduino IDE may be more suitable for your application. After all, projects are generally relatively simple when you have less than 16 KB of memory to play with. I expect I will continue using the Arduino IDE primarily, and Atmel Studio for any particularly challenging projects.

Simple explanation for non-techies

Arduino refers to a few types of tiny electronic board with a reprogrammable microchip. Programs can be sent from a computer to this microchip to perform whatever task is required.

A fun example is Leah Buechley‘s Turn Signal Biking Jacket project, shown in the video below: