ESPHome and 433mhz superheterodyne RF receiver

It mostly handles it okay if logging is not set to verbose, although I do occasionally get some strange crashes and stack traces which I didn’t get to the bottom of yet.

This :point_up: is actually the one receiver nobody should should use because of it’s insane noise (which can not be fixed). It’s not superheterodyne (that’s the type you want) anyway.

I definitely noticed the constant noise. I’ve since moved on to directly tapping the 433 MHz signal from the weather station receiver, as another person did.

Sorry I’ve been MIA. I got a similar receiver to yours, however I am facing the same issue of wayyyy too much noise. I’m also not sure that my receiver screw is set correctly, it was not glued in place as it should have been when it arrived.

Hi folks.
I’m doing something very similar. I’m using “the one receiver that nobody should use” lol.
It does not filter out noise. If fact, if you connect it to a speaker, you will hear the hiss, and any data that comes in.

Mine is connected directly to a PIC microcontroller. This basically continually loops until it detects a ‘preamble’ of around 8ms. This is doing the work of filtering out the static noise.
After that, it waits for the first bit, then reads in the code.
This is specific timing to what I have created, it can’t read anything else.

Once the information has been read, it outputs it over 9600 8n1 serial data into an ESP8266, which in turn sends that out to HA via restful.

I was under the impression that an 8266 on its own wasn’t fast enough to capture RF data. I would like to be proved wrong on this as it would make life a lot easier.

Just an observation, that RF receiver is missing an aerial.
For 433Mhz, a 32cm wire should be soldered to the connection at the bottom right, that’s assuming your going to use it again.

Hi guys,

posting here as I spent some time on the topic as well.
I have a RXB6 receiver (Link) which i used with few different 433mhz buttons and door/window sensors with a D1 mini pro / Lolin D32 Pro / and ESP32 DEVKIT DOIT.

Strange thing I realized is behavior is quite different and settings needs to be adjusted accordingly to the board, with D1 mini pro definetly having the more consistent behavior.
I was really surprised by this and can’t explain why it is happening…any idea?

Gents,
Having noise issues with cheap RF receivers I decided to buy this superheterodyne module hoping to pair a Sonoff 433Mhz remote. Now I’m scratching my head because I do not know how the pins work.

Any idea?

Saw this thread pop up recently, and it’s using the RX470C-V01 receiver module. Best part is, @swedude provided ESPHome custom code to handle the data reception.

2 Likes

I realised it was because I had set the memory buffer size too large and it was bigger than it could handle. Once I reduced it to 1000, the crashes have stopped.

I’ve been testing 433 MHz in the workshop for a long time. I am using a receiver marked in the photo, see. with my code the noise is minimal… I STRONGLY RECOMMEND USING ESP32! esp8266 and others have to make noise.

remote_receiver:
  - id: rc_receiver
    pin:
      number: GPIO22
      inverted: True
    dump: rc_switch
    tolerance: 60%
    filter: 250us
    idle: 4ms
    buffer_size: 2kb


I have not had a chance to try this yet as this particular project took the back burner, but this looks like a good solution!

Hey everyone I’m having issues using the transmitter. I got the following from Amazon. The receivers work just fine and I’m able to read my remote signal data but after lot of trial I can’t get the transmitter to work. Any advice will be truly appreciated.

HiLetgo 5 Sets 433M Transmitter +… Amazon.com

Here is a path to flash the Portisch chip to receive raw data.

How did you do your project? I am trying to do the same but I am totally lost. I am not getting any data from the receiver. Could you help me? Sorry for the inconvenience

Your post will probably only be inconvenient for you as nobody will be able to help you based on the vague and little information you provide. :man_shrugging:

As a hint take a little time and read this here from top to bottom :point_down:

Then open a new thread with a meaningful title and provide detail information on what you did, how you did it and don’t forget to provide your yaml, logs and schematics :page_facing_up:

Good luck :crossed_fingers: and welcome to the forum :wave:

Hi !
I want to get and decode some rf signals and send them later via Homeassistant just like described in post #1.
Unfortunately I also have the same problem like you described.
Also ordered superheterodyne receiver / transmitter and I‘m using D1 Mini.

Link

Like you I already tried different filter, idle, tolerance values and pins.
Currently I receive some signals with this code so at least the receiver could be okay.
On the other hand I receive a lot of data if for example „raw“ is commented in without doing anything so I‘m not sure if the receiver is working correct.
Unfortunately the receiver does not receive anything if I press any button on my remotes and I tried several ones.

