Skip to main content
OTA updates deliver firmware to devices without physical access. In firmngin, OTA is a controlled fleet rollout, not a one-shot file push. [image:OTA workflow run detail with rollout stages timeline and fleet progress]

OTA rollout lifecycle

Rollout sizes

Wave size comes from policy max_devices_per_batch. It does not limit total fleet size.

Safe rollout practice

  • Start with canary or staged_expand on production fleets.
  • Set min_observation_minutes between stages.
  • Set max_failure_percent to auto-stop bad releases.
  • Use Pause before expanding if failure rate spikes.
  • Keep rollback firmware available.
  • Do not mix incompatible hardware in one artifact target set.

Device requirements

Firmware should support secure artifact download, version reporting, install result reporting, reconnect after reboot, and failure reporting visible in workflow device logs.

Common mistakes

  • Treating wave size as the maximum fleet size (fleet continues in further waves).
  • Assuming all devices update immediately in staged rollout.
  • Using one artifact for multiple hardware revisions without compatibility checks.
  • Assuming download equals install success.
  • Skipping approval when policy requires owner review.