Inspiration
Most "edge AI" demos quietly cheat: they stream a raw sensor feed straight to an LLM in the cloud and do whatever it says. That falls apart the moment you put it in a real room. Every polling cycle becomes a full model call, so cost and bandwidth explode. A raw sensor stream is a precise, reconstructable record of a private space. And the instant the network hiccups, the device goes brain-dead — no uplink, no intelligence, no behavior at all.
Track 5 names these exact constraints — bandwidth/latency, privacy, and offline degradation — so we built Sentinel specifically to answer them, instead of building a demo that ignores them.
What it does
Sentinel is a physical guardian agent running on a Raspberry Pi 4B wired to an Arduino UNO. You give it a goal in plain English — "keep my desk comfortable and warn me if someone comes close" — and it perceives through real sensors (temperature, humidity, distance, ambient light), reasons through Qwen Cloud, and acts through real actuators (a servo, an RGB status LED, and a buzzer).
It runs a continuous perceive → reason → act loop, and it degrades gracefully: pull the network cable and it keeps guarding on a local rules engine, then resumes cloud reasoning the moment connectivity returns.
How I built it
Hardware: An Arduino UNO reads a DHT11 (temp/humidity), an HC-SR04 ultrasonic sensor (presence), and a photoresistor (light), and drives a servo, RGB LED, and buzzer. The Pi talks to it over a deliberately tiny line-based serial protocol at 115200 baud (READ, SERVO=, RGB=, BUZZ=), where each command maps one-to-one onto a tool the model can call.
Two-tier reasoning on Qwen Cloud (Alibaba Cloud Model Studio, Singapore): Every cycle, a fast tier (qwen3.7-plus) triages a coarse state summary and returns a single word — NORMAL or ESCALATE. Only on escalation does the deep tier (qwen3.7-max) run, with full tool-calling access, to decide and explain its actions. So bandwidth scales with events, not with time.
Privacy filter: Raw sensor values are bucketed into coarse language on-device (T=23,H=41,DIST=12.4 → {"proximity":"someone very close"}) before anything is sent. The cloud gets enough to reason, never enough to reconstruct the room.
Offline fallback: Cloud calls are wrapped so failures are caught, not fatal. On a network drop, Sentinel switches to a deterministic local rules engine, keeps sensing and actuating, and auto-recovers when the uplink returns.
Challenges I ran into
A phantom hardware bug. The presence trigger kept doing nothing. The agent logic was fine — the ultrasonic was reading -1 because its power pin had slipped onto the dead half of a split breadboard rail. Moving it next to a known-live component fixed it instantly. Making offline degradation real, not narrated. It's easy to claim graceful degradation; proving it meant actually simulating network loss and confirming the device kept operating on local rules and then recovered on its own. A rules-vs-docs ambiguity. The build session called Alibaba Cloud deployment a "plus point," while the written rules require it — a gap I had to reconcile against the deadline.
Accomplishments that I'm proud of
A genuinely working physical agent — not a mockup — that chooses its own actions and explains them: "Sounded the alert, lit red, and pointed toward the intruder because the proximity sensor detected someone near your desk." The two-tier design that makes the bandwidth argument visible — most cycles never touch the expensive model. Privacy handled by construction: the raw stream physically never leaves the device. Offline survival demonstrated live, including automatic recovery.
What I learned
Real edge AI is an orchestration problem, not a prompting problem — deciding what runs where, and when matters more than the prompt. Error messages lie; the alias/quota trap cost real time and taught me to verify assumptions against primary docs, not surface symptoms. Hardware humility — most of my "software bugs" were loose wires. A tiny, debuggable serial protocol paid for itself many times over.
What's next for Sentinel
Complete a persistent Alibaba Cloud backend (Simple Application Service / ECS) for an event dashboard and cross-session memory. Add a small on-device model so even the triage tier can run fully offline. Expand the sensor/actuator set (camera presence, environmental controls) and let multiple Sentinels coordinate as a mesh. Voice interaction for goal-setting and spoken alerts.
Built With
- alibaba-cloud
- arduino
- python
- qwen
- qwen-cloud
- raspberry-pi