Hi folks,
Trying to get data from a set of devices to go to a specific device that can then respond to this input.
If at all relevant, receiver (jake) is an ESP8266. Senders are all ESP32-C3s.
How it’s currently set up; on (one of) the senders (they’re all in effect set up the same):
udp:
id: udp_to_jake
addresses:
- 192.168.2.62
port: 18511
packet_transport:
- platform: udp
udp_id: udp_to_jake
update_interval: 1000ms
encryption: !secret udp_encryption_4
rolling_code_enable: True
binary_sensors:
- id: ld2450_presence
broadcast_id: mrcharrington_presence
and on reciever:
udp:
- id: udp_listen
port:
listen_port: 18511
broadcast_port: 18511
packet_transport:
- platform: udp
udp_id: udp_listen
id: packet_in
ping_pong_enable: True
providers:
- name: mrcharrington
encryption: !secret udp_encryption_4
- name: obrian
encryption: !secret udp_encryption_5
- name: winston
encryption: !secret udp_encryption_6
All is good. It works. For a bit. Until something seems to go wrong with the rolling code (a short while in)
22:23:26 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:0000085B is old
22:23:27 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:0000085C is old
22:23:28 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:0000085D is old
22:23:29 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:0000085E is old
22:23:30 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:0000085F is old
22:23:30 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:00000860 is old
22:23:31 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:00000861 is old
22:23:32 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:00000862 is old
22:23:33 [W] [packet_transport:386]
Rolling code for mrcharrington 00000003:00000863 is old
(etc. etc.)
The data then seems to fail to transfer over.
What I’ve done so far:
- Taken jake back to a minimal firmware (ie. to get the old rolling code out). Removed all components, left OTA and Wi-Fi only. Then reflashed (thought was this would clear out the advanced rolling code if that was the problem).
- Removed and re-added the rolling_code_enable line from the senders (works fine with it out).
My first thought was that somewhere along the line I’d re-flashed the sender after the receiver and it hadn’t retained the old code. But I’d expect the first action to sort that.
Not sure exactly what the answer is here. I guess the security isn’t essential, but it’s a bizarre problem that is frustrating me somewhat.
Any thoughts appreciated.