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