Skip to content

Repeater OLED display: show battery status and packet/repeat statistics #3224

Description

@shanebivens

Repeater firmware currently tracks useful stats via CLI (stats-core, stats-packets, stats-radio), but none of this surfaces on the OLED display for boards that have one (T096, and other similar screen-equipped hardware).

For a repeater mounted somewhere out of easy reach, being able to glance at the screen and see basic health info would be a big usability win over having to pull up a laptop and connect via USB or remote admin every time.

Requesting the display show, at minimum:

Battery percentage or voltage
Uptime
Packets forwarded (some rolling window, e.g. since last boot or last 24h)

Nice to have if feasible:

A lifetime repeat count that persists across reboots (not just since-boot, since stats-packets resets on reboot and clear stats wipes it manually)

Note: Companion firmware on the T096 already renders a battery icon on-screen, so at least some of the UI groundwork may already exist and could potentially be extended to Repeater firmware, rather than needing to be built from scratch. The underlying data (stats-core battery, uptime) already exists on both firmware variants — this seems like primarily a UI/display change, at least for battery, uptime, and since-boot packet counts. A persistent lifetime count (surviving reboot) would need additional storage handling.

Related: #1170 covered similar territory for repeater display/stats (WiFi status + OTA webserver for Heltec V4), including example code for extending the display's UITask — may be useful prior art even though the scope there was WiFi-specific.

Happy to test this on a T096 if a build is available.

That's ready to paste into a new issue at github.com/meshcore-dev/MeshCore/issues/new. Since I can't create GitHub issues directly, you'll need to post it yourself — let me know if it needs any tweaks after you're looking at it in their issue form (they may have a template with required fields).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions