The Everyware Software Foundation (ESF) is the base for Eurotech's next generation PaaS (Platform as a Service), Everyware Cloud 2.0 (Fig. 1). ESF is based on Java and OSGi (see The Embedded Cloud Runs Java). It uses a protocol built on MQTT (MQ Telemetry Transport), a standard device communication protocol.
Eurotech makes building applications at both ends easier. On the Internet, data consuming IT applications can utilize REST APIs, JSON, and XML to access data uploaded to Eurotech's cloud services from data producing devices.
Everyware Cloud Console (Fig. 2) is a web-based application that users can use to configure and manage their portion of the Everyware Cloud. This includes management of the cloud database. It also provides platform, user and device management. New application bundles can be scheduled for download and data views can provide access to data uploaded to the cloud.
One reason for using MQTT is its low overhead and fast response time. This allows real time action using rules defined using the Everyware Cloud Console (Fig. 3). Real time data and control operates with a round trip time under 200ms. Statistical rules can be applied to incoming data.
Rules can be controlled and created using the REST APIs but most users will utilized the menu-based console interface. This rule creation process is simple with descriptive access devices and device data. Rules can initiate actions including notifications such as email messages to changing settings on any number of Everyware Cloud devices.
The approach provides a secure and scalable environment that is reliable and flexible. These applications do not deal with MQTT.
Actually, the applications that run on the devices do not have to deal directly with MQTT either. Instead, the Java-based application bundles run on OSGi and utilize ESF bundles that handle communication and other services including management chores controlled from the cloud. This includes software updates.
Eurotech has made some ESF upgrades but no major architectural changes from version 1. They have made the Everyware Cloud client more efficient and documented the open transport layer. ESF provides a many-to-many communication environment so devices and cloud applications can communicate with each other.
Everware Cloud devices can be created from scratch using Eurotech's interface definitions but most will take advantage of Eurotech's range of embedded devices like the Helios (see Hands-On Eval Of Eurotech's Helios Edge Controller).These platforms come with ESF installed simpifing application development as well as system deployment.