For embedded developers

Recovery-focused firmware for connected devices.

Cirvane is a small device runtime that monitors services, preserves settings after interrupted writes and rolls back firmware that fails its first-boot health check.

Runs on ESP-IDF and FreeRTOS. Available for the Seeed Studio XIAO ESP32-C5 as a developer release, not for unattended deployment.

Bounded by designFixed services, queues and recovery work

Hardware testedReview the XIAO ESP32-C5 evidence

Developer releaseFor evaluation, powered by ESP-IDF and FreeRTOS

What it does

Failure behaviour you can reason about

Supervises services

Fixed service identities, health checks and limited restart policies keep recovery work predictable.

Bounds messages

Typed messages use a fixed pool. Queues cannot grow without limit when a producer misbehaves.

Recovers configuration

Two verified records preserve the last valid settings after a corrupt or interrupted write.

Rolls firmware back

Signed dual-slot images must pass their first-boot health check or the device returns to the prior image.

Install v0.1.0

Flash the supported board

Download the full image for the Seeed Studio XIAO ESP32-C5 from the v0.1.0 release, verify it with SHA256SUMS, then write it at flash offset 0x0.

python -m esptool --chip esp32c5 \
  --port PORT \
  write-flash 0x0 cirvane-v0.1.0-xiao-esp32c5-full.bin

Replace the serial port with the one shown by your computer. After reset, open it at 115200 baud and run selftest.

Operator experience

Clear commands. Visible outcomes.

The privileged USB shell exposes identity, health, resource use, Wi-Fi and update state without hiding refusals behind generic errors.

cirvane> selftest
selftest: PASS
cirvane> wifi connect
Scanning for nearby networks...
Select a network [1-4]: 2
Password: ************
Connected. Address acquired.

Current status

Built for evaluation, not unattended deployment

Cirvane v0.1.0 is a developer release. Authenticated remote OTA, first-boot confirmation and automatic rollback have been tested on the supported board. USB-shell authentication, hardware Secure Boot, flash encryption, energy qualification, independent penetration testing and safety certification are not complete.