Expand description
The host stack this tool becomes to reach a device over the mesh.
Every other part of this tool speaks ULCP down the wire to the radio
it is attached to. Reaching a device across the room means borrowing
that radio and becoming a node: running a host MAC over the
attachment, and speaking the same ULCP grammar to the far end,
carried by the Node Management binding
(docs/protocol/src/app-node-management.md).
Two identities are in play and it is worth keeping them apart. The
attached radio has its own device identity, which identity shows.
This tool has a separate, persistent administrator identity —
admin-key prints it — and a device is managed from here only once
that key is listed in its PROP_DEV_ADMINS, which dev-admin add
does over a bench link.
Structs§
- Mesh
Home - What a mesh session borrowed, and how to give it back.
- Node
Stack - The tool as a node: a host MAC over the borrowed radio, one local node standing for the administrator identity, and the pump that keeps both moving.
Enums§
- Greeting
- Whether opening a session should say hello first.
- Step 🔒
- One step of the driver loop: what the select settled on.
Constants§
- ACKS 🔒
- CHANNELS 🔒
- DUP 🔒
- FRAME 🔒
- IDENTITIES 🔒
- One identity — the administrator’s. Channels and queues are sized for a tool that talks to one device at a time and holds one exchange open while it does.
- OPERATION_
TIMEOUT - How long the whole operation may take before the tool gives up.
- PEERS 🔒
- TX 🔒
Traits§
- Radio
Errand - Something this tool runs as a node on its own radio.
Functions§
- admin_
identity - Load the administrator identity, generating one the first time.
- adopt_
phy - The device’s live PHY, as a radio configuration.
- borrowing_
the_ radio - Take the attachment over as this tool’s radio, run
errandon it, and hand the attachment back. - build_
mac - Take the radio over as this tool’s MAC.
- counter_
store - Open the frame-counter store the administrator identity persists to.
- describe
- What a failed exchange means to somebody holding the tool.
- drive 🔒
- The driver task: owns the borrowed radio for the life of the session, carries every request the link hands it, and gives the radio back.
- load_
or_ 🔒create_ identity - open_
remote - Borrow the attached radio and open a ULCP session to
targetover the mesh. - open_
session 🔒 - Open the device handle at the far end of
link. - prepare_
radio - This host owns the MAC and does its own filtering, so the radio’s provisioned receive filters must not gate delivery. The mode is session-scoped and touches no provisioning.
- restore_
local - End a mesh session and put the local attachment back.
- serve 🔒
- show_
admin_ key admin-key: print the public key a device must list to be managed from here.