Case Study · Flagship

The Smart Van

An edge-AI brain for a campervan. Talk to it and it controls the lights, reads the Victron batteries and solar, tracks the 4G connection and data use, watches a camera, and finds itself on a map. Everything runs locally on a Jetson Orin Nano, with no cloud in the loop.

Try the live demo Source on GitHub


The idea

Why build it

Van life means unreliable power and patchy 4G. A system that depends on the cloud is dark exactly when you need it. So the whole stack runs on the edge: voice recognition, the language model, and text-to-speech all live on one low-power module in the van.

How it works

The stack

VOICE

Local agent

A Gemma LLM via Ollama runs an agent loop with tools, fed by on-device ASR and answered through on-device TTS. No transcript ever leaves the van.

POWER

Victron telemetry

SmartShunt, SmartSolar, and an Orion DC-DC charger read out over BLE: live state-of-charge, solar yield, and load, parsed from the raw instant-readout frames.

CONTROL

Lights & devices

12V spotlights on a Shelly dimmer, driven through a clean device contract so new hardware drops in behind the same interface.

PLACE

Location & camera

GPS from the 4G router puts the van on a map; a webcam feed streams over the local network for a quick look outside.

CONNECT

4G & messages

Live signal, connection type, and a running tally of data used against the monthly allowance, with the router's SMS inbox surfaced right in the dashboard.

Engineering

Built for testing

Every layer has a test seam: device drivers run against a contract suite, the agent against a stub model, Victron parsing against golden BLE dumps, and the web API against an in-memory bus. The laptop runs the full suite green with no van attached, because the hardware adapters stay thin on purpose.

Python FastAPI PipeWire BLE Ollama Jetson Orin Nano


See it running

The demo is the real dashboard UI on simulated telemetry. Toggle the lights, watch the batteries tick.

Open the live demo