Home Assistant Add-on: rtl_433 with MQTT auto discovery

I’ve tried to get a friends Bresser 7 in 1 station to pick up with the Fitipower FC0012 tuner, but even if I got a some reading the tuner would stop reporting after couple of hours. The tuner worked fine with 433 signal, but with 868 it had troubles. The we tried a different tuner the Nooelec RTL-SDR v5 SDR and it worked great with this set up:

frequency 868.3M
verbose 7
gain 0
protocol 173 # Bresser Weather Center 7-in-1
convert si
output kv
report_meta level
#report_meta noise
report_meta stats
report_meta time:usec
report_meta protocol
pulse_detect minlevel=-36
pulse_detect magest
sample_rate 250k

There is also an option to set up the station to send data to your own web server (this depends on the firmware, the newer station do not have this option), you can try this to send data to NodeRED and then to HA. If you want I can help you with this. It is all local and uses your local wifi to get data from the station to Home Assistant.

Thanks @DominikW for your suggestions.

For now, I will try to connect the Fitipower to a Raspberry Pi 3 I have lying around. Perhaps that works.

Sending data to my own webserver/NodeRed is not really a preferred option because I would like to not use the Bresser display/server. RTL-433 has served me well for several years. If RPI3 doesn´t work out, I will check out the RTL-SDR v5. Thanks!

I am using the rtl_433 add on in home assistant. Something weird and I am hoping someone can answer

If I have the hop interval specified like the below then the device which is on 319.5 gets detected

# Uncomment the following line to also enable the default "table" output to the
# addon logs.
output kv
hop_interval 60
frequency 433.92M
frequency 319.5M

image

However if I remove the hop interval no device gets detected

# Uncomment the following line to also enable the default "table" output to the
# addon logs.
output kv
frequency 319.5M

Any help would be appreciated

not sure what i am doing wrong but I am having no luck getting to discovery to find my Acurite-5n1 but it shows in the log for rtl433 any tips on what I might be missing?

Dear all,

I just jumped into this topic. Will it be possible to receive a Honeywell doorbell type DW915s ringing? The doorbell uses 868Mhz and a protocoll called ActivLink. I think found it in this list.

And should this this cheap RTL2832U receiver work?

I also want to understand how to get my doorbell picked up. It’s on 433.92 so should be possible but the auto discover doesn’t pick it up. But I’m a total novice to all this and have zero idea how to resolve that!

Similar to some others in the thread, I left auto discover on and now must have a ton of devices picked up (no idea how to know how many). What do I need to do about these?

As a first step, Install rtl_433 as an Add-on. You know how to do that? Second, search the documentation of the (original) rtl_433 project to create a config file. Enable logging as part of the output parameter. Then you should get messages in the logging tab of any activity corresponding to your config file.

This is what I did. However, I receive no messages, but I’m still trying to make my steps.

Thanks. I have RTL and MQTT running (including the RTL MQTT Auto Discovery add in) and picking up other devices of mine (ie heating oil level sensor) but not picking up me 433.92 doorbell. Have tried it when pressing it too. No idea what I need to do to get it to pick it up though.

Similar issue for me. I try to receive a Honeywell doorbell type DW915s ringing? The doorbell uses 868Mhz and a protocoll called ActivLink. I think found it in this list .
Config file is

output mqtt://homeassistant.local:1883,user=xxx,pass=xxxx,retain=0
report_meta time:iso:usec:tz
frequency 868.3M
verbose 7
convert si
report_meta stats
sample_rate 250k
output kv
protocol 115
protocol 116

This is my log

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
[20:40:17] WARNING: e[33mrtl_433 now supports automatic configuration and multiple radios. The rtl_433_conf_file option is deprecated. See the documentation for migration instructions.e[0m
Starting rtl_433 -c /config/rtl_433/rtl_433.conf
rtl_433 version 23.11 branch  at 202311281352 inputs file rtl_tcp RTL-SDR
MQTT: Publishing MQTT data to homeassistant.local port 1883
MQTT: Publishing device info to MQTT topic "rtl_433/9b13b3f4-rtl433/devices[/type][/model][/subtype][/channel][/id]".
MQTT: Publishing events info to MQTT topic "rtl_433/9b13b3f4-rtl433/events".
MQTT: Publishing states info to MQTT topic "rtl_433/9b13b3f4-rtl433/states".

New defaults active, use "-Y classic -s 250k" if you need the old defaults

Registering protocol [115] "Honeywell ActivLink, Wireless Doorbell"
Registering protocol [116] "Honeywell ActivLink, Wireless Doorbell (FSK)"
e[106;96m[e[30mProtocolse[96m]e[0m Registered 2 out of 250 device decoding protocols
e[106;96m[e[30mInpute[96m]e[0m The internals of input handling changed, read about and report problems on PR #1978
e[106;96m[e[30mSDRe[96m]e[0m Found 1 device(s)
e[106;96m[e[30mSDRe[96m]e[0m trying device 0: Realtek, RTL2838UHIDIR, SN: 00000001
Found Fitipower FC0012 tuner
Exact sample rate is: 250000.000414 Hz
e[102;92m[e[30mSDRe[92m]e[0m Using device 0: Realtek, RTL2838UHIDIR, SN: 00000001, "Generic RTL2832U OEM"
e[106;96m[e[30mSDRe[96m]e[0m Sample rate set to 250000 S/s.
e[106;96m[e[30mInpute[96m]e[0m Bit detection level set to 0.0 (Auto).
e[106;96m[e[30mSDRe[96m]e[0m Tuner gain set to Auto.
e[106;96m[e[30mInpute[96m]e[0m Reading samples in async mode...
e[105;95m[e[37mSDRe[95m]e[0m rtlsdr_set_center_freq 868300000 = 0
e[106;96m[e[30mSDRe[96m]e[0m Tuned to 868.300MHz.
Allocating 15 zero-copy buffers
e[105;95m[e[37macquire_threade[95m]e[0m acquire_thread enter...
e[106;96m[e[30mMQTTe[96m]e[0m MQTT Connected...
e[106;96m[e[30mMQTTe[96m]e[0m MQTT Connection established.
e[106;96m[e[30mBasebande[96m]e[0m low pass filter for 250000 Hz at cutoff 50000 Hz, 20.0 us

Still, when I ring the bell, nothing happens… Where am I wrong?

I added a report with log files here. In case you want to help, I would be grateful if you check there…

Did a step forward. This command line on a Windows PC worked:

rtl_433 -f 868M -g 0 -F kv -v -Y autolevel

I put these settings into a config file. I tried

frequency 868M
output kv
gain 0
verbose 5
pulse_detect autolevel

But still I receive no responses.

A second point: The MQTT server settings like this

output mqtt://${host}:${port},user=${username},pass=${password},retain=${retain}

should use HA variables automatically, right? This fails for me.

Yes, that’s right. Are you editing the .template file? That’s what gets read in and has variables substituted. Here’s one of mine:

$ cat rtl_433/doorbell.conf.template
device 0
frequency 916.8M
output mqtt://${host}:${port},user=${username},pass=${password},retain=false
report_meta time:iso:usec:tz

I am editing a config file. The syntax is identical, I just use a different name, rtl_433.conf.

The file is properly read and considered. But the variables are not found. What can I do?

That’s your problem! Only the file ending in .template will have variables replaced. If you have rtl_433.conf it is used as-is with no changes.

1 Like

New to all this but have read through a lot of the documentation, but still unable to get devices into HA. I have rtl_433(next) running and can see my device transmitting in that log

However when I go to MQTT Explorer there are no rtl_433 messages showing up. Here is the MQTT Explorer connection settings:

And here is the explorer not showing any indication it is seeing the device from rtl_433.
image

Much appreciate any assistance in advance…feel I am close, just need to get this over the line.

I assume Frigate is using the same broker as rtl, so your connection settings are ok if you are seeing its messages. I would just use ip:port.

Is rtl_433 definitely configured to post to MQTT correctly? Maybe share your config for that?

Frigate is using the MQTT broker. Sorry but I am not certain what you mean for the rtl_433 configuration for posting to MQTT. The only config that I currently have for it that I am aware of is in rtl_433.conf.template which has this:
image

The only other things I have read state to include tuner options, and various protocols to be able to see other 433 sending devices. So perhaps I am missing code there to have it post to MQTT, but not able to find anything that directs me as to how to do so.

Should I have something on this screen?

Thank you for your reply

Thanks for sending me in the right direction. I got the conf file set up to send to MQTT (after some trial and error) and can now see rtl_433 devices in the MQTT Explorer. Now I need to read up on how to get these added as HS devices.

Dear all, I’m now having my doorbell basically up and running using correct filter settings, but I still would be glad to represent it properly in HA. To my understanding, an MQTT Event would be the right device type. I struggle in getting it implemented, see here.

Would you let me know how your rtl_433 doorbells are included in HA? Was someone successful in using the MQTT Event? I currently use a MQTT Binary Sensor which is working by a reset after every ringing, but not really the way it should be done.