ESPHome and 433mhz superheterodyne RF receiver

Here is my updated schematic, which is working for me !

I also made the yaml code ready:

esphome:
  name: esphome-web-9750b8
  friendly_name: GarageDoorOpener
  #on_boot:
  #  priority: -100
  #  then:
  #    - light.turn_on:
  #        id: onboard_led_pwm
  #        effect: "slow"
      
esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "Zq+TzloCQg+YcgnPaEWxTBUMpajQWV4dy254F9cfhZ4="

ota:


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Esphome-Web-9750B8"
    password: "NCYi9k0FE2CH"

captive_portal:

#esp32_camera: #NOT WORKING IF ANYTHING ELSE IS IN YAML CODE
#  name: My ESP32-CAM 
#  external_clock:
#    pin: GPIO0
#    frequency: 20MHz
#  i2c_pins:
#    sda: GPIO26
#    scl: GPIO27
#  data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35]
#  vsync_pin: GPIO25
#  href_pin: GPIO23
#  pixel_clock_pin: GPIO22
#  power_down_pin: GPIO32
#  #contrast: 0
#  #brightness: 0
#  #saturation: 0
#  resolution: 1600x1200

#esp32_camera_web_server:
#  - port: 8080
#    mode: stream
#  - port: 8081
#    mode: snapshot

sensor:
- platform: wifi_signal # Reports the WiFi signal strength/RSSI in dB
  name: WiFi Signal dB
  id: wifi_signal_db
  update_interval: 10s
  entity_category: "diagnostic"
- platform: copy # Reports the WiFi signal strength in %
  source_id: wifi_signal_db
  name: "WiFi Signal Percent"
  #on_value:
  #  then:
  #    - light.turn_on:
  #        id: onboard_led
  filters:
    - lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
  unit_of_measurement: "Signal %"
  entity_category: "diagnostic"    
- platform: uptime
  name: GarageDoorOpener Uptime

binary_sensor:
- platform: status
  name: "GarageDoorOpener Status"
- platform: gpio
  device_class: light
  pin: 
    number: GPIO13
    mode:
      input: true
      pulldown: true
  name: "LIGHT"
  on_press:
    output.turn_on:
      id: gpio_4
  on_release:
    output.turn_off:
      id: gpio_4
#- platform: gpio
#  pin:
#    number: GPIO14
#    inverted: true
#    mode:
#      input: true
#      pulldown: true
#  name: "OPEN"

button:
- platform: output
  name: "IMPULS"
  output: gpio_16
  duration: 1000ms
  # Optional variables:
  icon: "mdi:garage"
  on_press:
#  - logger.log: "Impuls Button pressed"
#  - light.turn_on:
#      id: onboard_led_pwm
#      effect: flashfast
#  - delay: 500ms
#  - if:
#      condition:
#        light.is_on: onboard_led
#      then:
#        - light.turn_on:
#            #id: onboard_led
#            id: onboard_led_pwm
#            effect: "constant_on"
#      else:
#        - light.turn_on:
#            id: onboard_led_pwm
#            effect: "slow"
  - output.turn_on:
      id: gpio_33
#  - delay: 500ms
#  - output.turn_off:
#      id: gpio_33


light:
# GPIO_4 is the flashlight pin
- platform: binary
  output: gpio_4
  name: flashlight
# GPIO_33 is the onboard led
#- platform: binary
#  output: gpio_33
#  id: onboard_led
#  name: onboard_led
#  on_turn_on:
#    - light.turn_on:
#        #id: onboard_led
#        id: onboard_led_pwm
#        effect: "constant_on"
#  on_turn_off:
#    - light.turn_on:
#        id: onboard_led_pwm
#        effect: "slow"
## On-Board LED PWM
#- platform: monochromatic
#  id: onboard_led_pwm
#  output: gpio_33_pwm
#  effects:
#    - pulse:
#        name: flashfast
#        transition_length: 0.0s
#        update_interval: 0.04s
#    - pulse:
#        name: fast
#        transition_length: 0.5s
#        update_interval: 0.5s
#    - pulse:
#        name: "slow"
#        #transition_length: 1s # defaults to 1s
#        update_interval: 2s
#    - pulse:
#        name: "constant_on"
#        #transition_length: 0.5s
#        #update_interval: 0.5s
#        min_brightness: 100%
#        max_brightness: 100%

# Example configuration entry
status_led:
  pin: 
    number: GPIO33
    inverted: true

output:
# Flashlight
- platform: gpio
  pin: GPIO4
  id: gpio_4
- platform: gpio
  pin: GPIO16
  id: gpio_16
# onboard led
- platform: gpio
  id: gpio_33
  pin: 
    number: GPIO33
    inverted: true
#- platform: ledc
#  id: gpio_33_pwm
#  pin:
#    number: GPIO33
#    inverted: true

If somebody want to order a pcb I made oneā€¦:
PCB_PCB_GarageDoorOpener_2023-11-03

Unfortunately I canā€™t upload the gerber files because zip files are not allowed.
Anyhow here is the project:

This also is the true for stl files of my printed housing I designed, so here is the project:

The wifi signal is not strong but still working, we will see how reliable it is:

Edit:
Just like I expected wifi signal isnā€˜t reliable enough so it happens that the door opener isnā€˜t available.
This especially happens if the (metal) door is closed, so it canā€˜t be opened again.
I already used an external antenna for the esp.
Also I tried a repeater but also the repeater doesnā€™t receive a signal which is strong enoughā€¦

At the beginning my idea was to use a 433MHz transmitter / receiver but this seems not a good idea.

What else can I do to get the garage door opener working reliable ?

Whatā€™s the recommended rf receiver?
Iā€™m trying to setup the same one and I canā€™t get it to work yet

You literally just quoted the answer in your post :point_down:

Itā€™s also written in the title of the thread :writing_hand:

Very unfortunate, sadly Iā€™m out of cristal balls :crystal_ball: atm so you might want to try this thread instead :wink: