thejeffreystone / hassio_addons

Apache License 2.0
45 stars 26 forks source link

Devices without a specified channel are failing to register values with Home Assistant #53

Closed th3dll closed 3 months ago

th3dll commented 1 year ago

My Maverick-ET73x BBQ Probes are no longer pulling in any values. The device will add with all expected entities, but the values for all entities appear as "unknown" in Home Assistant: "Maverick ET73x 61215 noise Unknown" "Maverick ET73x 61215 T1 Unknown" "Maverick ET73x 61215 T2 Unknown" "Maverick ET73x 61215 freq Unknown" "Maverick ET73x 61215 last_seen Unknown" "Maverick ET73x 61215 rssi Unknown" "Maverick ET73x 61215 snr Unknown"

The change log for [0.1.18b] seems to point to what might have broken functionality:

Some bug fixes by @doozers-do

Channel now defaults to A instead of 0

Channel sensor now defined as a enum device with options as A, B, or C

Using MQTT-Explorer, I can see MQTT topics are publishing with values on the following topics: rtl_433/Maverick-ET73x/61215/0/time rtl_433/Maverick-ET73x/61215/0/protocol rtl_433/Maverick-ET73x/61215/0/id rtl_433/Maverick-ET73x/61215/0/status rtl_433/Maverick-ET73x/61215/0/temperature_1_C rtl_433/Maverick-ET73x/61215/0/temperature_2_C rtl_433/Maverick-ET73x/61215/0/mod rtl_433/Maverick-ET73x/61215/0/freq rtl_433/Maverick-ET73x/61215/0/rssi rtl_433/Maverick-ET73x/61215/0/snr rtl_433/Maverick-ET73x/61215/0/noise

Comparing the MQTT topics between an Acurite and the Mavrick shows channel differences in the topic path:

Acurite tower topic lists channel as A in the path: rtl_433/Acurite-Tower/2329/A/temperature_C

The Mavrick BBQ Probe topic is listing '0' in the channel path still: rtl_433/Maverick-ET73x/61215/0/temperature_1_C

However, looking at debug logs it appears that it assumes channel 'A' in the topic for Home Assistant's data collection: "state_topic": "rtl_433/Maverick-ET73x/61215/A/temperature_2_C"

Here's larger debug data (I tried getting the most relevant): DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:31-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91014, "rssi": -7.5851, "snr": 21.5488, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:31-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91014, "rssi": -7.5851, "snr": 21.5488, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:31-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91014, "rssi": -7.5851, "snr": 21.5488, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:33-0600", "protocol": 40, "model": "Acurite-Tower", "id": 2046, "channel": "A", "battery_ok": 1, "temperature_C": 22.5, "humidity": 41, "mic": "CHECKSUM", "mod": "ASK", "freq": 433.90931, "rssi": -7.95953, "snr": 20.76044, "noise": -28.72} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:45-0600", "protocol": 40, "model": "Acurite-Tower", "id": 15920, "channel": "A", "battery_ok": 1, "temperature_C": 22.8, "humidity": 43, "mic": "CHECKSUM", "mod": "ASK", "freq": 433.90922, "rssi": -8.03474, "snr": 21.09916, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:31-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91014, "rssi": -7.5851, "snr": 21.5488, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:31-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91014, "rssi": -7.5851, "snr": 21.5488, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:31-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91014, "rssi": -7.5851, "snr": 21.5488, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:33-0600", "protocol": 40, "model": "Acurite-Tower", "id": 2046, "channel": "A", "battery_ok": 1, "temperature_C": 22.5, "humidity": 41, "mic": "CHECKSUM", "mod": "ASK", "freq": 433.90931, "rssi": -7.95953, "snr": 20.76044, "noise": -28.72} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:43-0600", "protocol": 71, "model": "Maverick-ET73x", "id": 61215, "status": "default", "temperature_1_C": 24.0, "temperature_2_C": 24.0, "mod": "ASK", "freq": 433.91139, "rssi": -7.09541, "snr": 22.03848, "noise": -29.1339} DEBUG:Received Device Data from SDR and sent to MQTT: rtl_433/events : {"time": "2023-06-06 11:28:45-0600", "protocol": 40, "model": "Acurite-Tower", "id": 15920, "channel": "A", "battery_ok": 1, "temperature_C": 22.8, "humidity": 43, "mic": "CHECKSUM", "mod": "ASK", "freq": 433.90922, "rssi": -8.03474, "snr": 21.09916, "noise": -29.1339} DEBUG:Config sent to homeassistant/sensor/Maverick_ET73x_61215/last_seen/config : {"device_class": "timestamp", "entity_category": "diagnostic", "name": "Maverick ET73x 61215 last_seen", "value_template": "{{ value }}", "state_topic": "rtl_433/Maverick-ET73x/61215/A/time", "unique_id": "rtl433sensor61215last_seen", "availability_topic": "rtl_433/status", "expire_after": "0", "device": {"identifiers": "61215", "name": "61215", "model": "ET73x", "manufacturer": "Maverick"}} DEBUG:Config sent to homeassistant/sensor/Maverick_ET73x_61215/T1/config : {"device_class": "temperature", "state_class": "measurement", "name": "Maverick ET73x 61215 T1", "unit_of_measurement": "\u00b0C", "value_template": "{{ value|float }}", "state_topic": "rtl_433/Maverick-ET73x/61215/A/temperature_1_C", "unique_id": "rtl433sensor61215T1", "availability_topic": "rtl_433/status", "expire_after": "0", "device": {"identifiers": "61215", "name": "61215", "model": "ET73x", "manufacturer": "Maverick"}} DEBUG:Config sent to homeassistant/sensor/Maverick_ET73x_61215/T2/config : {"device_class": "temperature", "state_class": "measurement", "name": "Maverick ET73x 61215 T2", "unit_of_measurement": "\u00b0C", "value_template": "{{ value|float }}", "state_topic": "rtl_433/Maverick-ET73x/61215/A/temperature_2_C", "unique_id": "rtl433sensor61215T2", "availability_topic": "rtl_433/status", "expire_after": "0", "device": {"identifiers": "61215", "name": "61215", "model": "ET73x", "manufacturer": "Maverick"}} DEBUG:Config sent to homeassistant/sensor/Maverick_ET73x_61215/freq/config : {"device_class": "frequency", "entity_category": "diagnostic", "name": "Maverick ET73x 61215 freq", "unit_of_measurement": "MHz", "value_template": "{{ value }}", "state_topic": "rtl_433/Maverick-ET73x/61215/A/freq", "unique_id": "rtl433sensor61215freq", "availability_topic": "rtl_433/status", "expire_after": "0", "device": {"identifiers": "61215", "name": "61215", "model": "ET73x", "manufacturer": "Maverick"}}

The Acurite specifies a channel in the debug data, whereas the Mavrick BBQ probe has no such value shared. In process of debugging and trying to sort this out, I've noticed almost all non-acurite devices are similarly added to Home Assistant with enttites specified, but in an "Unknown" state.

The probes were registering properly sometime around March-April 2023.

I typically use the acurite2mqtt addon, but in troubleshooting, I also tried the sdr2mqtt addon to make sure that wasn't part of my problem. Both addons seem to have the same problem.

slappare commented 1 year ago

I've created a pull request to fix this, https://github.com/thejeffreystone/hassio_addons/pull/54. The change to use default 'A' instead of '0' was only in the autodiscovery script and not when initiating rtl_433.

thejeffreystone commented 1 year ago

It should be going out. Thanks!