Is C the best option for IoT

What is Azure IoT Hub

  • 4 minutes to read

IoT Hub is a managed service that is hosted in the cloud and acts as a central message hub for communication in both directions between an IoT application and the connected devices. You can reliably and securely connect millions of devices and their back-end solutions. Almost every device can be connected to an IoT hub.

Multiple messaging patterns are supported, including D2C telemetry, uploading files from devices, and request-response methods for controlling your devices from the cloud. IoT Hub also supports monitoring to keep track of device creation, device connection, and device failures.

With the IoT Hub functions, you can create scalable IoT solutions with a full range of functions, e.g. for managing tools and machines for industrial production, for tracking valuable resources in healthcare or for monitoring the use of office buildings.

Scale your solution

IoT Hub scales to millions of concurrently connected devices and millions of events per second to support your IoT workloads. For more information about how to scale your IoT hub, see Scaling Azure IoT Hub. For more information on the different service tiers of IoT Hub and the best option for your scalability needs, please visit the pricing page.

Securing communication

You can send data securely using IoT Hub.

  • Thanks to device-based authentication, each device can establish a secure connection with the IoT Hub and can be securely managed.

  • You have complete control over device access and can control connections per device.

  • The IoT Hub Device Provisioning Service automatically provisions devices to the correct IoT Hub instance when the device is started for the first time.

  • Multiple authentication types support a variety of device functions:

    • Token-based SAS authentication so that you can quickly get started with your IoT solution.

    • Individual X.509 certificates are available for secure, standards-based authentication.

    • Authentication via X.509 certification authorities can be used for simple, standards-based registration.

Forwarding of device data

Integrated functions for message forwarding provide flexibility in setting up an automatic rule-based message fan-out:

  • Message forwarding is used to control where your hub sends device telemetry data.

  • There is no additional charge for routing messages to multiple endpoints.

  • Routing rules can be configured to automatically route messages based on the content of those messages without writing any code.

Integration with other services

You can integrate IoT Hub with other Azure services to create complete end-to-end solutions. For example, use the following:

  • Azure Event Grid: With this service you can react quickly, reliably, scalably and securely to critical events.

  • Azure Logic Apps: With this service you automate your business processes.

  • Azure Machine Learning: Use this service to add machine learning and AI models to your solution.

  • Azure Stream Analytics: With this service you carry out real-time analysis calculations for the data streams from your devices.

Configure and control devices

You can manage your IoT Hub connected devices with a variety of built-in functions.

  • You can save, synchronize and query metadata and status information for all your devices.

  • Set the device status either per device or based on common device characteristics.

  • Thanks to the integration of message forwarding functions, you can automate the reaction to a status change reported by a device.

High availability for your solution

IoT Hub has an IoT Hub agreement with a service level of 99.9%. The full Azure SLA explains the guaranteed availability of Azure as a whole.

Connect devices

Use the Azure IoT Device SDK libraries to build applications that run on your devices and interact with IoT Hub. Supported platforms include various Linux distributions, Windows, and real-time operating systems. Supported languages:

  • C.
  • Embedded C
  • C #
  • Java
  • python
  • Node.js

IoT Hub and the device SDKs support the following protocols for connecting devices:

  • HTTPS
  • AMQP
  • AMQP over WebSockets
  • MQTT
  • MQTT over WebSockets

IoT Hub and the device SDKs support the Azure IoT Plug and Play conventions for connecting devices. IoT Plug & Play devices use a device model to make their functions available for IoT Plug & Play-enabled applications. The device model enables solution developers to integrate intelligent devices into their solutions without manual configuration.

If your solution cannot use the device libraries, the devices can use the MQTT v3.1.1, HTTPS 1.1, or AMQP 1.0 protocols to natively connect to your hub.

If your solution cannot use any of the supported protocols, you can extend the IoT Hub to support custom protocols:

  • Use Azure IoT Edge to create a scope gateway that does protocol translation in the edge.

  • Customize the Azure IoT protocol gateway so that protocol translation takes place in the cloud.

Contingents and limit values

Every Azure subscription has standard quota limits to prevent misuse of the service. These limits can affect the scope of your IoT solution. The current limit is 50 IoT Hub instances per subscription. Contact support to request a quota increase. For more information, see IoT Hub Quotas and Throttling. For more details on quota limits, see one of the following articles:

IoT Hub in Azure Stack Hub (Preview)

You can create hybrid IoT solutions with IoT Hub in Azure Stack Hub (preview). IoT Hub is a managed service that acts as a central message hub for bidirectional communication between your IoT application and the devices managed by the application. You can use IoT Hub in Azure Stack Hub to build IoT solutions with reliable and secure communication between IoT devices and your on-premises solutions.

During the public preview phase, IoT Hub in Azure Stack Hub is free. For more information, see the overview of IoT Hub in Azure Stack Hub.

Next Steps

To test a comprehensive IoT solution, see the IoT Hub quick start guides:

For more information on the ways you can build and deploy IoT solutions using Azure IoT, see: