Hi All
I have been hitting my head against this for a couple of days and run out of ideas.
I have a cooker hood that uses a 433MHz remote to control it. I am trying to capture the RF from the remote and replay it back to allow Home Assistant to “press” the button. There are really only 3 buttons that I care about; Light, Fan Up and Fan Down and I am starting with just the Light. I have purchased a CC1101 dongle and connected it up to a ESP-WROOM-32 board that I had already
Im following the guide here for “Setting up RF Devices”
I seem to be able to receive data properly but am unable to retransmit it back (or at least, the device is not responding).
Connections are:
Signal----------ESP Pin------CC1101
SPI Clock-----GPIO18-------pin 5
MOSI-----------GPIO23------pin 6
MISO-----------GPIO19------pin 7
CS--------------GPIO5--------pin 4
Tx---------------GPIO21------pin 3
Rx---------------GPIO15------pin 8
My Yaml for ESPHome:
esphome:
name: esphome-web-48921c
friendly_name: RF Blaster
min_version: 2025.5.0
name_add_mac_suffix: false
esp32:
board: esp32dev
framework:
type: esp-idf
# Enable logging
logger:
baud_rate: 0
# Enable Home Assistant API
api:
# Allow Over-The-Air updates
ota:
- platform: esphome
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
spi:
clk_pin: GPIO18
mosi_pin: GPIO23
miso_pin: GPIO19
cc1101:
cs_pin: GPIO05
frequency: 433.92MHz
remote_receiver:
pin: GPIO15 # Must match GDO2
dump: all
tolerance: 50%
filter: 250us
idle: 4ms
remote_transmitter:
pin: GPIO21
# RF uses a 100% carrier signal
carrier_duty_percent: 100%
on_transmit:
then:
- cc1101.begin_tx
on_complete:
then:
- cc1101.begin_rx
button:
- platform: template
name: RF Extractor Light
on_press:
- remote_transmitter.transmit_rc_switch_raw:
code: '101101010011110101'
protocol: 6
repeat:
times: 10
wait_time: 0ms
When I press the button on the physical remote I get the following output:
[09:08:22.790][I][remote.canalsat:102]: Received CanalSat: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.790][I][remote.canalsatld:099]: Received CanalSatLD: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.790][I][remote.pronto:232]: Received Pronto: data=
[09:08:22.790][I][remote.pronto:240]: 0000 006D 0013 0000 000D 001D 000C 000F 001B 001D 000D 001C 000D 000F 001B 001C 000D 000E 001B 001C 000D 000F 001B 000E 001B 001C 000C 001D 000D 001D 000D 001C 000C 000F 001B 001D 000C 000F 001A 001D 000C 009B
[09:08:22.790][I][remote.rc_switch:261]: Received RCSwitch Raw: protocol=6 data='101101010011110101'
[09:08:22.826][I][remote.canalsat:102]: Received CanalSat: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.826][I][remote.canalsatld:099]: Received CanalSatLD: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.826][I][remote.pronto:232]: Received Pronto: data=
[09:08:22.826][I][remote.pronto:240]: 0000 006D 0013 0000 000E 001C 000C 000F 001B 001C 000C 001D 000D 000F 001A 001C 000D 000E 001B 001C 000D 000E 001B 000F 001B 001C 000D 001C 000D 001C 000D 001D 000C 000F 001B 001D 000C 000F 001B 001D 000D 009B
[09:08:22.842][I][remote.rc_switch:261]: Received RCSwitch Raw: protocol=6 data='101101010011110101'
[09:08:22.842][I][remote.canalsatld:099]: Received CanalSatLD: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.842][I][remote.pronto:232]: Received Pronto: data=
[09:08:22.842][I][remote.pronto:240]: 0000 006D 0013 0000 000E 001C 000C 000F 001B 001C 000D 001D 000C 000F 001B 001D 000D 000E 001C 001C 000C 000F 001B 000E 001C 001C 000C 001D 000E 001C 000D 001C 000C 000F 001B 001D 000C 000F 001B 001C 000C 009B
[09:08:22.865][I][remote.rc_switch:261]: Received RCSwitch Raw: protocol=6 data='101101010011110101'
[09:08:22.934][I][remote.canalsatld:099]: Received CanalSatLD: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.934][I][remote.pronto:232]: Received Pronto: data=
[09:08:22.934][I][remote.pronto:240]: 0000 006D 0013 0000 000E 001B 000D 000F 001B 001C 000E 001C 000C 000F 001B 001C 000E 000E 001B 001D 000D 000E 001B 000E 001B 001C 000D 001C 000D 001C 000D 001C 000D 000E 001B 001C 000D 000F 001B 001D 000D 009B
[09:08:22.934][I][remote.rc_switch:261]: Received RCSwitch Raw: protocol=6 data='101101010011110101'
[09:08:22.934][I][remote.canalsat:102]: Received CanalSat: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.934][I][remote.canalsatld:099]: Received CanalSatLD: device=0x11, address=0x09, command=0x04, repeat=0x1
[09:08:22.934][I][remote.pronto:232]: Received Pronto: data=
[09:08:22.958][I][remote.pronto:240]: 0000 006D 0013 0000 000D 001C 000D 000F 001B 001D 000C 001C 000D 000F 001B 001C 000D 000E 001B 001D 000D 000E 001B 000E 001B 001C 000D 001C 000C 001D 000C 001D 000E 000E 001B 001C 000C 000F 001B 001C 000D 009B
[09:08:22.958][I][remote.rc_switch:261]: Received RCSwitch Raw: protocol=6 data='101101010011110101'
When I take the RCSwitch data from there and try to replay it, I dont get any reaction from the end device.
I have tried different repeats, wait times (10ms increments up to 100ms), tried capturing and replaying it raw but still no response. Every example I have found in the forums seems to match my YAML as well.
I am not sure what else to try at this point. Any suggestions?
There are a couple of things confusing me though:
- I am unsure why I am getting CanalSat, Pronto etc as well. I also dont know if that matters or not!
- In the example I linked, the log for the receive just states “Received RCSwitch” when mine states “Received RCSwitch Raw”. Also not sure if that matters.
Thanks in advance!