RPi RF Receiver addon

Here is my RPi RF Receiver addon, use it if you want to receive and decode 433 MHz signals on your Hass.io using any compatible RF receiver (read this page for more info https://pypi.python.org/pypi/rpi-rf). Please let me know if it works correctly on your RPi.

The addon will directly write the codes received in this MQTT sensor:

  platform: mqtt
  state_topic: "sensors/rf/receiver"
  name: "RF Receiver"

I had manually installed this (version 1.0) I shut it down and added this addon since it’s a newer version, What changed between 1 and 1.5? Btw, added a few of your other addons, thanks!

Hello @Pantomax,

Please hoe can I use this on Hassbian?


@motoolfan, nothing important in the new version, I just removed a couple of unnecessary includes.
@Odianosen25 I’m afraid you cannot use addons on Hassbian, they are only for Hassio, but there should be many tutorials on how to run the rpi-rf_receive script in background on your Raspberry Pi.
Here is the famous video which shows how it works: https://youtu.be/5UUazFbK-Hg


I’m using your addon, but I have some doubts, for example I’m receiving several codes, I don’t know which I should use. I have the command in my hands, I’m pressing a specific button several times in order to see if I have a code that is repeating, but nothing :frowning:
below you can see what I’m receiving:
2017-11-29 23:39:10 - [INFO] rpi-rf_receive: 2048 [pulselength 1917, protocol 2]
2017-11-29 23:39:15 - [INFO] rpi-rf_receive: 2 [pulselength 869, protocol 4]
2017-11-29 23:39:22 - [INFO] rpi-rf_receive: 4 [pulselength 898, protocol 4]
2017-11-29 23:39:45 - [INFO] rpi-rf_receive: 2048 [pulselength 141, protocol 3]
2017-11-29 23:40:00 - [INFO] rpi-rf_receive: 268435456 [pulselength 1377, protocol 2]
2017-11-29 23:40:06 - [INFO] rpi-rf_receive: 4 [pulselength 440, protocol 5]
2017-11-29 23:40:21 - [INFO] rpi-rf_receive: 2252800 [pulselength 185, protocol 3]
2017-11-29 23:40:22 - [INFO] rpi-rf_receive: 8388608 [pulselength 893, protocol 2]
2017-11-29 23:40:25 - [INFO] rpi-rf_receive: 131072 [pulselength 974, protocol 5]
2017-11-29 23:40:32 - [INFO] rpi-rf_receive: 8388608 [pulselength 708, protocol 5]
2017-11-29 23:40:36 - [INFO] rpi-rf_receive: 133710 [pulselength 709, protocol 5]
2017-11-29 23:40:36 - [INFO] rpi-rf_receive: 133742 [pulselength 708, protocol 5]
2017-11-29 23:40:46 - [INFO] rpi-rf_receive: 512 [pulselength 2249, protocol 4]
2017-11-29 23:40:46 - [INFO] rpi-rf_receive: 67108864 [pulselength 776, protocol 2]
2017-11-29 23:41:00 - [INFO] rpi-rf_receive: 2 [pulselength 1031, protocol 4]
2017-11-29 23:41:14 - [INFO] rpi-rf_receive: 9 [pulselength 1174, protocol 2]
2017-11-29 23:41:23 - [INFO] rpi-rf_receive: 65536 [pulselength 1065, protocol 4]
2017-11-29 23:41:32 - [INFO] rpi-rf_receive: 6 [pulselength 394, protocol 1]
2017-11-29 23:41:38 - [INFO] rpi-rf_receive: 8200 [pulselength 1217, protocol 4]
2017-11-29 23:41:42 - [INFO] rpi-rf_receive: 1152 [pulselength 251, protocol 1]
2017-11-29 23:42:02 - [INFO] rpi-rf_receive: 32768 [pulselength 792, protocol 2]
2017-11-29 23:42:02 - [INFO] rpi-rf_receive: 8 [pulselength 1634, protocol 4]
2017-11-29 23:42:02 - [INFO] rpi-rf_receive: 2097152 [pulselength 1462, protocol 4]
2017-11-29 23:42:10 - [INFO] rpi-rf_receive: 131072 [pulselength 1397, protocol 2]
2017-11-29 23:42:23 - [INFO] rpi-rf_receive: 1 [pulselength 1216, protocol 2]
2017-11-29 23:42:32 - [INFO] rpi-rf_receive: 1 [pulselength 1136, protocol 4]
2017-11-29 23:42:39 - [INFO] rpi-rf_receive: 32 [pulselength 195, protocol 1]
2017-11-29 23:42:52 - [INFO] rpi-rf_receive: 3 [pulselength 111, protocol 3]
2017-11-29 23:42:52 - [INFO] rpi-rf_receive: 9 [pulselength 1620, protocol 4]
2017-11-29 23:42:54 - [INFO] rpi-rf_receive: 16 [pulselength 435, protocol 5]
2017-11-29 23:42:54 - [INFO] rpi-rf_receive: 2 [pulselength 743, protocol 2]
2017-11-29 23:42:54 - [INFO] rpi-rf_receive: 4224 [pulselength 1618, protocol 4]
2017-11-29 23:43:04 - [INFO] rpi-rf_receive: 16 [pulselength 1858, protocol 2]
2017-11-29 23:43:12 - [INFO] rpi-rf_receive: 64 [pulselength 984, protocol 5]
2017-11-29 23:43:12 - [INFO] rpi-rf_receive: 9437184 [pulselength 175, protocol 3]
2017-11-29 23:43:28 - [INFO] rpi-rf_receive: 1 [pulselength 2120, protocol 4]

Then other question, how can I troubleshoot in order to understand if I’m sending some signal or not?

The configuration I have is the following:

  • platform: rpi_rf
    gpio: 17
    pulselength: 307
    protocol: 3
    code_on: 33554432
    code_off: 33574914
    Thank you in advance! :slight_smile:

Update, I think that I’m sending codes :), at least in the receiver log I can see the same codes I have in my configuration… however any of my RF devices are noticing my codes :sob::sob::sob:


