Home Assistant Add-on: rtl_433 with MQTT auto discovery

Hello, I am so sorry for that, it never should have happened. If you check for updates in a couple minutes 2024.4.1 should have it fixed.

1 Like

Can you elaborate on this? I’m still a novice at this stuff and am curious if you could outline how this solves the batteries replaced means new IDs issue? Thanks!

if you are new, just consider it not working.
I haven’t had time to make it better, and seems little interest from others…in helping

I got this up and running to at least be able to discover my Freezer Temp sensors. All I did was put the output line of my HA instance/port/username/pass, and nothing else. I was surprised I didn’t discover that many devices with the MQTT Auto-discovery. My temp sensors came up, a couple security sensors from neighbors I think and another weather station. I was surprised I didn’t see like 100 tire press sensors, not even my own vehicles. Is the Antenna I have to small or something? Its only like a 6 inch attenna or something.

How to say this without a double entendre, show a picture of your 6 inch antenna. Have you put it up high or ground floor. Every antenna has it’s own farfield pattern. Welcome to the rabbit hole of antennas.

1 Like

Hahaha!

But on real note, this is the one I bought https://a.co/d/hFRS54R

I have it probably 7ft off the ground behind my TV

It looks like a monopole antenna. Its ok, but unlikely to be tuned to 433.92mhz which is the frequency mostly used. A dipole or ground plane built for 433 will find all the devices over 100 feet. Very cheap to build but you may need a special adapter to fit your sdr.

So I don’t what what I am doing wrong, but I want to replace me cheap Nooelec NESDR Mini 2+ with a RTL-SDR v4 and I cannot get it to work.

I am running HA supervised in proxmox. The Nooelec runs pretty well, but every now and then just fails and I have physically remove and reinstall it. I swapped in the RTL-SDR v4 thinking it would just pickup in HA without a problem, but I always get the same error:

s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
Starting rtl_433 with rtl_433.conf...
[rtl_433] rtl_433 version 23.11 branch  at 202311281352 inputs file rtl_tcp RTL-SDR
[rtl_433] MQTT: Publishing MQTT data to core-mosquitto port 1883
[rtl_433] MQTT: Publishing events info to MQTT topic "rtl_433[/model][/id]".
[rtl_433] Found Rafael Micro R828D tuner
[rtl_433] [SDR] Using device 0: RTLSDRBlog, Blog V4, SN: 00000001, "Generic RTL2832U OEM"
[rtl_433] Exact sample rate is: 250000.000414 Hz
[rtl_433] [sdr_set_center_freq] Failed to set center freq.
[rtl_433] Allocating 15 zero-copy buffers

I can literally hot swap in the nooelec and rtl443 picks right back up with no issues at all. I was under the impression that the rtl_SDR v4 was supported, but I cannot figure out how to change the config to make it work.

[rtl_433] rtl_433 version 23.11 branch  at 202311281352 inputs file rtl_tcp RTL-SDR
[rtl_433] MQTT: Publishing MQTT data to core-mosquitto port 1883
[rtl_433] MQTT: Publishing events info to MQTT topic "rtl_433[/model][/id]".
[rtl_433] Use "-F log" if you want any messages, warnings, and errors in the console.
[rtl_433] Found Rafael Micro R820T/2 tuner
[rtl_433] Exact sample rate is: 250000.000414 Hz
[rtl_433] Allocating 15 zero-copy buffers

Here’s an example of a config I’m using that customizes devices and events to change the default topics. You likely would need to change rtl_433/local-rtl433 to match your local topics, and then re-run discovery.

device 0
frequency 433.92M
frequency 915.0M
hop_interval 75
duration 3600
output mqtt://${host}:${port},user=${username},pass=${password},retain=false,devices=rtl_433/local-rtl433/devices[/type][/model][/subtype]/C[channel:0],events=rtl_433/local-rtl433/events
report_meta time:iso:usec:tz
convert si
pulse_detect classic

# Accurite rain meter (433)
protocol 40
# LaCrosse weather station (433)
protocol 73
# Fine Offset WH51 Soil (915)
protocol 142

And in the discovery addon:

It’s not supported in the stable version of the addon yet. Can you try swapping to the next version? We only updated this two months ago so not many have tried with the V4 yet.

I can’t figure out how to find anything that isn’t the default 433M

