Skip to content

Files

Latest commit

b5bbb0f · Sep 7, 2021

History

History
92 lines (63 loc) · 3.58 KB

concepts-developer-guide-device.md

File metadata and controls

92 lines (63 loc) · 3.58 KB
title description author ms.author ms.date ms.topic ms.service services zone_pivot_groups
Device developer guide (C) - IoT Plug and Play | Microsoft Docs
Description of IoT Plug and Play for C device developers
rido-min
rmpablos
11/19/2020
conceptual
iot-develop
iot-develop
programming-languages-set-twenty-seven

IoT Plug and Play device developer guide

IoT Plug and Play lets you build IoT devices that advertise their capabilities to Azure IoT applications. IoT Plug and Play devices don't require manual configuration when a customer connects them to IoT Plug and Play-enabled applications.

A IoT device might be implemented directly, use modules, or use IoT Edge modules.

This guide describes the basic steps required to create a device, module, or IoT Edge module that follows the IoT Plug and Play conventions.

To build an IoT Plug and Play device, module, or IoT Edge module, follow these steps:

  1. Ensure your device is using either the MQTT or MQTT over WebSockets protocol to connect to Azure IoT Hub.
  2. Create a Digital Twins Definition Language (DTDL) model to describe your device. To learn more, see Understand components in IoT Plug and Play models.
  3. Update your device or module to announce the model-id as part of the device connection.
  4. Implement telemetry, properties, and commands using the IoT Plug and Play conventions

Once your device or module implementation is ready, use the Azure IoT explorer to validate that the device follows the IoT Plug and Play conventions.

:::zone pivot="programming-language-ansi-c"

[!INCLUDE iot-pnp-device-devguide-c]

:::zone-end

:::zone pivot="programming-language-embedded-c"

[!INCLUDE iot-pnp-device-devguide-embedded-c]

:::zone-end

:::zone pivot="programming-language-csharp"

[!INCLUDE iot-pnp-device-devguide-csharp]

:::zone-end

:::zone pivot="programming-language-java"

[!INCLUDE iot-pnp-device-devguide-java]

:::zone-end

:::zone pivot="programming-language-javascript"

[!INCLUDE iot-pnp-device-devguide-node]

:::zone-end

:::zone pivot="programming-language-python"

[!INCLUDE iot-pnp-device-devguide-python]

:::zone-end

Next steps

Now that you've learned about IoT Plug and Play device development, here are some additional resources: