Azure IoT Hub SDKs
There are two categories of software development kits (SDKs) for working with IoT Hub:
IoT Hub Service SDKs enable you to build backend applications to manage your IoT hub, and optionally send messages, schedule jobs, invoke direct methods, or send desired property updates to your IoT devices or modules.
IoT Hub Device SDKs enable you to build apps that run on your IoT devices using device client or module client. These apps send telemetry to your IoT hub, and optionally receive messages, job, method, or twin updates from your IoT hub. You can use these SDKs to build device apps that use Azure IoT Plug and Play conventions and models to advertise their capabilities to IoT Plug and Play-enabled applications. You can also use module client to author modules for Azure IoT Edge runtime.
In addition, we also provide a set of SDKs for working with the Device Provisioning Service.
Provisioning Device SDKs enable you to build apps that run on your IoT devices to communicate with the Device Provisioning Service.
Provisioning Service SDKs enable you to build backend applications to manage your enrollments in the Device Provisioning Service.
Learn about the benefits of developing using Azure IoT SDKs.
Azure IoT Hub Service SDKs
The Azure IoT service SDKs contain code to facilitate building applications that interact directly with IoT Hub to manage devices and security.
Azure IoT Hub service SDK for iOS:
Microsoft Azure Provisioning SDKs
The Microsoft Azure Provisioning SDKs enable you to provision devices to your IoT Hub using the Device Provisioning Service.
|.NET||Device SDK, Service SDK||GitHub||Reference|
|C||apt-get, MBED, Arduino IDE or iOS||GitHub||Reference|
|Node.js||Device SDK, Service SDK||GitHub||Reference|
|Python||Device SDK, Service SDK||GitHub||Device Reference, Service Reference|
Azure IoT Hub Device SDKs
The Microsoft Azure IoT device SDKs contain code that facilitates building applications that connect to and are managed by Azure IoT Hub services.
Learn more about the IoT Hub Device SDKS in the IoT Device Development Documentation.
SDK and hardware compatibility
For more information about choosing a device SDK, see Overview of Azure IoT Device SDKs.
For more information about SDK compatibility with specific hardware devices, see the Azure Certified for IoT device catalog or individual repository.
Some of the features mentioned in this article, like cloud-to-device messaging, device twins, and device management, are only available in the standard tier of IoT Hub. For more information about the basic and standard IoT Hub tiers, see How to choose the right IoT Hub tier.
Relevant docs related to development using the Azure IoT SDKs:
- Learn about how to manage connectivity and reliable messaging using the IoT Hub SDKs.
- Learn about how to develop for mobile platforms such as iOS and Android.
- IoT Device Development Documentation
Other reference topics in this IoT Hub developer guide include: