drone status pill in footer for fly mode implemented. footer layout and sizes homogenized

This commit is contained in:
Constantin Leue
2026-08-04 15:47:53 +02:00
parent f2f2953642
commit 1a17fe5b36
12 changed files with 585 additions and 28 deletions
@@ -40,6 +40,8 @@ class MspTelemetryPoller {
int? _activeWaypointIndex;
int _batteryPercent = 0;
int _linkQuality = 0;
int _snrDb = 0;
int _navMode = 0;
String _flightMode = 'Idle';
Stream<TelemetryFrame> get frames => _framesController.stream;
@@ -81,13 +83,15 @@ class MspTelemetryPoller {
);
final navStatusPayload = await _client.request(MspCommands.navStatus);
_activeWaypointIndex = parseMspNavStatusActiveWaypoint(navStatusPayload);
_flightMode = parseMspNavMode(navStatusPayload).formatted;
final navMode = parseMspNavMode(navStatusPayload);
_navMode = navMode.mode;
_flightMode = navMode.formatted;
_batteryPercent = parseMspInavAnalogBatteryPercent(
await _client.request(MspCommands.inavAnalog),
);
_linkQuality = parseMspLinkQuality(
await _client.request(MspCommands.inavLinkStats),
);
final linkStatsPayload = await _client.request(MspCommands.inavLinkStats);
_linkQuality = parseMspLinkQuality(linkStatsPayload);
_snrDb = parseMspLinkStatsSnr(linkStatsPayload);
}
if (!_framesController.isClosed) {
@@ -102,6 +106,9 @@ class MspTelemetryPoller {
armed: _armed,
batteryPercent: _batteryPercent,
linkQuality: _linkQuality,
snrDb: _snrDb,
hdop: gps.hdop,
navMode: _navMode,
flightMode: _flightMode,
activeWaypointIndex: _activeWaypointIndex,
));