Hide menu

TDDI07 Distributed embedded software and networks

Labs


Introduction


In the labs you will get familiar and program small wireles sensor nodes called also motes. A mote consists of an embedded CPU, sensors to read the environment (light, temperature, humidity...), a low power radio for communication with other motes and some LEDs for status indication. Several sensor nodes can be organized as a distributed sensor network. Common implementations include the nodes to cooperate in routing all sensor readings to a central location for analysis or to cooperate to keep an updated status of the network in each node.

Example application areas might be:

  • smoke/fire detection in a large warehouse
  • positions and health status of firefighters at work
  • positions of vehicles at an airport
  • volcano eruption prediction

You will program real sensor nodes and learn how to make them communicate wirelessly, considering important aspects for battery powered devices like energy.

TinyOS is an open-source operating system designed for wireless embedded sensor networks. It features a component-based architecture which enables rapid innovation and implementation while minimizing code size as required by the severe memory constraints inherent in sensor networks. TinyOS's component library includes network protocols, distributed services, sensor drivers and data acquisition tools. During the lab you will develop applications written in nesC for TinyOS.

Lab environment


You will perform the lab work in pairs. Each group will have a pair of motes and USB cables assigned that will be available only during lab sessions. You will be the responsible for them during the lab hours. The groups will use an Ubuntu virtual machine to develop the applications. The detailed information about the lab environment and instructions is available.

Lab sign up


Since the work on the lab assignments is done in pairs, you and your friend have to register your group for the laboratory exercises in the webreg system. The registration must be done before the first lesson. Deadline 7th of November.

Resources


Rules, deadlines and lab assignments


Due to the use of real hardware in the labs, the rules are the following:

  • The sensor nodes are only available during lab hours.
  • The labs have to be demonstrated using the sensor nodes. Therefore, you have to show the labs during lab hours.
  • You are required to prepare for the labs in advance to be able to finish them for the deadlines.
Understanding TinyOS require much reading and experimentation. In order to be prepared and be able to ask questions during lab time you are supposed to prepare BEFORE the lab occasions. If not you are likely to miss the deadlines. If you miss a deadline without valid reason you will have to finish the course next year. Deadline for labs and reports: 13th of December.

Overview of the lab activities:

  • Nov 8 (Lesson), Introduction to TinyOS and NesC
  • Nov 11, Start to work on lab 1
  • Nov 18, Finish lab 1 and work on lab 2
  • Nov 25, Finish lab 2 and work on lab 3
  • Nov 26 (Lesson), Energy-efficient Wireless Communication (needed for lab 3)

Page responsible: Mikael Asplund
Last updated: 2013-11-04