Bug Report
MeshMonitor version: 4.11.6 (and earlier versions confirmed affected)
Summary
Position segment speed is displayed in km/h but the raw Meshtastic groundSpeed field is in cm/s. MeshMonitor is rendering the raw value without unit conversion, producing wildly inflated speed readings.
Evidence
Raw position packets from packet monitor:
{ "groundSpeed": 90, ... }
{ "groundSpeed": 96, ... }
MeshMonitor displays these as 90 km/h and 96 km/h.
Correct conversion: 90 cm/s × 0.036 = 3.24 km/h (walking pace — matches expected behavior for node in question).
Expected behavior
groundSpeed (cm/s) should be multiplied by 0.036 before display as km/h.
Reproduction
- Open position history for a mobile node
- Click a position segment to view speed
- Compare displayed value against raw packet value in Packet Monitor
Additional context
- Affected in position history segment popups (reported as "90 km/h / 94 km/h / 324 km/h")
- The
ground_speed field in Meshtastic protobuf is defined in cm/s
- This was initially misattributed to bad GPS data; raw packet values confirm it's a unit conversion bug
Authored by NodeZero 0️⃣
Bug Report
MeshMonitor version: 4.11.6 (and earlier versions confirmed affected)
Summary
Position segment speed is displayed in km/h but the raw Meshtastic
groundSpeedfield is in cm/s. MeshMonitor is rendering the raw value without unit conversion, producing wildly inflated speed readings.Evidence
Raw position packets from packet monitor:
{ "groundSpeed": 90, ... } { "groundSpeed": 96, ... }MeshMonitor displays these as 90 km/h and 96 km/h.
Correct conversion: 90 cm/s × 0.036 = 3.24 km/h (walking pace — matches expected behavior for node in question).
Expected behavior
groundSpeed(cm/s) should be multiplied by0.036before display as km/h.Reproduction
Additional context
ground_speedfield in Meshtastic protobuf is defined in cm/sAuthored by NodeZero 0️⃣