-
-
Notifications
You must be signed in to change notification settings - Fork 261
Open
Labels
bugSomething isn't workingSomething isn't working
Description
What happened?
Home Assistant logs 2 separate errors for Xiaomi sensors
HA Core 2025.9.3
Ble Monitor 13.10.1
Sensor type
MJYD02YL Night Light or XMOSB01S Occupancy Sensor
Relevant log output
This error originated from a custom integration.
Logger: homeassistant
Source: custom_components/ble_monitor/ble_parser/xiaomi.py:865
integration: Passive BLE monitor (documentation, issues)
First occurred: 18 September 2025 at 22:12:34 (34 occurrences)
Last logged: 08:40:43
Error doing job: Fatal error: protocol.data_received() call failed. (None)
Traceback (most recent call last):
File "/usr/local/lib/python3.13/asyncio/selector_events.py", line 1019, in _read_ready__data_received
self._protocol.data_received(data)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/usr/local/lib/python3.13/site-packages/aioblescan/aioblescan.py", line 1855, in data_received
self.process(packet)
~~~~~~~~~~~~^^^^^^^^
File "/config/custom_components/ble_monitor/__init__.py", line 598, in process_hci_events
sensor_msg, tracker_msg = self.ble_parser.parse_raw_data(data)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/config/custom_components/ble_monitor/ble_parser/__init__.py", line 175, in parse_raw_data
sensor_data, tracker_data = self.parse_advertisement(
~~~~~~~~~~~~~~~~~~~~~~~~^
mac,
^^^^
...<5 lines>...
man_spec_data_list
^^^^^^^^^^^^^^^^^^
)
^
File "/config/custom_components/ble_monitor/ble_parser/__init__.py", line 264, in parse_advertisement
sensor_data = parse_xiaomi(self, service_data, mac)
File "/config/custom_components/ble_monitor/ble_parser/xiaomi.py", line 1590, in parse_xiaomi
result.update(resfunc(dobject))
~~~~~~~^^^^^^^^^
File "/config/custom_components/ble_monitor/ble_parser/xiaomi.py", line 865, in obj4852
(duration,) = struct.unpack("<I", xobj)
~~~~~~~~~~~~~^^^^^^^^^^^^
struct.error: unpack requires a buffer of 4 bytes
This error originated from a custom integration.
Logger: homeassistant
Source: custom_components/ble_monitor/ble_parser/xiaomi.py:859
integration: Passive BLE monitor (documentation, issues)
First occurred: 18 September 2025 at 17:52:30 (26 occurrences)
Last logged: 08:43:21
Error doing job: Fatal error: protocol.data_received() call failed. (None)
Traceback (most recent call last):
File "/usr/local/lib/python3.13/asyncio/selector_events.py", line 1019, in _read_ready__data_received
self._protocol.data_received(data)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/usr/local/lib/python3.13/site-packages/aioblescan/aioblescan.py", line 1855, in data_received
self.process(packet)
~~~~~~~~~~~~^^^^^^^^
File "/config/custom_components/ble_monitor/__init__.py", line 598, in process_hci_events
sensor_msg, tracker_msg = self.ble_parser.parse_raw_data(data)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
File "/config/custom_components/ble_monitor/ble_parser/__init__.py", line 175, in parse_raw_data
sensor_data, tracker_data = self.parse_advertisement(
~~~~~~~~~~~~~~~~~~~~~~~~^
mac,
^^^^
...<5 lines>...
man_spec_data_list
^^^^^^^^^^^^^^^^^^
)
^
File "/config/custom_components/ble_monitor/ble_parser/__init__.py", line 264, in parse_advertisement
sensor_data = parse_xiaomi(self, service_data, mac)
File "/config/custom_components/ble_monitor/ble_parser/xiaomi.py", line 1590, in parse_xiaomi
result.update(resfunc(dobject))
~~~~~~~^^^^^^^^^
File "/config/custom_components/ble_monitor/ble_parser/xiaomi.py", line 859, in obj4851
(duration,) = struct.unpack("<I", xobj)
~~~~~~~~~~~~~^^^^^^^^^^^^
struct.error: unpack requires a buffer of 4 bytes
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working