The Canary checks itself.
Every Canary runs a 10-probe self-test at boot and scores its own health 0–100%. Every feature (camera PEEK, mic, motion, GPS, thermal) is one tap to test. Watch the Doctor run, then press t on a real Canary's console for the self-test and a health line per feature, all at once.
Your Canary firmware · we pick it for you
No decision needed: this is the build most people should run, and everything below matches it. Curious? Developer mode lets you choose any board and level.
⚙️ Developer & education — choose any board & build level
Only the S3 Canary has dev / release / full levels — the others are single builds. BLE + mesh live only in S3 · full (and the WAP), because they don't fit the smaller OTA slots. The tests below re-light to match whatever you pick.
Boot self-test · 10 probes · 0–100% health
Runs on every boot. Re-run it with t on the console or GET /api/selftest. Each probe is worth 10%.
Feature tests & demos
Each is a real endpoint or console command in the firmware. Tap Run to see what it does (emulated here; a real device returns live data).
🔵 Bluetooth bring-up · the hard one
BLE is the heaviest feature, so "it doesn't work" is really several different failures. The test reports the first rung that failed and what to do — including the honest reason it's a [env:full]-only build.
🧳 One more check, for the hub
Is your hub reachable from the internet? Run
python3 tools/away_access_check.py on it: it asks your own router what it
forwards. Exit 0 means clean; if not, Away From Home has the fix.
This is an emulation for illustration; live results come from the device. The probe list and feature tests are pinned to the firmware in onboarding-spec.json and checked in CI, so this page stays in step with the device. Firmware is open source on GitHub.
