I have scoured this forum, read the Pronto docs, tried IRScrutinizer and Sensus. I’m still having issues with decoding the remote for my Lasko CC23161 space heater. I have another Lasko heater for which this was easy; the raw dump gave me all I needed and am using raw and Pronto codes successfully with that heater.
The CC23161 remote is more complex. It has a numeric display that shows the temperature setting it is sending to the device and I’ve noticed that it sends that precise number (not just an up/down request). This seems to be how IR Remote Climate devices work.
My remote_receiver pin is properly inverted as confirmed by testing other remotes but when I dump raw data for only this remote the first digit has negative polarity (and did not work when I tried it), so I tried swapping polarity for each value as described here to no avail.
remote_receiver:
pin:
number: GPIO14
inverted: true
mode: INPUT_PULLUP
dump: raw
When I dump raw and press the power button I get something like this. Note the remote.raw:041 and remote.raw:028. I don’t know what it means but it must be a part of my problem. Indeed that first “Received Raw:” is blank every time.
[13:40:57.145][I][remote.raw:041]: Received Raw:
[13:40:57.166][I][remote.raw:028]: Received Raw: -4649, 764, -680, 740, -681, 743, -678, 741, -681, 740, -680, 740, -681, 740, -681, 740, -681, 740, -2102, 739, -682, 740, -682, 739, -682, 740, -682, 739, -682, 739, -682, 740, -682, 739, -682, 740, -681, 739, -681, 740, -682, 739, -682,
[13:40:57.188][I][remote.raw:028]: 740, -680, 740, -682, 739, -682, 740, -682, 739, -681, 716, -705, 717, -705, 716, -705, 740, -682, 739, -686, 736, -680, 740, -681, 740, -680, 741, -680, 741, -680, 741, -680, 740, -681, 740, -682, 739, -682, 740, -706, 714, -682, 739, -683, 739, -682,
[13:40:57.217][I][remote.raw:041]: 739, -2105, 738, -682, 739, -683, 739, -682, 739, -707, 714, -706, 714, -708, 713, -708, 714, -707, 714, -707, 713, -2129, 714, -707, 714, -2128, 714, -707, 714, -707, 714, -708, 713, -2129, 713, -708, 713, -2129, 713, -712, 2002, -695, 607
The Pronto code I get when I dump all has two sets of Pronto data with a little Beo4 and a Drayton included.
[15:29:58.962][I][remote.pronto:229]: Received Pronto: data=
[15:29:58.977][I][remote.pronto:237]: 0000 006D 0001 0000 0180
[15:29:58.977][D][remote.beo4:086]: Beo4: n_sym=133
[15:29:58.977][I][remote.pronto:229]: Received Pronto: data=
[15:29:59.004][I][remote.pronto:237]: 0000 006D 0043 0000 00B4 001E 001A 001D 001A 001D 001A 001D 001A 001D 001A 001D 001A 001D 001A 001C 001B 001D 0051 001D 001A 001D 001A 001D 001A 001D 001A 001D 0051 001D 0051 001D 001A 001D 001A 001D 001B 001C 001A 001D 001B 001C
[15:29:59.025][I][remote.pronto:237]: 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C
[15:29:59.032][I][remote.pronto:237]: 001B 001C 0052 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 001B 001C 0052 001C 001B 001C 0052 001C 001B 001C 001B 001C 0052 001C 001B 001C 001B 001C 001B 001C 001B 004D 001B 0018 0181
[15:29:59.048][V][remote.drayton:187]: Decode Drayton: Fail 2, - -683 739 -681
And if I run that larger set of Pronto data through the IRScrutinizer it comes back with an error. The CCF is invalid since it has an odd number (137) of durations. I have converted the raw output to Pronto with IRScrutinizer and with Sensus but that didn’t work. I also tried the Pronto (and raw) I logged when switching the pin to inverted: false.
If I hold the power button down the signal does not repeat. The samples I have provided in this post are good examples of what I log every time I press the button. I have tried two separate ESP8266 modules and one ESP32, each with its own completely unique components, all well-powered with 5V, and the logs are all the same. My main board is the one below. The problem is surely the complexity of the remote. I wonder if anyone has any ideas.
Edit: Here is my current yaml, based on raw data (each value’s polarity swapped).
remote_transmitter:
pin: GPIO4
carrier_duty_percent: 50%
button:
- platform: template
name: "Test1"
id: test1
on_press:
- remote_transmitter.transmit_raw:
code: [4649, -764, 680, -740, 681, -743, 678, -741, 681, -740, 680, -740, 681, -740, 681, -740, 681, -740, 2102, -739, 682, -740, 682, -739, 682, -740, 682, -739, 682, -739, 682, -740, 682, -739, 682, -740, 681, -739, 681, -740, 682, -739, 682, -740, 680, -740, 682, -739, 682, -740, 682, -739, 681, -716, 705, -717, 705, -716, 705, -740, 682, -739, 686, -736, 680, -740, 681, -740, 680, -741, 680, -741, 680, -741, 680, -740, 681, -740, 682, -739, 682, -740, 706, -714, 682, -739, 683, -739, 682, -739, 2105, -738, 682, -739, 683, -739, 682, -739, 707, -714, 706, -714, 708, -713, 708, -714, 707, -714, 707, -713, 2129, -714, 707, -714, 2128, -714, 707, -714, 707, -714, 708, -713, 2129, -713, 708, -713, 2129, -713, 712, -2002, 695, -607]
carrier_frequency: 38kHz
