IRremoteESP8266
Classes | Variables
ir_Coolix.h File Reference

Support for Coolix A/C protocols. More...

Go to the source code of this file.

Classes

union  CoolixProtocol
 Native representation of a Coolix A/C message. More...
 
class  IRCoolixAC
 Class for handling detailed Coolix A/C messages. More...
 

Variables

const uint8_t kCoolixCool = 0b000
 
const uint8_t kCoolixDry = 0b001
 
const uint8_t kCoolixAuto = 0b010
 
const uint8_t kCoolixHeat = 0b011
 
const uint8_t kCoolixFan = 0b100
 
const uint8_t kCoolixFanMin = 0b100
 
const uint8_t kCoolixFanMed = 0b010
 
const uint8_t kCoolixFanMax = 0b001
 
const uint8_t kCoolixFanAuto = 0b101
 
const uint8_t kCoolixFanAuto0 = 0b000
 
const uint8_t kCoolixFanZoneFollow = 0b110
 
const uint8_t kCoolixFanFixed = 0b111
 
const uint8_t kCoolixTempMin = 17
 
const uint8_t kCoolixTempMax = 30
 
const uint8_t kCoolixTempRange = kCoolixTempMax - kCoolixTempMin + 1
 
const uint8_t kCoolixFanTempCode = 0b1110
 
const uint8_t kCoolixTempMap [kCoolixTempRange]
 
const uint8_t kCoolixSensorTempMax = 30
 
const uint8_t kCoolixSensorTempIgnoreCode = 0b11111
 
const uint32_t kCoolixOff = 0b101100100111101111100000
 
const uint32_t kCoolixSwing = 0b101100100110101111100000
 
const uint32_t kCoolixSwingH = 0b101100101111010110100010
 
const uint32_t kCoolixSwingV = 0b101100100000111111100000
 
const uint32_t kCoolixSleep = 0b101100101110000000000011
 
const uint32_t kCoolixTurbo = 0b101101011111010110100010
 
const uint32_t kCoolixLed = 0b101101011111010110100101
 
const uint32_t kCoolixClean = 0b101101011111010110101010
 
const uint32_t kCoolixCmdFan = 0b101100101011111111100100
 
const uint32_t kCoolixDefaultState = 0b101100100001111111001000
 

Detailed Description

Support for Coolix A/C protocols.

See also
https://github.com/crankyoldgit/IRremoteESP8266/issues/484
https://github.com/crankyoldgit/IRremoteESP8266/issues/1318
Note
Kudos: Hamper: For the breakdown and mapping of the bit values. fraschizzato: For additional ZoneFollow & SwingVStep analysis.
Timers seem to use the COOLIX48 protocol.
See also
https://github.com/crankyoldgit/IRremoteESP8266/issues/1694

Variable Documentation

◆ kCoolixAuto

const uint8_t kCoolixAuto = 0b010

◆ kCoolixClean

const uint32_t kCoolixClean = 0b101101011111010110101010

◆ kCoolixCmdFan

const uint32_t kCoolixCmdFan = 0b101100101011111111100100

◆ kCoolixCool

const uint8_t kCoolixCool = 0b000

◆ kCoolixDefaultState

const uint32_t kCoolixDefaultState = 0b101100100001111111001000

◆ kCoolixDry

const uint8_t kCoolixDry = 0b001

◆ kCoolixFan

const uint8_t kCoolixFan = 0b100

◆ kCoolixFanAuto

const uint8_t kCoolixFanAuto = 0b101

◆ kCoolixFanAuto0

const uint8_t kCoolixFanAuto0 = 0b000

◆ kCoolixFanFixed

const uint8_t kCoolixFanFixed = 0b111

◆ kCoolixFanMax

const uint8_t kCoolixFanMax = 0b001

◆ kCoolixFanMed

const uint8_t kCoolixFanMed = 0b010

◆ kCoolixFanMin

const uint8_t kCoolixFanMin = 0b100

◆ kCoolixFanTempCode

const uint8_t kCoolixFanTempCode = 0b1110

◆ kCoolixFanZoneFollow

const uint8_t kCoolixFanZoneFollow = 0b110

◆ kCoolixHeat

const uint8_t kCoolixHeat = 0b011

◆ kCoolixLed

const uint32_t kCoolixLed = 0b101101011111010110100101

◆ kCoolixOff

const uint32_t kCoolixOff = 0b101100100111101111100000

◆ kCoolixSensorTempIgnoreCode

const uint8_t kCoolixSensorTempIgnoreCode = 0b11111

◆ kCoolixSensorTempMax

const uint8_t kCoolixSensorTempMax = 30

◆ kCoolixSleep

const uint32_t kCoolixSleep = 0b101100101110000000000011

◆ kCoolixSwing

const uint32_t kCoolixSwing = 0b101100100110101111100000

◆ kCoolixSwingH

const uint32_t kCoolixSwingH = 0b101100101111010110100010

◆ kCoolixSwingV

const uint32_t kCoolixSwingV = 0b101100100000111111100000

◆ kCoolixTempMap

const uint8_t kCoolixTempMap[kCoolixTempRange]
Initial value:
= {
0b0000,
0b0001,
0b0011,
0b0010,
0b0110,
0b0111,
0b0101,
0b0100,
0b1100,
0b1101,
0b1001,
0b1000,
0b1010,
0b1011
}

◆ kCoolixTempMax

const uint8_t kCoolixTempMax = 30

◆ kCoolixTempMin

const uint8_t kCoolixTempMin = 17

◆ kCoolixTempRange

const uint8_t kCoolixTempRange = kCoolixTempMax - kCoolixTempMin + 1

◆ kCoolixTurbo

const uint32_t kCoolixTurbo = 0b101101011111010110100010