Microsoft announced that its IoT Plug and Play is now available in preview. IoT Plug and Play offers a new, open modeling language to connect IoT devices to the cloud seamlessly. With IoT Plug and Play, developers can connect IoT devices to the cloud without having to write a single line of embedded code, and helps device manufacturers to build smarter IoT devices that just work with the cloud.
At Microsoft Build in May, Microsoft announced IoT Plug and Play and described how it will work seamlessly with IoT Central. IoT Plug and Play simplifies device integration by enabling solution developers to connect and interact with IoT devices using device capability models defined with the Digital Twin definition language. The company also announced a set of partners who have launched devices and solutions that are IoT Plug and Play enabled.
IoT Plug and Play allows solution developers to integrate devices without writing any embedded code. At the center of IoT Plug and Play is a schema that describes device capabilities that Microsoft refer to as a device capability model, which is a JSON-LD document. It’s structured as a set of interfaces comprised of properties (attributes like firmware version, or settings like fan speed), telemetry (sensor readings such as temperature, or events such as alerts), and commands the device can receive (such as reboot). Interfaces can be reused across device capability models to facilitate collaboration and speed development.
With the latest announcement, solution developers can start using Azure IoT Central or Azure IoT Hub to build solutions that integrate seamlessly with IoT devices enabled with IoT Plug and Play. Microsoft also launched a new Azure Certified for IoT portal, for device partners interested to streamline the device certification submission process and get devices into the Azure IoT device catalog quickly.
Azure IoT Central is a fully managed IoT Software as a Service (SaaS) offering that makes it easy to connect, monitor, and manage IoT devices and products. Azure IoT Central simplifies the initial setup of the IoT solution and cuts the management burden, operational costs and overhead of a typical IoT project.
Azure IoT Central integration with IoT Plug and Play takes this one step further by allowing solution developers to integrate devices without writing any embedded code. IoT solution developers can choose devices from a large set of IoT Plug and Play certified devices to quickly build and customize their IoT solutions end-to-end.
Solution developers can start with a certified device from the device catalog and customize the experience for the device, such as editing display names or units. Solution developers can also add dashboards for solution operators to visualize the data; as part of this new release, developers have a broader set of visualizations to choose from. There is also the option to auto generate dashboards and visualizations to get up and running quickly.
Once the dashboard and visualizations are created, solution developers can run simulations based on real models from the device catalog. Developers can also integrate with the commands and properties exposed by IoT Plug and Play capability models to enable operators to effectively manage their device fleets. IoT Central will automatically load the capability model of any certified device, enabling a true Plug and Play experience!
Another option available for developers who’d like more customization is to build IoT solutions with Azure IoT Hub and IoT Plug and Play devices. With today’s release, Azure IoT Hub now supports RESTful digital twin APIs that expose the capabilities of IoT Plug and Play device capability models and interfaces.
Developers can set properties to configure settings like alarm thresholds, send commands for operations such as resetting a device, route telemetry, and query which devices support a specific interface. The most convenient way is to use the Azure IoT SDK for Node.js (other languages are coming soon), and all devices enabled for IoT Plug and Play in the Azure Certified for IoT device catalog will work with IoT Hub, just like they work with IoT Central. The Azure Certified for IoT device catalog allows customers to find the right Azure IoT certified device to start building IoT solutions.
To help device partners certify their products as IoT Plug and Play compatible, MIcrosoft revamped and streamlined the Azure Certified for IoT program by launching a new portal and submission process. With the Azure Certified for IoT portal, device partners can define new products to be listed in the Azure Certified for IoT device catalog and specify product details such as physical dimensions, description, and geo availability.
Device partners can manage their IoT Plug and Play models in their company model repository, which limits access to only their own employees and select partners, as well as the public model repository. The portal also allows device partners to certify their products by submitting to an automated validation process that verifies correct implementation of the Digital Twin definition language and required interfaces implementation.
Device partners will also benefit from investments in developer tooling to support IoT Plug and Play. The Azure IoT Device Workbench extension for VS Code adds IntelliSense for easy authoring of IoT Play and Play device models. It also enables code generation to create C device code that implements the IoT Plug and Play model and provides the logic to connect to IoT Central, without customers having to worry about provisioning or integration with IoT Device SDKs.
The new tooling capabilities also integrates with the model repository service for seamless publishing of device models. In addition to the Azure IoT Device Workbench, device developers can use tools like the Azure IoT explorer and the Azure IoT extension for Azure Command-line Interface. Device code can be developed with the Azure IoT SDK for C and for Node.js.
If using a Windows or Linux gateway device with sensors that are already connected to the gateway, then the user can make these sensors available to Azure by editing a JSON configuration. This is referred to as the IoT Plug and Play bridge. The bridge allows sensors on Windows and Linux to just work with Azure by bridging these sensors from the IoT gateway to IoT Central or IoT Hub.
On the IoT gateway device, the sensor bridge leverages OS APIs and OS plug and play capabilities to connect to downstream sensors and uses the IoT Plug and Play APIs to communicate with IoT Central and IoT Hub on Azure. A solution builder can select from sensors enumerated on the IoT device and register them in IoT Central or IoT Hub.
Once available in Azure, the sensors can be remotely accessed and managed. Microsoft offers native support for Modbus and a simple serial protocol for managing and obtaining sensor data from MCUs or embedded devices and are continuing to add native support for other protocols like MQTT.
On Windows, it can also support cameras, and general device health monitoring for any device the OS can recognize (such as USB peripherals). Users can extend the bridge with their own adapters to talk to other types of devices (such as I2C/SPI), and the company is working on adding support for more sensors and protocols (such as HID).