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