One perception, planning and fleet stack. Two vehicle domains. The world
model does not know whether the actuators underneath it are six hub
drives or four rotors — and it does not need to.
LiDAR, camera, radar, IMU, wheel and flow odometry, time-synchronised at the driver and stamped from a single clock.
02
Perception
Fusion into one metric world model: occupancy, tracked objects, traversability, and a calibrated confidence on each.
03
Planning
Route, behaviour and trajectory, solved against the world model and the vehicle envelope of whichever platform it is running on.
04
Control
Platform-specific actuation — six hub drives on the ground, four rotors in the air — behind one interface.
05
Fleet
Assignment, telemetry, health and intervention across every unit in the deployment.
Safety partition
02 — SEPARATE LANE
A real-time safety MCU runs alongside the AI compute, not inside it. It holds the envelope, the geofence and the stop condition on its own power and its own clock. If the AI compute stops answering, the MCU is already in control of the outcome.
Partitioning is the whole argument. An AI compute module running
learned perception is not a component you can argue to a
safety case on its own — so it does not carry the safety case. It
proposes; the MCU disposes.
The MCU has its own supply, its own clock, its own sensing for the
handful of quantities it must never be wrong about, and no
dependency on the network.
Deterministic failsafe
03 — DEFINED BEHAVIOUR
01
Link loss
The command link is not in the control loop. On loss, the platform continues the authorised plan or executes its return behaviour — it does not stop dead in a traffic lane, and it does not improvise.
02
Compute loss
If the AI compute stops answering the watchdog, the safety MCU already holds the envelope. It brings the platform to a defined safe state on its own power and its own clock.
03
Perception degradation
Confidence is a first-class output, not an afterthought. As it falls, the planner derates speed and widens clearance before anything becomes a fault.
04
Geofence breach
Boundaries are enforced on the safety partition, not in the planner. A software fault upstream cannot authorise a breach.
Releases move through simulation, a shadow fleet and a canary cohort
before general rollout. Every artefact is signed; every unit can roll
back to the previous known-good image without a site visit. Updates
never apply mid-mission — the unit takes them at a defined idle
state, on a charger, inside a maintenance window.
FLEET TELEMETRY
Health before it is a failure
Pose, power, thermal, module state and planner decisions stream to
the fleet layer continuously, with a full-rate local log retained on
the unit for post-incident work.
Drive-unit current signatures and pack behaviour drive maintenance
scheduling rather than a fixed calendar.
SIMULATION
Every field failure becomes a test
Logs replay against the stack bit-exact, so a fault seen once on a
site is a regression case forever. Synthetic scenarios cover the
cases we cannot safely stage — sensor dropout, adversarial
occlusion, degraded traction — and gate every release.
Developer interface
05 — FLEET API
Fleet operations are addressable from your own systems. Dispatch a
mission, subscribe to its event stream, and read back every planner
decision that produced the result — the same stream the operations
console is built on.
Platform selection is a constraint, not a commitment. Ask for
"any" and the assignment layer
picks the unit that can actually serve the route.
Interface preview. The endpoint contract is not yet frozen.