Deep architecture

The technical page.

Seven building blocks. One stack. From the ESP-NOW pipe at the wall to DOIL compile targets at the cloud — exactly how the work stack is wired today.

Block 1 · The pipe

ESP-NOW — peer-to-peer, no access point.

ESP-NOW is Espressif's connectionless layer-2 protocol. We use it for every sensor-to-gateway hop because it removes the access point from the dependency graph.

  • Sub-10ms latency between dongle and gateway
  • No DHCP, no association, no infrastructure WiFi
  • AES-128 unicast encryption between peers
  • Up to 20 peers per node; broadcast and unicast modes
  • Operates while the same radio also receives CSI from the customer's WiFi
[ ESP32-S3 dongle ] ──ESP-NOW──▶ [ ESP32 gateway ] │ │ ▼ ▼ reads CSI from aggregates events ambient WiFi (any AP) from N dongles forwards over TLS
Block 2 · The brain on the dongle

TinyML on ESP32-S3 — quantised, fast, <512 KB.

The dongle isn't a sensor that ships raw data. It's an inference engine that ships eight floats per frame.

Quantised int8

Models are quantised to int8 to fit ESP32-S3 flash and run inside the inference budget.

Sub-100ms latency

End-to-end: CSI frame in → 8 latent fields out → ESP-NOW frame on the wire in under 100ms.

<512 KB flash

Each TinyML model is sized to leave room for OTA: there is always a slot for a replacement model in the same device.

Block 3 · The skill swap

Dynamic model flashing — change the vertical, not the hardware.

The same dongle that sensed a warehouse last week can sense a laundromat this week. We push a new TinyML model over ESP-NOW; the dongle verifies a signature, swaps the slot, reboots, and is back in service in under thirty seconds.

cloud ──▶ gateway ──ESP-NOW──▶ dongle │ │ │ trained signs & verifies sig in authorises swaps slot darknoc per-tenant reboots reports back

This is why the same hardware is deployable across all 130 verticals in darknoc.org's registry — the vertical lives in the model, not the chip.

Block 4 · The memory

RuVector — gateway-resident vector store.

CSI events and latent-field embeddings live in a tiny vector store on the gateway. The cloud queries it; the cloud does not have to ingest raw signal.

  • Embedded, single-binary, no external dependency
  • Approximate nearest neighbour with bounded recall
  • Per-tenant isolation; deletion on demand for compliance
  • Backs the "what does this look like?" query the LLM asks every time the customer asks "what happened?"
Block 5 · The leading indicator

CSI precursors — what walls know before cameras do.

Fire, flood, and intrusion all leave a CSI signature before they leave a visual one. Water changes RF permittivity. Hot air bends the phase profile. A door that has just been opened changes the multipath.

Fire precursor

Convective hot-air columns deform the CSI phase profile seconds to minutes before flame is visible to a camera.

Flood precursor

Water on a floor changes RF permittivity. CSI amplitude shifts on every subcarrier; the signature is unambiguous.

Intrusion precursor

A door opens; multipath restructures. Presence in a zone that was empty registers in CSI 100s of ms ahead of any camera trigger.

Block 6 · The forecast

The anticipation map — what's about to happen.

From precursors plus the gateway's vector store plus the cloud's history, we produce an anticipation map: a low-resolution heatmap of what the site is likely to do in the next 5–60 seconds.

It's not magic. It's pattern matching across thousands of similar zones. The LLM doesn't predict the future — it tells the operator which historical pattern this minute looks like, and what happened next those other times.

Block 7 · The compile targets

DOIL — one intent language, two backends.

DOIL is the intent-first language documented at darknoc.dev. It compiles to TMF API agents and to ESP32 firmware. Same intent. Two delivery surfaces.

DOIL intent │ ├──▶ TMF API agents (darknoc.org · 42 toolboxes, 132 APIs) │ └──▶ ESP32 firmware (LatentField · CameraPlus dongles)

When a customer says "alert me whenever the back room is occupied between 22:00 and 06:00", that intent compiles to a runtime rule on the gateway and a notification agent on the cloud. Same source. Same DOIL file. Same audit trail.

The technical thesis

Why this stack, and not the obvious one.

AI agents should not only read documents; they should operate against executable, deterministic, auditable context — code, intents, tools, simulators, and rollback-safe workflows.
Cameras are an expensive default. WiFi CSI + selective vision + conversational interface is materially better in power, bandwidth, privacy, and resilience for a wide class of industrial monitoring workloads.