Fleet Update Agent
On-device agent that downloads, verifies and installs signed A/B updates for fielded Zynq-7000 boards.
- Runs out of the box: yes
- Tests: yes
- CI: yes
- Docs: yes
- Used in production: yes
Purpose#
The Fleet Update Agent is the supported way to keep fielded boards current. It runs as a small service on the board, polls the fictional update server for the board's channel, verifies the bundle signature before touching any partition, writes the inactive slot and asks the boot loader to try it once.
It packages the patterns from the offline bundle and self-update examples into one maintained application with a support channel and a release history.
Get the tool#
- Product status
- Active
- Current version
- v3.0.0 · released 24 Sep 2026
- Platforms
- Zynq-7000 PetaLinux
- Linux (aarch64)
- Distribution
- Internal
- Owning team
- Embedded Platforms
- Support
Releases#
v3.0.0 (latest)
- Wave rollouts with automatic widening
- Status report lists rollback reasons per board
Wave rollouts: an update can now go to a percentage of a channel first and widen automatically when no board rolls back.
v2.2.0
- Pin a board to a version
Channel pinning, so a board can stay on a known version while the rest of the channel moves on.
v2.1.0
Resumable downloads over slow links.
v2.0.0
First release on the A/B slot layout shared with the offline bundle procedure.
What you will learn#
- Enrol a board in an update channel and pin it to a version
- Roll a signed update out to a group of boards in waves
- Read the agent's status report to see which boards rolled back and why
Technologies & features#
- Technologies
- C++LinuxPetaLinuxZynq-7000
- Features
- Automatic UpdateFirmware UpdateCode Signing
- Topics
- Update DeliveryprimaryEmbedded/Linux
Lessons learned#
- Decision
The agent verifies the bundle before it writes anything, the lesson carried over from the offline bundle example.
- Limitation
Boards without a spare slot cannot use the agent; they stay on the offline bundle procedure.
Try it#
sudo apt install ./fleet-update-agent_3.0.0_armhf.deb
fleet-update-agent enrol --channel lab --server https://updates.example.internal
fleet-update-agent statusCommands come from the owner’s README. Credentials are never stored here.



