## 4 A Typical Wireless Sensor Network  
In this section, we present a synthetic example of an average sensor network, based on the most common properties and trends found in the deployment analysis. This example can be used to describe wireless sensor networks to people becoming familiarized with the WSN field.  
A typical wireless sensor network:  
* is used as a prototyping tool to test new concepts and approaches for monitoring specific environments
* is developed and deployed incrementally in multiple iterations and, therefore, needs effective debugging mechanisms
* contains 10-50 sensor nodes and one or several base stations (a sensor node is connected to a personal computer) that act as data collection sinks
* uses temperature, light and accelerometer sensors
* uses low frequency sensor sampling with less than one sample per second, on average, in most cases; some sensors (accelerometers) require sampling in the range 10-100 Hz, and some scenarios (seismic or audio sensing) use high frequency sampling with a sampling rate above 10 kHz
* has a desired lifetime, varying from several hours (short trials) to several years; relatively often, the desired final lifetime is specified; yet, a significantly shorter lifetime is used in the first proof-of-concept trials with a 100% duty cycle (no sleep mode used)
* has at least one sensor node with increased energy budget--either connected to a static power network or a battery with significantly larger capacity
* has specific sensing and packaging constraints; therefore, packaging and hardware selection are important problems in WSN design
* uses either an adapted version (custom sensors added) of a TelosB-compatible [2] or a MicaZ sensor node [3]; also, fully custom-built motes are popular
* contains MSP430 or AVR architecture microcontrollers on the sensor nodes, typically with eight-bit or 16-bit architecture, 8 MHz CPU frequency, 4-10 KB RAM, 48-128 KB program memory and 512-1,024 KB external memory
* has communication according to the 802.15.4 protocol; TI CC2420 is an example of a widely used wireless communication chip [67]
* sends data packets with a size of 10-30 bytes; the report rate varies significantly--for some scenarios, only one packet per day is sent; for others, each sensor sample is sent at 100 Hz* uses omnidirectional communication in the range of 100-300 m (each hop) with a transmission speed less than 256 Kbps and uses a single communication channel that can lead to collisions
* considers constant multi-hop connectivity available (with up to 11 hops on the longest route), with possible topology changes, due to mobile nodes or other environmental changes in the sensing region
* has either a previously specified or at least a known sensor node placement (not random)
* is likely to use at least primitive raw data preprocessing before reporting results
* uses CSMA-based MAC protocol and proactive routing, often adapted or completely custom-developed for the particular sensing task
* uses some form of reliable data delivery with acknowledgment reception mechanisms
* has been programmed using the TinyOS operating system
* uses multiple semantically simultaneous application-level tasks, and multiple kernel services are running in background, creating the necessity for effective scheduling mechanisms in the operating system and, also, careful programming of the applications; cooperative scheduling (each task voluntarily yields the CPU to other tasks) is enough in most cases; yet, it requires even more accuracy from the programmers
* requires at least simple time synchronization with millisecond accuracy for common duty cycle management or data time stamping
* may require some form of node localization; yet, the environments pose very specific constraints: indoor/outdoor, required accuracy, update rate, infrastructure availability and many other factors