Last updated 23 September 2003
- Device Programmer Tools
different programming devices with TinyOS
- System and Hardware Verification
- How to verify that your TinyOS installation and mote hardware are
Tailoring the Build Environment
Setting custom parameters
for your nesC/TinyOS build environment. If you are doing the tutorial with
a group of people, you probably want to use the
- Lesson 1: An Introduction to TinyOS
Lesson 1 introduces the major concepts required to program TinyOS applications.
These include a description of components, interfaces, commands, and events.
The TinyOS programming model is explained. The role of each of the different
file types is detailed.
Lesson 2: Event-driven Sensor Acquisition
The TinyOS platform provides primitives to obtain sensing data from tiny
networked devices. This lesson details how to build a simple sensing application
that records the light exposure on a photo diode.
Lesson 3: Introducing Tasks for
Application Data Processing
The roles of both tasks and events are described. This lesson illustrates
the use of tasks to process data from the sense application in lesson 2
and events to receive the sensor data and pass it on to the background
Lesson 4: Composing Components
to Send and Receive Messages
Lesson 4 introduces basic abstraction to send integers via the RFM radio
stack. A counter application is built that sends the current value of the
counter over the RF radio.
Lesson 5: Using the TOSSIM Simulator
to Develop TinyOS Components
TOSSIM is the TinyOS simulator. Learn how to build, debug, and run components
Lesson 6: Displaying Data on a
In order to utilize the data from the tiny networked sensors, we must be
able to analyze it on the host computer. This lesson provides an example
application that graphs the light readings from the sensors over time.
Lesson 7: Broadcasting Packets
Lesson 7 has three components:
It shows how to inject packets from a host environment.
This is used to drive a simple message-based command interpreter. A general
abstraction is used for sending arbitrary packets over the RFM radio stack.
A multihop broadcast application is built that floods the network with
a task to be performed.
Lesson 8: Data Logging Application
The final lesson provides a fairly complete application for remote data
logging and collection. It also illustrates a simple multihop data propogation
method that allows data to be collected by a central location.
Several other tutorials are available for important subsystems:
- Getting started with the TinyDB query processing system.
started scripting TinyOS with Maté, the TinyOS virtual
- Interact with your motes through Matlab.
Finally, see the main documentation index for
a full list of TinyOS documents.