Drogue Ajour

Drogue Ajour is a firmware update and build service for tiny devices conneted to Drogue IoT Cloud. It supports a wide range of IoT protocols and uses a low footprint update protocol.

It offers:

  • Delivery - delivering firmware updates to connected devices.

    • Protocol support: any protocol supported by Drogue Cloud (HTTP, MQTT, CoAP, LoRaWAN)

  • Build - building firmware and storing it in a firmware repository.

  • RESTful API for inspecting and triggering builds.

  • Management console to inspect rollout status and builds.

It is built on top of:

  • Drogue Cloud - For authentication and transport firmware updates to devices.

  • Tekton - For defining a CI/CD pipeline for firmware builds and storing.

You can run Drogue Ajour locally or on a Kubernetes cluster. With it, you can build a firmware delivery pipeline for your devices.

Overview

Drogue Ajour is composed of 2 main components serving different functions:

  • Firmware Delivery - Transporting firmware updates to devices.

  • Firmware Build - Building and storing firmware artifacts.

Of these, only the firmware delivery component is mandatory. However, deploying both of these components provide you with an end to end Continuous Delivery (CD) pipeline for your devices.

Drogue Ajour Architecture

Firmware delivery

Firmware delivery is the main functionality of Drogue Ajour. This involves transporting the firmware to devices using a CBOR-based protocol. The transport protocol is designed for minimal overhead, and to allow devices to consume updates at their own pace.

The firmware itself can be fetched from disk, Eclipse Hawkbit or a Docker/Container registry.

Firmware build

This is an optional component that allow you to build your firmware from source and make it available to the delivery component for rolling out to your devices.

Drogue Ajour provides Tekton pipeline definitions that can build container images in the expected format and push them to container registries.