All skills
github avatar

/arduino-azure-iot-edge-integration

@4214189 official
by githubgithub/awesome-copilot40k stars
5,040

Design and implement Arduino integration with Azure IoT Hub and IoT Edge, including secure provisioning, resilient telemetry, command handling, and production guardrails.

Use this Skill: https://skilld.dev/gh/github/awesome-copilot/arduino-azure-iot-edge-integration

This session only. Nothing lands on disk.

SKILL.md

≈52 tokens always: the name and description. ≈1.1k when used: this file. ≈909 more on demand in 2 files.

Arduino Azure IoT Edge Integration

Use this skill when the user needs to connect Arduino-class devices to Azure IoT, especially in edge-heavy scenarios (gateways, intermittent networks, offline buffering, and local actuation).

When to use it

Use this skill for requests such as:

  • "I want to connect Arduino sensors to Azure"
  • "How do I send MQTT telemetry to IoT Hub?"
  • "I need an edge gateway for field devices"
  • "I want cloud-to-device commands and OTA configuration updates"

Mandatory documentation review

Before recommending an IoT Edge topology or runtime behavior, review:

If documentation cannot be consulted, proceed with explicit assumptions and highlight them in a dedicated section.

Official Arduino references and best practices (required)

Before proposing firmware, wiring, or communication implementation details, consult official Arduino sources first:

When choosing between implementation alternatives, prioritize official Arduino guidance over community snippets unless there is a clear technical reason to deviate.

Objectives

  • Produce a secure end-to-end reference path from the Arduino device to cloud insights.
  • Handle unstable links (store-and-forward, retries, idempotency).
  • Define an actionable device and cloud backlog.

Integration patterns

Pattern A: Arduino direct to IoT Hub

Use when connectivity is stable and cloud latency is acceptable.

  • Protocol: MQTT over TLS.
  • Identity: per-device credentials (SAS or X.509).
  • Telemetry payload: compact JSON with timestamp, device ID, metrics, and optional quality flags.

Pattern B: Arduino to local gateway, then IoT Edge

Use when links are constrained, local control is required, or batching improves cost/reliability.

  • Arduino communicates with a local gateway (serial, BLE, local MQTT, RS-485, Modbus bridge).
  • The gateway publishes upstream through the IoT Edge runtime and routes data to IoT Hub.
  • Local modules can filter, aggregate, and trigger actions even during cloud outages.

Design flow

1) Device contract

Define:

  • Sensor catalog and units.
  • Sampling frequency and expected throughput.
  • Message schema versioning strategy.
  • Desired/reported device twin properties to control runtime behavior.

2) Security baseline

Require:

  • Unique identity per device.
  • No hardcoded secrets in source code or firmware artifacts.
  • Credential rotation strategy.
  • Signed firmware and a controlled update process when possible.

3) Reliability and offline behavior

Plan and document:

  • Backoff with jitter.
  • Local queue/buffer strategy with bounded size.
  • Duplicate suppression or downstream idempotent processing.
  • Fallback to last-known-good configuration.

4) Cloud and edge routing

Define routes for:

  • Raw telemetry to cold storage.
  • Curated telemetry to hot analytics.
  • Alerts to operations channels.
  • Commands and configuration back to edge/device.

5) Observability

Specify minimum operations telemetry:

  • Device heartbeat and firmware version.
  • Connectivity state transitions.
  • Message send success/error counters.
  • Gateway module health and restart reasons.

Reuse other skills

When relevant, combine with:

  • azure-smart-city-iot-solution-builder for city-wide architecture and phased rollout.
  • azure-resource-visualizer for relationship diagrams.
  • appinsights-instrumentation for app and service telemetry patterns.

Also use references/arduino-official-best-practices.md as a quality baseline for firmware and hardware recommendations, and references/arduino-iot-checklist.md before finalizing architecture or implementation guidance.

Required output

Always provide:

  1. Chosen connectivity pattern and rationale.
  2. Message contract (fields, units, sample payload).
  3. Security checklist for identity/credentials/updates.
  4. Reliability plan (retry, buffering, dedupe).
  5. Implementation backlog (firmware, gateway, cloud).

Output template

  1. Scenario and assumptions
  2. Recommended architecture
  3. Device and gateway contract
  4. Security and reliability controls
  5. Deployment plan and validation tests

Guidelines

  • Do not propose production deployments with shared credentials across devices.
  • Do not assume always-on connectivity in field deployments.
  • Do not omit command authorization and auditing in actuator scenarios.

Source: SKILL.md on GitHub

No alerts11d3 checks · Risk SAFE
  • Gen Agent Trust Hub11d

    No security issues detected. The skill focuses on providing secure architectural guidance for connecting Arduino devices to Azure IoT services using official and trusted documentation.

  • Socket11d

    No alerts

  • Snyk11d

    Risk: LOW · No issues

Signed by skilld at 4214189. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 2 months ago
  • arduino
  • azure
  • iot-hub
  • iot-edge
  • mqtt
  • provisioning
  • telemetry
  • edge-gateway
  • firmware

README badge

README badge for github/awesome-copilot/arduino-azure-iot-edge-integration

Connects Arduino devices to Azure IoT Hub and IoT Edge with secure provisioning, MQTT telemetry, command handling, and offline buffering for field deployments. Targets edge-heavy scenarios with unstable connectivity, local gateways, and store-and-forward patterns.

Generated from the current SKILL.md.

Does this skill support direct Arduino-to-IoT Hub connections, or only through an edge gateway?
It supports both. Pattern A covers direct MQTT/TLS connections to IoT Hub when connectivity is stable. Pattern B uses a local gateway and IoT Edge runtime for constrained or intermittent networks.
What protocols does this skill use for Arduino communication?
MQTT over TLS for cloud communication. For local device-to-gateway, it covers serial, BLE, local MQTT, RS-485, and Modbus bridge options.
Does this skill handle offline scenarios and message buffering?
Yes. It requires planning for local queue/buffer strategy, backoff with jitter, duplicate suppression, and fallback to last-known-good configuration during cloud outages.
What security practices does this skill enforce?
Unique per-device identity (SAS or X.509), no hardcoded secrets in firmware, credential rotation strategy, and signed firmware with controlled updates. Production deployments with shared credentials are explicitly prohibited.
Does this skill require review of external documentation before implementation?
Yes. The skill mandates consulting Azure IoT Edge and official Arduino documentation before recommending topology or firmware details.

Generated from the current SKILL.md. These answers refresh after source changes.