feat: onroad health overlay + 2x tire path in nightrider
System health overlay: - Lower-right 5-metric panel: LAG (controlsState.cumLagMs), DROP (modelV2.frameDropPerc), TEMP (deviceState.maxTempC), CPU (max core of deviceState.cpuUsagePercent), MEM (deviceState.memoryUsagePercent) - Color-coded white→yellow→red by severity (LAG: 50/200ms, DROP: 5/15%, TEMP: 75/88°C, CPU: 75/90%, MEM: 70/85%) - Toggle in ClearPilot → Debug → "System Health Overlay" - New param ClearpilotShowHealthMetrics, PERSISTENT (disk, survives reboots), default false — re-polled every ~2s so toggle takes effect without process restart - InterFont(90, Bold) to match speed limit numeric styling, 30px margin, 40px between rows, black rounded background Nightrider center lane path (the "tire track" polygon from scene.track_vertices) is now drawn at 2x the width of other lines — highlights the planned path distinctly against the otherwise stark outline-only rendering. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -338,6 +338,15 @@ ClearPilotPanel::ClearPilotPanel(QWidget* parent) : QFrame(parent) {
|
||||
});
|
||||
debug_panel->addItem(telemetry_toggle);
|
||||
|
||||
auto *health_metrics_toggle = new ToggleControl("System Health Overlay",
|
||||
"Show controls lag, model frame drops, temperature, CPU, and memory usage "
|
||||
"in the lower-right of the onroad UI. For diagnosing slowdown issues.", "",
|
||||
Params().getBool("ClearpilotShowHealthMetrics"), this);
|
||||
QObject::connect(health_metrics_toggle, &ToggleControl::toggleFlipped, [](bool on) {
|
||||
Params().putBool("ClearpilotShowHealthMetrics", on);
|
||||
});
|
||||
debug_panel->addItem(health_metrics_toggle);
|
||||
|
||||
auto *vpn_toggle = new ToggleControl("VPN",
|
||||
"Connect to vpn.hanson.xyz for remote SSH access. "
|
||||
"Disabling kills the active tunnel and stops reconnection attempts.", "",
|
||||
|
||||
Reference in New Issue
Block a user