Introduction to SCADDS Senor Network Testbed

 

Our testbed is designed to be complementary to WINS NG nodes from Sensoria Corporation. Instead of providing full-featured sensor node with variety of sensing ability to work in rigid environments, our testbed provide an experimentation environment to study inter-node communication protocols in a large network with different topologies. We expect that with the experimental feedback from the testbed, we can iteratively improve SCADDS algorithms and validate simulation results. Most important, we believe that playing with real systems can lead us to better understanding of the design challenges. After our initial experiences with our initial testbed consisting of 5 Toshiba Libretto 50CT laptops, we gradually clarified our requirements for the testbed:

Text Box:

·        Small in Dimensions

·        Low-Power (long lifetime)

·        Moderate Computing Resources

·        Flexible I/O capability

·        Well-supported Operating System

·        Low cost

 

Currently our testbed consists of 30 nodes built from off-shelf PC-104-based products. Before settling on the PC-104, we also considered the following alternatives:

·        Laptops. Those real PCs are expensive, and have unnecessary devices for our testbed such as LCD display, IDE Hard drive, etc., each of which consume significant power.

·        Palm and other PDAs. Even though they have a compact form factor, they have inadequate computing power for our applications. Another drawback is that they usually use vendor-specific operating systems, applications and devices, and are thus difficult to extend with new hardware and software capabilities. They also have often-unnecessary and power-hungry displays.

·        StronARM based devices for OEM. These small devices such as “Cerfcube” and “Elf” are promising platforms, which are small and low power with support for open source OS. However, they are still in their preliminary stage and relatively expensive. Compared to PC104, the extensibility is still limited.

 

PC-104 is a well supported standard and compatible with desktop PCs. There is a full spectrum of PC-104 peripheral devices including digital I/O, sensors, actuators, most of which are compatible. Another factor that led us to PC-104 products is their ability to support almost all PC software. We chose Linux as our operating system because it is one of the most widely supported open source operating systems. After evaluating different distributions, we decided to use our home-brewed distribution based on a 2.2.12 Kernel and glibc2.2. It is binary-compatible to recent RedHat distribution(7.2), thus we can develop and debug our applications on desktops/laptops, and later move to our PC-104 based testbed easily.

 

Most of PC104 devices require quite strict 5V power supply. We designed a PCB power board including power supply, speaker amplifier, and a prototype area. The size of board is exactly the same as PC104 boards, so we can sandwich them easily. We continue using a Radio Packet Controller at 418Mhz. Jeremy Elson wrote a kernel mode driver to use the RPC via the parallel port, which was released June 2000.We have a small adaptor designed to attach the RPC module to the PC104 system.

 

Text Box:  In order to debug those displayless devices, we also designed and built 5 "debug-stations", which acts as an ethernet-ppp gateway and each can support up to 8 pc104 nodes. Some nodes are equipped with ethernet adapter thus can also connect to the Internet directly. The user can start his/her applications either from a startup script or manually using telnet or rsh from a full-size PC. Debugging and logging tools such as syslogd can be started selectively to provide information to study system behaviors in different levels of details.

 

We also designed a CVS-like management system to support multiple users. Different experiments require different software from lower device driver to higher directed diffusion applications. In order to avoid interference to each other, individual user maintains a separate copy of Linux distribution. When a testbed node boots up, it loads the corresponding Linux distribution from its assigned owner. In this ways, multiple experiments can be done in the same time, at least in the time-sharing fashion considering radio interference.

 

Text Box:  Another tool we built for the testbed is “linkScan”, which displays the connectivity between PC104 nodes with in the network. With visualization of the communication links between each testbed nodes, we can set up topologies with different features to study directed diffusion and other algorithms. In general, it raises a very interesting research challenge of how to monitor sensing activities and validate system functionality after a sensor network is deployed in an unpredictable environment, which is beyond the topic of SCADDS.

 

With the support of our testbed, we have been able to experiment and thus improve our design of different algorithms. We demonstrated an implementation of our algorithms running over multiple pc104 nodes, showing robustness of diffusion routing over a multi-hop network topology with "faulty" nodes. We also demonstrated to show low overhead of triggering sensing by nesting the conditional trigger-data propagation inside the network.