-
Notifications
You must be signed in to change notification settings - Fork 17
Installing
Navigation: Home | Scenarios | Installing | Using | Future
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.
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).
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.
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
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.
Next: Using. All the functionality that's currently proven and tested.