Skip to content
maniacbug edited this page Jul 25, 2011 · 11 revisions

Navigation: Home | Scenarios | Installing | Using | Future

Table of Contents

Toolchain

There are two approaches to the toolchain. One is to install all the necessary tools natively on your machine. The other is to get instant-contiki, which is a VM image that works on Windows, Mac or Linux.

Instant Contiki

The Contiki project recommends Instant Contiki for most users, so that's the approach we'll take in this walk-through. FIrst, get Instant Contiki. This is a Ubuntu Linux VM image that works inside VMware. The instructions on that page include how to set up the VM on your machine. I have tested instant-contiki-2.5.rc1 on VMware Fusion 3.1.3 on Max OSX Snow Leopard.

Instant Contiki has a problem with the AVR tools. It ships with an old version of the tools which does not support the Atmega128rfa1 found on the Zigduino, and then sets those as the default AVR tools even though the tools that ship with this version of Ubuntu are newer.

Open a Terminal, and type these:

$ sed -i '/avr/d' /home/user/.profile
$ sudo aptitude update
$ sudo apt-get install avr-libc gcc-avr binutils-avr avrdude git
Then log out of the VM and back in again (or restart it).

Native

Natively, I have tested this with avr tools on Ubuntu Linux 11.04 and Mac OSX Snow Leopard. On Linux, I just installed the tools noted above, and there were no problems. On Mac OSX, I'm using Chris Marrin's distro of avrtools.

Download Contiki

The avr-zigduino is currently hosted on github. In the future, some version of this may make it into the main tree, but for now you'll need to download a special fork of Contiki to try these Zigduino changes out. Open a Terminal, and then:

$ cd ~
$ git clone git://github.com/maniacbug/contiki-avr-zigduino.git -b avr-zigduino
$ cd contiki/platform/avr-zigduino

Branch Strategy

If you've never thought much about git branches, no need to start now. Go ahead and skip this section. For those who are interested, here are some more details.

  • master: Tracks the Contiki git repository.
  • contrib: Changes elsewhere in the system outside platform/avr-zidguino. I hope to contribute these to the main code.
  • avr-zigduino: Generally only changes within platform/avr-zidguino, but also contains changes that cannot be pushed upstream without introducing conflicts with other platforms.

Read More

Next: Using. All the functionality that's currently proven and tested.