Mozilla has developed an open gateway to the Internet of things
Apple, Google, Amazon, Samsung - each of these companies has their own standards and programs for managing smart devices of their own brand. As a result, they often can only communicate with their "relatives" produced by the same company. The Apple HomePod Smart Column will refuse to back up data to the Amazon or Google cloud and will not execute commands from the Andrioid smartphone. It turns out that for complete integration all the equipment in the house should be from one company. This is clearly an abnormal situation.
Last year, Mozilla announced that it was working to create a single free framework - programs and services for the Internet of things, working on the open standard Web Things API , which uses JSON, REST, and WebSockets API.
The framework should become a single gateway for the interaction of "smart" devices from different manufacturers (Things Gateway). Now the organization has officially announced the launch of the Mozilla IoT project , laid out a stack of programs and published a guide to building a smart home system using the Raspberry Pi. The Web Things API standardization application was submitted to the W3C consortium on February 2, 2018.
The table shows the current zoo of protocols and services used by manufacturers of IoT devices. Each company has its own cloud service, its own protocol for communication with applications. Devices work under different operating systems. The only thing in common between them is support for the WiFi network protocol.
Mozilla considers its mission “to ensure that the Internet is a global public resource, open and accessible to all. The Internet, which really primarily serves people, when people can independently form their own experience and are empowered to do this, in a safe and independent environment. ”
IoT devices should be primarily controlled by users, not manufacturing companies. If a person wants to connect a smart speaker of one manufacturer to the lighting system of another manufacturer, he has the right to do this regardless of the desire of the manufacturer. This is a legal right of a person, because a smart speaker is in his private property and he can do anything with it. Mozilla IoT
Project Goal- create a decentralized secure network based on open standards with an emphasis on security and privacy.
Since its first announcement in June 2017, Mozilla has collaborated with the maker community, with testers, developers, and end users, to prepare a viable open system project. The single-board mini-computer Raspberry Pi 3 was chosen as the central hub of the Internet of things home system.
In the current version, the Things Gateway software stack supports the following functions:
- Voice commands to devices through the microphone on the computer.
- The rules engine (”If this, then that”) to determine the logic of the interaction of devices with each other.
- Floor plan with overlay devices on the map of the house.
- "Virtual" versions of devices that are currently not available: smart bulbs, switches, sensors, etc.
- Plugin system to support new protocols and devices.
- New system for secure authorization of third-party applications (through OAuth).
The Raspberry Pi 3 has built-in support for WiFi and Bluetooth. To connect other protocols like Zigbee or Z-Wave, some USB key models are supported: Digi XStick (version of ZB mesh) or any OpenZWave-compatible devices.
To deploy Mozilla’s free Internet of Things gateway, you need to download and install the Things Gateway 0.3 software image on your Raspberry Pi. By the way, you can experiment with this program on a PC or laptop: it is distributed with open source codes, so you can build it yourself from source.
After installing the certificates and the web server, the Mozilla Things Gateway is ready to go. It works as a WiFi access point, broadcasting the Mozilla IoT Gateway network name (SSID). You can connect to it from a laptop or smartphone - then the settings page will automatically load. Alternatively, the Raspberry Pi gateway itself connects to an existing wireless network.
Mozilla Things Gateway works with real or self-signed certificates. If necessary, you can install certificates from an authorized center, for example, GlobalSign has a public key infrastructure specifically for the Internet of Things , which can issue up to 3000 certificates per second. But in general, at the stage of gateway configuration, when choosing a subdomain, Things Gateway automatically generates an SSL certificateLet's Encrypt and establishes a secure connection for remote access to the system via the Internet.
After the gateway settings, a window opens for adding devices to the IoT local area network.
From here you can turn on / off devices and view their properties. For example, the screenshot below shows a smart switch with on and off buttons.
On the properties screen, the switch shows the current power consumption, voltage, current and frequency.
For a smart bulb, the brightness and color of the lighting can be set on the corresponding screen.
Of course, all these settings can be made from proprietary software and programs that come bundled with each of these devices. But the fact of the matter is that there are many devices, and each has its own control program. Open standard Web Things API and a free gateway from Mozilla should in the future combine all these gadgets from different companies into a single system.
“Each manufacturer usually creates their own application that works only with their own brand,” writes Mozilla. “If the future of connected IoT devices continues to include proprietary solutions, then their cost will remain high, while the market will remain fragmented and grow slowly.” Consumers should not be attached to a specific product, brand or platform. This will only result in a premium payment for such simple things as a smart light bulb. ”
Mozilla believes that the future of connected devices should be more like an open web. It should be decentralized - control should be given to the people who use these devices.
Everyone is invited to participate in the further development of a free framework.
Mozilla IoT Project on Github
Installing Mozilla Things Gateway on Raspberry Pi