About the Client
The client is a worldwide hotel and hospitality network looking for a scalable and flexible IoT platform. The platform should improve the overall guest experience and comfort. Also, it is important that the platform meet the client’s business operational requirements while minimizing maintenance and operating costs.
Facilities contain a variety of electrical equipment: lights, gas, smoke and security sensors, thermostats, door locks, water and electric meters, and media and entertainment systems.
To achieve the client’s goals, the equipment should be unified into a network that allows remote monitoring and control. This system should create a smart environment that provides customers with a higher quality service. The smart environment would allow the owners to see the current status of all facilities, address accounting and security problems, and optimise expenses.
Hotel guests will enjoy a convenient system that controls the environment using a mobile application or via voice commands using Amazon Echo.
The client wants a solution that will meet the following requirements:
- The architecture should be based on a horizontally scalable and easy deployable IoT platform;
- The system should be fully secure in order to handle confidential data;
- The service should connect different user interfaces and protocols: voice control, web application, etc.
Meeting the Challenge
DataArt was chosen as a trusted development partner given our strong experience in IoT. Using DeviceHive as a platform, we have connected a room Smart Energy Thermostat using ZigBee Smart Energy and a gateway to the cloud. The thermostat's controls were exposed using the restful APIs, making it possible to create different modalities. One modality is voice control using Amazon Echo, the other is a mobile friendly web interface.
Any end device can be connected to DeviceHive. In our case, the Smart Energy Thermostat was connected via ZigBee. The special intermediate module (gateway) was developed to connect the thermostat since it does not have internet access. The gateway runs on a small Linux device — BeagleBone or Raspberry Pi. The gateway uses an internet connection to access the DeviceHive server. The gateway’s ZigBee module is used to communicate with the Smart Energy Thermostat.
Many end devices can be connected to one gateway. Installing additional modules will make it possible to connecti other types of devices. For example, any BLE (Bluetooth Low Energy) device can be connected via a corresponding BLE adapter.
Once the gateway software is connected to the DeviceHive server, it can receive remote commands issued by any authorized client modality. All remote commands received are processed on the gateway side. Some of are translated and sent to corresponding ZigBee end-devices. For example, if the gateway receives a command to change the cooling setpoint, it will prepare the corresponding ZigBee message and send it to the thermostat.
The DeviceHive connection is bi-directional. If a user changes a parameter on the thermostat, the gateway will send the corresponding notification to the DeviceHive server. All connected modalities will know about changes almost immediately.
There are two client modalities to provide the user control over the thermostat’s settings.
The adaptive Web UI interface makes possible to control all thermostat’s settings such as heating/cooling setpoints, thermostat mode, fan speed and so on.
The same functionality is implemented with another client modality - Amazon Echo. This makes it possible to change the settings by voice commands. Just say “Alexa, tell the thermostat to change the cooling setpoint to 23 degrees” and voila — the cooling setpoint is changed on your thermostat!
Amazon Alexa recognizes a voice command from the set of supported predefined lexical expression and sends the corresponding message using the AWS Lambda function to DeviceHive via the REST interface. The DeviceHive server forwards this command to the gateway, and the gateway translates this command to the corresponding ZigBee message. Simple.
The solution developed by DataArt was deployed on the AWS cloud. The final solution demonstrated how industrial devices can be used as a part of an IoT ecosystem. It demonstrated the simplicity of scaling the platform and extending the existing IoT network with new types of devices, as well as the high interchangeability of components. As a result, DataArt:
- Built a cloud-based and highly scalable system based on Amazon Web Services and DeviceHive;
- Created the mobile friendly web UI and the voice control UI via Amazon Alexa, which demonstrates how easy it is to use and control devices with the thermostat as an example;
- Designed a solution fully secured through HTTPS/WebSocket communication protocols;
- Invented an Architecture that made it possible to create new interfaces cost effectively using the RESTful service.