ToniA / arduino-heatpumpir

An Arduino library to control split-unit heatpumps over Infrared
GNU General Public License v2.0
380 stars 136 forks source link

Gree YAG-remote suppport #148

Open samuliHeikkinen opened 1 year ago

samuliHeikkinen commented 1 year ago

Hey!

I've been trying to add support for the Gree Amber/Nordic with the YAG remote. So far I've been able to decode most of the ir signals and they are pretty close to YAC model. With some light mods the YAC decoder is able to detect everything else than I-FEEL temperature from the signals.

There is one big difference though. The signal sent by YAG remote is always 24 bytes (213 pulses). There is also some advanced features which send which 32 bytes. I tried implementing the sending the signals but what I can see the YAG needs a send()-function which is pretty much different from the others as the structure of the payload is a lot different.

I've attached a sample of the decoding.

################# Start

Number of symbols: 213 Symbols: Hh00110000000100000000001000001010010W00000000001000010000000000000110WHh00110000000100000000001000001110010W00000000000000000000000000000111WHh00000000000000000000000000000101010W00000000000000000000000000000101 Bytes: 00: 0011|0000 | 0C | 00001100 01: 0001|0000 | 08 | 00001000 02: 0000|0010 | 40 | 01000000 03: 0000|1010 | 50 | 01010000 04: 01004: 0000|0000 | 00 | 00000000 05: 0010|0001 | 84 | 10000100 06: 0000|0000 | 00 | 00000000 07: 0000|0110 | 60 | 01100000 08: 0011|0000 | 0C | 00001100 09: 0001|0000 | 08 | 00001000 10: 0000|0010 | 40 | 01000000 11: 0000|1110 | 70 | 01110000 12: 01012: 0000|0000 | 00 | 00000000 13: 0000|0000 | 00 | 00000000 14: 0000|0000 | 00 | 00000000 15: 0000|0111 | E0 | 11100000 16: 0000|0000 | 00 | 00000000 17: 0000|0000 | 00 | 00000000 18: 0000|0000 | 00 | 00000000 19: 0000|0101 | A0 | 10100000 20: 01020: 0000|0000 | 00 | 00000000 21: 0000|0000 | 00 | 00000000 22: 0000|0000 | 00 | 00000000 23: 0000|0101 | A0 | 10100000 0C,08,40,50,00,84,00,60,0C,08,40,70,00,00,00,E0,00,00,00,A0,00,00,00,A0 Timings (in us): PAUSE SPACE: 27968 HEADER MARK: 9022 HEADER SPACE: 4461 BIT MARK: 644 ZERO SPACE: 527 ONE SPACE: 1622 Decoding known protocols... Looks like a Gree YAG protocol Checksum0: 6 Checksum matches POWER ON ECO OFF TURBO OFF MODE HEAT Temperature: 24 FAN: AUTO SLEEP: OFF SWING: OFF VERT. VANE STOP HORIZ. VANE STOP DISPLAY: SET TEMP I-FEEL: ON I-FEEL TEMPERATURE: 12 ################# End

Any tips on where to go from here?

gree_yag_decoded.txt

thoutenbos commented 1 year ago

Some time ago I made some changes to support the Gree YAP model. It is not really ready to merge back with the mainline yet but it does look pretty much similar to your output for the YAG

Perhaps you can give it a go... https://github.com/thoutenbos/arduino-heatpumpir/commit/4addf28e57526b4dbcdddc560c3002420e68cd6c

vampywiz17 commented 8 months ago

@samuliHeikkinen @thoutenbos

I also have a YAG remote and i would like to use ifeel function. Any idea how to solve this thing?

I will able to help data or similar if you need.

thoutenbos commented 8 months ago

@vampywiz17 you could try my branch to see if it works for you on YAG