I have this RTL SDR dongle that I have connected to my Intel NUC running HAOS. When I add the RTL_433 or the (next)
version I am able to pick up my neighbour’s Acurite sensor for example, but I can’t send that data to MQTT at all.
Trying to leverage AI (Google Gemini) to help understand the issue this is the configuration YAML for the add-on it came up with:
rtl_433_conf_file: ""
retain: true
output: >-
mqtt://core-mosquitto.local.hass.io:1883,user=mqtt_user,pass=mqtt_password,topic=rtl_433[/model][/id]
protocol: "40"
frequency: 433.92M
mqtt_user: mqtt_user
mqtt_pass: mqtt_password
mqtt_topic: rtl_433/+/devices/+/+
verbose: true
It also had me update my configuration.yaml file to add the below for the Acurite sensor:
mqtt:
sensor:
- name: "Backyard Acurite Temperature"
state_topic: "rtl_433/Acurite-609TXC/74" # The expected MQTT topic for this sensor
unit_of_measurement: "°C"
device_class: temperature
value_template: "{{ value_json.Temperature }}" # Extracts the 'Temperature' field from JSON
qos: 0
unique_id: acurite_609txc_74_temp
# Optional: Add availability if you want the sensor to show 'unavailable' if no data for a while
# expire_after: 3600 # e.g., 1 hour (adjust based on your sensor's update frequency)
- name: "Backyard Acurite Humidity"
state_topic: "rtl_433/Acurite-609TXC/74"
unit_of_measurement: "%"
device_class: humidity
value_template: "{{ value_json.Humidity }}" # Extracts the 'Humidity' field from JSON
qos: 0
unique_id: acurite_609txc_74_humidity
# expire_after: 3600
binary_sensor:
- name: "Backyard Acurite Battery Low"
state_topic: "rtl_433/Acurite-609TXC/74"
device_class: battery
# Acurite sensors often report 0 for OK, 1 for LOW.
# So, if Battery is 0, it's 'OFF' (not low). If it's 1, it's 'ON' (low).
value_template: "{{ 'ON' if value_json.Battery == 1 else 'OFF' }}"
qos: 0
unique_id: acurite_609txc_74_battery_low
# expire_after: 3600
Here’s an example of the log after starting up the rtl_433 (next) add-on:
Starting rtl_433 with rtl_433.conf...
[rtl_433] rtl_433 version master-1-gc3859709 branch master at 202507041434 inputs file rtl_tcp RTL-SDR SoapySDR with TLS
[rtl_433] Found Rafael Micro R828D tuner
[rtl_433] Exact sample rate is: 250000.000414 Hz
[rtl_433] [SDR] Using device 0: Realtek, RTL2838UHIDIR, SN: 00000001, "Generic RTL2832U OEM"
[rtl_433] [R82XX] PLL not locked!
[rtl_433] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[rtl_433] time : 2025-07-05 12:38:29
[rtl_433] model : Acurite-609TXC id : 74
[rtl_433] Battery : 0 Temperature: 34.2 C Humidity : 41 % status : 9 Integrity : CHECKSUM
Mosquitto Broker shows the following (clipped):
2025-07-05 12:38:54: New client connected from 172.30.33.5:33920 as mqtt-explorer-52dfac40 (p2, c1, k60, u'mqtt_user').
2025-07-05 12:39:14: New connection from 172.30.32.2:41868 on port 1883.
2025-07-05 12:39:14: Client <unknown> closed its connection.
The first connection is the attempt to connect via MQTT Explorer which is successful, however the 2nd part that shows a closed connection is the RTL_433 add-on I believe.
I have triple checked many times and the credentials should be correct. I’m wondering if there’s something about the set up and how the dongle is directly attached to my HAOS device?
I was reading other articles that mention setting up a Rasberry Pi or using an ESP32 instead of the dongle to get this to work. Any suggestions on what I might be missing here would be great.