Home Assistant Add-on: rtl_433 with MQTT auto discovery

Worth noting. the maintainer has left the old project, so I really encourage the community to contribute to the new one.

I installed the addon and it’s working nicely! Thank you.
My question is how do I enable MQTT auto-discovery for the found devices?

Currently tat is a work in progress. If you update to latest version, and click unused options, you can see I there are drop down filter for every single item, so you should be able to just search and select.

The script is in its own repository. So I am really hoping that everyone who has needed to make their own custom configurations can submit PRs to improve this script. Without the heavy weight of the RTL_433 Project. I will likely continue making further modifications and better integration.

https://github.com/catduckgnaf/rtl_433_ha/blob/2e617ef184f2e6090b233dcf9e10e72375dc1fe2/scripts/rtl_433_mqtt_hass.py.

I plan to work on this shortly, the script downloads, but I need to do some further testing on the filter to work.

I’m really sorry, I do not want to look ignorant, tried my best, but I really do not understand what needs to be done in order to get the device I have, discovered.

What are the exact steps one needs to take in order to get auto-discovery working, after the rtl_433_ha addon has been installed and started?

Currently I have:

  • updated to the latest addon version: 2024.1.9
  • successfully configured the add-on to start and connect to MQTT
  • enabled protocol 153 # Cotech 36-7959, SwitchDocLabs FT020T wireless weather station with USB
  • device is detected and MQTT topic is populated.

I have not made any change to the addon configuration

In the protocol dropdown list, the protocol 153 shows as a different device than to what I enabled in the rtl_433.conf file.
In the file rtl_433.conf protocol 153 shows as Cotech 36-7959 but in the addon dropdown it shows as bresser_weather_center_7_in_1

I have the auto-discovery script there. What should I do with it?
3

Here it shows that the device is sent to MQTT

4

Thank you!

Currently, those options in the config don’t do anything. That is more of a beta of how I plan to roll things out. I am traveling today. But the goal is to implement that VERY SOON. I hope you find the CONCEPT nice.

You can run the old add-on script, (next version) add manually, or weight. Assume the conf file is correct.

I think we are almost to a super usable rtl_433 solution, just finalizing some details. At least the current add-on is much improved with a config thats easy to change. :slight_smile:

How do I do this - run the old add-on script?

if you have not used rtl_433 yet, I would suggest waiting while i work on some improvements

I have not, this is the first time with rtl_433.
I’ll wait patiently for you to finish your work! :innocent:

1 Like

Curious! I want to start using rtl433 to, to sniff/use some Ecowitt WH51 soil sensors.

Can you advise which hardware i need to use the rtl433?

Hello Everyone,

Sorry for my delay on everything. My container still works great, and my script works, but I am trying a bit better to integrated them.

I use this one: Amazon.com

You can get some slightly cheaper no-name off ebay that work fine as well.

Hoping to finalize this discovery part soon, had some personal things come up.

If you are just experimenting a cheap RTL-SDR will probably work. However if you goal is to run it 24/7 for receiving a number of remote devices reliably, buy one of the better RTL-SDRs that have:

  • a metal case/thermal pad for managing heat (RTL-SDRs tend to run hot)
  • a sealed metal case that shields the RTL-SDR from RFI (particularly from nearby devices like RPIs)
  • an SMA antenna connector
  • a temperature controlled oscillator

I’d avoid ebay due to the number of low quality clones. I use RTL-SDR blog v3 devices which a number of people have reported as working well. Others have reported the Nooelec SMArt devices (metal case, SMA connector) work well, but I’ve never tried those.

You don’t need to be concerned with features that allow HF reception (30Mhz and below), direct sampling, etc.

And make sure to buy a USB extension cable (3 ft/1m+) to locate the RTL-SDR receiver and it’s antenna away from the computers and other electrically noisy devices.

Can I use this for the start of a getting started on GitHub? Unless you don’t mind either submitting or adding a bit more too it.

Hello everyone.

I want to officially announce that it works! Currently, we have discovery and rtl_433 in one docker, that is simple to use, easy manage, and transparent.

Additionally, improvements have been and will continue to be made to existing discovery process as well as an easy rtl_433.conf.

All RTL_433 settings are made from the rtl_433.conf
All discovery settings are managed directly through the add-on config. You will likely not see any logging. I also do not know if discovering more than one ID at a time works yet.

Additionally, near term plans of a stand alone docker image with discovery configurations as container variables. I plan to improve documentation, and continue to progress rtl_433 now that I feel this project is officially usable :slight_smile:

Please see screenshot. (ignore part where it says it doesn’t work, that will be fixed in next update)


1 Like

Thank you @catduckgnaf.
I’ve updated the addon, made the changes to config, however I don’t yet see any devices being auto-discovered.

Here’s my addon config:

rtl_433_conf_file: /config/rtl_433/rtl_433.conf
discovery: true
discovery_host: core-mosquitto
discovery_port: 1883
discovery_user: mqttuser
discovery_password: mqttpassword
discovery_topic: rtl_433/+/events
discovery_prefix: homeassistant
discovery_interval: 600
other_args: ""
discovery_ids: "153"

I’m seeing the device in MQTT, but no entries under HomeAssistant topic:
image

Try no quotes for the discovery IDs. I updated the documentation with an example to reflect that with latest version! Having as a straight INT would mean only one, and this was the easiest way to get it going.

It does not accept it without quotes, saying it’s an invalid value:
Failed to save add-on configuration, not a valid value. Got {'rtl_433_conf_file': '/config/rtl_433/rtl_433.conf', 'discovery': True, 'discovery_host': 'core-mosquitto', 'discovery_port': 1883, 'discovery_user': 'xxx', 'discovery_password': 'xxx', 'discovery_topic': 'rtl_433/+/events', 'discovery_prefix': 'homeassistant', 'discovery_interval': 600, 'other_args': '', 'discovery_ids': 153}

send me your complete add on config in the format like mine above

Running addon version 2024.2.8.
Here it is:
image

And if I remove the double-quotes around the discovery_ids:

V4 requires new drivers to work correctly (well on Windows, on Linux it’s an update to librtlsdr).

We have an issue for this at Support RTL-SDR Blog V4 Dongle · Issue #181 · pbkhrv/rtl_433-hass-addons · GitHub. Luckily we can just upgrade Alpine, so a build of that will be available for testing in the “next” release whenever GitHub is done building things.

I’ll just +1 the above comments - I’ve had some of the cheaper radios stop working well when they’ve been on for days or weeks. Also, I use this exact sensor and it works great. However, I ended up having to put a Raspberry Pi zero with an additional dongle closer to it, as my normal radio location couldn’t pick it up.

My repo and add on has had it supported fully.