mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-08-03 02:36:11 +00:00
feat(ui): add on-device diagnostics screen (Tools > Diagnostics)
Shows packet counts by category (RX/TX), radio noise floor/RSSI/SNR, packet-pool free count and outbound queue length, uptime, and heap/stack headroom on a single scrollable screen. Adds generic per-payload-type RX/TX counters to Dispatcher (mesh layer), plus pool-free/queue-length getters, and a new DeviceDiag helper for nRF52 heap (linker-symbol + sbrk) and stack (FreeRTOS high-water-mark) stats — the only platform needed for the 3 in-scope boards (Wio Tracker L1 OLED/Eink, GAT562 30S), all nRF52840. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
99cbe51797
commit
327e659d51
@@ -125,6 +125,7 @@ static const int QUICK_MSGS_MAX = 10;
|
||||
#include "AutoAdvertScreen.h"
|
||||
#include "TrailScreen.h"
|
||||
#include "CompassScreen.h"
|
||||
#include "DiagnosticsScreen.h"
|
||||
#include "ToolsScreen.h"
|
||||
|
||||
#ifndef BATT_MIN_MILLIVOLTS
|
||||
@@ -1198,6 +1199,7 @@ void UITask::begin(DisplayDriver* display, SensorManager* sensors, NodePrefs* no
|
||||
auto_advert_screen = new AutoAdvertScreen(this, node_prefs);
|
||||
trail_screen = new TrailScreen(this, &_trail);
|
||||
compass_screen = new CompassScreen(this);
|
||||
diag_screen = new DiagnosticsScreen(this);
|
||||
applyBrightness();
|
||||
applyFont();
|
||||
applyRotation();
|
||||
@@ -1244,6 +1246,10 @@ void UITask::gotoCompassScreen() {
|
||||
setCurrScreen(compass_screen);
|
||||
}
|
||||
|
||||
void UITask::gotoDiagnosticsScreen() {
|
||||
setCurrScreen(diag_screen);
|
||||
}
|
||||
|
||||
void UITask::gotoAutoAdvertScreen() {
|
||||
((AutoAdvertScreen*)auto_advert_screen)->enter();
|
||||
setCurrScreen(auto_advert_screen);
|
||||
|
||||
Reference in New Issue
Block a user