The Toss Project
Giving AI agents real-world awareness and the ability to act.
Plug a sensor in. It just works.
Bus scanner sweeps I²C, 1-Wire, and UART every 30s. Unknown chip? TOSS fetches a signed driver descriptor from the online registry, verifies its ed25519 signature, and caches it forever in on-chip SPIFFS.
No firmware rebuild. No re-flash.
registry
drivers.opentoss.io →Every-one knows each other.
ESP-NOW radio. Peer-to-peer.
Up to 16 neighbors per node.
the entire frame fits in a single 250-byte ESP-NOW packet.
- src_mac6 B
- dst_mac6 B
- origin_mac6 B
- seq2 B
- type/flag/ttl/len4 B
- crc-162 B
- heartbeatrssi · uptime
- capabilityname · type · id
- commanddrv_id · op
- stream_data16 + 208 B
- ackseq window
- authed25519
- origin_machash key
- seq windowuint16_t
- ttl decrementon relay
- broadcastff:ff:ff:ff:ff:ff
- unicast ack8-frame window
- heartbeatevery 3 s
Sensor to the cloud, in under 5 ms.
Each TWP frame carries up to 52 samples. The gateway fans out to UDP, MQTT, and HTTP in parallel — HTTP runs on a dedicated low-priority task so the mesh RX hot path never blocks.
Hand any LLM a USB cable. That's the SDK.
TOSS speaks two languages: a UART shell and an MCP server. Claude, GPT, Ollama — anything that talks JSON-RPC or types into a serial port — drives the entire mesh as one device.
One script. One cable.
Auto-detects your board (ESP32 / S3 / C3), writes the partition table, flashes the firmware, opens the shell. No toolchain. Just Python 3 and USB.