How Azure IoT Central works

Completed

Azure IoT Central is a ready-made environment that lets you quickly evaluate your IoT scenario. It's an application platform as a service (aPaaS) IoT solution and its primary interface is a web UI. There's also a REST API that lets you interact with your application programmatically.

Recall that in the retail company scenario you'll connect, monitor, and manage environmental monitoring devices in one store, and assess the operating costs and customer experience improvements generated by new business insights.

Here, you'll learn how IoT Central works to quickly connect devices, monitor device conditions, create rules, manage devices and their data throughout their life cycle, and extend IoT intelligence into line-of-business applications.

Diagram that shows the high-level architecture of an I o T Central solution.

Key capabilities in an IoT Central application include:

Manage devices

IoT Central lets you manage the fleet of IoT devices that are sending data to your solution. For example, you can:

  • Control which devices can connect to your application and how they authenticate.
  • Use device templates to define the types of device that can connect to your application.
  • Manage devices by setting properties or calling commands on connected devices. For example, set a target temperature property for a thermostat device or call a command to trigger a device to update its firmware. You can set properties and call commands on:
    • Individual devices through a customizable web UI.
    • Multiple devices with scheduled or on-demand jobs.
  • Maintain device metadata such as store address or last service date.

View and analyze data

In an IoT Central application, you can view and analyze data for individual devices or for aggregated data from multiple devices:

  • Use mapping to transform complex device telemetry into structured data inside IoT Central.
  • Use device templates to define custom views for individual devices of specific types. For example, you can plot temperature over time for an individual thermostat or show the live location of people in a store.
  • Use the built-in analytics to view aggregate data for multiple devices. For example, you can see the total occupancy across multiple retail stores or identifying the stores with the highest or lowest occupancy rates.
  • Create custom dashboards to help you manage your devices. For example, you can add maps, tiles, and charts to show device telemetry.

Secure your solution

In IoT Central, you can configure and manage security in the following areas:

  • User access to your application.
  • Device access to your application.
  • Programmatic access to your application.
  • Authentication to other services from your application.
  • Audit logs track activity in your application.

Devices

Devices collect data from sensors to send as a stream of telemetry to an IoT Central application. For example, a thermostat unit sends a stream of temperature values or the shopping cart streams its location in the store.

A device can use properties to report its state, such as whether a fan is on or off. An IoT Central application can also use properties to set device state, for example setting a target temperature for a thermostat.

IoT Central can also control devices by calling commands on the device. For example, instructing a device to download and install a firmware update.

The telemetry, properties, and commands that a device implements are collectively known as the device capabilities. You define these capabilities in a model that's shared between the device and the IoT Central application. In IoT Central, this model is part of the device template that defines a specific type of device.

The device implementation should follow the IoT Plug and Play conventions to ensure that it can communicate with IoT Central. For more information, see the various language SDKs and samples.

Devices connect to IoT Central using one of the supported protocols: MQTT, AMQP, or HTTP.

Gateways

Local gateway devices are useful in several scenarios, such as:

  • Devices can't connect directly to IoT Central because they can't connect to the internet. For example, you may have a collection of Bluetooth enabled occupancy sensors that need to connect through a gateway device.
  • The quantity of data generated by your devices is high. To reduce costs, combine or aggregate the data in a local gateway before you send it to your IoT Central application.
  • Your solution requires fast responses to anomalies in the data. You can run rules on a gateway device that identify anomalies and take an action locally without the need to send data to your IoT Central application.

Gateway devices typically require more processing power than a standalone device. One option to implement a gateway device is to use Azure IoT Edge. You can also run your own custom gateway code on a suitable device.

Export data

Although IoT Central has built-in analytics features, you can export data to other services and applications.

Transformations in an IoT Central data export definition let you manipulate the format and structure of the device data before it's exported to a destination.

Reasons to export data include:

  • Storage and analysis: For long-term storage and control over archiving and retention policies, you can continuously export your data to other storage destinations. Use of separate storage also lets you use other analytics tools to derive insights and view the data in your solution.

  • Business automation: Rules in IoT Central let your trigger external actions, such as to send an email or fire an event, in response to conditions within IoT Central. For example, you can notify a store manager if the ambient temperature for a device reaches a threshold.

  • Additional computation: You may need to transform or do computations on your data before it can be used either in IoT Central or another service. For example, you could add local weather information to the location data reported by a store.

Extend with REST API

Build integrations that let other applications and services manage your application. For example, programmatically manage the devices in your application or synchronize user information with an external system.