Compatibility
What the agent runs on
Two builds: a full agent for Linux-class devices and a constrained one for microcontrollers.
| Platform | Agent | Flash needed | RAM | Bootloader | A/B |
|---|---|---|---|---|---|
| Linux, aarch64 (Yocto) | full | 2.1 MB | 6 MB | U-Boot / EFI | ✓ |
| Linux, armv7 (Buildroot) | full | 1.8 MB | 5 MB | U-Boot | ✓ |
| Linux, x86-64 | full | 2.4 MB | 8 MB | systemd-boot / GRUB | ✓ |
| Zephyr, Cortex-M33 | constrained | 44 KB | 9 KB | MCUboot | ✓ |
| Zephyr, Cortex-M4 | constrained | 41 KB | 8 KB | MCUboot | ✓ |
| FreeRTOS, ESP32-S3 | constrained | 52 KB | 12 KB | esp bootloader | ✓ |
| NuttX, RISC-V | constrained | 48 KB | 10 KB | MCUboot | ✓ |
| Bare metal, STM32 | constrained | 39 KB | 7 KB | custom (porting guide) | recovery slot |
Not listed? The porting guide covers what the agent needs from a platform — it is a short list.
A/B needs twice the image space. If your flash budget cannot take it, the recovery-slot mode is a genuine fallback, but a failed update then needs a recovery boot rather than a silent rollback. We will say so during the design review rather than after the campaign.