remote_receiver:
  pin: 
    number: D2
    mode: INPUT
    inverted: True
  dump:
    - aeha #Decode and dump AEHA infrared codes.
    #- canalsat #Decode and dump CanalSat infrared codes.
    #- canalsatld #Decode and dump CanalSatLD infrared codes.
    - coolix #Decode and dump Coolix infrared codes.
    - dish #Decode and dump Dish infrared codes.
    - drayton #Decode and dump Drayton Digistat RF codes.
    - jvc #Decode and dump JVC infrared codes.
    - lg #Decode and dump LG infrared codes.
    - magiquest #Decode and dump MagiQuest wand infrared codes.
    - midea #Decode and dump Midea infrared codes.
    - nec #Decode and dump NEC infrared codes.
    - nexa #Decode and dump Nexa (RF) codes.
    - panasonic #Decode and dump Panasonic infrared codes.
    - pioneer #Decode and dump Pioneer infrared codes.
    #- pronto #Print remote code in Pronto form. Useful for using arbitrary protocols.
    #- raw #Print all remote codes in their raw form. Also useful for using arbitrary protocols.
    - rc5 #Decode and dump RC5 IR codes.
    - rc6 #Decode and dump RC6 IR codes.
    - rc_switch #Decode and dump RCSwitch RF codes.
    - samsung #Decode and dump Samsung infrared codes.
    - samsung36 #Decode and dump Samsung36 infrared codes.
    - sony #Decode and dump Sony infrared codes.
    - toshiba_ac #Decode and dump Toshiba AC infrared codes.
  tolerance: 50
  filter: 1us
  idle: 1ms
  buffer_size: 2kb

Did you get your rf receiver working ?
Or did you tried the referenced esp home code from @swedude ?

Okay got it working with an 433 Mhz garage door opener with following settings.

remote_receiver:
  pin: 
    number: D2
    mode: INPUT
    inverted: True
  dump: #all
    - aeha #Decode and dump AEHA infrared codes.
    #- canalsat #Decode and dump CanalSat infrared codes.
    #- canalsatld #Decode and dump CanalSatLD infrared codes.
    - coolix #Decode and dump Coolix infrared codes.
    - dish #Decode and dump Dish infrared codes.
    - drayton #Decode and dump Drayton Digistat RF codes.
    - jvc #Decode and dump JVC infrared codes.
    - lg #Decode and dump LG infrared codes.
    - magiquest #Decode and dump MagiQuest wand infrared codes.
    - midea #Decode and dump Midea infrared codes.
    - nec #Decode and dump NEC infrared codes.
    - nexa #Decode and dump Nexa (RF) codes.
    - panasonic #Decode and dump Panasonic infrared codes.
    - pioneer #Decode and dump Pioneer infrared codes.
    #- pronto #Print remote code in Pronto form. Useful for using arbitrary protocols.
    #- raw #Print all remote codes in their raw form. Also useful for using arbitrary protocols.
    - rc5 #Decode and dump RC5 IR codes.
    - rc6 #Decode and dump RC6 IR codes.
    - rc_switch #Decode and dump RCSwitch RF codes.
    - samsung #Decode and dump Samsung infrared codes.
    - samsung36 #Decode and dump Samsung36 infrared codes.
    - sony #Decode and dump Sony infrared codes.
    - toshiba_ac #Decode and dump Toshiba AC infrared codes.
  tolerance: 25 #20230830 Garage door opener
  filter: 250us
  idle: 3ms
  buffer_size: 2kb

Now I get something like this in the log window:

[21:42:44][D][remote.rc_switch:261]: Received RCSwitch Raw: protocol=6 data='0010101110111100110000111011111001000110000111101101111111111011'

So my impression is that my other remote controllers are not using 433Mhz, rathermore they all use IR…
But is there any option to capture IR signals, decode them and transmit them later all together with ESP Home ?
Also I have another remote control using 40.685 MHz (Hörmann), would there also be an option ?
Which hardware would I need for IR and 40 MHz ?

I only found a project which could support IR (and other protocols like BLE):

https://github.com/1technophile/OpenMQTTGateway

https://docs.openmqttgateway.com/

Edit: For anybody who is looking for an IR solution with ESP Home I found this guide:

If this is a modern BiSecur system I see no chance to remote control it with anything else but the original Hörmann remotes. They use a bidirectional encrypted communication that you cannot simply intercept and imitate from ESPhome. If you could, then anybody on the street could too and could open your garage door with minimal effort.
But the Hörmann garage door drives have a physical input that is meant to attach an external switch. Here you can add an ESP with a relay or an opto-coupler and control the door with ESPhome.

1 Like

Great idea ! Because wifi signal isn‘t strong if Garage door is closed idea would be to send a signal via my rf bridge over 433MHz and receive it with another esp inside the garage.
There a switch would be attached connected to the garage door opener.

For my Hörmann „SupraMaticE“ it is described in manual.


Question: would the esp inside the garage need wifi or would 433MHz receiver be enough ?
Are there any recommendations for potential free relais for usage with esp ?

Be careful with any simple RF control for your garage door. Without a reliable rolling code encryption in that communication you will invite criminals to try and open your door. There are cheap Chinese gadgets on the market that iterate through all possible RF commands in a very short time. They are used while slowly driving through streets to see which garage doors will open. It really happens!

If you use Wifi on ESPhome instead a strong encryption is built in from the start. Better stay with that. It also gives you the possibility to update your ESP over there air.

Don’t use a relay. Use a 2x or 4x opto coupler. It is much cheaper and you don’t need a driver transistor. You can also use it to return the door closed state from your SupraMatic to your ESP.
Have a look at the diagram below where I did something similar with an older ProMatic and a KNX device. The only difference in your case would be that you will need resistors for all (!) your opto LEDs. The LEDs only need between 1 and 10 mA to fully open the photo transistor. So a resistor of about 360 Ohms would be ok. On the back path you need between 2.2k and 22k as shown in the diagram, i.e. 4k would be fine. Make sure you activate the internal pull-up for the corresponding ESP input off that back path GPIO.