Mesh Service: take part in the mesh, receive only #25

Open
opened 2026-10-05 20:07:16 +00:00 by twisla · 0 comments
Owner

What

The Service that keeps the device on the mesh at all times (CONTEXT.md: Mesh Service), receive only in M4: it keeps the Radio Service listening, decodes what arrives (#24), and holds what the Apps show.

What's known

  • On top of the Radio Service (M3, Q92), as a new client that never lets go: the radio no longer sleeps (Q100). A Sweep pauses it, visibly (Q99).
  • The node database: each Node heard, with its number, long and short name, when it was last heard, signal, hops away, and its position if it shares one.
  • Message history is a Log on the card (CONTEXT.md), per Channel and per Node, with its own Storage Clean-up category; Logs pause past 90 % full.
  • Status Bar: the mesh mark planned since M0, and the unread count shared with IRC.
  • Clock: time from the mesh sets the clock only when nothing better has (Mesh < NTP < GNSS).
  • Still receive only: the Radio Service has no transmit function (M3, Q94). That changes in M5 (#23 keeps the scope).
  • Memory: the radio's packet ring is 9.8 KB today; the node database and a message window come on top, next to IRC on TLS (52.6 KB free with the radio listening and IRC connected, M3).

Questions

Those of the design round (#23): where the node database lives and how big it is, the Log format, which Channels and keys, what's kept in RAM.

Related

src/services/radio_service.h, docs/milestones/M3.md, CONTEXT.md, #22, #23, #24, #20.

## What The Service that keeps the device on the mesh at all times (CONTEXT.md: Mesh Service), receive only in M4: it keeps the Radio Service listening, decodes what arrives (#24), and holds what the Apps show. ## What's known - **On top of the Radio Service** (M3, Q92), as a new client that never lets go: the radio no longer sleeps (Q100). A Sweep pauses it, visibly (Q99). - **The node database:** each Node heard, with its number, long and short name, when it was last heard, signal, hops away, and its position if it shares one. - **Message history** is a Log on the card (CONTEXT.md), per Channel and per Node, with its own Storage Clean-up category; Logs pause past 90 % full. - **Status Bar:** the mesh mark planned since M0, and the unread count shared with IRC. - **Clock:** time from the mesh sets the clock only when nothing better has (Mesh < NTP < GNSS). - **Still receive only:** the Radio Service has no transmit function (M3, Q94). That changes in M5 (#23 keeps the scope). - **Memory:** the radio's packet ring is 9.8 KB today; the node database and a message window come on top, next to IRC on TLS (52.6 KB free with the radio listening and IRC connected, M3). ## Questions Those of the design round (#23): where the node database lives and how big it is, the Log format, which Channels and keys, what's kept in RAM. ## Related `src/services/radio_service.h`, `docs/milestones/M3.md`, CONTEXT.md, #22, #23, #24, #20.
twisla added this to the M4 Mesh receive milestone 2026-10-05 20:07:16 +00:00
twisla added a new dependency 2026-10-05 20:07:16 +00:00
twisla added a new dependency 2026-10-05 20:07:16 +00:00
twisla added a new dependency 2026-10-05 20:07:17 +00:00
twisla added a new dependency 2026-10-05 20:07:17 +00:00
twisla added a new dependency 2026-10-05 20:07:19 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Reference: twisla/roro9stack#25