# A Software Framework for Heterogeneous Wireless Sensor Network Towards Environmental Monitoring
## 2 Related Works in the Literature  
In the past few years, research efforts have been made to optimize power consumption, deployment cost, and data sensing accuracy in WSN systems. For example, researchers from the University of California, Berkeley, have developed an ultra-low-power sensor module (Telos), which enters a low-power mode of operation until events (e.g., data acquisition or transmission) wake the sensor module from a low-power state [5]. In 2012, researchers proposed a wireless sensor network that focuses on easy access to real-time data in a car pollution control setting [14]. This design includes an Atmega 328-PU microcontroller, several gas sensors, and global positioning system (GPS) modules. In addition, another low-power, small form-factor, WSN design (Sprouts) was proposed for general applications [15]. Sprouts is an open-source, multi-standard WSN platform that relies on Bluetooth communication and vibration energy harvesting for low-power operation. The WSN architecture of Sprouts is based on using ARM Cortex M3 microcontrollers for data acquisition and processing. To further reduce power consumption, the researchers use an MSP430 microcontroller and a CC2530 antenna to build an outdoor WSN platform [16]. This sensor design supports low power consumption, because the MSP430 microcontroller minimizes energy usage by entering a low-power mode, and the CC2530 antenna utilizes the ZigBeePRO stack solution for low-power wireless communication. Their focus is on avoiding the redundancy of custom WSN applications for outdoor environmental monitoring, but the architecture they propose does not provide a corresponding implementation. In 2014, researchers proposed a WSN dedicated to sustainable agriculture [12]. This WSN system consists of several sensor nodes around a base station node. The base station node has a wider transmission range than its adjacent sensor nodes, so the base station node is responsible for collecting time-stamped data from each surrounding sensor node and relaying the data to another base station node until the data is uploaded to the internet. A Raspberry Pi microcontroller is used in this sensor design. The choice of such a microcontroller greatly increases the power consumption of the overall design. Another disadvantage of this design is its high hardware cost ($78 per microcontroller). Later, a traffic monitoring system was developed to adopt a ZigBee communication protocol [7]. However, in this design, the adopted microcontroller for sensor data acquisition is an Arduino Uno, which is relatively expensive and also consumes substantially high power. In 2015, a study of energy-efficient lighting control in green buildings used an MSP430 microcontroller and a CC2530 digital antenna chip for WSNs [8]. Compared to the other WSN designs, this low-power design is cost-effective and also offers a compact form factor. In 2016, the researchers integrated CO\({}_{2}\) and light sensors into a wireless sensor platform, which also utilizes an MSP430 microcontroller and a CC2500 transceiver [9]. This design achieves higher sensing accuracy and also keeps low cost and power consumption. Later, in 2017, the researchers [10] proposed to assemble five sensing functions (i.e., CO\({}_{2}\) level, temperature, lighting, room occupancy, and fire detection) by using three heterogeneous environmental sensors (i.e., a temperature sensor, a light sensor, and a CO\({}_{2}\) sensor). Unfortunately, the study in [10] only demonstrated a prototype of hardware implementation and did not discuss the corresponding software framework that performs data acquisition, conversion, fusion, and packaging from multiple heterogeneous sensors. From the above discussion, so far, none of these existing heterogeneous WSN systems have addressed the issue of creating high-level user-friendly software frameworks.