HEART Embedded Systems logoHEART

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.

Statushealthypublic
Battery64.2 %public

What stays on the device

The owner or clinic sees these locally with a key. They are never reported.

Temperature in the box11.6 Celinternal
Card free93.9 %internal
Wi-Fi signal-62 dB[mW]internal
Zoom (Playbooks may change it)3 1internal
Infrared light (only at the button)30 %internal
Eggs seen4 1internal
Birds in view0 1private

Alerts in the last hour

Fault codeSeverityStatusRaised (UTC)What HEART says
power.battery-low
The battery needs charging soon.
warning resolved 22:39:0022:31:05The battery is low. Battery below 20 %. Too little sun to charge: clean the panel or charge the battery.
performance.too-hot
The device is overheating and may slow itself down.
warning resolved 22:18:0022:15:05It 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.full
Storage is full. Writing new data fails.
error resolved 22:07:3022:05:35The card is full. No room on the card: new pictures are lost. Fit a new card.
system.main-function-lost
The system cannot do its main job. Every HEART MUST be able to detect this.
critical resolved 22:07:3022:05:35The camera cannot take pictures. The card is full: pictures cannot be saved.
storage.nearly-full
Storage is almost full (the system states the threshold).
warning resolved 22:05:3022:03:05The card is nearly full. 6 % of the card is free. Let the app collect the pictures, or fit a new card.
system.main-function-lost
The system cannot do its main job. Every HEART MUST be able to detect this.
critical resolved 21:54:0021:51:05The camera cannot take pictures. The camera stopped answering: no picture is taken when a bird comes in.
connectivity.link-lost
A network link is down.
warning resolved 21:48:0021:44:05The 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.

TimeChangeStarted byResult
22:29camera.zoom 2.0 → 3.0rule zoom-in-on-the-eggs, asking again after its cooldownsucceeded
22:24camera.zoom 2.0 → 3.0rule zoom-in-on-the-eggs: the crowd left, eggs in view againdenied, not clipped: only 150 s since the last automatic change: cooldownSec is 300. The zoom stays at 2.0
22:22camera.zoom 3.0 → 2.0rule zoom-out-for-a-crowd: 5 birds in view for 10 ssucceeded
22:13camera.zoom 2.0 → 3.0rule zoom-in-on-the-eggs, asking again after its cooldownsucceeded: 300 s since the last automatic change; 3.0 reached
22:08camera.zoom 1.0 → 2.0rule zoom-in-on-the-eggs (adopted Playbook): the parent left, eggs in view for 10 ssucceeded: inside the envelope (1.0 to 4.0, step at most 1.0)
21:57camera.zoom 3.0 → 1.0the owner (owner key): to watch the parent back on the nestsucceeded 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.