Service framework for embedded systems

The emergence of highly capable single-chip networked microcontroller platforms creates a wide range of opportunities for building low-cost “smart” networked devices of many kinds for many application domains. Potential scenarios cover machine-to-machine cooperative communications, integration of devices into enterprise-level systems or remote access to devices from home, office or mobile appliances. Application domains include smart homes and smart buildings, industrial automation, health care and intelligent energy distribution.

TCP/IP is the obvious and most relevant protocol family to support the heterogeneous network connectivity required in the above scenarios. On top of TCP/IP, the Devices Profile for Web Services (DPWS) is bound to become the most appropriate choice for ensuring interoperable, standards-based, platform-independent high-level application connectivity. DPWS is a lightweight profile of the standard XML Web Service protocols supported by major players in the computing and networking industry. Through WS-Discovery, DPWS provides for plug-and-play device connection. Because they use standard Web Services protocols, devices supporting DPWS can be readily integrated in many different target environments. In particular, recent Microsoft platforms natively support DPWS.

In collaboration with Schneider Electric, Odonata pioneered the implementation of DPWS on embedded computing platforms and has now about six years of experience working with DPWS in different application scenarios. This work has led to the release of open-source software stacks implementing DPWS, both in C and in Java. Odonata was (and still is) actively involved in the DPWS standardization effort, Odonata’s implementations being used during the successful interoperability tests that were required to move the DPWS specification to standard status.

Odonata has demonstrated the successful operation of the DPWS C-based stack on STR912™ microcontrollers from STMicrolectronics – equipped with an ARM9™ processor, 512 KB of Flash and 96 KB of RAM on-chip, showing the appropriateness of this class of microcontrollers for constituting the foundation of a generic smart device platform addressing a broad spectrum of device-oriented applications.

The emergence of new standards, such as 6lowpan (a version of IPv6 adapted to the requirements of low-bandwidth wireless networks) and EXI (an efficient binary representation of XML messages), provides further opportunities to integrate interoperable service capabilities in low-end devices, such as battery-operated wireless sensors. Odonata is currently integrating these new technologies in the next generation of its products, that will be rolled out shortly.