From ce6c096c3e584947b4b1f3814fc9776284e5b795 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Mon, 1 Jul 2024 21:05:27 -0500 Subject: [PATCH] Fix --- meshtastic/ble_interface.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/meshtastic/ble_interface.py b/meshtastic/ble_interface.py index 34c7e75..b63635d 100644 --- a/meshtastic/ble_interface.py +++ b/meshtastic/ble_interface.py @@ -7,12 +7,13 @@ import struct import time from threading import Thread from typing import List, Optional +import print_color # type: ignore[import-untyped] from .protobuf import ( mesh_pb2, ) +import google.protobuf -import print_color # type: ignore[import-untyped] from bleak import BleakClient, BleakScanner, BLEDevice from bleak.exc import BleakDBusError, BleakError @@ -91,8 +92,11 @@ class BLEInterface(MeshInterface): async def log_radio_handler(self, _, b): # pylint: disable=C0116 log_record = mesh_pb2.LogRecord() - log_record.ParseFromString(bytes(b)) - log_record.message.replace("\n", "") + try: + log_record.ParseFromString(bytes(b)) + log_record.message = log_record.message.replace("\n", "") + except google.protobuf.message.DecodeError: + return message = f'[{log_record.source}] {log_record.message}' if log_record.source else log_record.message