# IRremoteESP8266: src/ir_Daikin.h Source File

ir_Daikin.h
Go to the documentation of this file.
// Copyright 2016 sillyfrog
// Copyright 2017 sillyfrog, crankyoldgit
// Copyright 2018-2020 crankyoldgit
// Copyright 2019 pasna (IRDaikin160 class / Daikin176 class)
// Supports:
// Brand: Daikin, Model: ARC433** remote (DAIKIN)
// Brand: Daikin, Model: ARC477A1 remote (DAIKIN2)
// Brand: Daikin, Model: FTXZ25NV1B A/C (DAIKIN2)
// Brand: Daikin, Model: FTXZ35NV1B A/C (DAIKIN2)
// Brand: Daikin, Model: FTXZ50NV1B A/C (DAIKIN2)
// Brand: Daikin, Model: ARC433B69 remote (DAIKIN216)
// Brand: Daikin, Model: ARC423A5 remote (DAIKIN160)
// Brand: Daikin, Model: FTE12HV2S A/C
// Brand: Daikin, Model: BRC4C153 remote (DAIKIN176)
// Brand: Daikin, Model: FFQ35B8V1B A/C (DAIKIN176)
// Brand: Daikin, Model: BRC4C151 remote (DAIKIN176)
// Brand: Daikin, Model: 17 Series A/C (DAIKIN128)
// Brand: Daikin, Model: FTXB12AXVJU A/C (DAIKIN128)
// Brand: Daikin, Model: FTXB09AXVJU A/C (DAIKIN128)
// Brand: Daikin, Model: BRC52B63 remote (DAIKIN128)
// Brand: Daikin, Model: ARC480A5 remote (DAIKIN152)
// Brand: Daikin, Model: FFN-C/FCN-F Series A/C (DAIKIN64)
// Brand: Daikin, Model: DGS01 remote (DAIKIN64)
// Brand: Daikin, Model: M Series A/C (DAIKIN)
// Brand: Daikin, Model: FTXM-M A/C (DAIKIN)
// Brand: Daikin, Model: ARC466A33 remote (DAIKIN)
#ifndef IR_DAIKIN_H_
#define IR_DAIKIN_H_
#ifndef UNIT_TEST
#include <Arduino.h>
#endif
#include "IRrecv.h"
#include "IRremoteESP8266.h"
#include "IRsend.h"
#ifdef UNIT_TEST
#include "IRsend_test.h"
#endif
union DaikinESPProtocol{
uint8_t raw[kDaikinStateLength];
struct {
// Byte 0~5
uint64_t :48;
// Byte 6
uint64_t :4;
uint64_t Comfort :1;
uint64_t :3;
// Byte 7
uint64_t Sum1 :8; // checksum of the first part
// Byte 8~12
uint64_t :40;
// Byte 13~14
uint64_t CurrentTime :11; // Current time, mins past midnight
uint64_t CurrentDay :3; // Day of the week (SUN=1, MON=2, ..., SAT=7)
uint64_t :2;
// Byte 15
uint64_t Sum2 :8; // checksum of the second part
// Byte 16~20
uint64_t :40;
// Byte 21
uint64_t Power :1;
uint64_t OnTimer :1;
uint64_t OffTimer :1;
uint64_t :1; // always 1
uint64_t Mode :3;
uint64_t :1;
// Byte 22
uint64_t :1;
uint64_t Temp :7; // Temp should be between 10 - 32
// Byte 23
uint64_t :8;
// Byte 24
uint64_t SwingV :4; // 0000 = off, 1111 = on
uint64_t Fan :4;
// Byte 25
uint64_t SwingH :4; // 0000 = off, 1111 = on
uint64_t :4;
// Byte 26~28
uint64_t OnTime :12; // timer mins past midnight
uint64_t OffTime :12; // timer mins past midnight
// Byte 29
uint64_t Powerful :1;
uint64_t :4;
uint64_t Quiet :1;
uint64_t :2;
// Byte 30~31
uint64_t :0;
// Byte 32
uint8_t :1;
uint8_t Sensor :1;
uint8_t Econo :1;
uint8_t :4;
uint8_t WeeklyTimer :1;
// Byte 33
uint8_t :1;
uint8_t Mold :1;
uint8_t :6;
// Byte 34
uint8_t Sum3 :8; // checksum of the third part
};
};
// Constants
const uint8_t kDaikinAuto = 0b000; // temp 25
const uint8_t kDaikinDry = 0b010; // temp 0xc0 = 96 degrees c
const uint8_t kDaikinCool = 0b011;
const uint8_t kDaikinHeat = 0b100; // temp 23
const uint8_t kDaikinFan = 0b110; // temp not shown, but 25
const uint8_t kDaikinMinTemp = 10; // Celsius
const uint8_t kDaikinMaxTemp = 32; // Celsius
const uint8_t kDaikinFanMin = 1;
const uint8_t kDaikinFanMed = 3;
const uint8_t kDaikinFanMax = 5;
const uint8_t kDaikinFanAuto = 0b1010; // 10 / 0xA
const uint8_t kDaikinFanQuiet = 0b1011; // 11 / 0xB
const uint8_t kDaikinSwingOn = 0b1111;
const uint8_t kDaikinSwingOff = 0b0000;
const uint16_t kDaikinHeaderLength = 5;
const uint8_t kDaikinSections = 3;
const uint8_t kDaikinSection1Length = 8;
const uint8_t kDaikinSection2Length = 8;
const uint8_t kDaikinSection3Length =
kDaikinStateLength - kDaikinSection1Length - kDaikinSection2Length;
const uint8_t kDaikinByteChecksum1 = 7;
const uint8_t kDaikinByteChecksum2 = 15;
// const uint8_t kDaikinBitEye = 0b10000000;
const uint16_t kDaikinUnusedTime = 0x600;
const uint8_t kDaikinBeepQuiet = 1;
const uint8_t kDaikinBeepLoud = 2;
const uint8_t kDaikinBeepOff = 3;
const uint8_t kDaikinLightBright = 1;
const uint8_t kDaikinLightDim = 2;
const uint8_t kDaikinLightOff = 3;
const uint8_t kDaikinCurBit = kDaikinStateLength;
const uint8_t kDaikinCurIndex = kDaikinStateLength + 1;
const uint8_t kDaikinTolerance = 35;
const uint16_t kDaikinMarkExcess = kMarkExcess;
const uint16_t kDaikinHdrMark = 3650; // kDaikinBitMark * 8
const uint16_t kDaikinHdrSpace = 1623; // kDaikinBitMark * 4
const uint16_t kDaikinBitMark = 428;
const uint16_t kDaikinZeroSpace = 428;
const uint16_t kDaikinOneSpace = 1280;
const uint16_t kDaikinGap = 29000;
// Note bits in each octet swapped so can be sent as a single value
const uint64_t kDaikinFirstHeader64 =
0b1101011100000000000000001100010100000000001001111101101000010001;
union Daikin2Protocol{
struct{
uint8_t pad[3];
uint8_t raw[kDaikin2StateLength];
};
struct {
// Byte -3~4
uint64_t :64;
// Byte 5~6
uint64_t CurrentTime :12;
uint64_t :3;
uint64_t Power2 :1;
// Byte 7
uint64_t :4;
uint64_t Light :2;
uint64_t Beep :2;
// Byte 8
uint64_t FreshAir :1;
uint64_t :2;
uint64_t Mold :1;
uint64_t :1;
uint64_t Clean :1;
uint64_t :1;
uint64_t FreshAirHigh :1;
// Byte 9~12
uint64_t :32;
// Byte 13
uint64_t :7;
uint64_t EyeAuto :1;
// Byte 14~16
uint64_t :24;
// Byte 17
uint64_t SwingH :8;
// Byte 18
uint64_t SwingV :4;
uint64_t :4;
// Byte 19
uint64_t Sum1 :8;
// Byte 20
uint64_t :8;
// Byte 21~24
uint64_t :32;
// Byte 25
uint64_t Power :1;
uint64_t OnTimer :1;
uint64_t OffTimer :1;
uint64_t :1;
uint64_t Mode :3;
uint64_t :1;
// Byte 26
uint64_t :1;
uint64_t Temp :7;
// Byte 27
uint64_t :8;
// Byte 28
uint64_t :4;
uint64_t Fan :4;
// Byte 29
uint64_t :8;
// Byte 30~32
uint64_t OnTime :12;
uint64_t OffTime :12;
// Byte 33
uint64_t Powerful :1;
uint64_t :4;
uint64_t Quiet :1;
uint64_t :2;
// Byte 34~35
uint64_t :16;
// Byte 36
uint64_t :1;
uint64_t Eye :1;
uint64_t Econo :1;
uint64_t :1;
uint64_t Purify :1;
uint64_t SleepTimer :1;
uint64_t :2;
// Byte 37
uint8_t :8;
// Byte 38
uint8_t Sum2 :8;
};
};
const uint16_t kDaikin2Freq = 36700; // Modulation Frequency in Hz.
const uint16_t kDaikin2LeaderMark = 10024;
const uint16_t kDaikin2LeaderSpace = 25180;
const uint16_t kDaikin2Gap = kDaikin2LeaderMark + kDaikin2LeaderSpace;
const uint16_t kDaikin2HdrMark = 3500;
const uint16_t kDaikin2HdrSpace = 1728;
const uint16_t kDaikin2BitMark = 460;
const uint16_t kDaikin2OneSpace = 1270;
const uint16_t kDaikin2ZeroSpace = 420;
const uint16_t kDaikin2Sections = 2;
const uint16_t kDaikin2Section1Length = 20;
const uint16_t kDaikin2Section2Length = 19;
const uint8_t kDaikin2Tolerance = 5; // Extra percentage tolerance
const uint8_t kDaikin2SwingVHigh = 0x1;
const uint8_t kDaikin2SwingVLow = 0x6;
const uint8_t kDaikin2SwingVSwing = 0xF;
const uint8_t kDaikin2SwingVAuto = 0xE;
const uint8_t kDaikin2SwingVBreeze = 0xC;
const uint8_t kDaikin2SwingVCirculate = 0xD;
const uint8_t kDaikin2SwingHWide = 0xA3;
const uint8_t kDaikin2SwingHLeftMax = 0xA8;
const uint8_t kDaikin2SwingHLeft = 0xA9;
const uint8_t kDaikin2SwingHMiddle = 0xAA;
const uint8_t kDaikin2SwingHRight = 0xAB;
const uint8_t kDaikin2SwingHRightMax = 0xAC;
const uint8_t kDaikin2SwingHAuto = 0xBE;
const uint8_t kDaikin2SwingHSwing = 0xBF;
const uint8_t kDaikin2MinCoolTemp = 18; // Min temp (in C) when in Cool mode.
union Daikin216Protocol{
uint8_t raw[kDaikin216StateLength];
struct {
// Byte 0~6
uint8_t pad0[7];
// Byte 7
uint8_t Sum1 :8;
// Byte 8~12
uint8_t pad1[5];
// Byte 13
uint8_t Power :1;
uint8_t :3;
uint8_t Mode :3;
uint8_t :1;
// Byte 14
uint8_t :1;
uint8_t Temp :6;
uint8_t :1;
// Byte 15
uint8_t :8;
// Byte 16
uint8_t SwingV :4;
uint8_t Fan :4;
// Byte 17
uint8_t SwingH :4;
uint8_t :4;
// Byte 18~20
uint8_t pad2[3];
// Byte 21
uint8_t Powerful :1;
uint8_t :0;
// Byte 22~25
uint8_t pad3[4];
// Byte 26
uint8_t Sum2 :8;
};
};
const uint16_t kDaikin216Freq = 38000; // Modulation Frequency in Hz.
const uint16_t kDaikin216HdrMark = 3440;
const uint16_t kDaikin216HdrSpace = 1750;
const uint16_t kDaikin216BitMark = 420;
const uint16_t kDaikin216OneSpace = 1300;
const uint16_t kDaikin216ZeroSpace = 450;
const uint16_t kDaikin216Gap = 29650;
const uint16_t kDaikin216Sections = 2;
const uint16_t kDaikin216Section1Length = 8;
const uint16_t kDaikin216Section2Length = kDaikin216StateLength -
kDaikin216Section1Length;
const uint8_t kDaikin216SwingOn = 0b1111;
const uint8_t kDaikin216SwingOff = 0b0000;
union Daikin160Protocol{
uint8_t raw[kDaikin160StateLength];
struct {
// Byte 0~5
uint8_t pad0[6];
// Byte 6
uint8_t Sum1 :8;
// Byte 7~11
uint8_t pad1[5];
// Byte 12
uint8_t Power :1;
uint8_t :3;
uint8_t Mode :3;
uint8_t :1;
// Byte 13
uint8_t :4;
uint8_t SwingV :4;
// Byte 14~15
uint8_t pad2[2];
// Byte 16
uint8_t :1;
uint8_t Temp :6;
uint8_t :1;
// Byte 17
uint8_t Fan :4;
uint8_t :4;
// Byte 18
uint8_t :8;
// Byte 19
uint8_t Sum2 :8;
};
};
const uint16_t kDaikin160Freq = 38000; // Modulation Frequency in Hz.
const uint16_t kDaikin160HdrMark = 5000;
const uint16_t kDaikin160HdrSpace = 2145;
const uint16_t kDaikin160BitMark = 342;
const uint16_t kDaikin160OneSpace = 1786;
const uint16_t kDaikin160ZeroSpace = 700;
const uint16_t kDaikin160Gap = 29650;
const uint16_t kDaikin160Sections = 2;
const uint16_t kDaikin160Section1Length = 7;
const uint16_t kDaikin160Section2Length = kDaikin160StateLength -
kDaikin160Section1Length;
const uint8_t kDaikin160SwingVLowest = 0x1;
const uint8_t kDaikin160SwingVLow = 0x2;
const uint8_t kDaikin160SwingVMiddle = 0x3;
const uint8_t kDaikin160SwingVHigh = 0x4;
const uint8_t kDaikin160SwingVHighest = 0x5;
const uint8_t kDaikin160SwingVAuto = 0xF;
union Daikin176Protocol{
uint8_t raw[kDaikin176StateLength];
struct {
// Byte 0~5
uint8_t pad0[6];
// Byte 6
uint8_t Sum1 :8;
// Byte 7~11
uint8_t pad1[5];
// Byte 12
uint8_t :4;
uint8_t AltMode :3;
uint8_t :1;
// Byte 13
uint8_t ModeButton :8;
// Byte 14
uint8_t Power :1;
uint8_t :3;
uint8_t Mode :3;
uint8_t :1;
// Byte 15~16
uint8_t pad2[2];
// Byte 17
uint8_t :1;
uint8_t Temp :6;
uint8_t :1;
// Byte 18
uint8_t SwingH :4;
uint8_t Fan :4;
// Byte 19~20
uint8_t pad3[2];
// Byte 21
uint8_t Sum2 :8;
};
};
const uint16_t kDaikin176Freq = 38000; // Modulation Frequency in Hz.
const uint16_t kDaikin176HdrMark = 5070;
const uint16_t kDaikin176HdrSpace = 2140;
const uint16_t kDaikin176BitMark = 370;
const uint16_t kDaikin176OneSpace = 1780;
const uint16_t kDaikin176ZeroSpace = 710;
const uint16_t kDaikin176Gap = 29410;
const uint16_t kDaikin176Sections = 2;
const uint16_t kDaikin176Section1Length = 7;
const uint16_t kDaikin176Section2Length = kDaikin176StateLength -
kDaikin176Section1Length;
const uint8_t kDaikin176Fan = 0b000; // 0
const uint8_t kDaikin176Heat = 0b001; // 1
const uint8_t kDaikin176Cool = 0b010; // 2
const uint8_t kDaikin176Auto = 0b011; // 3
const uint8_t kDaikin176Dry = 0b111; // 7
const uint8_t kDaikin176ModeButton = 0b00000100;
const uint8_t kDaikin176DryFanTemp = 17; // Dry/Fan mode is always 17 Celsius.
const uint8_t kDaikin176FanMax = 3;
const uint8_t kDaikin176SwingHAuto = 0x5;
const uint8_t kDaikin176SwingHOff = 0x6;
union Daikin128Protocol{
uint8_t raw[kDaikin128StateLength];
struct {
// Byte 0
uint8_t :8;
// Byte 1
uint8_t Mode :4;
uint8_t Fan :4;
// Byte 2
uint8_t ClockMins :8;
// Byte 3
uint8_t ClockHours :8;
// Byte 4
uint8_t OnHours :6;
uint8_t OnHalfHour :1;
uint8_t OnTimer :1;
// Byte 5
uint8_t OffHours :6;
uint8_t OffHalfHour :1;
uint8_t OffTimer :1;
// Byte 6
uint8_t Temp :8;
// Byte 7
uint8_t SwingV :1;
uint8_t Sleep :1;
uint8_t :1; // always 1
uint8_t Power :1;
uint8_t Sum1 :4;
// Byte 8
uint8_t :8;
// Byte 9
uint8_t Ceiling :1;
uint8_t :1;
uint8_t Econo :1;
uint8_t Wall :1;
uint8_t :4;
// Byte 10~14
uint8_t pad[5];
// Byte 15
uint8_t Sum2 :8;
};
};
const uint16_t kDaikin128Freq = 38000; // Modulation Frequency in Hz.
const uint16_t kDaikin128LeaderMark = 9800;
const uint16_t kDaikin128LeaderSpace = 9800;
const uint16_t kDaikin128HdrMark = 4600;
const uint16_t kDaikin128HdrSpace = 2500;
const uint16_t kDaikin128BitMark = 350;
const uint16_t kDaikin128OneSpace = 954;
const uint16_t kDaikin128ZeroSpace = 382;
const uint16_t kDaikin128Gap = 20300;
const uint16_t kDaikin128FooterMark = kDaikin128HdrMark;
const uint16_t kDaikin128Sections = 2;
const uint16_t kDaikin128SectionLength = 8;
const uint8_t kDaikin128Dry = 0b00000001;
const uint8_t kDaikin128Cool = 0b00000010;
const uint8_t kDaikin128Fan = 0b00000100;
const uint8_t kDaikin128Heat = 0b00001000;
const uint8_t kDaikin128Auto = 0b00001010;
const uint8_t kDaikin128FanAuto = 0b0001;
const uint8_t kDaikin128FanHigh = 0b0010;
const uint8_t kDaikin128FanMed = 0b0100;
const uint8_t kDaikin128FanLow = 0b1000;
const uint8_t kDaikin128FanPowerful = 0b0011;
const uint8_t kDaikin128FanQuiet = 0b1001;
const uint8_t kDaikin128MinTemp = 16; // C
const uint8_t kDaikin128MaxTemp = 30; // C
const uint8_t kDaikin128BitWall = 0b00001000;
const uint8_t kDaikin128BitCeiling = 0b00000001;
union Daikin152Protocol{
uint8_t raw[kDaikin152StateLength];
struct {
// Byte 0~4
uint8_t pad0[5];
// Byte 5
uint8_t Power :1;
uint8_t :3;
uint8_t Mode :3;
uint8_t :1;
// Byte 6
uint8_t :1;
uint8_t Temp :7;
// Byte 7
uint8_t :8;
// Byte 8
uint8_t SwingV :4;
uint8_t Fan :4;
// Byte 9~12
uint8_t pad1[4];
// Byte 13
uint8_t Powerful :1;
uint8_t :4;
uint8_t Quiet :1;
uint8_t :2;
// Byte 14~15
uint8_t pad2[2];
// Byte 16
uint8_t :1;
uint8_t Comfort :1;
uint8_t Econo :1;
uint8_t Sensor :1;
uint8_t :4;
// Byte 17
uint8_t :8;
// Byte 18
uint8_t Sum :8;
};
};
const uint16_t kDaikin152Freq = 38000; // Modulation Frequency in Hz.
const uint8_t kDaikin152LeaderBits = 5;
const uint16_t kDaikin152HdrMark = 3492;
const uint16_t kDaikin152HdrSpace = 1718;
const uint16_t kDaikin152BitMark = 433;
const uint16_t kDaikin152OneSpace = 1529;
const uint16_t kDaikin152ZeroSpace = kDaikin152BitMark;
const uint16_t kDaikin152Gap = 25182;
const uint8_t kDaikin152DryTemp = kDaikin2MinCoolTemp; // Celsius
const uint8_t kDaikin152FanTemp = 0x60; // 96 Celsius
union Daikin64Protocol{
uint64_t raw;
struct {
uint8_t :8;
uint8_t Mode :4;
uint8_t Fan :4;
uint8_t ClockMins :8;
uint8_t ClockHours :8;
uint8_t OnHours :6;
uint8_t OnHalfHour :1;
uint8_t OnTimer :1;
uint8_t OffHours :6;
uint8_t OffHalfHour :1;
uint8_t OffTimer :1;
uint8_t Temp :8;
uint8_t SwingV :1;
uint8_t Sleep :1;
uint8_t :1;
uint8_t Power :1;
uint8_t Sum :4;
};
};
const uint16_t kDaikin64HdrMark = kDaikin128HdrMark;
const uint16_t kDaikin64BitMark = kDaikin128BitMark;
const uint16_t kDaikin64HdrSpace = kDaikin128HdrSpace;
const uint16_t kDaikin64OneSpace = kDaikin128OneSpace;
const uint16_t kDaikin64ZeroSpace = kDaikin128ZeroSpace;
const uint16_t kDaikin64LdrMark = kDaikin128LeaderMark;
const uint16_t kDaikin64Gap = kDaikin128Gap;
const uint16_t kDaikin64LdrSpace = kDaikin128LeaderSpace;
const uint16_t kDaikin64Freq = kDaikin128Freq; // Hz.
const uint8_t kDaikin64Overhead = 9;
const int8_t kDaikin64ToleranceDelta = 5; // +5%
const uint64_t kDaikin64KnownGoodState = 0x7C16161607204216;
const uint8_t kDaikin64Dry = 0b001;
const uint8_t kDaikin64Cool = 0b010;
const uint8_t kDaikin64Fan = 0b100;
const uint8_t kDaikin64FanAuto = 0b0001;
const uint8_t kDaikin64FanLow = 0b1000;
const uint8_t kDaikin64FanMed = 0b0100;
const uint8_t kDaikin64FanHigh = 0b0010;
const uint8_t kDaikin64FanQuiet = 0b1001;
const uint8_t kDaikin64FanTurbo = 0b0011;
const uint8_t kDaikin64MinTemp = 16; // Celsius
const uint8_t kDaikin64MaxTemp = 30; // Celsius
const uint8_t kDaikin64ChecksumOffset = 60;
const uint8_t kDaikin64ChecksumSize = 4; // Mask 0b1111 << 59
// Legacy defines.
#define DAIKIN_COOL kDaikinCool
#define DAIKIN_HEAT kDaikinHeat
#define DAIKIN_FAN kDaikinFan
#define DAIKIN_AUTO kDaikinAuto
#define DAIKIN_DRY kDaikinDry
#define DAIKIN_MIN_TEMP kDaikinMinTemp
#define DAIKIN_MAX_TEMP kDaikinMaxTemp
#define DAIKIN_FAN_MIN kDaikinFanMin
#define DAIKIN_FAN_MAX kDaikinFanMax
#define DAIKIN_FAN_AUTO kDaikinFanAuto
#define DAIKIN_FAN_QUIET kDaikinFanQuiet
class IRDaikinESP {
public:
explicit IRDaikinESP(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN
void send(const uint16_t repeat = kDaikinDefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif
void begin(void);
void on(void);
void off(void);
void setPower(const bool on);
bool getPower(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
void setMode(const uint8_t mode);
uint8_t getMode(void) const;
void setSwingVertical(const bool on);
bool getSwingVertical(void) const;
void setSwingHorizontal(const bool on);
bool getSwingHorizontal(void) const;
bool getQuiet(void) const;
void setQuiet(const bool on);
bool getPowerful(void) const;
void setPowerful(const bool on);
void setSensor(const bool on);
bool getSensor(void) const;
void setEcono(const bool on);
bool getEcono(void) const;
void setMold(const bool on);
bool getMold(void) const;
void setComfort(const bool on);
bool getComfort(void) const;
void enableOnTimer(const uint16_t starttime);
void disableOnTimer(void);
uint16_t getOnTime(void) const;
bool getOnTimerEnabled(void) const;
void enableOffTimer(const uint16_t endtime);
void disableOffTimer(void);
uint16_t getOffTime(void) const;
bool getOffTimerEnabled(void) const;
void setCurrentTime(const uint16_t mins_since_midnight);
uint16_t getCurrentTime(void) const;
void setCurrentDay(const uint8_t day_of_week);
uint8_t getCurrentDay(void) const;
void setWeeklyTimerEnable(const bool on);
bool getWeeklyTimerEnable(void) const;
uint8_t* getRaw(void);
void setRaw(const uint8_t new_code[],
const uint16_t length = kDaikinStateLength);
static bool validChecksum(uint8_t state[],
const uint16_t length = kDaikinStateLength);
static uint8_t convertMode(const stdAc::opmode_t mode);
static uint8_t convertFan(const stdAc::fanspeed_t speed);
static stdAc::opmode_t toCommonMode(const uint8_t mode);
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
stdAc::state_t toCommon(void) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
// # of bytes per command
DaikinESPProtocol _;
void stateReset(void);
void checksum(void);
};
class IRDaikin2 {
public:
explicit IRDaikin2(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN2
void send(const uint16_t repeat = kDaikin2DefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif
void begin(void);
void on(void);
void off(void);
void setPower(const bool state);
bool getPower(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
uint8_t getMode(void) const;
void setMode(const uint8_t mode);
void setSwingVertical(const uint8_t position);
uint8_t getSwingVertical(void) const;
void setSwingHorizontal(const uint8_t position);
uint8_t getSwingHorizontal(void) const;
bool getQuiet(void) const;
void setQuiet(const bool on);
bool getPowerful(void) const;
void setPowerful(const bool on);
void setEcono(const bool on);
bool getEcono(void) const;
void setEye(const bool on);
bool getEye(void) const;
void setEyeAuto(const bool on);
bool getEyeAuto(void) const;
void setPurify(const bool on);
bool getPurify(void) const;
void setMold(const bool on);
bool getMold(void) const;
void enableOnTimer(const uint16_t starttime);
void disableOnTimer(void);
uint16_t getOnTime(void) const;
bool getOnTimerEnabled(void) const;
void enableSleepTimer(const uint16_t sleeptime);
void disableSleepTimer(void);
uint16_t getSleepTime(void) const;
bool getSleepTimerEnabled(void) const;
void enableOffTimer(const uint16_t endtime);
void disableOffTimer(void);
uint16_t getOffTime(void) const;
bool getOffTimerEnabled(void) const;
void setCurrentTime(const uint16_t time);
uint16_t getCurrentTime(void) const;
void setBeep(const uint8_t beep);
uint8_t getBeep(void) const;
void setLight(const uint8_t light);
uint8_t getLight(void) const;
void setClean(const bool on);
bool getClean(void) const;
void setFreshAir(const bool on);
bool getFreshAir(void) const;
void setFreshAirHigh(const bool on);
bool getFreshAirHigh(void) const;
uint8_t* getRaw(void);
void setRaw(const uint8_t new_code[]);
static bool validChecksum(uint8_t state[],
const uint16_t length = kDaikin2StateLength);
static uint8_t convertMode(const stdAc::opmode_t mode);
static uint8_t convertFan(const stdAc::fanspeed_t speed);
static uint8_t convertSwingV(const stdAc::swingv_t position);
static uint8_t convertSwingH(const stdAc::swingh_t position);
static stdAc::swingv_t toCommonSwingV(const uint8_t setting);
static stdAc::swingh_t toCommonSwingH(const uint8_t setting);
stdAc::state_t toCommon(void) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
// # of bytes per command
Daikin2Protocol _;
void stateReset(void);
void checksum(void);
void clearOnTimerFlag(void);
void clearSleepTimerFlag(void);
};
class IRDaikin216 {
public:
explicit IRDaikin216(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN216
void send(const uint16_t repeat = kDaikin216DefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif
void begin(void);
uint8_t* getRaw(void);
void setRaw(const uint8_t new_code[]);
static bool validChecksum(uint8_t state[],
const uint16_t length = kDaikin216StateLength);
void on(void);
void off(void);
void setPower(const bool on);
bool getPower(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setMode(const uint8_t mode);
uint8_t getMode(void) const;
static uint8_t convertMode(const stdAc::opmode_t mode);
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
static uint8_t convertFan(const stdAc::fanspeed_t speed);
void setSwingVertical(const bool on);
bool getSwingVertical(void) const;
void setSwingHorizontal(const bool on);
bool getSwingHorizontal(void) const;
void setQuiet(const bool on);
bool getQuiet(void) const;
void setPowerful(const bool on);
bool getPowerful(void) const;
stdAc::state_t toCommon(void) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
// # of bytes per command
Daikin216Protocol _;
void stateReset(void);
void checksum(void);
};
class IRDaikin160 {
public:
explicit IRDaikin160(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN160
void send(const uint16_t repeat = kDaikin160DefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif
void begin(void);
uint8_t* getRaw(void);
void setRaw(const uint8_t new_code[]);
static bool validChecksum(uint8_t state[],
const uint16_t length = kDaikin160StateLength);
void on(void);
void off(void);
void setPower(const bool on);
bool getPower(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setMode(const uint8_t mode);
uint8_t getMode(void) const;
static uint8_t convertMode(const stdAc::opmode_t mode);
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
static uint8_t convertFan(const stdAc::fanspeed_t speed);
void setSwingVertical(const uint8_t position);
uint8_t getSwingVertical(void) const;
static uint8_t convertSwingV(const stdAc::swingv_t position);
static stdAc::swingv_t toCommonSwingV(const uint8_t setting);
stdAc::state_t toCommon(void) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
// # of bytes per command
Daikin160Protocol _;
void stateReset(void);
void checksum(void);
};
class IRDaikin176 {
public:
explicit IRDaikin176(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN176
void send(const uint16_t repeat = kDaikin176DefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif
void begin(void);
uint8_t* getRaw(void);
void setRaw(const uint8_t new_code[]);
static bool validChecksum(uint8_t state[],
const uint16_t length = kDaikin176StateLength);
void on(void);
void off(void);
void setPower(const bool on);
bool getPower(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setMode(const uint8_t mode);
uint8_t getMode(void) const;
static uint8_t convertMode(const stdAc::opmode_t mode);
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
static uint8_t convertFan(const stdAc::fanspeed_t speed);
void setSwingHorizontal(const uint8_t position);
uint8_t getSwingHorizontal(void) const;
static uint8_t convertSwingH(const stdAc::swingh_t position);
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
static stdAc::opmode_t toCommonMode(const uint8_t mode);
static stdAc::swingh_t toCommonSwingH(const uint8_t setting);
stdAc::state_t toCommon(void) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
// # of bytes per command
Daikin176Protocol _;
uint8_t _saved_temp;
void stateReset(void);
void checksum(void);
};
class IRDaikin128 {
public:
explicit IRDaikin128(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN128
void send(const uint16_t repeat = kDaikin128DefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif // SEND_DAIKIN128
void begin(void);
void setPowerToggle(const bool toggle);
bool getPowerToggle(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
uint8_t getMode(void) const;
void setMode(const uint8_t mode);
void setSwingVertical(const bool on);
bool getSwingVertical(void) const;
bool getSleep(void) const;
void setSleep(const bool on);
bool getQuiet(void) const;
void setQuiet(const bool on);
bool getPowerful(void) const;
void setPowerful(const bool on);
void setEcono(const bool on);
bool getEcono(void) const;
void setOnTimer(const uint16_t mins_since_midnight);
uint16_t getOnTimer(void) const;
bool getOnTimerEnabled(void) const;
void setOnTimerEnabled(const bool on);
void setOffTimer(const uint16_t mins_since_midnight);
uint16_t getOffTimer(void) const;
bool getOffTimerEnabled(void) const;
void setOffTimerEnabled(const bool on);
void setClock(const uint16_t mins_since_midnight);
uint16_t getClock(void) const;
void setLightToggle(const uint8_t unit_type);
uint8_t getLightToggle(void) const;
uint8_t* getRaw(void);
void setRaw(const uint8_t new_code[]);
static bool validChecksum(uint8_t state[]);
static uint8_t convertMode(const stdAc::opmode_t mode);
static uint8_t convertFan(const stdAc::fanspeed_t speed);
static stdAc::opmode_t toCommonMode(const uint8_t mode);
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
stdAc::state_t toCommon(const stdAc::state_t *prev = NULL) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
// # of bytes per command
Daikin128Protocol _;
void stateReset(void);
static uint8_t calcFirstChecksum(const uint8_t state[]);
static uint8_t calcSecondChecksum(const uint8_t state[]);
void checksum(void);
};
class IRDaikin152 {
public:
explicit IRDaikin152(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN152
void send(const uint16_t repeat = kDaikin152DefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif
void begin(void);
uint8_t* getRaw(void);
void setRaw(const uint8_t new_code[]);
static bool validChecksum(uint8_t state[],
const uint16_t length = kDaikin152StateLength);
void on(void);
void off(void);
void setPower(const bool on);
bool getPower(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
void setMode(const uint8_t mode);
uint8_t getMode(void) const;
void setSwingV(const bool on);
bool getSwingV(void) const;
bool getQuiet(void) const;
void setQuiet(const bool on);
bool getPowerful(void) const;
void setPowerful(const bool on);
void setSensor(const bool on);
bool getSensor(void) const;
void setEcono(const bool on);
bool getEcono(void) const;
void setComfort(const bool on);
bool getComfort(void) const;
static uint8_t convertMode(const stdAc::opmode_t mode);
static uint8_t convertFan(const stdAc::fanspeed_t speed);
stdAc::state_t toCommon(void) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
// # of bytes per command
Daikin152Protocol _;
void stateReset(void);
void checksum(void);
};
class IRDaikin64 {
public:
explicit IRDaikin64(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
#if SEND_DAIKIN64
void send(const uint16_t repeat = kDaikin64DefaultRepeat);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif // SEND_DAIKIN64
void begin(void);
uint64_t getRaw(void);
void setRaw(const uint64_t new_state);
static uint8_t calcChecksum(const uint64_t state);
static bool validChecksum(const uint64_t state);
void setPowerToggle(const bool on);
bool getPowerToggle(void) const;
void setTemp(const uint8_t temp);
uint8_t getTemp(void) const;
void setFan(const uint8_t fan);
uint8_t getFan(void) const;
void setMode(const uint8_t mode);
uint8_t getMode(void) const;
void setSwingVertical(const bool on);
bool getSwingVertical(void) const;
void setSleep(const bool on);
bool getSleep(void) const;
bool getQuiet(void) const;
void setQuiet(const bool on);
bool getTurbo(void) const;
void setTurbo(const bool on);
void setClock(const uint16_t mins_since_midnight);
uint16_t getClock(void) const;
void setOnTimeEnabled(const bool on);
bool getOnTimeEnabled(void) const;
void setOnTime(const uint16_t mins_since_midnight);
uint16_t getOnTime(void) const;
void setOffTimeEnabled(const bool on);
bool getOffTimeEnabled(void) const;
void setOffTime(const uint16_t mins_since_midnight);
uint16_t getOffTime(void) const;
static uint8_t convertMode(const stdAc::opmode_t mode);
static uint8_t convertFan(const stdAc::fanspeed_t speed);
static stdAc::opmode_t toCommonMode(const uint8_t mode);
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
stdAc::state_t toCommon(const stdAc::state_t *prev = NULL) const;
String toString(void) const;
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else
IRsendTest _irsend;
#endif
Daikin64Protocol _;
void stateReset(void);
void checksum(void);
};
#endif // IR_DAIKIN_H_
IRDaikin64::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:3587
IRDaikin128::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:2730
IRDaikinESP::getEcono
bool getEcono(void) const
Get the Economical mode of the A/C.
Definition: ir_Daikin.cpp:352
kDaikin2SwingHRightMax
const uint8_t kDaikin2SwingHRightMax
Definition: ir_Daikin.h:290
kDaikin64ChecksumOffset
const uint8_t kDaikin64ChecksumOffset
Definition: ir_Daikin.h:634
IRDaikin152::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:3417
IRDaikin2::setCurrentTime
void setCurrentTime(const uint16_t time)
Set the clock on the A/C unit.
Definition: ir_Daikin.cpp:929
IRDaikinESP::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:487
kDaikin152DefaultRepeat
const uint16_t kDaikin152DefaultRepeat
Definition: IRremoteESP8266.h:919
IRDaikin2::convertSwingH
static uint8_t convertSwingH(const stdAc::swingh_t position)
Convert a stdAc::swingh_t enum into it's native setting.
Definition: ir_Daikin.cpp:1197
IRDaikin160::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:2046
IRDaikinESP::validChecksum
static bool validChecksum(uint8_t state[], const uint16_t length=kDaikinStateLength)
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:125
kDaikin152OneSpace
const uint16_t kDaikin152OneSpace
Definition: ir_Daikin.h:579
Daikin216Protocol::pad3
uint8_t pad3[4]
Definition: ir_Daikin.h:329
IRDaikin216::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:1592
Daikin176Protocol::Power
uint8_t Power
Definition: ir_Daikin.h:419
IRDaikin64::setOffTimeEnabled
void setOffTimeEnabled(const bool on)
Set the enable status of the Off Timer.
Definition: ir_Daikin.cpp:3819
IRDaikin160::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:1846
Daikin152Protocol::Temp
uint8_t Temp
Definition: ir_Daikin.h:546
IRDaikinESP::send
void send(const uint16_t repeat=kDaikinDefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:116
Daikin160Protocol
Native representation of a Daikin160 A/C message.
Definition: ir_Daikin.h:351
IRDaikin128::getClock
uint16_t getClock(void) const
Get the clock time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:2866
Daikin160Protocol::Power
uint8_t Power
Definition: ir_Daikin.h:361
Daikin152Protocol::Sum
uint8_t Sum
Definition: ir_Daikin.h:570
kDaikinDry
const uint8_t kDaikinDry
Definition: ir_Daikin.h:131
IRDaikin64::getOffTimeEnabled
bool getOffTimeEnabled(void) const
Get the enable status of the Off Timer.
Definition: ir_Daikin.cpp:3825
IRDaikin2::getOnTime
uint16_t getOnTime(void) const
Get the On Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:964
IRDaikin2::setPowerful
void setPowerful(const bool on)
Set the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:1156
IRDaikin216::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:1561
IRDaikin176::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:2210
IRDaikin64::getOffTime
uint16_t getOffTime(void) const
Get the Off Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:3831
IRDaikinESP::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:146
IRDaikinESP::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:662
IRDaikin2::getOffTimerEnabled
bool getOffTimerEnabled(void) const
Get the enable status of the Off Timer.
Definition: ir_Daikin.cpp:997
IRDaikin152::getQuiet
bool getQuiet(void) const
Get the Quiet mode status of the A/C.
Definition: ir_Daikin.cpp:3348
IRDaikin128::getOffTimerEnabled
bool getOffTimerEnabled(void) const
Get the enable status of the Off Timer.
Definition: ir_Daikin.cpp:2911
Daikin160Protocol::raw
uint8_t raw[kDaikin160StateLength]
The state of the IR remote.
Definition: ir_Daikin.h:352
Daikin176Protocol
Native representation of a Daikin176 A/C message.
Definition: ir_Daikin.h:403
Daikin176Protocol::Sum1
uint8_t Sum1
Definition: ir_Daikin.h:409
IRDaikin2::getOnTimerEnabled
bool getOnTimerEnabled(void) const
Get the enable status of the On Timer.
Definition: ir_Daikin.cpp:970
IRDaikinESP::getMold
bool getMold(void) const
Get the Mould mode status of the A/C.
Definition: ir_Daikin.cpp:364
Daikin64Protocol::Mode
uint8_t Mode
Definition: ir_Daikin.h:591
IRDaikin2::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:852
IRDaikin128::toCommon
stdAc::state_t toCommon(const stdAc::state_t *prev=NULL) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:2993
kDaikin152ZeroSpace
const uint16_t kDaikin152ZeroSpace
Definition: ir_Daikin.h:580
kDaikin64OneSpace
const uint16_t kDaikin64OneSpace
Definition: ir_Daikin.h:613
kDaikin2DefaultRepeat
const uint16_t kDaikin2DefaultRepeat
Definition: IRremoteESP8266.h:908
kDaikin64Fan
const uint8_t kDaikin64Fan
Definition: ir_Daikin.h:625
IRDaikin128::getOffTimer
uint16_t getOffTimer(void) const
Get the Off Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:2923
DaikinESPProtocol::Power
uint64_t Power
Definition: ir_Daikin.h:85
IRDaikinESP::getOnTime
uint16_t getOnTime(void) const
Get the On Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:395
kDaikin64Freq
const uint16_t kDaikin64Freq
Definition: ir_Daikin.h:618
IRDaikin152::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:3279
IRDaikin2::getPowerful
bool getPowerful(void) const
Get the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:1164
Daikin128Protocol::SwingV
uint8_t SwingV
Definition: ir_Daikin.h:485
Daikin216Protocol::pad2
uint8_t pad2[3]
Definition: ir_Daikin.h:324
IRDaikin2::send
void send(const uint16_t repeat=kDaikin2DefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:704
IRDaikin2::getCurrentTime
uint16_t getCurrentTime(void) const
Get the clock time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:937
IRDaikin128::getLightToggle
uint8_t getLightToggle(void) const
Get the Light toggle setting of the A/C.
Definition: ir_Daikin.cpp:2945
IRDaikin64::getPowerToggle
bool getPowerToggle(void) const
Get the Power toggle setting of the A/C.
Definition: ir_Daikin.cpp:3610
IRDaikin128::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:2717
IRDaikin2::setEyeAuto
void setEyeAuto(const bool on)
Set the Automatic Eye (Sensor) mode of the A/C.
Definition: ir_Daikin.cpp:1075
IRDaikin176::convertSwingH
static uint8_t convertSwingH(const stdAc::swingh_t position)
Convert a stdAc::swingh_t enum into it's native setting.
Definition: ir_Daikin.cpp:2408
kDaikin176SwingHAuto
const uint8_t kDaikin176SwingHAuto
Definition: ir_Daikin.h:458
IRDaikin152::getEcono
bool getEcono(void) const
Get the Economical mode of the A/C.
Definition: ir_Daikin.cpp:3380
Daikin152Protocol::Mode
uint8_t Mode
Definition: ir_Daikin.h:542
IRDaikin2::IRDaikin2
IRDaikin2(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Daikin.cpp:694
IRDaikin160::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:1950
IRDaikinESP::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:111
IRDaikin216::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:1555
Daikin152Protocol::pad1
uint8_t pad1[4]
Definition: ir_Daikin.h:553
kDaikin176Section2Length
const uint16_t kDaikin176Section2Length
Definition: ir_Daikin.h:448
stdAc::swingv_t
swingv_t
Common A/C settings for Vertical Swing.
Definition: IRsend.h:70
Daikin152Protocol::Power
uint8_t Power
Definition: ir_Daikin.h:540
IRDaikin2::setSwingVertical
void setSwingVertical(const uint8_t position)
Set the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:863
IRDaikin2::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:1190
IRDaikin64::toCommon
stdAc::state_t toCommon(const stdAc::state_t *prev=NULL) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:3877
DaikinESPProtocol::Fan
uint64_t Fan
Definition: ir_Daikin.h:99
IRDaikin2::validChecksum
static bool validChecksum(uint8_t state[], const uint16_t length=kDaikin2StateLength)
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:713
Daikin2Protocol::FreshAir
uint64_t FreshAir
Definition: ir_Daikin.h:193
kDaikin64Overhead
const uint8_t kDaikin64Overhead
Definition: ir_Daikin.h:619
kDaikinOneSpace
const uint16_t kDaikinOneSpace
Definition: ir_Daikin.h:168
kDaikin2ZeroSpace
const uint16_t kDaikin2ZeroSpace
Definition: ir_Daikin.h:273
IRDaikinESP
Class for handling detailed Daikin 280-bit A/C messages.
Definition: ir_Daikin.h:651
IRDaikin176::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:2336
kDaikin2HdrMark
const uint16_t kDaikin2HdrMark
Definition: ir_Daikin.h:269
IRDaikin216::validChecksum
static bool validChecksum(uint8_t state[], const uint16_t length=kDaikin216StateLength)
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:1486
IRDaikin64::setOffTime
void setOffTime(const uint16_t mins_since_midnight)
Set the Off Timer time for the A/C unit.
Definition: ir_Daikin.cpp:3837
IRDaikin176::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Daikin.cpp:2431
Daikin160Protocol::Sum2
uint8_t Sum2
Definition: ir_Daikin.h:380
Daikin128Protocol::pad
uint8_t pad[5]
Definition: ir_Daikin.h:499
IRDaikin176::getSwingHorizontal
uint8_t getSwingHorizontal(void) const
Get the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:2401
IRDaikin160::off
void off(void)
Change the power setting to Off.
Definition: ir_Daikin.cpp:1898
IRDaikin2
Class for handling detailed Daikin 312-bit A/C messages.
Definition: ir_Daikin.h:733
IRDaikin216::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:840
kDaikin176StateLength
const uint16_t kDaikin176StateLength
Definition: IRremoteESP8266.h:920
IRDaikin176::setSwingHorizontal
void setSwingHorizontal(const uint8_t position)
Set the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:2389
IRDaikin128
Class for handling detailed Daikin 128-bit A/C messages.
Definition: ir_Daikin.h:994
IRDaikin2::setMold
void setMold(const bool on)
Set the Mould (filter) mode of the A/C.
Definition: ir_Daikin.cpp:1027
stdAc::fanspeed_t
fanspeed_t
Common A/C settings for Fan Speeds.
Definition: IRsend.h:58
IRDaikin2::toCommonSwingH
static stdAc::swingh_t toCommonSwingH(const uint8_t setting)
Convert a native horizontal swing postion to it's common equivalent.
Definition: ir_Daikin.cpp:1213
IRDaikin160::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Daikin.cpp:1902
IRDaikin216::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:1613
IRDaikin2::getOffTime
uint16_t getOffTime(void) const
Get the Off Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:991
IRDaikin216::getQuiet
bool getQuiet(void) const
Get the Quiet mode status of the A/C.
Definition: ir_Daikin.cpp:1666
IRDaikin128::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:2724
IRDaikinESP::setSwingHorizontal
void setSwingHorizontal(const bool on)
Set the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:289
IRDaikin216::setPowerful
void setPowerful(const bool on)
Set the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:1672
IRDaikin128::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:2692
IRDaikin216::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Daikin.cpp:1543
kDaikin64HdrMark
const uint16_t kDaikin64HdrMark
Definition: ir_Daikin.h:610
IRDaikin160::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:1825
IRDaikin128::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Daikin.cpp:2632
kDaikin176HdrMark
const uint16_t kDaikin176HdrMark
Definition: ir_Daikin.h:440
IRDaikin128::setOffTimer
void setOffTimer(const uint16_t mins_since_midnight)
Set the Off Timer time for the A/C unit.
Definition: ir_Daikin.cpp:2917
Daikin216Protocol::SwingV
uint8_t SwingV
Definition: ir_Daikin.h:318
Daikin64Protocol::Sum
uint8_t Sum
Definition: ir_Daikin.h:606
IRDaikin64::setClock
void setClock(const uint16_t mins_since_midnight)
Set the clock on the A/C unit.
Definition: ir_Daikin.cpp:3780
kDaikin128FanPowerful
const uint8_t kDaikin128FanPowerful
Definition: ir_Daikin.h:526
kDaikin128Freq
const uint16_t kDaikin128Freq
Definition: ir_Daikin.h:505
IRDaikin2::clearOnTimerFlag
void clearOnTimerFlag(void)
Clear the On Timer flag.
Definition: ir_Daikin.cpp:951
kDaikinGap
const uint16_t kDaikinGap
Definition: ir_Daikin.h:169
IRDaikin128::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:1049
kDaikin128MinTemp
const uint8_t kDaikin128MinTemp
Definition: ir_Daikin.h:528
IRDaikin160::on
void on(void)
Change the power setting to On.
Definition: ir_Daikin.cpp:1895
IRDaikin128::getSwingVertical
bool getSwingVertical(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:2792
kDaikin2SwingVSwing
const uint8_t kDaikin2SwingVSwing
Definition: ir_Daikin.h:280
IRDaikin216::off
void off(void)
Change the power setting to Off.
Definition: ir_Daikin.cpp:1539
IRDaikin64::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:3616
IRDaikin2::getPurify
bool getPurify(void) const
Get the Purify (Filter) mode status of the A/C.
Definition: ir_Daikin.cpp:1176
IRDaikin176::setRaw
void setRaw(const uint8_t new_code[])
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:2246
Daikin64Protocol::OnHours
uint8_t OnHours
Definition: ir_Daikin.h:595
IRDaikin2::disableOffTimer
void disableOffTimer(void)
Disable the Off timer.
Definition: ir_Daikin.cpp:983
Daikin128Protocol::Power
uint8_t Power
Definition: ir_Daikin.h:488
kDaikin160Gap
const uint16_t kDaikin160Gap
Definition: ir_Daikin.h:390
Daikin176Protocol::Temp
uint8_t Temp
Definition: ir_Daikin.h:427
IRDaikin64
Class for handling detailed Daikin 64-bit A/C messages.
Definition: ir_Daikin.h:1124
kDaikinBitMark
const uint16_t kDaikinBitMark
Definition: ir_Daikin.h:166
IRDaikin2::enableOffTimer
void enableOffTimer(const uint16_t endtime)
Set the enable status & time of the Off Timer.
Definition: ir_Daikin.cpp:976
IRDaikin64::calcChecksum
static uint8_t calcChecksum(const uint64_t state)
Calculate the checksum for a given state.
Definition: ir_Daikin.cpp:3564
Daikin160Protocol::Fan
uint8_t Fan
Definition: ir_Daikin.h:375
kDaikin152BitMark
const uint16_t kDaikin152BitMark
Definition: ir_Daikin.h:578
IRDaikin128::_
Daikin128Protocol _
Definition: ir_Daikin.h:1056
kDaikin176FanMax
const uint8_t kDaikin176FanMax
Definition: ir_Daikin.h:457
IRDaikinESP::setCurrentTime
void setCurrentTime(const uint16_t mins_since_midnight)
Set the clock on the A/C unit.
Definition: ir_Daikin.cpp:432
IRDaikin64::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:3582
kDaikin152HdrSpace
const uint16_t kDaikin152HdrSpace
Definition: ir_Daikin.h:577
Daikin64Protocol::SwingV
uint8_t SwingV
Definition: ir_Daikin.h:602
Daikin216Protocol::Fan
uint8_t Fan
Definition: ir_Daikin.h:319
kDaikin160BitMark
const uint16_t kDaikin160BitMark
Definition: ir_Daikin.h:387
IRDaikin2::setRaw
void setRaw(const uint8_t new_code[])
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:777
DaikinESPProtocol::Econo
uint8_t Econo
Definition: ir_Daikin.h:117
IRDaikin152::setEcono
void setEcono(const bool on)
Set the Economy mode of the A/C.
Definition: ir_Daikin.cpp:3372
IRDaikin2::getSwingVertical
uint8_t getSwingVertical(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:881
IRDaikin152::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:3322
IRDaikin152::getPowerful
bool getPowerful(void) const
Get the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:3366
kDaikin2MinCoolTemp
const uint8_t kDaikin2MinCoolTemp
Definition: ir_Daikin.h:294
Daikin2Protocol::Mold
uint64_t Mold
Definition: ir_Daikin.h:195
IRDaikin152::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:3310
DaikinESPProtocol::Comfort
uint64_t Comfort
Definition: ir_Daikin.h:68
IRsend.h
IRDaikin176::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Daikin.cpp:2274
kDaikin64FanQuiet
const uint8_t kDaikin64FanQuiet
Definition: ir_Daikin.h:630
Daikin2Protocol::SwingV
uint64_t SwingV
Definition: ir_Daikin.h:211
IRDaikin128::setPowerToggle
void setPowerToggle(const bool toggle)
Set the Power toggle setting of the A/C.
Definition: ir_Daikin.cpp:2653
IRDaikin64::getSwingVertical
bool getSwingVertical(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:3762
Daikin152Protocol::Econo
uint8_t Econo
Definition: ir_Daikin.h:564
IRDaikin176::_
Daikin176Protocol _
Definition: ir_Daikin.h:986
kDaikin152FanTemp
const uint8_t kDaikin152FanTemp
Definition: ir_Daikin.h:584
IRDaikinESP::getPowerful
bool getPowerful(void) const
Get the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:326
IRDaikin216
Class for handling detailed Daikin 216-bit A/C messages.
Definition: ir_Daikin.h:829
Daikin2Protocol::Powerful
uint64_t Powerful
Definition: ir_Daikin.h:243
kDaikin64Cool
const uint8_t kDaikin64Cool
Definition: ir_Daikin.h:624
IRDaikinESP::setMold
void setMold(const bool on)
Set the Mould mode of the A/C.
Definition: ir_Daikin.cpp:358
Daikin160Protocol::pad0
uint8_t pad0[6]
Definition: ir_Daikin.h:355
Daikin2Protocol::OnTimer
uint64_t OnTimer
Definition: ir_Daikin.h:222
kDaikin64FanTurbo
const uint8_t kDaikin64FanTurbo
Definition: ir_Daikin.h:631
kDaikinFan
const uint8_t kDaikinFan
Definition: ir_Daikin.h:134
IRDaikin64::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:1177
IRDaikin2::setFreshAirHigh
void setFreshAirHigh(const bool on)
Set the (High) Fresh Air mode of the A/C.
Definition: ir_Daikin.cpp:1063
kDaikinZeroSpace
const uint16_t kDaikinZeroSpace
Definition: ir_Daikin.h:167
kDaikinSection1Length
const uint8_t kDaikinSection1Length
Definition: ir_Daikin.h:146
Daikin216Protocol::SwingH
uint8_t SwingH
Definition: ir_Daikin.h:321
Daikin64Protocol::OffHalfHour
uint8_t OffHalfHour
Definition: ir_Daikin.h:599
kDaikinByteChecksum2
const uint8_t kDaikinByteChecksum2
Definition: ir_Daikin.h:151
IRDaikin152::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:1075
IRDaikin128::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:2665
Daikin128Protocol::raw
uint8_t raw[kDaikin128StateLength]
The state of the IR remote.
Definition: ir_Daikin.h:463
Daikin216Protocol
Native representation of a Daikin216 A/C message.
Definition: ir_Daikin.h:297
IRDaikinESP::setSensor
void setSensor(const bool on)
Set the Sensor mode of the A/C.
Definition: ir_Daikin.cpp:332
IRDaikin160::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:1936
DaikinESPProtocol::OnTimer
uint64_t OnTimer
Definition: ir_Daikin.h:86
Daikin2Protocol::Econo
uint64_t Econo
Definition: ir_Daikin.h:252
IRsend
Class for sending all basic IR protocols.
Definition: IRsend.h:182
kDaikinUnusedTime
const uint16_t kDaikinUnusedTime
Definition: ir_Daikin.h:153
IRDaikin176::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:948
kDaikin176Dry
const uint8_t kDaikin176Dry
Definition: ir_Daikin.h:454
Daikin128Protocol::Wall
uint8_t Wall
Definition: ir_Daikin.h:496
kDaikin176Auto
const uint8_t kDaikin176Auto
Definition: ir_Daikin.h:453
IRDaikin152::setPowerful
void setPowerful(const bool on)
Set the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:3354
IRDaikin2::disableOnTimer
void disableOnTimer(void)
Disable the On timer.
Definition: ir_Daikin.cpp:956
IRsend::calibrate
int8_t calibrate(uint16_t hz=38000U)
Calculate & set any offsets to account for execution times during sending.
Definition: IRsend.cpp:207
kDaikin216ZeroSpace
const uint16_t kDaikin216ZeroSpace
Definition: ir_Daikin.h:340
IRDaikin176::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:2286
IRDaikin152::off
void off(void)
Change the power setting to Off.
Definition: ir_Daikin.cpp:3229
IRDaikin2::getSleepTime
uint16_t getSleepTime(void) const
Get the Sleep Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:1130
Daikin128Protocol::Sum1
uint8_t Sum1
Definition: ir_Daikin.h:489
Daikin128Protocol::OffHalfHour
uint8_t OffHalfHour
Definition: ir_Daikin.h:480
IRDaikin152::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:3245
Daikin2Protocol
Native representation of a Daikin2 A/C message.
Definition: ir_Daikin.h:175
IRDaikin216::getSwingVertical
bool getSwingVertical(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:1634
DaikinESPProtocol::OnTime
uint64_t OnTime
Definition: ir_Daikin.h:104
kDaikin2SwingHLeft
const uint8_t kDaikin2SwingHLeft
Definition: ir_Daikin.h:287
Daikin176Protocol::raw
uint8_t raw[kDaikin176StateLength]
The state of the IR remote.
Definition: ir_Daikin.h:404
Daikin128Protocol::OffHours
uint8_t OffHours
Definition: ir_Daikin.h:479
IRDaikin176::toCommonSwingH
static stdAc::swingh_t toCommonSwingH(const uint8_t setting)
Convert a native horizontal swing postion to it's common equivalent.
Definition: ir_Daikin.cpp:2419
IRDaikin2::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:699
IRDaikin64::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Daikin.cpp:3746
IRDaikin216::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:1508
IRDaikinESP::setPowerful
void setPowerful(const bool on)
Set the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:315
IRDaikin160::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:2072
Daikin2Protocol::OffTime
uint64_t OffTime
Definition: ir_Daikin.h:241
kDaikinHdrSpace
const uint16_t kDaikinHdrSpace
Definition: ir_Daikin.h:165
kDaikin160HdrSpace
const uint16_t kDaikin160HdrSpace
Definition: ir_Daikin.h:386
String
std::string String
Definition: IRremoteESP8266.h:1178
IRDaikin64::setOnTimeEnabled
void setOnTimeEnabled(const bool on)
Set the enable status of the On Timer.
Definition: ir_Daikin.cpp:3795
IRDaikin152::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:3198
Daikin2Protocol::Sum1
uint64_t Sum1
Definition: ir_Daikin.h:214
IRDaikinESP::IRDaikinESP
IRDaikinESP(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Daikin.cpp:106
DaikinESPProtocol::WeeklyTimer
uint8_t WeeklyTimer
Definition: ir_Daikin.h:119
DaikinESPProtocol::raw
uint8_t raw[kDaikinStateLength]
The state of the IR remote.
Definition: ir_Daikin.h:62
IRDaikin2::setPower
void setPower(const bool state)
Change the power setting.
Definition: ir_Daikin.cpp:789
kDaikinCurIndex
const uint8_t kDaikinCurIndex
Definition: ir_Daikin.h:161
kDaikin160SwingVHighest
const uint8_t kDaikin160SwingVHighest
Definition: ir_Daikin.h:399
IRDaikin160::setSwingVertical
void setSwingVertical(const uint8_t position)
Set the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:1993
IRDaikin128::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:2759
Daikin176Protocol::pad3
uint8_t pad3[2]
Definition: ir_Daikin.h:433
IRDaikin128::getPowerToggle
bool getPowerToggle(void) const
Get the Power toggle setting of the A/C.
Definition: ir_Daikin.cpp:2659
IRDaikin160::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:1979
Daikin216Protocol::Powerful
uint8_t Powerful
Definition: ir_Daikin.h:326
kDaikin2Section2Length
const uint16_t kDaikin2Section2Length
Definition: ir_Daikin.h:276
Daikin176Protocol::pad1
uint8_t pad1[5]
Definition: ir_Daikin.h:411
IRDaikinESP::getSensor
bool getSensor(void) const
Get the Sensor mode of the A/C.
Definition: ir_Daikin.cpp:338
Daikin2Protocol::pad
uint8_t pad[3]
Definition: ir_Daikin.h:177
kDaikin152StateLength
const uint16_t kDaikin152StateLength
Definition: IRremoteESP8266.h:917
Daikin160Protocol::pad1
uint8_t pad1[5]
Definition: ir_Daikin.h:359
IRDaikin160::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:1914
kDaikin128BitCeiling
const uint8_t kDaikin128BitCeiling
Definition: ir_Daikin.h:531
IRDaikinESP::off
void off(void)
Change the power setting to Off.
Definition: ir_Daikin.cpp:204
IRDaikin2::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:834
IRDaikin152::getSwingV
bool getSwingV(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:3334
kDaikin160OneSpace
const uint16_t kDaikin160OneSpace
Definition: ir_Daikin.h:388
IRDaikin2::getFreshAirHigh
bool getFreshAirHigh(void) const
Get the (High) Fresh Air mode status of the A/C.
Definition: ir_Daikin.cpp:1069
IRDaikin2::setFreshAir
void setFreshAir(const bool on)
Set the Fresh Air mode of the A/C.
Definition: ir_Daikin.cpp:1051
IRDaikin2::setLight
void setLight(const uint8_t light)
Set the Light (LED) mode of the A/C.
Definition: ir_Daikin.cpp:1021
Daikin2Protocol::raw
uint8_t raw[kDaikin2StateLength]
The state of the IR remote.
Definition: ir_Daikin.h:178
kDaikin128ZeroSpace
const uint16_t kDaikin128ZeroSpace
Definition: ir_Daikin.h:512
kDaikinFanMax
const uint8_t kDaikinFanMax
Definition: ir_Daikin.h:139
IRDaikin128::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:2671
kDaikin176Gap
const uint16_t kDaikin176Gap
Definition: ir_Daikin.h:445
IRDaikin2::enableOnTimer
void enableOnTimer(const uint16_t starttime)
Set the enable status & time of the On Timer.
Definition: ir_Daikin.cpp:944
IRDaikin128::setOffTimerEnabled
void setOffTimerEnabled(const bool on)
Set the enable status of the Off Timer.
Definition: ir_Daikin.cpp:2905
kDaikin128FanMed
const uint8_t kDaikin128FanMed
Definition: ir_Daikin.h:524
Daikin128Protocol::Sum2
uint8_t Sum2
Definition: ir_Daikin.h:501
IRDaikin176::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:2357
Daikin64Protocol::Fan
uint8_t Fan
Definition: ir_Daikin.h:592
IRDaikin176::off
void off(void)
Change the power setting to Off..
Definition: ir_Daikin.cpp:2263
IRDaikin2::getSwingHorizontal
uint8_t getSwingHorizontal(void) const
Get the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:925
IRDaikin216::setRaw
void setRaw(const uint8_t new_code[])
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:1531
IRDaikinESP::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Daikin.cpp:214
kDaikinSwingOn
const uint8_t kDaikinSwingOn
Definition: ir_Daikin.h:142
kDaikin216Freq
const uint16_t kDaikin216Freq
Definition: ir_Daikin.h:335
IRDaikinESP::setSwingVertical
void setSwingVertical(const bool on)
Set the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:277
kDaikin216StateLength
const uint16_t kDaikin216StateLength
Definition: IRremoteESP8266.h:923
kDaikin176Freq
const uint16_t kDaikin176Freq
Definition: ir_Daikin.h:439
IRDaikin128::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Daikin.cpp:2823
Daikin216Protocol::pad0
uint8_t pad0[7]
Definition: ir_Daikin.h:301
Daikin64Protocol::Temp
uint8_t Temp
Definition: ir_Daikin.h:601
DaikinESPProtocol::Mold
uint8_t Mold
Definition: ir_Daikin.h:122
IRDaikin128::getOnTimer
uint16_t getOnTimer(void) const
Get the On Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:2899
kDaikin2Section1Length
const uint16_t kDaikin2Section1Length
Definition: ir_Daikin.h:275
IRDaikin128::setLightToggle
void setLightToggle(const uint8_t unit_type)
Set the Light toggle setting of the A/C.
Definition: ir_Daikin.cpp:2930
kDaikin2SwingHMiddle
const uint8_t kDaikin2SwingHMiddle
Definition: ir_Daikin.h:288
IRremoteESP8266.h
stdAc::swingh_t
swingh_t
Common A/C settings for Horizontal Swing.
Definition: IRsend.h:83
IRDaikin2::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:814
kDaikin152Freq
const uint16_t kDaikin152Freq
Definition: ir_Daikin.h:574
IRDaikin128::send
void send(const uint16_t repeat=kDaikin128DefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:2646
IRDaikin152::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Daikin.cpp:3340
kDaikin128HdrSpace
const uint16_t kDaikin128HdrSpace
Definition: ir_Daikin.h:509
kDaikinBeepOff
const uint8_t kDaikinBeepOff
Definition: ir_Daikin.h:156
Daikin128Protocol::Fan
uint8_t Fan
Definition: ir_Daikin.h:469
Daikin64Protocol::Sleep
uint8_t Sleep
Definition: ir_Daikin.h:603
Daikin2Protocol::SwingH
uint64_t SwingH
Definition: ir_Daikin.h:209
IRDaikin152::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Daikin.cpp:3214
IRDaikin152::setSensor
void setSensor(const bool on)
Set the Sensor mode of the A/C.
Definition: ir_Daikin.cpp:3386
kDaikin176HdrSpace
const uint16_t kDaikin176HdrSpace
Definition: ir_Daikin.h:441
IRDaikin176::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Daikin.cpp:2324
IRDaikin64::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:3651
kDaikin2Sections
const uint16_t kDaikin2Sections
Definition: ir_Daikin.h:274
kDaikin160SwingVHigh
const uint8_t kDaikin160SwingVHigh
Definition: ir_Daikin.h:398
IRDaikin2::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:1228
IRDaikin216::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:1578
IRDaikin128::calcSecondChecksum
static uint8_t calcSecondChecksum(const uint8_t state[])
Definition: ir_Daikin.cpp:2597
IRDaikinESP::setComfort
void setComfort(const bool on)
Set the Comfort mode of the A/C.
Definition: ir_Daikin.cpp:370
kDaikin128StateLength
const uint16_t kDaikin128StateLength
Definition: IRremoteESP8266.h:914
kDaikin176DefaultRepeat
const uint16_t kDaikin176DefaultRepeat
Definition: IRremoteESP8266.h:922
Daikin2Protocol::OffTimer
uint64_t OffTimer
Definition: ir_Daikin.h:223
IRDaikin128::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:2616
kDaikin128BitWall
const uint8_t kDaikin128BitWall
Definition: ir_Daikin.h:530
IRDaikin64::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:3679
kDaikin2BitMark
const uint16_t kDaikin2BitMark
Definition: ir_Daikin.h:271
Daikin2Protocol::Mode
uint64_t Mode
Definition: ir_Daikin.h:225
IRDaikin152::validChecksum
static bool validChecksum(uint8_t state[], const uint16_t length=kDaikin152StateLength)
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:3189
kDaikin2LeaderSpace
const uint16_t kDaikin2LeaderSpace
Definition: ir_Daikin.h:267
IRDaikin216::_
Daikin216Protocol _
Definition: ir_Daikin.h:879
IRDaikin152::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:3443
IRDaikin152::setComfort
void setComfort(const bool on)
Set the Comfort mode of the A/C.
Definition: ir_Daikin.cpp:3398
IRDaikin2::toCommonSwingV
static stdAc::swingv_t toCommonSwingV(const uint8_t setting)
Convert a native vertical swing postion to it's common equivalent.
Definition: ir_Daikin.cpp:904
IRDaikin216::getSwingHorizontal
bool getSwingHorizontal(void) const
Get the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:1646
kDaikin160Sections
const uint16_t kDaikin160Sections
Definition: ir_Daikin.h:391
IRDaikin152::setSwingV
void setSwingV(const bool on)
Set the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:3328
Daikin152Protocol::Sensor
uint8_t Sensor
Definition: ir_Daikin.h:565
IRDaikinESP::getCurrentDay
uint8_t getCurrentDay(void) const
Get the current day of the week to be sent to the A/C unit.
Definition: ir_Daikin.cpp:454
kDaikin64FanAuto
const uint8_t kDaikin64FanAuto
Definition: ir_Daikin.h:626
IRDaikin2::setSwingHorizontal
void setSwingHorizontal(const uint8_t position)
Set the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:919
IRDaikinESP::getCurrentTime
uint16_t getCurrentTime(void) const
Get the clock time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:440
IRDaikin216::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Daikin.cpp:1653
kDaikin160Freq
const uint16_t kDaikin160Freq
Definition: ir_Daikin.h:384
IRDaikin2::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:808
kDaikin64Dry
const uint8_t kDaikin64Dry
Definition: ir_Daikin.h:623
kDaikin2SwingVBreeze
const uint8_t kDaikin2SwingVBreeze
Definition: ir_Daikin.h:282
IRDaikinESP::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Daikin.cpp:182
IRDaikin64::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:3843
IRDaikin176::IRDaikin176
IRDaikin176(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Daikin.cpp:2184
IRDaikin160::validChecksum
static bool validChecksum(uint8_t state[], const uint16_t length=kDaikin160StateLength)
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:1831
IRDaikin128::getSleep
bool getSleep(void) const
Get the Sleep mode of the A/C.
Definition: ir_Daikin.cpp:2804
kDaikin64FanLow
const uint8_t kDaikin64FanLow
Definition: ir_Daikin.h:627
IRDaikin176::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:2217
IRDaikin152::on
void on(void)
Change the power setting to On.
Definition: ir_Daikin.cpp:3226
IRDaikin216::getPowerful
bool getPowerful(void) const
Get the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:1680
IRDaikin160::IRDaikin160
IRDaikin160(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Daikin.cpp:1820
Daikin176Protocol::Mode
uint8_t Mode
Definition: ir_Daikin.h:421
kDaikinBeepLoud
const uint8_t kDaikinBeepLoud
Definition: ir_Daikin.h:155
kDaikinFanAuto
const uint8_t kDaikinFanAuto
Definition: ir_Daikin.h:140
IRDaikin64::getClock
uint16_t getClock(void) const
Get the clock time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:3789
Daikin2Protocol::OnTime
uint64_t OnTime
Definition: ir_Daikin.h:240
kDaikin128Dry
const uint8_t kDaikin128Dry
Definition: ir_Daikin.h:517
IRDaikin216::setSwingHorizontal
void setSwingHorizontal(const bool on)
Set the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:1640
kDaikin64KnownGoodState
const uint64_t kDaikin64KnownGoodState
Definition: ir_Daikin.h:622
Daikin152Protocol::Quiet
uint8_t Quiet
Definition: ir_Daikin.h:557
IRDaikin176::validChecksum
static bool validChecksum(uint8_t state[], const uint16_t length=kDaikin176StateLength)
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:2195
IRDaikin64::getRaw
uint64_t getRaw(void)
Get a copy of the internal state as a valid code for this protocol.
Definition: ir_Daikin.cpp:3593
Daikin160Protocol::SwingV
uint8_t SwingV
Definition: ir_Daikin.h:367
Daikin216Protocol::Sum1
uint8_t Sum1
Definition: ir_Daikin.h:303
kDaikin216Sections
const uint16_t kDaikin216Sections
Definition: ir_Daikin.h:342
IRDaikin176::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:2350
kDaikin176Heat
const uint8_t kDaikin176Heat
Definition: ir_Daikin.h:451
IRDaikin216::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:1622
IRDaikin128::IRDaikin128
IRDaikin128(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Daikin.cpp:2585
Daikin176Protocol::ModeButton
uint8_t ModeButton
Definition: ir_Daikin.h:417
Daikin128Protocol::ClockMins
uint8_t ClockMins
Definition: ir_Daikin.h:471
Daikin128Protocol::OnHours
uint8_t OnHours
Definition: ir_Daikin.h:475
Daikin128Protocol::Ceiling
uint8_t Ceiling
Definition: ir_Daikin.h:493
kDaikin152DryTemp
const uint8_t kDaikin152DryTemp
Definition: ir_Daikin.h:583
IRDaikinESP::setCurrentDay
void setCurrentDay(const uint8_t day_of_week)
Set the current day of the week to be sent to the A/C unit.
Definition: ir_Daikin.cpp:447
IRDaikin64::IRDaikin64
IRDaikin64(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Daikin.cpp:3546
Daikin216Protocol::Temp
uint8_t Temp
Definition: ir_Daikin.h:313
IRDaikin152::IRDaikin152
IRDaikin152(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Daikin.cpp:3170
Daikin216Protocol::Sum2
uint8_t Sum2
Definition: ir_Daikin.h:331
kDaikin160HdrMark
const uint16_t kDaikin160HdrMark
Definition: ir_Daikin.h:385
IRDaikin176::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:2189
IRDaikin216::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:1472
kDaikin64ZeroSpace
const uint16_t kDaikin64ZeroSpace
Definition: ir_Daikin.h:614
Daikin128Protocol::Sleep
uint8_t Sleep
Definition: ir_Daikin.h:486
IRDaikin128::validChecksum
static bool validChecksum(uint8_t state[])
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:2605
kDaikin128SectionLength
const uint16_t kDaikin128SectionLength
Definition: ir_Daikin.h:516
kDaikin176Cool
const uint8_t kDaikin176Cool
Definition: ir_Daikin.h:452
IRDaikin64::setTurbo
void setTurbo(const bool on)
Set the Turbo (Powerful) mode of the A/C.
Definition: ir_Daikin.cpp:3730
kDaikin128LeaderSpace
const uint16_t kDaikin128LeaderSpace
Definition: ir_Daikin.h:507
IRDaikin2::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:839
IRDaikinESP::setWeeklyTimerEnable
void setWeeklyTimerEnable(const bool on)
Set the enable status of the Weekly Timer.
Definition: ir_Daikin.cpp:460
IRDaikin2::_
Daikin2Protocol _
Definition: ir_Daikin.h:821
IRDaikin64::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:1135
kDaikin2LeaderMark
const uint16_t kDaikin2LeaderMark
Definition: ir_Daikin.h:266
kDaikinBeepQuiet
const uint8_t kDaikinBeepQuiet
Definition: ir_Daikin.h:154
IRDaikin128::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:2958
IRDaikin64::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:3630
Daikin128Protocol::Mode
uint8_t Mode
Definition: ir_Daikin.h:468
Daikin216Protocol::Power
uint8_t Power
Definition: ir_Daikin.h:307
kDaikin2SwingVAuto
const uint8_t kDaikin2SwingVAuto
Definition: ir_Daikin.h:281
IRDaikin160::_
Daikin160Protocol _
Definition: ir_Daikin.h:931
DaikinESPProtocol
Native representation of a Daikin A/C message.
Definition: ir_Daikin.h:61
Daikin2Protocol::Sum2
uint8_t Sum2
Definition: ir_Daikin.h:261
IRDaikinESP::getOffTimerEnabled
bool getOffTimerEnabled(void) const
Get the enable status of the Off Timer.
Definition: ir_Daikin.cpp:426
IRDaikinESP::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:474
kDaikin216Section1Length
const uint16_t kDaikin216Section1Length
Definition: ir_Daikin.h:343
IRDaikin160::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Daikin.cpp:1908
kDaikinLightBright
const uint8_t kDaikinLightBright
Definition: ir_Daikin.h:157
Daikin176Protocol::AltMode
uint8_t AltMode
Definition: ir_Daikin.h:414
IRDaikin2::getMold
bool getMold(void) const
Get the Mould (filter) mode status of the A/C.
Definition: ir_Daikin.cpp:1033
kDaikin152Gap
const uint16_t kDaikin152Gap
Definition: ir_Daikin.h:581
IRDaikin176::send
void send(const uint16_t repeat=kDaikin176DefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:2254
IRDaikin2::convertSwingV
static uint8_t convertSwingV(const stdAc::swingv_t position)
Convert a stdAc::swingv_t enum into it's native setting.
Definition: ir_Daikin.cpp:888
kDaikin128Auto
const uint8_t kDaikin128Auto
Definition: ir_Daikin.h:521
kDaikin160SwingVMiddle
const uint8_t kDaikin160SwingVMiddle
Definition: ir_Daikin.h:397
IRDaikin2::getSleepTimerEnabled
bool getSleepTimerEnabled(void) const
Get the Sleep timer enabled status of the A/C.
Definition: ir_Daikin.cpp:1136
IRDaikin160::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:1957
IRDaikin128::setEcono
void setEcono(const bool on)
Set the Economy mode of the A/C.
Definition: ir_Daikin.cpp:2810
Daikin64Protocol
Native representation of a Daikin64 A/C message.
Definition: ir_Daikin.h:587
IRDaikin176::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:2372
kDaikin128Gap
const uint16_t kDaikin128Gap
Definition: ir_Daikin.h:513
kDaikin64MaxTemp
const uint8_t kDaikin64MaxTemp
Definition: ir_Daikin.h:633
Daikin2Protocol::Temp
uint64_t Temp
Definition: ir_Daikin.h:229
IRDaikinESP::getSwingHorizontal
bool getSwingHorizontal(void) const
Get the Horizontal Swing mode of the A/C.
Definition: ir_Daikin.cpp:295
IRDaikin64::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:3624
kDaikinHeat
const uint8_t kDaikinHeat
Definition: ir_Daikin.h:133
kDaikin216OneSpace
const uint16_t kDaikin216OneSpace
Definition: ir_Daikin.h:339
IRDaikin64::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:3673
DaikinESPProtocol::Mode
uint64_t Mode
Definition: ir_Daikin.h:89
Daikin152Protocol::pad0
uint8_t pad0[5]
Definition: ir_Daikin.h:538
Daikin2Protocol::SleepTimer
uint64_t SleepTimer
Definition: ir_Daikin.h:255
kDaikin176SwingHOff
const uint8_t kDaikin176SwingHOff
Definition: ir_Daikin.h:459
IRDaikinESP::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Daikin.cpp:301
kDaikin64BitMark
const uint16_t kDaikin64BitMark
Definition: ir_Daikin.h:611
kDaikin160SwingVLowest
const uint8_t kDaikin160SwingVLowest
Definition: ir_Daikin.h:395
kDaikin216DefaultRepeat
const uint16_t kDaikin216DefaultRepeat
Definition: IRremoteESP8266.h:925
kDaikin2SwingHLeftMax
const uint8_t kDaikin2SwingHLeftMax
Definition: ir_Daikin.h:286
IRDaikin152::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Daikin.cpp:3233
kDaikinCurBit
const uint8_t kDaikinCurBit
Definition: ir_Daikin.h:160
IRDaikin160::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:896
IRDaikin2::clearSleepTimerFlag
void clearSleepTimerFlag(void)
Clear the sleep timer flag.
Definition: ir_Daikin.cpp:1119
IRDaikin176::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:2280
IRDaikin128::getOnTimerEnabled
bool getOnTimerEnabled(void) const
Get the enable status of the On Timer.
Definition: ir_Daikin.cpp:2878
Daikin128Protocol::OnTimer
uint8_t OnTimer
Definition: ir_Daikin.h:477
kDaikin176BitMark
const uint16_t kDaikin176BitMark
Definition: ir_Daikin.h:442
IRDaikin152::getComfort
bool getComfort(void) const
Get the Comfort mode of the A/C.
Definition: ir_Daikin.cpp:3411
Daikin64Protocol::OffHours
uint8_t OffHours
Definition: ir_Daikin.h:598
Daikin2Protocol::FreshAirHigh
uint64_t FreshAirHigh
Definition: ir_Daikin.h:199
kDaikin160DefaultRepeat
const uint16_t kDaikin160DefaultRepeat
Definition: IRremoteESP8266.h:913
IRDaikin64::setPowerToggle
void setPowerToggle(const bool on)
Set the Power toggle setting of the A/C.
Definition: ir_Daikin.cpp:3604
IRDaikin176::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:2311
IRDaikinESP::setEcono
void setEcono(const bool on)
Set the Economy mode of the A/C.
Definition: ir_Daikin.cpp:344
IRDaikin176::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Daikin.cpp:2267
DaikinESPProtocol::CurrentTime
uint64_t CurrentTime
Definition: ir_Daikin.h:76
IRDaikin2::getClean
bool getClean(void) const
Get the Auto Clean mode status of the A/C.
Definition: ir_Daikin.cpp:1045
kDaikin64ToleranceDelta
const int8_t kDaikin64ToleranceDelta
Definition: ir_Daikin.h:620
IRDaikin64::getOnTimeEnabled
bool getOnTimeEnabled(void) const
Get the enable status of the On Timer.
Definition: ir_Daikin.cpp:3801
kDaikin160SwingVAuto
const uint8_t kDaikin160SwingVAuto
Definition: ir_Daikin.h:400
kDaikinHeaderLength
const uint16_t kDaikinHeaderLength
Definition: ir_Daikin.h:144
IRDaikinESP::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Daikin.cpp:208
kDaikin64LdrMark
const uint16_t kDaikin64LdrMark
Definition: ir_Daikin.h:615
IRDaikin152::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:3296
IRrecv.h
IRDaikin64::getTurbo
bool getTurbo(void) const
Get the Turbo (Powerful) mode status of the A/C.
Definition: ir_Daikin.cpp:3724
Daikin64Protocol::OffTimer
uint8_t OffTimer
Definition: ir_Daikin.h:600
kDaikin128Cool
const uint8_t kDaikin128Cool
Definition: ir_Daikin.h:518
kDaikin176ZeroSpace
const uint16_t kDaikin176ZeroSpace
Definition: ir_Daikin.h:444
Daikin64Protocol::ClockHours
uint8_t ClockHours
Definition: ir_Daikin.h:594
kDaikin128Heat
const uint8_t kDaikin128Heat
Definition: ir_Daikin.h:520
IRDaikin2::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:734
kDaikinSection3Length
const uint8_t kDaikinSection3Length
Definition: ir_Daikin.h:148
IRDaikin152::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Daikin.cpp:3239
IRDaikinESP::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:556
Daikin152Protocol::Powerful
uint8_t Powerful
Definition: ir_Daikin.h:555
IRDaikin2::getEye
bool getEye(void) const
Get the Eye (Sensor) mode status of the A/C.
Definition: ir_Daikin.cpp:1093
IRDaikin152::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:3251
kDaikin160Section1Length
const uint16_t kDaikin160Section1Length
Definition: ir_Daikin.h:392
IRDaikin216::on
void on(void)
Change the power setting to On.
Definition: ir_Daikin.cpp:1536
kDaikin128Sections
const uint16_t kDaikin128Sections
Definition: ir_Daikin.h:515
kDaikin176Sections
const uint16_t kDaikin176Sections
Definition: ir_Daikin.h:446
DaikinESPProtocol::SwingV
uint64_t SwingV
Definition: ir_Daikin.h:98
kDaikin128DefaultRepeat
const uint16_t kDaikin128DefaultRepeat
Definition: IRremoteESP8266.h:916
IRDaikin2::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Daikin.cpp:770
IRDaikin152::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:3273
IRDaikin152
Class for handling detailed Daikin 152-bit A/C messages.
Definition: ir_Daikin.h:1064
IRDaikin128::getEcono
bool getEcono(void) const
Get the Economical mode of the A/C.
Definition: ir_Daikin.cpp:2817
IRDaikin2::off
void off(void)
Change the power setting to Off.
Definition: ir_Daikin.cpp:785
IRDaikin128::setPowerful
void setPowerful(const bool on)
Set the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:2839
kDaikin128FanLow
const uint8_t kDaikin128FanLow
Definition: ir_Daikin.h:525
Daikin2Protocol::Light
uint64_t Light
Definition: ir_Daikin.h:190
kDaikinStateLength
const uint16_t kDaikinStateLength
Definition: IRremoteESP8266.h:901
IRDaikin64::setOnTime
void setOnTime(const uint16_t mins_since_midnight)
Set the On Timer time for the A/C unit.
Definition: ir_Daikin.cpp:3813
IRDaikin160
Class for handling detailed Daikin 160-bit A/C messages.
Definition: ir_Daikin.h:885
IRDaikinESP::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:719
kDaikin216Section2Length
const uint16_t kDaikin216Section2Length
Definition: ir_Daikin.h:344
IRDaikinESP::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:247
IRDaikin216::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Daikin.cpp:1524
kDaikin64FanMed
const uint8_t kDaikin64FanMed
Definition: ir_Daikin.h:628
IRDaikinESP::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:233
IRDaikin152::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:3203
kDaikin128FooterMark
const uint16_t kDaikin128FooterMark
Definition: ir_Daikin.h:514
Daikin152Protocol::Comfort
uint8_t Comfort
Definition: ir_Daikin.h:563
IRDaikin216::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:1714
IRDaikinESP::getOnTimerEnabled
bool getOnTimerEnabled(void) const
Get the enable status of the On Timer.
Definition: ir_Daikin.cpp:401
IRDaikinESP::disableOffTimer
void disableOffTimer(void)
Clear and disable the Off timer.
Definition: ir_Daikin.cpp:413
IRDaikin2::setPurify
void setPurify(const bool on)
Set the Purify (Filter) mode of the A/C.
Definition: ir_Daikin.cpp:1170
kDaikin2Gap
const uint16_t kDaikin2Gap
Definition: ir_Daikin.h:268
IRDaikin64::setSleep
void setSleep(const bool on)
Set the Sleep mode of the A/C.
Definition: ir_Daikin.cpp:3768
Daikin2Protocol::Clean
uint64_t Clean
Definition: ir_Daikin.h:197
kDaikin152LeaderBits
const uint8_t kDaikin152LeaderBits
Definition: ir_Daikin.h:575
IRDaikin128::setOnTimer
void setOnTimer(const uint16_t mins_since_midnight)
Set the On Timer time for the A/C unit.
Definition: ir_Daikin.cpp:2893
IRDaikin2::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:802
kDaikinDefaultRepeat
const uint16_t kDaikinDefaultRepeat
Definition: IRremoteESP8266.h:905
Daikin64Protocol::OnHalfHour
uint8_t OnHalfHour
Definition: ir_Daikin.h:596
kDaikin64DefaultRepeat
const uint16_t kDaikin64DefaultRepeat
Definition: IRremoteESP8266.h:910
IRDaikinESP::getWeeklyTimerEnable
bool getWeeklyTimerEnable(void) const
Get the enable status of the Weekly Timer.
Definition: ir_Daikin.cpp:467
IRDaikinESP::getOffTime
uint16_t getOffTime(void) const
Get the Off Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:420
kDaikin64LdrSpace
const uint16_t kDaikin64LdrSpace
Definition: ir_Daikin.h:617
kDaikin128Fan
const uint8_t kDaikin128Fan
Definition: ir_Daikin.h:519
DaikinESPProtocol::Sensor
uint8_t Sensor
Definition: ir_Daikin.h:116
Daikin2Protocol::Quiet
uint64_t Quiet
Definition: ir_Daikin.h:245
Daikin2Protocol::Power
uint64_t Power
Definition: ir_Daikin.h:221
IRDaikin2::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:744
IRDaikin64::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Daikin.cpp:3711
IRDaikin160::toCommonSwingV
static stdAc::swingv_t toCommonSwingV(const uint8_t setting)
Convert a native vertical swing postion to it's common equivalent.
Definition: ir_Daikin.cpp:2032
IRDaikin160::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Daikin.cpp:1970
Daikin160Protocol::Sum1
uint8_t Sum1
Definition: ir_Daikin.h:357
IRDaikin128::setOnTimerEnabled
void setOnTimerEnabled(const bool on)
Set the enable status of the On Timer.
Definition: ir_Daikin.cpp:2872
Daikin64Protocol::OnTimer
uint8_t OnTimer
Definition: ir_Daikin.h:597
IRDaikin176::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:2438
IRDaikin64::setRaw
void setRaw(const uint64_t new_state)
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:3600
IRDaikin176::on
void on(void)
Change the power setting to On.
Definition: ir_Daikin.cpp:2260
IRDaikin2::enableSleepTimer
void enableSleepTimer(const uint16_t sleeptime)
Set the enable status & time of the Sleep Timer.
Definition: ir_Daikin.cpp:1112
IRDaikin2::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:1254
IRDaikin64::validChecksum
static bool validChecksum(const uint64_t state)
Verify the checksum is valid for a given state.
Definition: ir_Daikin.cpp:3575
kDaikin2SwingVHigh
const uint8_t kDaikin2SwingVHigh
Definition: ir_Daikin.h:278
kDaikin160Section2Length
const uint16_t kDaikin160Section2Length
Definition: ir_Daikin.h:393
kDaikin128FanQuiet
const uint8_t kDaikin128FanQuiet
Definition: ir_Daikin.h:527
kDaikin216SwingOn
const uint8_t kDaikin216SwingOn
Definition: ir_Daikin.h:347
IRDaikinESP::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Daikin.cpp:255
Daikin128Protocol::OffTimer
uint8_t OffTimer
Definition: ir_Daikin.h:481
IRDaikinESP::enableOnTimer
void enableOnTimer(const uint16_t starttime)
Set the enable status & time of the On Timer.
Definition: ir_Daikin.cpp:382
IRDaikin152::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:1111
IRDaikinESP::on
void on(void)
Change the power setting to On.
Definition: ir_Daikin.cpp:201
IRDaikin2::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Daikin.cpp:1142
IRDaikin160::getSwingVertical
uint8_t getSwingVertical(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:2009
IRDaikin64::setSwingVertical
void setSwingVertical(const bool on)
Set the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:3756
IRDaikin2::getFreshAir
bool getFreshAir(void) const
Get the Fresh Air mode status of the A/C.
Definition: ir_Daikin.cpp:1057
IRDaikin152::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:3289
IRDaikinESP::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Daikin.cpp:514
IRDaikin128::getPowerful
bool getPowerful(void) const
Get the Powerful (Turbo) mode of the A/C.
Definition: ir_Daikin.cpp:2849
Daikin128Protocol::OnHalfHour
uint8_t OnHalfHour
Definition: ir_Daikin.h:476
Daikin160Protocol::Mode
uint8_t Mode
Definition: ir_Daikin.h:363
IRDaikinESP::getComfort
bool getComfort(void) const
Get the Comfort mode of the A/C.
Definition: ir_Daikin.cpp:376
Daikin176Protocol::SwingH
uint8_t SwingH
Definition: ir_Daikin.h:430
Daikin2Protocol::Beep
uint64_t Beep
Definition: ir_Daikin.h:191
Daikin176Protocol::Sum2
uint8_t Sum2
Definition: ir_Daikin.h:435
IRDaikin128::calcFirstChecksum
static uint8_t calcFirstChecksum(const uint8_t state[])
Definition: ir_Daikin.cpp:2592
IRDaikin216::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:1501
kDaikin64MinTemp
const uint8_t kDaikin64MinTemp
Definition: ir_Daikin.h:632
Daikin2Protocol::Fan
uint64_t Fan
Definition: ir_Daikin.h:234
kDaikin2SwingHRight
const uint8_t kDaikin2SwingHRight
Definition: ir_Daikin.h:289
IRDaikin160::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:1942
Daikin2Protocol::Power2
uint64_t Power2
Definition: ir_Daikin.h:187
IRDaikin2::getQuiet
bool getQuiet(void) const
Get the Quiet mode status of the A/C.
Definition: ir_Daikin.cpp:1150
IRDaikin128::setClock
void setClock(const uint16_t mins_since_midnight)
Set the clock on the A/C unit.
Definition: ir_Daikin.cpp:2855
IRDaikin160::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:1920
kDaikin64Gap
const uint16_t kDaikin64Gap
Definition: ir_Daikin.h:616
kDaikin128OneSpace
const uint16_t kDaikin128OneSpace
Definition: ir_Daikin.h:511
IRDaikin152::_
Daikin152Protocol _
Definition: ir_Daikin.h:1118
kDaikin152HdrMark
const uint16_t kDaikin152HdrMark
Definition: ir_Daikin.h:576
IRDaikin176::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:2379
DaikinESPProtocol::Sum1
uint64_t Sum1
Definition: ir_Daikin.h:71
kDaikin2SwingHSwing
const uint8_t kDaikin2SwingHSwing
Definition: ir_Daikin.h:292
IRDaikin128::setSwingVertical
void setSwingVertical(const bool on)
Set the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:2786
IRDaikinESP::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Daikin.cpp:228
IRDaikin160::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Daikin.cpp:1875
IRDaikinESP::enableOffTimer
void enableOffTimer(const uint16_t endtime)
Set the enable status & time of the Off Timer.
Definition: ir_Daikin.cpp:407
kDaikin160StateLength
const uint16_t kDaikin160StateLength
Definition: IRremoteESP8266.h:911
kDaikin216HdrMark
const uint16_t kDaikin216HdrMark
Definition: ir_Daikin.h:336
kDaikin2HdrSpace
const uint16_t kDaikin2HdrSpace
Definition: ir_Daikin.h:270
kDaikin176ModeButton
const uint8_t kDaikin176ModeButton
Definition: ir_Daikin.h:455
kDaikinSections
const uint8_t kDaikinSections
Definition: ir_Daikin.h:145
kDaikin2StateLength
const uint16_t kDaikin2StateLength
Definition: IRremoteESP8266.h:906
IRDaikin176::_saved_temp
uint8_t _saved_temp
The previously user requested temp value.
Definition: ir_Daikin.h:987
Daikin216Protocol::pad1
uint8_t pad1[5]
Definition: ir_Daikin.h:305
kDaikinByteChecksum1
const uint8_t kDaikinByteChecksum1
Definition: ir_Daikin.h:150
IRDaikin2::setEye
void setEye(const bool on)
Set the Eye (Sensor) mode of the A/C.
Definition: ir_Daikin.cpp:1087
Daikin152Protocol::pad2
uint8_t pad2[2]
Definition: ir_Daikin.h:560
IRDaikin152::setRaw
void setRaw(const uint8_t new_code[])
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:3221
kDaikin64FanHigh
const uint8_t kDaikin64FanHigh
Definition: ir_Daikin.h:629
IRDaikin160::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:1853
IRDaikin160::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:924
IRDaikin152::send
void send(const uint16_t repeat=kDaikin152DefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:3180
Daikin176Protocol::pad0
uint8_t pad0[6]
Definition: ir_Daikin.h:407
kDaikin64ChecksumSize
const uint8_t kDaikin64ChecksumSize
Definition: ir_Daikin.h:635
IRDaikin128::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:2590
IRDaikinESP::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:220
kDaikinFanMed
const uint8_t kDaikinFanMed
Definition: ir_Daikin.h:138
IRDaikin2::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Daikin.cpp:728
kDaikin64HdrSpace
const uint16_t kDaikin64HdrSpace
Definition: ir_Daikin.h:612
IRDaikin128::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:2622
IRDaikin216::send
void send(const uint16_t repeat=kDaikin216DefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:1477
IRDaikinESP::setRaw
void setRaw(const uint8_t new_code[], const uint16_t length=kDaikinStateLength)
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:190
Daikin128Protocol
Native representation of a Daikin128 A/C message.
Definition: ir_Daikin.h:462
IRDaikin216::setSwingVertical
void setSwingVertical(const bool on)
Set the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:1628
kDaikinSwingOff
const uint8_t kDaikinSwingOff
Definition: ir_Daikin.h:143
IRDaikin64::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:3636
DaikinESPProtocol::SwingH
uint64_t SwingH
Definition: ir_Daikin.h:101
kMarkExcess
const uint16_t kMarkExcess
Definition: IRrecv.h:24
kDaikin216SwingOff
const uint8_t kDaikin216SwingOff
Definition: ir_Daikin.h:348
Daikin2Protocol::EyeAuto
uint64_t EyeAuto
Definition: ir_Daikin.h:205
kDaikinAuto
const uint8_t kDaikinAuto
Definition: ir_Daikin.h:130
IRDaikin64::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Daikin.cpp:3697
kDaikin216BitMark
const uint16_t kDaikin216BitMark
Definition: ir_Daikin.h:338
IRDaikin176::toString
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Daikin.cpp:2465
kDaikinCool
const uint8_t kDaikinCool
Definition: ir_Daikin.h:132
IRDaikin128::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Daikin.h:1004
DaikinESPProtocol::OffTime
uint64_t OffTime
Definition: ir_Daikin.h:105
Daikin128Protocol::Temp
uint8_t Temp
Definition: ir_Daikin.h:483
Daikin64Protocol::ClockMins
uint8_t ClockMins
Definition: ir_Daikin.h:593
kDaikin160ZeroSpace
const uint16_t kDaikin160ZeroSpace
Definition: ir_Daikin.h:389
kDaikinFirstHeader64
const uint64_t kDaikinFirstHeader64
Definition: ir_Daikin.h:171
Daikin128Protocol::Econo
uint8_t Econo
Definition: ir_Daikin.h:495
kDaikin216Gap
const uint16_t kDaikin216Gap
Definition: ir_Daikin.h:341
IRDaikin64::_
Daikin64Protocol _
Definition: ir_Daikin.h:1183
Daikin216Protocol::Mode
uint8_t Mode
Definition: ir_Daikin.h:309
IRDaikin2::setBeep
void setBeep(const uint8_t beep)
Set the Beep mode of the A/C.
Definition: ir_Daikin.cpp:1009
IRDaikin64::getQuiet
bool getQuiet(void) const
Get the Quiet mode status of the A/C.
Definition: ir_Daikin.cpp:3740
kDaikinFanQuiet
const uint8_t kDaikinFanQuiet
Definition: ir_Daikin.h:141
DaikinESPProtocol::CurrentDay
uint64_t CurrentDay
Definition: ir_Daikin.h:77
IRDaikin152::getSensor
bool getSensor(void) const
Get the Sensor mode of the A/C.
Definition: ir_Daikin.cpp:3392
IRDaikin2::on
void on(void)
Change the power setting to On.
Definition: ir_Daikin.cpp:782
kDaikinMarkExcess
const uint16_t kDaikinMarkExcess
Definition: ir_Daikin.h:163
IRDaikin128::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Daikin.cpp:2705
Daikin160Protocol::Temp
uint8_t Temp
Definition: ir_Daikin.h:372
kDaikinTolerance
const uint8_t kDaikinTolerance
Definition: ir_Daikin.h:162
DaikinESPProtocol::OffTimer
uint64_t OffTimer
Definition: ir_Daikin.h:87
kDaikin2SwingVLow
const uint8_t kDaikin2SwingVLow
Definition: ir_Daikin.h:279
IRDaikin216::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:1686
IRDaikin2::getLight
uint8_t getLight(void) const
Get the Light status of the A/C.
Definition: ir_Daikin.cpp:1015
IRDaikinESP::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Daikin.cpp:501
IRDaikin2::setClean
void setClean(const bool on)
Set the Auto clean mode of the A/C.
Definition: ir_Daikin.cpp:1039
kDaikin216HdrSpace
const uint16_t kDaikin216HdrSpace
Definition: ir_Daikin.h:337
kDaikinSection2Length
const uint8_t kDaikinSection2Length
Definition: ir_Daikin.h:147
DaikinESPProtocol::Sum2
uint64_t Sum2
Definition: ir_Daikin.h:80
kDaikin176OneSpace
const uint16_t kDaikin176OneSpace
Definition: ir_Daikin.h:443
IRDaikin2::getEcono
bool getEcono(void) const
Get the Economical mode of the A/C.
Definition: ir_Daikin.cpp:1105
IRDaikin176::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:979
Daikin152Protocol::raw
uint8_t raw[kDaikin152StateLength]
The state of the IR remote.
Definition: ir_Daikin.h:535
Daikin152Protocol::Fan
uint8_t Fan
Definition: ir_Daikin.h:551
Daikin2Protocol::Purify
uint64_t Purify
Definition: ir_Daikin.h:254
kDaikinHdrMark
const uint16_t kDaikinHdrMark
Definition: ir_Daikin.h:164
Daikin152Protocol::SwingV
uint8_t SwingV
Definition: ir_Daikin.h:550
kDaikinLightOff
const uint8_t kDaikinLightOff
Definition: ir_Daikin.h:159
IRDaikin2::setEcono
void setEcono(const bool on)
Set the Economy mode of the A/C.
Definition: ir_Daikin.cpp:1099
IRDaikin160::convertSwingV
static uint8_t convertSwingV(const stdAc::swingv_t position)
Convert a stdAc::swingv_t enum into it's native setting.
Definition: ir_Daikin.cpp:2016
Daikin2Protocol::Eye
uint64_t Eye
Definition: ir_Daikin.h:251
IRDaikin64::getOnTime
uint16_t getOnTime(void) const
Get the On Timer time to be sent to the A/C unit.
Definition: ir_Daikin.cpp:3807
kDaikin2Tolerance
const uint8_t kDaikin2Tolerance
Definition: ir_Daikin.h:277
kDaikin160SwingVLow
const uint8_t kDaikin160SwingVLow
Definition: ir_Daikin.h:396
IRDaikin128::getQuiet
bool getQuiet(void) const
Get the Quiet mode status of the A/C.
Definition: ir_Daikin.cpp:2833
Daikin64Protocol::Power
uint8_t Power
Definition: ir_Daikin.h:605
kDaikin176DryFanTemp
const uint8_t kDaikin176DryFanTemp
Definition: ir_Daikin.h:456
IRDaikinESP::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Daikin.cpp:261
IRDaikin2::getBeep
uint8_t getBeep(void) const
Get the Beep status of the A/C.
Definition: ir_Daikin.cpp:1003
IRDaikin128::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Daikin.cpp:2773
DaikinESPProtocol::Powerful
uint64_t Powerful
Definition: ir_Daikin.h:107
kDaikin2OneSpace
const uint16_t kDaikin2OneSpace
Definition: ir_Daikin.h:272
kDaikin2SwingHWide
const uint8_t kDaikin2SwingHWide
Definition: ir_Daikin.h:285
IRDaikinESP::_
DaikinESPProtocol _
Definition: ir_Daikin.h:726
IRDaikin64::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:3551
IRDaikin64::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Daikin.cpp:3662
Daikin160Protocol::pad2
uint8_t pad2[2]
Definition: ir_Daikin.h:369
kDaikin128HdrMark
const uint16_t kDaikin128HdrMark
Definition: ir_Daikin.h:508
Daikin216Protocol::raw
uint8_t raw[kDaikin216StateLength]
The state of the IR remote.
Definition: ir_Daikin.h:298
IRDaikin64::getSleep
bool getSleep(void) const
Get the Sleep mode of the A/C.
Definition: ir_Daikin.cpp:3774
stdAc::state_t
Structure to hold a common A/C state.
Definition: IRsend.h:97
IRDaikinESP::getQuiet
bool getQuiet(void) const
Get the Quiet mode status of the A/C.
Definition: ir_Daikin.cpp:309
IRDaikin128::setRaw
void setRaw(const uint8_t new_code[])
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:2639
IRDaikin64::send
void send(const uint16_t repeat=kDaikin64DefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:3556
IRDaikin176::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Daikin.cpp:2239
IRDaikin216::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:1599
DaikinESPProtocol::Sum3
uint8_t Sum3
Definition: ir_Daikin.h:125
IRDaikin2::disableSleepTimer
void disableSleepTimer(void)
Disable the sleep timer.
Definition: ir_Daikin.cpp:1124
IRDaikin160::setRaw
void setRaw(const uint8_t new_code[])
Set the internal state from a valid code for this protocol.
Definition: ir_Daikin.cpp:1882
Daikin176Protocol::Fan
uint8_t Fan
Definition: ir_Daikin.h:431
IRDaikin2::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Daikin.cpp:796
IRDaikin128::setFan
void setFan(const uint8_t fan)
Set the speed of the fan.
Definition: ir_Daikin.cpp:2736
IRDaikinESP::stateReset
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Daikin.cpp:154
kDaikin128MaxTemp
const uint8_t kDaikin128MaxTemp
Definition: ir_Daikin.h:529
DaikinESPProtocol::Quiet
uint64_t Quiet
Definition: ir_Daikin.h:109
IRDaikin160::send
void send(const uint16_t repeat=kDaikin160DefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Daikin.cpp:1889
kDaikinMaxTemp
const uint8_t kDaikinMaxTemp
Definition: ir_Daikin.h:136
IRDaikin176
Class for handling detailed Daikin 176-bit A/C messages.
Definition: ir_Daikin.h:937
kDaikin128FanHigh
const uint8_t kDaikin128FanHigh
Definition: ir_Daikin.h:523
IRDaikin216::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Daikin.cpp:1549
kDaikin128FanAuto
const uint8_t kDaikin128FanAuto
Definition: ir_Daikin.h:522
IRDaikin216::_irsend
IRsend _irsend
instance of the IR send class
Definition: ir_Daikin.h:872
IRDaikin2::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Daikin.cpp:1183
Daikin2Protocol::CurrentTime
uint64_t CurrentTime
Definition: ir_Daikin.h:185
IRDaikinESP::getSwingVertical
bool getSwingVertical(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Daikin.cpp:283
kDaikin176Section1Length
const uint16_t kDaikin176Section1Length
Definition: ir_Daikin.h:447
Daikin64Protocol::raw
uint64_t raw
The state of the IR remote.
Definition: ir_Daikin.h:588
kDaikin2Freq
const uint16_t kDaikin2Freq
Definition: ir_Daikin.h:265
kDaikin128BitMark
const uint16_t kDaikin128BitMark
Definition: ir_Daikin.h:510
kDaikinMinTemp
const uint8_t kDaikinMinTemp
Definition: ir_Daikin.h:135
IRDaikin216::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:1584
IRDaikinESP::disableOnTimer
void disableOnTimer(void)
Clear and disable the On timer.
Definition: ir_Daikin.cpp:388
IRDaikin216::IRDaikin216
IRDaikin216(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class Constructor.
Definition: ir_Daikin.cpp:1467
DaikinESPProtocol::Temp
uint64_t Temp
Definition: ir_Daikin.h:93
IRDaikin2::getEyeAuto
bool getEyeAuto(void) const
Get the Automaitc Eye (Sensor) mode status of the A/C.
Definition: ir_Daikin.cpp:1081
IRDaikin2::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Daikin.cpp:824
kDaikinFanMin
const uint8_t kDaikinFanMin
Definition: ir_Daikin.h:137
IRDaikin152::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Daikin.cpp:3175
kDaikin128LeaderMark
const uint16_t kDaikin128LeaderMark
Definition: ir_Daikin.h:506
IRDaikin128::setSleep
void setSleep(const bool on)
Set the Sleep mode of the A/C.
Definition: ir_Daikin.cpp:2798
IRDaikinESP::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Daikin.cpp:528
kDaikin2SwingVCirculate
const uint8_t kDaikin2SwingVCirculate
Definition: ir_Daikin.h:283
Daikin128Protocol::ClockHours
uint8_t ClockHours
Definition: ir_Daikin.h:473
Daikin176Protocol::pad2
uint8_t pad2[2]
Definition: ir_Daikin.h:424
kDaikin2SwingHAuto
const uint8_t kDaikin2SwingHAuto
Definition: ir_Daikin.h:291
kDaikinLightDim
const uint8_t kDaikinLightDim
Definition: ir_Daikin.h:158
kDaikin176Fan
const uint8_t kDaikin176Fan
Definition: ir_Daikin.h:450
stdAc::opmode_t
opmode_t
Common A/C settings for A/C operating modes.
Definition: IRsend.h:46
Daikin152Protocol
Native representation of a Daikin152 A/C message.
Definition: ir_Daikin.h:534