Birdhouse camera: live demo
healthy Pulse 59820323 · 2026-11-13T22:41:44Z · Changes things: adopted Playbooks (A4 demonstration)
A solar nest box camera. Two Playbooks the owner adopted move its zoom, inside the owner's envelope; the infrared light changes only at the button. HEART runs on the camera itself: an ESP32-S3 camera board in the nest box, with a push button outside the box.
Next in its story: connectivity.link-lost in about 2 minutes.
What HEART Hub receives
Only the public Pulse and public alerts: the status and fault codes. Nothing else ever leaves the device.
| Status | healthy | public | |
| Battery | 64.2 % | public |
What stays on the device
The owner or clinic sees these locally with a key. They are never reported.
| Temperature in the box | 11.6 Cel | internal | |
| Card free | 93.9 % | internal | |
| Wi-Fi signal | -62 dB[mW] | internal | |
| Zoom (Playbooks may change it) | 3 1 | internal | |
| Infrared light (only at the button) | 30 % | internal | |
| Eggs seen | 4 1 | internal | |
| Birds in view | 0 1 | private |
Alerts in the last hour
| Fault code | Severity | Status | Raised (UTC) | What HEART says |
|---|---|---|---|---|
power.battery-lowThe battery needs charging soon. | warning | resolved 22:39:00 | 22:31:05 | The battery is low. Battery below 20 %. Too little sun to charge: clean the panel or charge the battery. |
performance.too-hotThe device is overheating and may slow itself down. | warning | resolved 22:18:00 | 22:15:05 | It is too hot in the box. 43 Cel in the box, above 40 Cel. Shade the box; the IR light will not be raised. |
storage.fullStorage is full. Writing new data fails. | error | resolved 22:07:30 | 22:05:35 | The card is full. No room on the card: new pictures are lost. Fit a new card. |
system.main-function-lostThe system cannot do its main job. Every HEART MUST be able to detect this. | critical | resolved 22:07:30 | 22:05:35 | The camera cannot take pictures. The card is full: pictures cannot be saved. |
storage.nearly-fullStorage is almost full (the system states the threshold). | warning | resolved 22:05:30 | 22:03:05 | The card is nearly full. 6 % of the card is free. Let the app collect the pictures, or fit a new card. |
system.main-function-lostThe system cannot do its main job. Every HEART MUST be able to detect this. | critical | resolved 21:54:00 | 21:51:05 | The camera cannot take pictures. The camera stopped answering: no picture is taken when a bird comes in. |
connectivity.link-lostA network link is down. | warning | resolved 21:48:00 | 21:44:05 | The Wi-Fi link is lost. Pictures wait on the card and the monitor site hears nothing until Wi-Fi is back. The camera keeps working. |
What it changed, and who decided
A replay: the Action log of its one-hour story, the same changes every hour, as the downloadable simulator records them. On this page nothing is really asked, approved or changed.
| Time | Change | Started by | Result |
|---|---|---|---|
| 22:29 | camera.zoom 2.0 → 3.0 | rule zoom-in-on-the-eggs, asking again after its cooldown | succeeded |
| 22:24 | camera.zoom 2.0 → 3.0 | rule zoom-in-on-the-eggs: the crowd left, eggs in view again | denied, not clipped: only 150 s since the last automatic change: cooldownSec is 300. The zoom stays at 2.0 |
| 22:22 | camera.zoom 3.0 → 2.0 | rule zoom-out-for-a-crowd: 5 birds in view for 10 s | succeeded |
| 22:13 | camera.zoom 2.0 → 3.0 | rule zoom-in-on-the-eggs, asking again after its cooldown | succeeded: 300 s since the last automatic change; 3.0 reached |
| 22:08 | camera.zoom 1.0 → 2.0 | rule zoom-in-on-the-eggs (adopted Playbook): the parent left, eggs in view for 10 s | succeeded: inside the envelope (1.0 to 4.0, step at most 1.0) |
| 21:57 | camera.zoom 3.0 → 1.0 | the owner (owner key): to watch the parent back on the nest | succeeded at once: the zoom is not physical |
Now do it for your own device and monitor it here: https://heartcortex.ai/monitor. Start from a template, follow the HEART specifications, then register your device with its claim code.
What is inside: the code, how it works, and the specifications it follows · All demo devices
A demonstration that replays a one-hour story. Refreshes every 10 seconds.