# IRremoteESP8266: src/ir_Coolix.h File Reference

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.

## 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