A technical demonstration of governed, human-in-the-loop edge-AI perimeter patrol — the patrol unit and the person authorizing it on one real-time link, on site or remote.
“Every autonomous security robot acts on its own. Ours holds and asks.”
Warden Edge is a concept for continuous perimeter coverage at commercial sites, where the machine never takes an action on its own.
Commercial sites have areas fixed cameras cannot reach — back lots, far fence lines, unwired outdoor storage, loading docks. Coverage is bounded by where cable runs. What cannot be wired is not watched, and what is not watched leaves no record.
Intelligence runs on a fixed edge-AI box on site. A low-cost patrol dog acts purely as an actuator, carrying a camera into the gap. Every event runs through the same loop, and the loop stops at a human before anything happens.
An unsupervised machine making decisions on a property is an exposure, not a safeguard. Requiring human authorization before any response is the point of the design — it is what makes the resulting record meaningful, and what the value actually rests on.
The system never acts autonomously. Detection escalates to a person; nothing executes without an explicit human decision.
From detection to authorization, the patroller does not move. No command reaches the locomotion controller while an event is open.
Inference happens on the local edge box. No cloud dependency for the perception or decision path, and video need not leave the premises.
Authorization reaches the operator wherever they are, as a notification on their phone. Who approved, in what role, and when are treated as part of the event itself — not as logging bolted on afterwards.
Every event produces a timestamped authorization record capturing what was detected, how it was corroborated, who authorized the response, and confirmation that the authorized action completed. The record shows the action happened, not just that it was ordered.
Warden Edge holds and asks — and proves it.
Each of those alternatives does something well. A fixed camera is the cheapest way to see one point continuously; a guard brings judgement a machine does not have; a robot covers ground without staffing it. The difference is what happens in the moment something is found.
These are the concept’s intended advantages, not results from deployments. Warden Edge is pre-launch: nothing here is measured from a running system, and no customer outcomes are claimed.
A single event, end to end — from the patrol noticing something to the authorization record being written.
The scenario: Mid-afternoon at a busy distribution yard. The patrol dog spots someone loading goods from a restricted area into a private car. By day that could be anyone — but four seconds of video tells the story: items carried out one at a time, glances around, no uniform, no work order. So the dog doesn’t act on its own. It shows a person what it saw, recommends a response, and waits for approval — then plays an audio warning to leave, never approaching. The whole chain becomes one timestamped record.
One thing worth noting about the link itself: the patroller and the edge-AI box no longer have to share a local network. The unit joins as a WebRTC peer over the same STUN/TURN path that lets the operator authorize from anywhere, so it can attach over a separate segment or a cellular link instead of the box’s LAN. The dog is still walking this site — only its network path is flexible — but that is what would let one box, or one monitoring centre, command units that are not on its LAN. Intended target-platform behaviour for the demonstration.
| Elapsed | Step | What happens |
|---|---|---|
| T−3.6→T+0.4 | Pre-roll | Rolling buffer already holding the approach |
| T+0.0 | 01 Detect | Detector fires — one person, 0.91 |
| T+0.4 | 01 Detect | Frames agree. Event raised. Buffered 4s segment sent |
| T+0.5 | 02 Cross-verify | ONVIF event at 14:32:09 inside window — corroborated |
| T+0.8 | 02 Cross-verify | Full-resolution confirm |
| T+0.9 | 02 Cross-verify | Track summary: dwell 3.8s, net translation ~0.4m |
| T+1.0–4.0 | Reasoning | Resident model reasons over the 4s segment |
| T+4.1 | 03 Hold / 04 Authorize | Escalate. Gate opens; notification fires |
| T+14.5 | 04 Authorize | Approved — role, operator, timestamp, surface |
| T+14.7–20.2 | 05 Execute | Deterrent plays from held position |
| T+20.2 | 05 Confirm | Unit reports the track played |
| T+24.0 | 06 Record | Record signed and closed |
The four-second segment costs about 1.3 seconds — all of it absorbed by the ten-plus seconds a human takes to reach for a phone. Illustrative timings, consistent with the example authorization record below; representative of the intended design, not measurements from a deployed system.
Detector: person at restricted storage — confidence 0.91
Yard-side camera agrees — corroborated. Real, but does it warrant a person?
Four-second segment: loading goods into a private car, no work order. Escalating — held for a person
Approved on phone — Site Supervisor · role: supervisor
Deterrent played. Authorization record written.
Step 06 produces an artifact, and the artifact is the point. This is an example of the authorization record the loop above generates — the full chain of causation behind a single event, from what was perceived through to confirmation that the authorized action actually completed.
Why the confirmation matters: the record shows the action was carried out, not merely ordered. A log bolted onto a robot after the fact can say a command was sent; it cannot show that a human authorized it first and that the authorized action then completed. That gap is the difference between an activity log and a defensible record.
These are the two components the demonstration is being built toward. They are a target platform for the concept — not a finished, integrated product, and not a system available to buy.
An edge-AI box that enables real-time vision-language model execution on-site. It carries the perception and governance stack: on-device inference, camera ingestion, and the authorization workflow. This is where the reasoning happens and where the authorization record is produced.
A deliberately low-cost commodity actuator. Its job is to patrol, to carry a camera into the places fixed cameras cannot reach, and to play an authorized audio deterrent through an audio module on its expansion port. It holds no decision authority of its own — the intelligence stays on the fixed box, and the authorized response is a contained deterrent rather than pursuit.
The stack behind the demo above: on-device vision-language inference paired with a real-time operator surface, communicating over a local WebRTC link.
The on-site compute for perception and reasoning — running locally, with no cloud service in the decision path.
Cheap perception at the sensor gates expensive reasoning. The system watches continuously at low power and reasons hard only when something happens.
A small detection model runs on the camera node carried by the patroller, so detection happens before any video crosses the network. It does one job: notice that something is worth looking at. Running this rung all night is cheap enough to be practical.
The ~2.3 TOPS integrated NPU confirms the detection on a full-resolution frame and merges the patroller's detection events with ONVIF person events from the fixed cameras, correlating across a lookback window to reach a corroborated or uncorroborated outcome before anything heavier runs.
Optional: Tier 1 can also match a detected face against a facility-maintained roster held on the box — off by default, opt-in per site, and a known/not-known signal only, never an action.
The vision-language model on the discrete high-performance NPU is Tier 2. For the demonstration that model is RynnBrain-4B — an open embodied vision-language model from Alibaba DAMO Academy, built on Qwen3-VL-4B. It is purpose-built for egocentric video understanding, meaning spatial and fine-grained reasoning from a moving camera’s viewpoint, which is the situation a patrolling unit’s camera is in. It reasons over a short video segment — roughly four seconds — not a single frame. That matters because a still frame cannot distinguish walking past from loitering, approaching from leaving (someone walking away needs no deterrent at all), or a hand resting on a gate from one testing it. “Perimeter breach” is inherently temporal: it means crossed, which one frame cannot show. Static false positives — a person printed on a truck side, a mannequin, a poster — also disappear under motion. The model is resident and warm at all times: idle means zero requests in flight, not powered down and not unloaded. It is resident precisely because a cold model would stall inside the window where a person is waiting to be told something — resident is about never paying a first-event penalty, not about throughput. The saving is not avoiding a model load. It is avoiding spending inference on nothing: issuing a request for every frame of an empty yard would cost power and silicon budget all night for no information. Gating requests behind detection and correlation is what makes continuous coverage viable on a box this size. This describes the intended target platform architecture.
Detection runs at the sensor; correlation and reasoning run on the box. The reasoning tier is exposed over a standard chat-completions REST API, with RynnBrain-4B — the third-party open embodied model named above, built on Qwen3-VL-4B — running locally and no internet connection in the decision path. Open weights are what make the on-premises argument hold: the model is a file on the box, not a service call.
Several camera streams processed together — fixed perimeter cameras alongside the camera carried by the patrol dog. Corroboration comes from ONVIF person events emitted by the fixed cameras, correlated against the patroller’s detection across a lookback window.
Real-time video, audio, and data channels between the operator console, cameras, and patrol dog. Sub-second latency, carried on the local network.
Multi-agent workflows built on an agent framework, with the authorization step modelled as an explicit gate that the workflow cannot proceed past on its own.
Capabilities extended through Model Context Protocol tools, so site systems and data stores can be connected without changes to the core reasoning loop.
Open-source vision-language models can be fine-tuned on domain-specific data, so detection and description reflect what actually matters at a given kind of site.
Components ship as containers behind a gateway service, which keeps the demonstration environment reproducible.
Constraints on model output, kept separate from the authorization gate — guardrails shape what the system says, human authorization governs what it does. Qwen3Guard-Gen-0.6B runs on the edge box alongside the reasoning tier for this.
What it guards is narrower than chat safety. It constrains what goes into the operator notification and the authorization record, because a description of a person carries real consequences once it is written into a record an insurer or a legal team may read. Its job is keeping protected-attribute inference — apparent race, ethnicity, gender, age — out of that record. “Person carrying goods from the restricted storage area” is operational; a demographic description is a different kind of document entirely.
This shapes description, not action. It is not a substitute for the gate: the loop still stops and waits for a human either way.
The mobile actuator that carries a camera into the gap and plays an authorized audio deterrent from a held position. The specifications below describe the intended actuator platform for the demonstration — a deliberately low-cost commodity unit that holds no decision authority of its own.
Three joints per leg across four legs, driven through multi-link connecting rods with inverse kinematics for greater effective torque. Enough articulation to cross uneven ground and steps, and to keep the camera steady as a moving viewpoint.
Twelve serial-bus servos with real-time position, speed and voltage feedback — roughly 2.3 kg·cm nominal torque, up to about 5.2 kg·cm locked-rotor. Aluminium-alloy and cast-nylon structure running on 40 bearing joints.
A 9-axis IMU — accelerometer, gyroscope and magnetometer — drives self-balancing and gait stability. An onboard voltage and current monitor tracks power draw in real time.
A 5-megapixel ultra-wide camera, roughly 160° field of view. This is the mobile viewpoint in the loop — the one whose report gets cross-verified against a fixed perimeter camera before anything escalates. Visual detection and reasoning run on this daylight RGB camera, so the perception loop as demonstrated is daylight-dependent. Night operation is a supported extension by adding infrared or thermal imaging to the camera payload, and is not part of the current demonstration.
A dual-core microcontroller runs the real-time loop for inverse kinematics and gait generation. An optional single-board Linux host can be added on top for on-unit vision work.
The unit joins as a full WebRTC peer: one connection carries its camera video and, on that connection’s DataChannel, the authorized actuation commands. Because the DataChannel uses the same STUN/TURN traversal the operator’s phone already relies on, an authorized command can be dispatched from outside the local network as well as from the on-site box — which is what makes remote-monitoring-centre and multi-site operation possible. The DataChannel gives reliable, ordered delivery with connection state built in, so dispatch and the execution confirmation return on the same synchronized channel rather than being bridged back from a separate protocol. Control rides the same WebRTC DataChannel transport this project’s architecture is built around. In this architecture the decision path stays on the edge-AI box — the unit receives authorized commands, it does not originate them.
Two lithium-ion cells in series, around 7.4 V nominal and 5200 mAh, with over-charge, over-discharge, over-current and short-circuit protection. Roughly one to two hours of continuous operation, or twenty to thirty minutes under sustained high load. Operates while charging.
Gait generation runs on the controller with IMU-driven self-balancing. Movement sequences can be recorded and played back as task files, which is what makes a repeatable patrol route possible.
The camera node keeps a rolling buffer of recent low-resolution frames, so when a detection fires the four-second segment is already complete and includes the approach — the most informative part, and the part a post-trigger-only system throws away. Without pre-roll, a four-second segment means waiting four seconds after detection; with it, the segment costs no added wait.
The patrol route is established by walking the unit through it once. Waypoints are captured as RTK coordinates as it goes, and every subsequent pass replays the route against those coordinates. This is deliberately not a mapping session: no SLAM, no path planner, no engineer on site. When the yard layout changes, re-recording the route is walking it again.
Two consequences follow, and they are the point. Install stays simple enough for a security dealer — a deployment model that needs a robotics engineer per site does not scale. And a pre-registered route is a governance property rather than a limitation: a site manager can be told exactly where the unit walks, and a record can name the waypoint an event occurred at. A robot that plans its own path goes wherever the planner decides, which is the unsupervised machine making decisions on your property that this concept exists to avoid.
A GNSS receiver on the unit takes corrections from a base station on the site itself, giving centimetre-class position. Corrections travel over the local network — no internet dependency and no subscription service, consistent with the rest of the decision path running on-premises. The receiver is a small addition on the unit’s expansion port, not part of the base commodity platform.
RTK needs sky view. A perimeter running beside a building wall or between stacked containers will drop from a fixed solution to a degraded one, and that is normal rather than exceptional. Position confidence is recorded with the event, so a degraded fix is visible in the record rather than silent.
Precise position is what lets the record state which zone was breached, and how far the unit was from the subject, as measurements rather than assertions.
Roughly five ranging units are fanned across the front and daisy-chained on a single CAN bus. Each carries an embedded ranging MCU, reports a distance, and is given its own ID. Unlike the visual camera, the ranging sensors work in complete darkness — obstacle sensing does not depend on light.
The outdoor-capable units have a narrow beam, and rather than treat that as a limitation the design turns on it: each narrow beam is a distinct angular bin, so the fan produces a multi-point horizontal scan. Presence, range, and which side — from one bus, with no moving parts and nothing spinning to wear out. One unit in the chain can be angled down and forward, where a sudden increase in range indicates a drop-off or a dock edge. Same bus, one more ID. Like the GNSS receiver, these are additions on the expansion bus, not part of the base commodity platform.
The response is a fixed maneuver, not a planner:
Each leg is verified against RTK rather than dead-reckoned. If the route is still blocked, the offset widens once to ~1.5 m and retries. That corridor is a hard limit. All distances here are design parameters for the demonstration, not measured results.
This is not navigation. No map, no costmap, no path search, no SLAM. One canned maneuver with a single variable, bounded by a corridor fixed at install, and every leg provable from the position log. It is not a navigation stack and is not intended to become one.
When it fails. Two attempts is the whole budget. The unit then skips to the next waypoint and records the gap — segment 6→7 blocked, waypoint 7 not scanned this pass. That is deliberate. An obstacle is a coverage gap, and coverage gaps are what this concept exists to close. A robot that silently routes around a problem and never mentions it has given the operator nothing; one that reports which ground went uncovered has given them something a patrol contractor does not.
Entanglement is separate and does not use the maneuver. Sustained servo current with no translation means netting, cable or shrink wrap: stop immediately, no retry, and report the unit immobilised with its position. Continuing to walk makes entanglement worse.
A blocked route can also be handed to the reasoning tier, since the segment buffer and the model are already there — “route blocked by what appears to be a stacked pallet; this position was clear on the previous pass.”
Route deviation happens only while patrolling. Once a detection is raised the unit is already stopped and stays stopped — no route logic runs while an event is open.
An onboard OLED status display, RGB indicators and an audible buzzer for status tones. Spoken deterrent audio is not this buzzer: it comes from an audio module fitted to the multi-function expansion port, which also exposes spare I/O, serial lines and power for additional sensing.
Optional. An on-site surface where an event can be presented, held, and either authorized or declined. It is not required for the loop to function — authorization reaches the operator's phone regardless, which is what makes approval possible when nobody is on site. The console is a second surface for sites that want one, not a dependency.
An escalated event is pushed to the operator's phone and, where a console is installed, presented here too. Either surface can approve or decline; the loop waits for whichever answers first. Declining is as much a recorded outcome as approving.
Face recognition running on the console itself establishes who is at the panel, so an authorization can be attributed to a person and a role. Processed on the device.
A real-time operating system gives consistent, predictable response times — useful when the interface is the thing standing between a detection and an action.
Hardware video encoding for WebRTC streaming, so camera feeds and the patrol dog's view can be reviewed live before a decision is made.
Dual-core RISC-V running at up to 400 MHz, built for HMI workloads with rich I/O rather than general-purpose compute.
Available I/O for additional sensing — 60/77 GHz radar for 3D person sensing, additional cameras, or bus protocols such as RS-485.
Site types with large outdoor footprints and coverage gaps fixed cameras cannot close. These are candidate environments for the concept — none of them are deployments.
Large outdoor footprints with trailer parking, gates, and fence lines well beyond the reach of wired camera coverage.
Long drive aisles and outdoor unit rows where continuous coverage is difficult and after-hours activity typically goes unwitnessed.
High-value assets parked outdoors across an open lot, with perimeters longer than the camera runs that serve them.
Open lots where inventory sits outside overnight and the back rows are the least observed part of the site.
Loading docks, side yards, and outdoor storage — the areas around a building rather than inside it.
Common questions about the concept and the demonstration.
No. Warden Edge is pre-launch. What this page shows is a concept and a technical demonstration of the underlying loop. There is no shipping product, no deployment, no pilot programme, and no results to report. Anything on this page describing site types or hardware describes intent, not something already delivered.
No — that is the whole point of the design. The patrol dog is an actuator. It patrols, carries a camera, and plays a response that a person has already authorized. Detection and reasoning happen on the fixed edge-AI box, and the loop deliberately stops and waits while an authorization notification goes to the operator's phone.
From detection to authorization, the patroller does not move. No command reaches the locomotion controller while an event is open. The patroller detects while already stopped in dwell, so there is no motion of any kind to interrupt or reverse.
The authorized response is deliberately contained: an audio deterrent played through the audio module on the unit's expansion port, asking the person to leave the premises, from wherever the unit already is. It does not navigate toward the subject, and it has no authority to. Speak, do not chase — the restraint is part of the design, not a limitation of it.
The distinction matters because an unsupervised machine taking action on a commercial property creates exposure rather than removing it.
Yes, and that needs stating plainly. If the model can escalate, it can also decline to, and that is a machine making a decision. The distinction that matters: the model decides what reaches a human’s attention. It never decides what happens. Triage, not authorization. No action is ever taken without a person — that claim is unchanged.
Three constraints bound the triage:
1. Suppression is recorded. A non-escalation writes a record entry with the segment reference and the reasoning. This is not a loss, it is due-diligence evidence. An operator who can produce “at 01:40 a person was observed in zone C, assessed as site staff on the scheduled dock round, not escalated” is in a stronger position than one whose system silently saw nothing.
2. Suppression is bounded. Above a detector-confidence threshold, or with corroboration present in a restricted zone, escalation is unconditional and the model’s assessment does not apply. Judgment is exercised only inside a band the operator defines.
3. Suppression fails open. Timeout, malformed output, or a hedged answer all escalate. A slightly under-informed notification costs ten seconds; a suppressed real event costs the thing this product is for.
It recommends. The notification carries what was observed, why it warrants a response, and a recommended action with the reasoning behind it — so the operator is making an informed decision rather than interpreting a raw detection at two in the morning.
The system recommends; the person decides. The operator adjudicates the recommendation: approve it, decline it, or authorize a different action. Nothing executes without that decision, exactly as before — presenting a recommendation does not move the gate, it only means the human is better informed when they reach it.
Recommendations are bounded. They are drawn only from the same pre-authorized, non-confrontational action set the system could ever execute — an audio deterrent from a held position, no approach, no pursuit. The system selects from that fixed set and explains why; it does not compose new actions. That keeps this consistent with triage: the model shapes what reaches a person and what it suggests, never what happens.
A bounded sidestep, tried twice. The unit stops short of the obstruction, reverses, offsets laterally away from the fence line, runs parallel to the route and rejoins it. If it is still blocked the offset widens once and retries. That is the whole budget.
After the second attempt the unit skips to the next waypoint and records the gap — which segment was blocked, and which waypoint went unscanned on that pass. An obstacle is a coverage gap, and coverage gaps are the thing this concept exists to close, so reporting the uncovered ground is the point rather than an admission.
This is not a navigation stack. There is no map, no path search and no SLAM — one fixed maneuver with a single variable, inside a corridor set at install. And it never applies while an event is open: once a detection is raised the unit is already stopped and stays stopped.
Corroboration comes from ONVIF person events emitted by the fixed cameras the site already runs. When the patroller raises a detection, the box correlates it against ONVIF events inside a lookback window and reaches one of two named outcomes.
Corroborated — the event falls inside fixed-camera coverage and an ONVIF person event agrees within the window. Two independent sources.
Uncorroborated, high confidence — the event is in a blind spot, which is the case the patroller exists for, so there is no second source to correlate against. A higher detection-confidence bar carries it alone. This is the honest limit of the approach: where the patrol is most valuable is exactly where corroboration is unavailable.
Both outcomes escalate to a human. Which one applies is stated in the notification and written into the record, and an uncorroborated event is never described as verified.
Corroboration and reasoning answer different questions. Corroboration answers is this real — it kills phantom detections. It does nothing about a person who is genuinely there and genuinely should be: a contractor, or scheduled staff on a legitimate task. There the detector is right, both sources agree, and the event still should not wake anyone. Deciding that is the video model’s job, not corroboration’s.
Corroboration uses the cameras already on site — closing the gap needs no additional fixed hardware. The coverage audit establishes which of them qualify: a camera has to emit classified person events to corroborate. Cameras that emit motion events only are non-corroborating, and their zones join the uncorroborated class. Motion on a windy night is noise, and counting it as agreement would make false positives worse rather than better — so the audit maps person-event coverage, not merely camera coverage.
The intent either way is to reduce the number of times an authorization notification lands on someone's phone for something that isn't real, so that an escalation carries weight.
The perception and decision path is designed to run on-premises. Inference happens on the local edge box, and the console, cameras, and box communicate over the local network — so video need not leave the site for the loop to function.
Connectivity would be optional and relevant to things like remote access or software updates, not to detection or authorization.
Three reasons. Continuous video against a cloud API means continuous per-query cost, which scales badly for something meant to watch a perimeter all night. Round-trip latency sits in a loop that may need to respond quickly. And continuous outdoor video from a commercial site is exactly the kind of data an operator has good reason to keep on their own premises.
Running the model on the edge box addresses all three at once.
They are optimized for different jobs. The console handles display, touch, camera, audio, and real-time interaction on an RTOS, where predictable sub-millisecond response matters. The edge box handles compute-intensive work — running vision-language models, reasoning over multiple camera streams — on ARM64 Linux with NPU acceleration.
Keeping heavy compute off the interface is what lets the interface stay responsive.
Yes, in principle. Open-source vision-language models can be fine-tuned on domain-specific data, and retrieval over site-specific context can shape how events are described. A vehicle lot and a self-storage site care about different things, and the descriptions attached to a record should reflect that.
If you work with commercial sites, build in this space, or just want to understand the approach, get in touch.