-
Notifications
You must be signed in to change notification settings - Fork 7
Home
The AzureSphereDevX library and the AzureSphere.Examples are community maintained repositories.
-
Clone the examples.
git clone --recurse-submodules https://github.com/Azure-Sphere-DevX/AzureSphereDevX.Examples.git
-
Follow the build tools notes to update and test build all examples.
The DevX library accelerates your development and will help to improve your developer experience building Azure Sphere applications. The DevX library addresses many common Azure Sphere scenarios, it will help reduce the amount of code you write and improve readability and long-term application maintenance.
The focus of the Azure Sphere DevX library is the communications and simplification of common scenarios when building Azure Sphere applications.
The DevX library focuses on:
- Azure IoT Messaging: Implements connection management, and simplifies sending messages along with application and content properties metadata.
- Azure IoT Hub Device Twins: Handles Device Twin JSON serialization and deserialisation along with a type system to validate data types received and sent. The type system supports int, float, double, bool, and strings and can easily be extended.
- Direct methods: Simplifies in-bound direct methods message processing and passes direct method payload to the associated direct method handler.
- Intercore messaging: Provides a context model to simplify the passing of messages between the high-level and real-time cores.
- Event times: Simplified API for all common Event Timer scenarios.
- GPIO: Simplifies access to GPIO.
To learn more about Azure Sphere and Azure RTOS check out Combining Azure Sphere IoT security with Azure RTOS real-time capabilities article.
There are two Microsoft Learn modules which include hands-on labs you can download to start your Azure Sphere and Azure RTOS journey.
- Develop secure IoT solutions for Azure Sphere, Azure RTOS and Azure IoT Central
- Develop secure IoT Solutions for Azure Sphere, Azure RTOS and IoT Hub
The DevX library is built from the Azure Sphere samples, it's well tested, and aims to facilitate Azure Sphere best practices. The DevX library is lightweight, addresses common scenarios, and will sit alongside your existing code base.
The DevX library design is context-based, you declare a context and implement a context handler (or callback). See the Encapsulate Pattern, it's a fair description of how this library works.
There are examples of each context in the examples folder of this repo.
The library prefixes all file names, functions, structures, and enums with DX_ or dx_ to avoid clashes with existing code and file names.
Navigate the Wiki sidebar to learn more about the DevX library.
AzureSphereDevX Examples Wiki
- Home
- Build Tools
- Adding the DevX library
- Azure IoT Hub Messaging
- Azure IoT Hub Device Twins
- Azure IoT Hub Direct Methods
- Avnet IoT Connect messaging
- Handling multithreaded async events
- Working with GPIO
- Working with UARTS
- Working with PWM
- Working with Event Timers
- Intercore Messaging
- Application termination
- Deferring updates
- Utility functions
- Tools and scripts
- Hardware Definitions