Installing TinyOS 2.x with support for the IRIS platform
Last updated 6 November 2007

This document assumes that you already have a working installation of tinyos-2.0.2. To install Tinyos 2.0.2, please follow follow the instructions at install-tinyos.html.

Manual installation on your host OS with RPMs

The IRIS mote is based on the Atmel ATMega 1281 microcontroller, which is yet not supported by the external tools (compilers) for TinyOS 2.0.2. This document provides instructions on upgrading the external tools with support for this MCU. Currently, we support the IRIS specific toolchain on two platforms: Cygwin (Windows) and Linux.

Installing a TinyOS enviromnent has four basic steps. The steps are:

  1. Checking if the existing TinyOS 2.0.2 installation is correct.
  2. Upgrading native compilers. This includes an updated version of avr-binutils, avr-gcc and avr-libc with patches to support new AVR MCUs, as well as the tinyos specific dollar sign patch.
  3. Installing the avrdude in-system programmer. As of version 2.0.2, TinyOS has used uisp to program AVR devices. Since development of uisp has stopped, it is not being updated with support for new microcontrollers. To program IRIS motes, a patched version of avrdude is required, with support for Crossbow's programming boards, such as MIB510, MIB520 and EPRP.
  4. Updating the TinyOS source tree. IRIS support has been added to the CVS on sourceforge.net. You need to get the latest sources from the repository.

Step 1: Checking the existing TinyOS 2.0.2 installation

Windows and Linux Enter "tos-check-env" at the command prompt. If tos-check-env completes without errors and warnings, your installation is correct. Otherwise, please refer to install-tinyos.html on how to fix the problems.

Step 2: Upgrading the external tools

Please download the packages for your platform. Upgrade the packages with "rpm -Uvh name_of_the_package.rpm". If you receive an rpm error that the package was not intended for your platform, use "rpm -Uvh --ignoreos --force name_of_the_package.rpm".

Atmel AVR Tools with ATMega 1281 Support
Tool Windows/Cygwin Linux
avr-binutils avr-binutils-2.17-1.cygwin.i386.rpm avr-binutils-2.17-1.i386.rpm
avr-gcc avr-gcc-3.4.6-1.cygwin.i386.rpm avr-gcc-3.4.6-1.i386.rpm
avr-libc avr-libc-1.4.6-1.cygwin.i386.rpm avr-libc-1.4.6-1.i386.rpm

Step 3: Install avrdude

Please download the avrdude package for your platform. Install the package with "rpm -ivh name_of_the_package.rpm". If you receive an rpm error that the package was not intended for your platform, use "rpm -ivh --ignoreos --force name_of_the_package.rpm".

AVRDude with ATMega 1281 and MIB510/MIB520 Support
Tool Windows/Cygwin Linux
avrdude avrdude-5.4-1.cygwin.i386.rpm avrdude-5.4-1.i386.rpm

Step 4: Update the TinyOS 2.x source tree

Now that the tools are installed, you need only install the tinyos 2.x source tree. At the command prompt, go to the directory that contains the tinyos-2.x folder. This is typically /opt, however, "cd $TOSDIR/../.." will always takes you there. At the command prompt, enter:

cvs -z3 -d:pserver:anonymous@tinyos.cvs.sourceforge.net:/cvsroot/tinyos co -P tinyos-2.x
After the checkout completes, you'll be able to compile TinyOS applications for the IRIS platform.