TinyOS is a free and open source component-based operating system and platform targeting wireless sensor networks WSN. TinyOS is an embedded operating system written in the nesC programming language as a set of cooperating tasks and processes. It is intended to be incorporated into smartdust. TinyOS started as a collaboration between the University of California, Berkeley in co-operation with Intel Research and Crossbow Technology, and has since grown to be an international consortium, the TinyOS Alliance.
More information can be obtained from the following recommended sources:
It's official! The Z1 mote is now part of TinyOS core
Since March 2011 the Z1 mote is part of the TinyOS main tree and now we officially provide support for this Operative System as our code is integrated in core.
The following functionalities and applications are in porting process, if you want to contribute with any of the following please send us an email to support at zolertia.com.
Below are the change history of the integration process, for detailed please browse the trunk changes.
- [21/08/2012] TinyOS 2.1.2 officially launched, see Here.
- [8/8/2012] Tested the msp430-gcc-4.6.3 and msp430-gcc-4.6.1 toolchains maintained by TinyProd and works OK, fixed problems with the I2C sensors (bmp085), the recommended toolchain is the msp430-47 as this offers full 20-bit support and allows to compile up to the Z1 full 91Kb memory, however we still have not published a tos-bsl script modified to program the image to the mote, but it is possible to do it over JTAG.
- [31/01/2012] Blip 2.0, IPv6 and CoAP support is available, but with reduced capabilities (not functionalities), had to reduce the number of allowed parents and routing tables to make it fit into the Z1 mote, this is not committed to the main TinyOS trunk but you can find how we done it Here. The I2C issue is still under work, in Contiki we do not have this problem with the new compiler release so it is a matter of time to get this fixed for TinyOS.
- [12/01/2012] The merge process of the msp430X files is done, many of TinyOS apps have been tested and are working fine, however due to size limitations of RAM memory right now PPPRouter with RPL support under Blip 2.0 is currently unavailable, we are trying to squeeze the required libraries in the Z1 mote and provide basic functionality. Right now there is available support for both msp430-gcc 3.2.3 and 4.5.3 compiler versions, however the I2C is not properly working with 4.5.3 version so we highly recommend keep using 3.2.3, this one lacks the ~10% code size reduction of 4.5.3 but works better (for us).
- [OLD] A copy of the Z1 stable release code has been dumped into core while we finish the merging process and test the new goodies, which include COAP and tosthreads, in the meanwhile we are integrating our MSP430X code with others TI's families, so even if you can take a peep at our code at the TinyOS main tree, we strongly recommend to work with the Z1 patch for the TinyOS 2.1.1 stable release as described Here.
TinyOS installation on Z1 motes
Update: TinyOS 2.1.2 officially released
The current stanford repository hosts the msp430-based toolchain required to use the Z1 mote, based on the msp430-gcc-4.5.3 LTS. If you want to use older TinyOS releases (like 2.1.1) or test another toolchain (like the msp430-gcc-4.7.x) you will find instructions below too.
Depending of the target operative system on which you want to install TinyOS and the Z1 support, you may need to follow different installation methods. We strongly recommend a first read of to the next subsections before choosing whether you prefer to download a ready-to-go Virtual machine image, install with RPM packages, or build the entire system from scratch.
TinyOS installation on Ubuntu
TinyOS installation on Linux from sources
TinyOS installation on Windows
TinyOS installation on MAC
Soon! right now the installation method is being tested to assure 100% reliability
TinyOS installation on Windows
Basic Code Examples with Z1
Advanced Code Examples with Z1