I didn’t add any config files, one was created when I downloaded the addon.
Path is - /homeassistant/rtl_433/rtl_433.conf.template

in that file I have

# This is an empty template for configuring rtl_433. mqtt information will be
# automatically added. Create multiple files ending in '.conf.template' to
# manage multiple rtl_433 radios, being sure to set the 'device' setting.
# https://github.com/merbanan/rtl_433/blob/44e893c0105bd04d1b5720f34fd227b5948ecd65/conf/rtl_433.example.conf

output mqtt://192.168.1.49:1883,user=HIDDENFORPRIVACY,pass=HIDDENFORPRIVACY!,retain=1

frequency 315M

I’m picking up my 4 Fridge/freeze temp sensors, two from LaCrosse and 2 from Accurite, no problem, but I just want to see whats else I can find that isn’t just the 433 band. My log in the RTL433 NEXT addon just has this

[rtl_433] MQTT: Publishing events info to MQTT topic "rtl_433/9b13b3f4-rtl433-next/events".
[rtl_433] MQTT: Publishing states info to MQTT topic "rtl_433/9b13b3f4-rtl433-next/states".
[rtl_433] Use "-F log" if you want any messages, warnings, and errors in the console.
[rtl_433] Found Rafael Micro R820T tuner
[rtl_433] Exact sample rate is: 250000.000414 Hz
[rtl_433] [R82XX] PLL not locked!

It never says what frequency Its tuned to, but I figured when i dont specify its just assuming the 433, but when I’m puting 315M, i figured it would say.

Once I start the addon, I go to MQTT Explorer to see the devices that pop up, but nothing new is coming. I was hoping to at least see my Kia’s TPMS which is protocol 226

What am I doing wrong?

But you have specified 315MHz in the config, not 433.92MHz. You can use hop interval if you want data from multiple frequencies.

Frequency hopping is my plan, but I was temporarily only trying to see stuff in the 315M range. But I was assuming that the log in the RTL433 add on would say tuned to 315M or something. When I was looking around at other people’s stuff, their log would say what they were tuned too

So I am using this as a addon in HA and I cannot see a way to pin a specific release in the add on. Google wasn’t much help. Am i missing something or do I need to just spin this up in its own docker container?

I don’t know much about this RTL stuff, but I have a Nooelec Mini plugged into a USB extension that’s directly connected to the second USB port on my HA Green. All I did was install the RTL 433 (Next) Addon and MQTT explorer to see what it was picking up. The only line of code I added to the config file it creates was the output line with my user name and password. Couple posts up you can see what I have. I then used MQTT Auto discovery add on to bring the temp sensors I was looking for into HA. Once I found them in my under my MQTT integration I deleted all the other random devices that auto discovery found and stopped the auto discovery addon and turned off the start on boot.

You can skip the MQTT auto discovery but I didn’t want play around with creating the individual devices in MQTT. Seemed easier to me to just delete all the devices that weren’t mine

That’s basically all I know. I can’t seem figure out how change frequency’s for it to listen too or if I’m doing it right it don’t get any confirmation in the log

this works great for auto discovery.

Unfortunately this is a bit limited in Home Assistant: Add the possibility to install a previous release of an addon - #6 by jmcollin

If you simply want to stay at your current version, then make sure automatic updates are off (they are by default).

Another possibility would be to make a backup of the addon, download it, extract and edit it to point to the older version, and then restore it. I have a vague recollection of doing this in the past, but clearly YMMV!

One final option would be to clone the addon locally and treat it as if you’re developing on it. Then you can change it as you see fit to update the config file to use an older tag.

Is this any different than the RTL 433 MQTT Auto Discovery add on other than it lets you choose what to send to HA, where as the former just pulls all RTL433 MQTT topics?

Not really different no. The ability to pick and choose is nice.

This is catduckgnaf discovery script.wrapped up in a home assistant addon,
Working for me.
If you want to try it out you just need to have rtl_433 running somewhere.
Install the addon.
Fill in your mqtt info.

It is discovering all devices by default but there is a field for ID
enter multiple ids with a space. ie: 76410004 87 0 154491068

Get the ID from mqttexplorer. or the rtl_433 log
mqtt id

Am I reading the update change log correct? 0.5.2 now supports the v4?