Device Update for IoT Hub is an end-to-end platform for deploying over-the-air updates (OTA) to your IoT devices—from tiny sensors to gateway-level devices.
- Integrated Management - Update management UX integrated with Azure IoT Hub
- Controlled Rollout - Gradual update deployment through device grouping and scheduling
- Flexible APIs - Programmatic APIs for automation and custom portal experiences
- Fleet Visibility - At-a-glance compliance and status views across heterogeneous device fleets
- Resilient Updates - Support for A/B updates with seamless rollback
- Access Control - Subscription and role-based access controls via Azure portal
- Offline Support - On-premise content cache and Nested Edge support for disconnected devices
- Comprehensive Reporting - Detailed update management and reporting tools
While we aim to provide production-ready, high-quality Device Update agent code and installation packages, this project is intended to serve as a reference implementation demonstrating how devices can communicate with and receive update deployments from the Azure Device Update cloud service.
We encourage you to extend, enhance, and modify the source code to best fit your specific scenario requirements. If you have ideas, suggestions, or encounter issues, please report them using GitHub Issues or the Discussion Forum.
- Device Update for IoT Hub
- Getting Started with Device Update Agent
- More details on building the agent here: How to build agent code
- For remote diagnostics and log collection: Diagnostics Log Collection
For users familiar with the build process:
./scripts/install-deps.sh -a
./scripts/build.sh -c -u --build-packages
sudo apt install ./out/deviceupdate-agent_*.debNote: For detailed build instructions, troubleshooting, and advanced options, see How to Build the Agent
- Device Update for IoT Hub Documentation - Official service documentation
- Getting Started with the Agent - Agent overview and reference
- Building the Agent - Detailed build instructions
- Running the Agent - Deployment and configuration
- Troubleshooting Guide - Common issues and solutions
This project welcomes contributions and suggestions. See CONTRIBUTING.md for details.
See SECURITY.md for information on reporting security issues.
This project is licensed under the MIT License - see LICENSE for details.
For support options, see SUPPORT.md.