EdiMote: A Flexible Sensor Node Prototyping And Profiling Tool Rinalds Ruskuls1 and Leo Selavo2 Institute of Electronics and Computer Science, 14 Dzerbenes Str, Riga, LV 1006, Latvia
[email protected],
[email protected]
1
Introduction
Designing hardware for wireless sensor network (WSN) systems is a time consuming process. Quite often new systems are designed from scratch and there is lack of support for the design, prototyping and debugging beyond the CAD tools. Therefore, many WSN systems are based on available platforms such as MicaZ, TelosB, EPIC [1] [7] [4]. Although these platforms offer a degree of flexibility, the hardware setup is limited to the predesigned sensor or extension modules. However, many WSN applications have specific requirements regarding the sensing types and fidelity while are very sensitive to the current draw by these sensors and waste by the unused components. Therefore, we propose a WSN hardware prototyping test bench EdiMote developed with the flexibility of prototyping, performance monitoring and hardware and software debug assistance in mind (Figure 1). Our approach offers fast prototyping for virtually any hardware. The users new prototype is made from modules that are microcontrollers, communications transceivers, sensors, storage, any other electronic components or the combination of them. Each module is on a board with predefined interface with analog and digital signals and is either available from a hardware library of modules or custom designed by the user for the specific task. The boards are interconnected using a configurable digital and analog interconnect that allows fast reconfiguration, monitoring of the signals for debugging purposes and power consumption monitoring per module. In addition, the EdiMote bench is capable of emulating any of the existing hardware such as Tmote Sky or MicaZ with the additional benefit of low level monitoring and signal debugging support. For example, an analog sensor value that is going to the ADC port of a controller can also be monitored and logged by the test bench along with the digital signals for profiling or a scenario replay purposes. Once the new system is tested, profiled and debugged enough, the user may proceed to create a standalone version of the unit from the final version of the hardware configuration where most problems have been resolved using the EdiMote prototyping tool. This Demo intends to show the capabilities and usefulness of the EdiMote prototyping and profiling system. We show the tool in action, using various
Fig. 1: EdiMote prototyping and profiling board
modules and configurations, including the emulation of a TelosB mote or another well known sensor node.
2
System Architecture
The high level block diagram of the test bench architecture is shown in Figure 2. Main idea of this system is to use reconfigurable analog and digital interconnect between the Test MCU and Modules. Note, that the system does not restrict to a single MCU, but can have multiple MCUs on several modules. The interconnect configuration is loaded from a computer via USB port. The Test MCU module is a daughter board with 80 pins for power, digital and analog signals. Several MCU daughter boards are available and more can be designed by the user, for example, based on MSP430, Atmel, Nordic Semiconductors and ARM controllers. The Modules typically have sensors, RF transceiver, extra controller or other application specific devices on them. The system supports up to
Fig. 2: Development board architecture
three modules with two supporting 4 analog and 10 digital signals, while the third module connector has 8 analog and 22 digital signals. Sensor modules like RF and MCU can be connected to those connectors. 2.1
Implementation
The digital signal matrix interconnecting GPIO and programming signals including JTAG is implemented with Altera MAXII EPM1270T144C5N CPLD [2] . The interconnect can perform digital level translation for systems where different levels are used. In addition the CPLD implements the monitoring of digital lines and dynamic reconfiguration of the interconnect. Advanced user might even take advantage of the CPLD reprogramming to implement custom profiling or debugging functions. The CPLD can be controlled by USB interface (FT4232) or by the EdiMote management MCU (MSP430F5437). The analog signal interconnect is implemented using AD75019 analog matrix(AMAT), which can connect 16x16 analog signals [3]. The analog matrix supports signal voltage levels from 4.5V to 4.5V. It is configured by the management MCU via SPI interface. The analog channels can be monitored by the management MCU ADC channels using operational amplifiers for offset implementation and gain correction. The management MCU controls the whole development board (Figure 3). Besides the functionality described before, the MCU controls the power supply distribution. Another feature is 4 channel energy consumption monitoring system, based on the SPOT design [6]. The power consumption is monitored as needed for each attached module and the whole system. EdiMote system communicates the configuration, debugging and profiling information to a computer
Fig. 3: EdiMote board management.
when attached to USB port. The system also has a standalone operation mode while storing the profiling data to a SD memory card for offline processing. The USB communication is implemented using FT4232 device featuring 4 UART ports operating as two UART/Bit-Bang ports plus two MPSSE engines used to emulate JTAG, SPI, I2C, Bit-bang or other synchronous serial modes [5]. Two JTAG interfaces are used for CPLD and in-system Test MCU programming. The management MCU is programmed via BSL. The last channel of the USB is used for CPLD configuration and data monitoring using Bit-bang interface. EdiMote software tool is used for the development board configuration and monitored data visualization.
References 1. MicaZ datasheet, http://courses.ece.ubc.ca/494/files/MICAz_Datasheet.pdf 2. Altera: MaxII Daasheet, http://www.altera.com/literature/hb/max2/max2_ mii5v1_01.pdf 3. Analog Devices: AD75019 datasheet, http://www.analog.com/static/ imported-files/data_sheets/AD75019.pdf 4. Dutta, P., Taneja, J., Jeong, J., Jiang, X., Culler, D.: A building block approach to sensornet systems. In: SenSys ’08: Proceedings of the 6th ACM conference on Embedded network sensor systems. pp. 267–280. ACM, New York, NY, USA (2008) 5. Future Technologies: FT4232H datasheet, http://www.ftdichip.com/Documents/ DataSheets/DS_FT4232H.pdf 6. Jiang, X., Dutta, P., Culler, D., Stoica, I.: Micro Power Meter for Energy Monitoring of Wireless Sensor Networks at Scale. In: The Sixth International Conference on Information Processing in Sensor Networks (IPSN07) Track on Sensor Platforms, Tools, and Design Methods (SPOTS 07). p. 10. Berkeley, California (2007) 7. Moteiv: TelosB datasheet, http://www.willow.co.uk/TelosB_Datasheet.pdf