I think it’s ok if you receive some other codes, probably our houses are full of signals. I had some problems at the beginning just because I used the 5V pin instead of the 3V pin, so I kept receiving a lot of codes which was not sent by my transmitter (oh, and don’t try to move the “red” screw on the receiver, don’t do it! :slight_smile: ).
Well, if you want to understand if you are sending the right signal you just have to read what the receiver is reading in that moment, if you transmit 33554432 you should also receive 33554432. But actually I am just using the receiver not the trasmitter, so I’m not sure.

And, yes, the power of this cheap transmitter/receiver is very low, so the devices very far from the RPi couldn’t be used. You can try to use an external antenna.

Thank you for your reply.
hum, I have my tx/rx module connected to 5v… Ok, I’m going to try to move to 3v.

Yesterday, I checked and TX is sending the configured codes, I was able to see them on the logs. This part here is ok.

To gather the RF codes I only need to have the remote controlls close to the RX module and then press the buttons, right? I don’t need to be close the RF device, correct?

Thanks a lot for your valuable replies.

Well, the voltage depends on the device you have, but moving it from 5v to 3v shouldn’t harm your module. yes, if you want to read the code from your remote you don’t need to be near the RF device.
I also bought this one:

but I’ve not tested yet, maybe it works better (as receiver). I’d like to use my Hassio with some cheap RF motion sensor, but with the receiver I am using now, I can read the codes only a few meters far from the RPi and not behind walls I’ll let you know. :wink:

The modules I’m using are the following:
RF modules
Probably too cheap :slight_smile:

and the integration with RPI was done following this website:
RF integration

Which kind of modules are you using now?

Are you using RF motion sensors? for that purpose I’m using xiaomi sensors.

My fight now is with RF shutter motors. :slight_smile:

yes, I’m using a similar module (oh, wow, yours is US $0.76!!!, really cheap :slight_smile: ), this one:

I’m not actually using the transmitter because I have a couple of Broadlink RM Pro which works very well sending RF codes (and they actually work well also with infrared). The Broadlink RM Pro is pretty popular here on this community, It’s really a good product.


Many users are using Xiaomi products, maybe I’ll give it a try. Thanks for your advice.

I want to use infrared reception in hassio, can you make rpi-lirc_receive

@cuihaijun Is there a script in python somewhere?

Ok, I tried this receiver:

and I have to say that it works very well, I can sense the RF codes in another room with 3 walls between the trasmitter and the RPi.

1 Like

I’ll be adding this after christmas so that I can observe the states of some home security door sensors. Thanks for making this available.

1 Like

Great! Thanks for sharing… I think that I’m going to order that receiver for mee too…

1 Like

so my receiver is working great. My transmitter, on the other hand, is having some issues. It will occasionally work, but not very often. I’m tinkering with it, but I’m having a lot of issues…any suggestions? I’ve tried both 3.3v and 5v pins. so far, the 3v works better, I think?

Usually it’s just a matter of distance. The cheap trasmitters have a very short range of action.
If your receiver receives the code that you have just transmitted it means it works correctly but the output power is too low to reach the device it should operate

I tested it yesterday when the transmitter was about 2 feet from the plug. It worked a couple of times every time I restarted hassio, but otherwise…Anyway, I also didn’t have the antenna that Ben did in his movie where he explained this, so I’m going to try that as well. Should get that tomorrow or the day after. I’ll let you know the results.

will this RPI_RF s/w module work if i solder the transceiver on the same RaspPi board that’s running the Hassio?
I just have one RPi3 board at home and would like to know whether i’d have to purchase another RPI board to use with this RPi_RF s/w module or can i save some money here :slight_smile: