So IoT is not an extreme new, in fact it's been something companies have been doing since before it was named IoT. The Microsoft Azure IoT Hub is an IoT suite in the Azure cloud, which offers several services for connecting IoT devices with Azure services, processing incoming messages or sending messages to the devices. From a device perspective, the functionalities of the Microsoft Azure IoT Hub enable simple and safe connection of IoT devices with Azure services by facilitating bidirectional communication between the devices and the Azure IoT Hub.
This has many features which you need not any much effort to work the IoT with cloud.
- Provides multiple device-to-cloud and cloud-to-device communication options. These options include one-way messaging, file transfer, and request-reply methods.
- Provides built-in declarative message routing to other Azure services.
- Provides a queryable store for device metadata and synchronized state information.
- Enables secure communications.
- Provides extensive monitoring for device connectivity and device identity management events.
- Includes device libraries for the most popular languages and platforms.
For the IoT services, there are two kind of Hubs in Azure. IoT Hub and Event Hub. So they have some differences in the connectivity and the usage with the IoT device it self. So IoT hub supports two way communication where Event hub mostly used only device-to-cloud service. And when we take the file uploading scenario. event hub will not supports. IoT Hub Provides device SDKs for a large variety of platforms and languages, in addition to direct MQTT, AMQP, and HTTPS APIs. And in Event Hub, it supports on .NET, Java, and C, in addition to AMQP and HTTPS send interfaces.
You may wonder why we have to use this Azure IoT Hub for the IoT device connectivity?
So in this IoT hub, we can create our devices with a unique device name(known as device Id) which allows you to send messages from your raspberry pi or Arduino. So the IoT Hub contains all the information of the device which registered. As a example, the state of the device, configuration and all needy informations saved. Also this has a high secure connectivity between the device and the cloud. So each of the device registered in the cloud has own authentication and secured connectivity. This will allow you to send messages from device easily. No dozens of lines of codes needed. And the best thing is the support of various languages with the support of SDKs. So this supports C#, Java, JavaScript and Python.
So as a scenario which we need to get sensor data from 1000 devices all over over the country. You ever knew that this supports 500,000 devices simultaneously. So we can send data from 500,000 devices per second.
So this is pretty awesome. So wait till next blog which will show how to send and receive data from Azure IoT Hub with a real example.
References: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-get-started-simulated