Setting up AVRsack

Additional Installs

Arduino (required)

is designed to borrow the examples, libraries, and, optionally, the toolchain of an Arduino IDE. Get the Arduino 1.0.5 IDE, unpack it, and run it once (After that, keep it installed, but you don't need to run it anymore). At this point, does not yet support the newer Arduino 1.5.x and 1.6.x IDEs.

Once you've done this, will automatically find your installation.

Crosspack-AVR (optional)

The Arduino IDE contains a toolchain (compiler, linker, etc) which is suitable for the microcontrollers used on standard Arduino boards, i.e. the ATmega328p (Arduino Uno and many more) and the ATmega32u4 (Arduino Leonardo, Micro, and others).

If you're working with other AVR microcontrollers, however, e.g. the ATtiny1634, you will find that they are either not supported by the Arduino toolchain at all, or that there are significant bugs. It is therefore often useful to replace the Arduino toolchain with a more up to date version. One such toolchain is conveniently packaged as Crosspack-AVR.

Download the latest version from here and install it. Once you've done this, will automatically use this toolchain.

ATtiny Arduino Cores (optional)

Many Arduino programmers prefer to keep using the same APIs when programming ATtiny microcontrollers, so a number of projects exist to offer Arduino APIs for ATtinys. One such project, to which I've contributed some code, is arduino-tiny, so I recommend that for ATtiny development. Clone or download this project from github and install it.

At this point, arduino-tiny supports the following microcontrollers:

Other ATtiny cores will work as well, but not all of them use the same mapping of Arduino pin numbers to hardware pins, so make sure the core you're using is compatible with your code!

Project Locations

By default, will look for projects (and custom cores) in the Arduino sketchbook directory, ~/Documents/Arduino, but if you prefer, you can store projects and cores in ~/Documents/AVRsack instead.