Largest Tiny Network Yet
Large-Scale Demonstration of Self-Organizing Wireless Sensor
Networks
On Aug. 27, 2001 researchers from the University of California,
Berkeley and the Intel Berkeley Research Lab demonstrated a
self-organzing wireless sensor network consisting of over 800 tiny
low-power sensor nodes.
This demonstration highlights work at
Berkeley that is funded, in part, by the Defense Advanced Research
Project Agency (DARPA)
Network Embedded Softrware Technology
program and is a leading component of the
CITRIS
research agenda, as well as the
collaboration with Intel. The demonstration was live, involving most
of the audience attending the kickoff keynote of the Intel Developers
Forum given by Dr.
David Tennenhouse, Intel VP and Director of Research.
A sensor network application
The basic concept of a self-organized sensor network was first demonstrated
at a moderate scale on stage by Professor David
Culler (University Director of the Intel Berkeley Research Lab) and
several students from UCB and UCLA. A 1x1.5 inch wireless sensor
node was carried on stage and activated by each of several students.
As the nodes were turned on, their icons appeared on a display showing
the state of the network. An example screenshot appears below.
The lines indicate which nodes can 'hear' each other and communicate via
their radios. The lines highlighted as green are the links chosen
by the network to form an ad hoc, multihop routing structure to transmit
sensor data to the display. This structure grew as the nodes were
activated and continued to adapt to changing conditions. The background
showed the network's 'perception' of light intensity on the stage.
Initially, it was white at full illumination. Taking the stage lights
down brought it to dark. When selective spots were brought up, the
corresponding regions when light. As the students walked away, the
network took itself apart.
Live Ad Hoc Sensor Network showing Light Intensity
Tiny Nodes
A large-scale demonstration of the networking capability utilized tiny
nodes, just the size of a quarter, that were hidden under 800 chairs in
the lower section of the presentation hall. The core is a 4 mhz low
power microcontroller (ATMEGA 163) providing 16 KB of flash instruction
memmory, 512 bytes of SRAM, ADCs, and primitive peripheral interfaces.
A 256 KB EEPROM serves as secondary storage. Sensors, actuators,
and a radio network serve as the I/O subsystem. The network utilizes
a low-power radio (RF Monolithics T1000) operating at 10 kbps. The
node had fours senses: light, temperature, battery level, and radio signal
strength. It can actuate two LEDS, control the signal strength of
the radio, transmit and receive signals. By adjusting the signal
strength, the radio cell size can be varied from a couple of feet to tens
of meters, depending on physical environment. A second microcontroller
is provided to all the core microcontroller to be reprogrammed over the
network. The entire system consumes about 5 mA when active.
The radio and the microcontroller consume about as much power as a single
LED. In the passive mode, they consume only a few microamps while
still checking for radio or sensor stimuli that should cause them to 'wake
up'.
A handful of network sensor 'dots'
Lots of 'dots' - getting ready for the big demo
TinyOS
The key innovation is a novel operating system, including network stack,
designed especially resource constrained environments where data and control
have to be moved rapidly beteen various sensors, actuators, and the network.
TinyOS is a component-based, event-driven operating system framework that
starts at a few hundred bytes for the scheduler and grows to complete,
network applications in a few kilobytes. The demonstration application
consisted of nine software components. At the lowest level are abstraction
components for the network, the sensors and the LEDs. Building upon
this is a very efficient network stack which reaches from modulating the
physical link in software up to an "Active Message" application programming
interface. One application component provides multihop routing, where
nodes can communicate to other nodes that are several radio hops away by
having intermediate nodes route and retransmit their packets. Other
application components sample sensor data and process it in various ways.
Still others manage the basic health of the node or network.
A Self-Organizing Network
For this demonstration, one of the application components provided network
discovery and multihop broadcast. A command packet can be transmitted
from any node that needs to become the root of a logical network.
In the demonstration, this was the node connected to the laptop on stage.
Nodes receiving that packet will selectively retransmit the command, allowing
the request to 'ripple' out over many levels. The network supported
several such commands, including network discovery where each node records
the identity of a 'parent' closer to the root. As this request propagates
out, a routing tree is grown that spans the network. Many other actions
can be requested of the network, such as illuminating LEDs, accessing data,
changing modes, or going to sleep. Waking up the network from the
very low power sleep mode is especially subtle, because it must use only
a minute amount of energy and yet avoid
false-positives, which would awaken the entire network. The entire
application in the demo occupied about 8 KB.
The intended plan for the demo was to begin with all the nodes asleep.
A wakeup request would be propagated through the network, causing each
node to light yellow during the boot phase and then red when ready.
A network discovery operation would show yellow briefly as the discovery
wavefront propagated across the network and then turn off the red LED.
Because the discovery takes only a fraction of a second, we would then
issue a sequence of commands to illuminate level 1, then level 2, etc.
at five second intervals. Test runs in a near empty auditorium discovered
a network of 800 nodes that was four levels deep. In the live demonstration,
a few folks had found their nodes, taken them apart, and played with them
- causing the network to wake up, so everything was awake when the audience
pulled them from under the chairs. The discovery went by so quickly
no one saw it and the lights were off. We had to tell the nodes to
turn their lights back on and rediscovery the network, which turned out
to be eight levels deep. Actuating the crowd level-by-level showed
the complex structure of such a large, self-organized network.
Lots of discussion outside the conference
An Open Investigation
All the details of the hardware design, the operating system and the software
are available on line. You can read more at
http://webs.cs.berkeley.edu/
http://tinyos.millennium.berkeley.edu/
http://www.intel.com/research
Webcast of the presentation: http://www.intel94.com/idf/fall2001/keynotes/p_webcast.asp
EE Times coverage
Other Press Clippings