Toolchain for FireFly version 2.2


This document briefly describes how to install avr-gcc and the avrdude downloader for nanoRK under linux. FireFly v2_2 requires ATmega1281 cpu support found in gcc 4.2 or newer. There is a patch available for older gcc compilers.

All required files can be found on the Downloads page.

1) Make sure you have the following installed (you probably do, these are standard):


2) Download the following source packages:


3) Build and Install binutils
- unzip and untar binutils
- cd into binutils-x.xx
- run (make install as root)

# ./configure --target=avr --program-prefix="avr-" --disable-werror
# make
# sudo make install

4) Build and Install gcc for avr
- unzip and untar gcc-core
- cd into gcc-core-x.x.x
- run the following (make install as root)

cd into the gcc-core directory (avr-gcc below should be a sub-directory inside gcc-core)

# mkdir avr-gcc
# cd avr-gcc
# ../configure --target=avr --program-prefix="avr-" --enable-languages=c --disable-libssp
# make
# sudo make install
- note that libssp is disabled due to a bug, this might be fixed in later revisions of gcc

5) Build and Install avr-libc
- make sure /usr/local/bin is in your path
- type "which avr-gcc" to double check
- unzip and untar avr-libc
- cd into avr-libc-x.x.x
- run the following (make install as root)
- Note, if errors occur, trying running "make install" when logged in as root instead of sudo (use su)

# ./configure --build=@./config.guess@ --host=avr
# make
# sudo make install

6) Build and Install avr-dude
- unzip and untar avr-dude
- cd into avrdude-x.x
- run (make install as root)
- FireFly Programmer
- Updated [attachment:avrdude.conf?format=raw avrdude.conf] file for /usr/local/etc/
- Note, this is an older version of avrdude on purpose. Newer versions may have problems.

# ./configure
# make
# sudo make install

7) As root, make sure you add your user name to the uucp group for serial port access. (edit /etc/group then you need to log out and in again) The first time you open minicom, open it as root, set your port settings and save as setup default.
- minicom -s
- Serial port setup: type A: /dev/ttyUSB0 then set
115200 8N1 with no Hardware / Software Flow Control
- "save setup as dfl" to save as default

Mac OS X

  • [attachment:gcc-core-4.4.2.tar.gz?format=raw gcc-core-4.4.2.tar.gz]
  • [attachment:binutils-2.20.tar.gz?format=raw binutils-2.18.tar.gz]
  • [attachment:avr-libc-1.6.7.tar.gz?format=raw avr-libc-1.6.7.tar.gz]
  • [ FTDI USB Serial Driver]
  • [ avrdude(Fink/DarwinPorts)]
    • FireFly Programmer
    • Note, this is an older version of avrdude (5.0) on purpose. Newer versions may have problems.
  • MicaZ downloader coming soon...