// the find
bjnhur/pico-examples
RP2040 W5100S W5500 Azure IoT SDK examples, Azure IoT device client, ...
A collection of example applications showing how to connect a Raspberry Pi Pico (RP2040) to Azure IoT Hub using WIZnet W5100S/W5500 ethernet hardware and the Azure IoT C SDK. Targets embedded C developers who need wired ethernet on the Pico and want to talk to Azure IoT Hub without WiFi. Not a library — just working examples you adapt.
Covers four distinct IoT Hub scenarios (telemetry, cloud-to-device, X.509 client auth, DPS provisioning) so you get concrete starting points for each auth/messaging pattern. The port directory shows exactly what adapter code you need to bridge the Azure IoT C SDK's platform abstraction layer to the WIZnet ioLibrary, which is the hardest part and usually underdocumented. Build logs are included in the README so you can verify your own output matches, which saves time debugging toolchain issues. X.509 and DPS provisioning examples are included, which most similar projects skip.
Last pushed November 2021 — the Azure IoT C SDK has had multiple LTS releases since then and mbedtls is now at 3.5+; the two source-level hacks required for mbedtls 3.0 (`MBEDTLS_PRIVATE` stripping) are a sign this is already fighting API churn and will get worse. The W5100S and W5500 examples appear to live in the same application structure but it's not clear how to switch between the two chips without hunting through CMakeLists comments. Two stars and one fork after three years means there is essentially no community to ask when something breaks. The connection string is hardcoded in `sample_certs.c` with no mention of flash-based secret storage, which is fine for a lab but will burn someone who skips that step in a real deployment.