Programmatically defining the software footprint of sensor networks using the Android platform



Sensor networks are being used for an increasing number of applications ranging from environmental monitoring and precision agriculture to manufacturing and health care. By gathering data at unprecedented temporal and spatial granularity, sensor networks are revolutionizing these applications. Given the scale and complexity of these systems, they face a critical challenge in software Operations and Management, that is, installing, configuring, and updating thousands of software components in a heterogeneous sensor network. In this paper, we discuss automating and simplifying the process of defining the software environment on a sensor node running the Android platform. Android has significant share in the mobile phone market and runs on a broad range of devices including embedded platforms. This paper outlines the use of a new method for configuring embedded devices and sensor networks by drawing from techniques used for defining the software environment in data centers. We have also developed a software prototype to allow for a simple, reproducible, and flexible configuration of the Android software stack on a sensor node. Our exploratory research provides an insight into the use of modular configuration techniques in embedded devices and how they can be applied to the Android ecosystem. Copyright © 2013 John Wiley & Sons, Ltd.