Hello!
I have an ESP360 remote with the 315mhz nicerf modules installed.
I’m trying to replicate the RF remote for my projector screen, but am having no luck getting the screen to respond.
Here is the real remote signal:
[17:29:53][I][remote.raw:041]: Received Raw: 379, -423, 339, -432, 572, -980, 579, -984, 339, -437, 339, -432, 339, -435, 574, -978, 339, -437, 569, -333, 454, -985, 575, -983, 354, -422, 333, -433, 344, -430, 579, -971, 353, -430, 332, -439, 339
Here is the esp remote signal
[17:30:15][I][remote.raw:041]: Received Raw: 391, -417, 365, -411, 580, -972, 587, -969, 388, -383, 365, -418, 365, -404, 580, -974, 384, -391, 586, -334, 441, -965, 561, -960, 390, -420, 369, -411, 365, -410, 568, -969, 393, -418, 371, -427, 370
I’ve matched the repeat interval and timings as close as I can. Here is a comparison of the real remote vs the esp360 transmission created using EspHome Remote Receiver Oscilloscope
And here is my yaml
esphome:
name: office-esp360
friendly_name: Office-ESP360
esp32:
board: esp32dev
framework:
type: arduino
wifi:
ssid: "Two Whole Internets"
password: "wifiislife!!"
#use_address: "192.168.86.49"
#HotSpot when it can't connect to WiFi
ap:
ssid: "Esp360Remote"
password: "Esp360Remote"
# Enable logging
logger:
api:
encryption:
key: "LnA3lnvQufYVusVio4hE1OGWqjCK2Ynb8QEep34p4tk="
ota:
platform: esphome
password: ""
captive_portal:
#i2c bus definition
i2c:
sda: 21
scl: 22
scan: true
id: bus_a
#Offsets have been added to the measurements taken.
#These are necessary due to the heat generated by the PCB, the second layer of the board, and the case.
#This way, sufficiently accurate values are obtained for automations
sensor:
- platform: shtcx
temperature:
name: "Temperature"
filters:
- median:
window_size: 5
send_every: 1
- offset: -3.7
humidity:
name: "Humidity"
filters:
- median:
window_size: 5
send_every: 1
- offset: +19.1
address: 0x70
update_interval: 300s
- platform: bh1750
name: "BH1750 Illuminance"
filters:
- multiply: 5
address: 0x23
update_interval: 1s
#Setting up IR and RF receivers
remote_receiver:
- id: RF_RX
pin:
number: GPIO5
inverted: false
mode:
input: true
pullup: true
#dump: all
dump:
- raw
tolerance: 25%
filter: 200us
idle: 5ms
buffer_size: 10kb
- id: IR_RX
pin:
number: GPIO19
inverted: True
#dump: all
#Setting up IR and RF transmitters
remote_transmitter:
- id: RF_TX
pin: GPIO18
carrier_duty_percent: 100%
- id: IR_TX
pin: GPIO13
carrier_duty_percent: 50%
web_server:
port: 80
#Status LED
switch:
- platform: gpio
pin: 12
name: "Status Led"
restore_mode: ALWAYS_ON
#Remote Buttons
button:
#Projector Screen
- platform: template
name: "Projector Screen Test Stop"
on_press:
- then:
- remote_transmitter.transmit_raw :
transmitter_id: RF_TX
code: [255, -5850, 231, -535, 245, -530, 580, -1016, 534, -1022, 170, -566, 242, -529, 253, -519, 582, -1017, 170, -566, 576, -241, 526, -1020, 502, -1020, 197, -580, 238, -532, 246, -527, 563, -1020, 214, -562, 249, -522]
repeat:
times: 5
wait_time: 0us
- remote_transmitter.transmit_raw :
transmitter_id: RF_TX
code: [255, -5850]
I tried using tasmota and it also doesn’t yield any response from the screen.
00:20:14.777 RFR: Data 0xC4C4 (50372), Bits 18, Protocol 25, Delay 368
00:20:14.779 RSL: RESULT = {"Time":"2024-09-29T00:20:14","RfReceived":{"Data":"0xC4C4","Bits":18,"Protocol":25,"Pulse":368}}
00:20:18.579 WIF: Checking connection...
00:20:31.381 CMD: RfSend {"Data":"0xC4C4","Bits":18,"Protocol":25,"Repeat":10,"Pulse":368}
00:20:31.384 SRC: WebConsole from 192.168.86.59
00:20:31.385 CMD: Grp 0, Cmd 'RFSEND', Idx 1, Len 65, Pld -99, Data '{"Data":"0xC4C4","Bits":18,"Protocol":25,"Repeat":10,"Pulse":368}'
00:20:31.665 RSL: RESULT = {"RfSend":"Done"}