Skip to content

Test b54 — RX-fed nearest-repeater detection (#150)

Pre-release
Pre-release

Choose a tag to compare

@Strycher Strycher released this 04 Jul 11:11

RX-fed nearest-repeater detection (#150) + everything to date.

Fixes why b53 fell back to "Ping Repeater": the direct-repeater list was fed only from adverts and hard-expired at 30 min — useless under 12-hour advert cadence.

Now: the nearest/strongest direct repeater is detected from the last hop of every received packet (messages, ACKs, adverts) — not just adverts. The SNR + path were already parsed on every RX; we just stopped throwing them away. A repeater with no committed route now traces through your strongest directly-heard repeater automatically: [hop → target → hop].

How to test:

  • Tap a repeater past your own → Path Trace → title should read "Path trace via <prefix>" and route multi-hop (not SENT → timeout).
  • Your own repeater (direct neighbour) still does a plain one-hop ping — correct.
  • If the app knows no direct repeater, a picker opens so you can choose the first hop instead of a doomed ping.

Mobile side-benefit: as you drive, the list refreshes from whatever traffic you're actually hearing, so it tracks your current location — and the upstream "nearest repeater signal" meter comes alive too (fed by traffic, not 12h adverts).

Under the hood: notify-on-change only (no per-packet UI churn); list stays capped at 5; no hard 30-min drop, so a known repeater stays usable for routing between reads. No new per-packet cost — the parse already ran.


Downloads

  • Android: app-release.apk — install on your phone.
  • Windows (desktop): offband-meshcore-b54-windows.zip — unzip the whole folder, then run offband_meshcore.exe (it will not run on its own — it needs the folder). Unsigned, so Windows SmartScreen shows "unknown publisher" → More info → Run anyway. If a clean machine hits a missing-DLL error, install the Microsoft VC++ x64 runtime (already present on most Win10/11).

Test build — not merged or released. Windows is unsigned; fine for known testers.