// the find
Azure/azure-sdk-for-c-arduino
Azure SDK for Embedded C for Arduino
Official Microsoft Arduino wrapper around the Azure Embedded C SDK, letting you connect ESP32, ESP8266, Nano RP2040, and Portenta H7 boards to Azure IoT Hub or IoT Central. It bundles the full embedded C SDK source directly in the repo rather than pulling it as a dependency. Aimed at hardware developers who need Azure connectivity without a full Linux stack.
The library covers a realistic spread of boards (ESP32, ESP8266, RP2040, Portenta H7) with separate, working examples for each rather than one generic sketch that may or may not compile. The embedded C source is vendored directly into src/, which is exactly right for Arduino's build model — no submodule pain, no library manager chasing. ADU (Azure Device Update) support for OTA firmware updates on ESP32 is genuinely useful and most competing libraries don't have it. SAS token generation is self-contained in AzIoTSasToken.cpp, so you're not dependent on a cloud call to authenticate.
Last push was July 2024 and the repo has 157 stars with only a handful of open issues being addressed — Microsoft has effectively put this in maintenance mode in favor of their Azure RTOS / Eclipse ThreadX path. The examples hardcode credentials in iot_configs.h with no guidance on keeping secrets out of flash, which will bite beginners who don't know better. There's no abstraction layer: each example reimplements the same WiFi reconnect loop and MQTT handling separately, so bugs in that logic aren't shared — the ESP32 example and the RP2040 example diverge in ways that are hard to track. The library.properties version hasn't moved in a long time and the Arduino Library Manager listing may lag the repo state.