fix: Update battery voltage reading and adjust path length handling in ChannelMessage

This commit is contained in:
Winston Lowe 2026-03-23 11:24:33 -07:00
parent fc7283f076
commit 0228c38621
3 changed files with 3 additions and 6 deletions

View file

@ -3043,7 +3043,7 @@ class MeshCoreConnector extends ChangeNotifier {
try {
final reader = BufferReader(frame);
reader.skipBytes(1);
_batteryMillivolts = reader.readInt16LE();
_batteryMillivolts = reader.readUInt16LE();
_storageUsedKb = reader.readUInt32LE();
_storageTotalKb = reader.readUInt32LE();
final volts = (_batteryMillivolts! / 1000.0).toStringAsFixed(2);

View file

@ -132,17 +132,15 @@ class ChannelMessage {
final hasPath = (flags & 0x01) != 0;
reader.skipBytes(1); // Skip reserved byte
channelIdx = reader.readByte();
pathLen = reader.readByte();
pathLen = reader.readInt8();
txtType = reader.readByte();
if (hasPath && pathLen > 0) {
reader.rewind(); // Rewind to read path length again for pathBytes
pathBytes = reader.readBytes(pathLen);
} else {
pathLen = 0;
}
} else {
channelIdx = reader.readByte();
pathLen = reader.readByte();
pathLen = reader.readInt8();
txtType = reader.readByte();
}
final timestampRaw = reader.readUInt32LE();

View file

@ -975,7 +975,6 @@ void _privacySettings(BuildContext context, MeshCoreConnector connector) {
value: advertLocPolicy,
onChanged: (value) {
setDialogState(() => advertLocPolicy = value);
advertLocPolicy = value;
},
),
const SizedBox(height: 8),