IRremoteESP8266
ir_Daikin.h
Go to the documentation of this file.
1 // Copyright 2016 sillyfrog
2 // Copyright 2017 sillyfrog, crankyoldgit
3 // Copyright 2018-2020 crankyoldgit
4 // Copyright 2019 pasna (IRDaikin160 class / Daikin176 class)
5 
23 
24 // Supports:
25 // Brand: Daikin, Model: ARC433** remote (DAIKIN)
26 // Brand: Daikin, Model: ARC477A1 remote (DAIKIN2)
27 // Brand: Daikin, Model: FTXZ25NV1B A/C (DAIKIN2)
28 // Brand: Daikin, Model: FTXZ35NV1B A/C (DAIKIN2)
29 // Brand: Daikin, Model: FTXZ50NV1B A/C (DAIKIN2)
30 // Brand: Daikin, Model: ARC433B69 remote (DAIKIN216)
31 // Brand: Daikin, Model: ARC423A5 remote (DAIKIN160)
32 // Brand: Daikin, Model: FTE12HV2S A/C
33 // Brand: Daikin, Model: BRC4C153 remote (DAIKIN176)
34 // Brand: Daikin, Model: FFQ35B8V1B A/C (DAIKIN176)
35 // Brand: Daikin, Model: BRC4C151 remote (DAIKIN176)
36 // Brand: Daikin, Model: 17 Series A/C (DAIKIN128)
37 // Brand: Daikin, Model: FTXB12AXVJU A/C (DAIKIN128)
38 // Brand: Daikin, Model: FTXB09AXVJU A/C (DAIKIN128)
39 // Brand: Daikin, Model: BRC52B63 remote (DAIKIN128)
40 // Brand: Daikin, Model: ARC480A5 remote (DAIKIN152)
41 // Brand: Daikin, Model: FFN-C/FCN-F Series A/C (DAIKIN64)
42 // Brand: Daikin, Model: DGS01 remote (DAIKIN64)
43 // Brand: Daikin, Model: M Series A/C (DAIKIN)
44 // Brand: Daikin, Model: FTXM-M A/C (DAIKIN)
45 // Brand: Daikin, Model: ARC466A33 remote (DAIKIN)
46 
47 #ifndef IR_DAIKIN_H_
48 #define IR_DAIKIN_H_
49 
50 #ifndef UNIT_TEST
51 #include <Arduino.h>
52 #endif
53 #include "IRrecv.h"
54 #include "IRremoteESP8266.h"
55 #include "IRsend.h"
56 #ifdef UNIT_TEST
57 #include "IRsend_test.h"
58 #endif
59 
63  struct {
64  // Byte 0~5
65  uint64_t :48;
66  // Byte 6
67  uint64_t :4;
68  uint64_t Comfort :1;
69  uint64_t :3;
70  // Byte 7
71  uint64_t Sum1 :8; // checksum of the first part
72 
73  // Byte 8~12
74  uint64_t :40;
75  // Byte 13~14
76  uint64_t CurrentTime :11; // Current time, mins past midnight
77  uint64_t CurrentDay :3; // Day of the week (SUN=1, MON=2, ..., SAT=7)
78  uint64_t :2;
79  // Byte 15
80  uint64_t Sum2 :8; // checksum of the second part
81 
82  // Byte 16~20
83  uint64_t :40;
84  // Byte 21
85  uint64_t Power :1;
86  uint64_t OnTimer :1;
87  uint64_t OffTimer :1;
88  uint64_t :1; // always 1
89  uint64_t Mode :3;
90  uint64_t :1;
91  // Byte 22
92  uint64_t :1;
93  uint64_t Temp :7; // Temp should be between 10 - 32
94  // Byte 23
95  uint64_t :8;
96 
97  // Byte 24
98  uint64_t SwingV :4; // 0000 = off, 1111 = on
99  uint64_t Fan :4;
100  // Byte 25
101  uint64_t SwingH :4; // 0000 = off, 1111 = on
102  uint64_t :4;
103  // Byte 26~28
104  uint64_t OnTime :12; // timer mins past midnight
105  uint64_t OffTime :12; // timer mins past midnight
106  // Byte 29
107  uint64_t Powerful :1;
108  uint64_t :4;
109  uint64_t Quiet :1;
110  uint64_t :2;
111  // Byte 30~31
112  uint64_t :0;
113 
114  // Byte 32
115  uint8_t :1;
116  uint8_t Sensor :1;
117  uint8_t Econo :1;
118  uint8_t :4;
119  uint8_t WeeklyTimer :1;
120  // Byte 33
121  uint8_t :1;
122  uint8_t Mold :1;
123  uint8_t :6;
124  // Byte 34
125  uint8_t Sum3 :8; // checksum of the third part
126  };
127 };
128 
129 // Constants
130 const uint8_t kDaikinAuto = 0b000; // temp 25
131 const uint8_t kDaikinDry = 0b010; // temp 0xc0 = 96 degrees c
132 const uint8_t kDaikinCool = 0b011;
133 const uint8_t kDaikinHeat = 0b100; // temp 23
134 const uint8_t kDaikinFan = 0b110; // temp not shown, but 25
135 const uint8_t kDaikinMinTemp = 10; // Celsius
136 const uint8_t kDaikinMaxTemp = 32; // Celsius
137 const uint8_t kDaikinFanMin = 1;
138 const uint8_t kDaikinFanMed = 3;
139 const uint8_t kDaikinFanMax = 5;
140 const uint8_t kDaikinFanAuto = 0b1010; // 10 / 0xA
141 const uint8_t kDaikinFanQuiet = 0b1011; // 11 / 0xB
142 const uint8_t kDaikinSwingOn = 0b1111;
143 const uint8_t kDaikinSwingOff = 0b0000;
144 const uint16_t kDaikinHeaderLength = 5;
145 const uint8_t kDaikinSections = 3;
146 const uint8_t kDaikinSection1Length = 8;
147 const uint8_t kDaikinSection2Length = 8;
148 const uint8_t kDaikinSection3Length =
150 const uint8_t kDaikinByteChecksum1 = 7;
151 const uint8_t kDaikinByteChecksum2 = 15;
152 // const uint8_t kDaikinBitEye = 0b10000000;
153 const uint16_t kDaikinUnusedTime = 0x600;
154 const uint8_t kDaikinBeepQuiet = 1;
155 const uint8_t kDaikinBeepLoud = 2;
156 const uint8_t kDaikinBeepOff = 3;
157 const uint8_t kDaikinLightBright = 1;
158 const uint8_t kDaikinLightDim = 2;
159 const uint8_t kDaikinLightOff = 3;
162 const uint8_t kDaikinTolerance = 35;
164 const uint16_t kDaikinHdrMark = 3650; // kDaikinBitMark * 8
165 const uint16_t kDaikinHdrSpace = 1623; // kDaikinBitMark * 4
166 const uint16_t kDaikinBitMark = 428;
167 const uint16_t kDaikinZeroSpace = 428;
168 const uint16_t kDaikinOneSpace = 1280;
169 const uint16_t kDaikinGap = 29000;
170 // Note bits in each octet swapped so can be sent as a single value
171 const uint64_t kDaikinFirstHeader64 =
172  0b1101011100000000000000001100010100000000001001111101101000010001;
173 
176  struct{
177  uint8_t pad[3];
179  };
180  struct {
181  // Byte -3~4
182  uint64_t :64;
183 
184  // Byte 5~6
185  uint64_t CurrentTime :12;
186  uint64_t :3;
187  uint64_t Power2 :1;
188  // Byte 7
189  uint64_t :4;
190  uint64_t Light :2;
191  uint64_t Beep :2;
192  // Byte 8
193  uint64_t FreshAir :1;
194  uint64_t :2;
195  uint64_t Mold :1;
196  uint64_t :1;
197  uint64_t Clean :1;
198  uint64_t :1;
199  uint64_t FreshAirHigh :1;
200  // Byte 9~12
201  uint64_t :32;
202 
203  // Byte 13
204  uint64_t :7;
205  uint64_t EyeAuto :1;
206  // Byte 14~16
207  uint64_t :24;
208  // Byte 17
209  uint64_t SwingH :8;
210  // Byte 18
211  uint64_t SwingV :4;
212  uint64_t :4;
213  // Byte 19
214  uint64_t Sum1 :8;
215  // Byte 20
216  uint64_t :8;
217 
218  // Byte 21~24
219  uint64_t :32;
220  // Byte 25
221  uint64_t Power :1;
222  uint64_t OnTimer :1;
223  uint64_t OffTimer :1;
224  uint64_t :1;
225  uint64_t Mode :3;
226  uint64_t :1;
227  // Byte 26
228  uint64_t :1;
229  uint64_t Temp :7;
230  // Byte 27
231  uint64_t :8;
232  // Byte 28
233  uint64_t :4;
234  uint64_t Fan :4;
235 
236  // Byte 29
237  uint64_t :8;
238  // Byte 30~32
240  uint64_t OnTime :12;
241  uint64_t OffTime :12;
242  // Byte 33
243  uint64_t Powerful :1;
244  uint64_t :4;
245  uint64_t Quiet :1;
246  uint64_t :2;
247  // Byte 34~35
248  uint64_t :16;
249  // Byte 36
250  uint64_t :1;
251  uint64_t Eye :1;
252  uint64_t Econo :1;
253  uint64_t :1;
254  uint64_t Purify :1;
255  uint64_t SleepTimer :1;
256  uint64_t :2;
257 
258  // Byte 37
259  uint8_t :8;
260  // Byte 38
261  uint8_t Sum2 :8;
262  };
263 };
264 
265 const uint16_t kDaikin2Freq = 36700; // Modulation Frequency in Hz.
266 const uint16_t kDaikin2LeaderMark = 10024;
267 const uint16_t kDaikin2LeaderSpace = 25180;
269 const uint16_t kDaikin2HdrMark = 3500;
270 const uint16_t kDaikin2HdrSpace = 1728;
271 const uint16_t kDaikin2BitMark = 460;
272 const uint16_t kDaikin2OneSpace = 1270;
273 const uint16_t kDaikin2ZeroSpace = 420;
274 const uint16_t kDaikin2Sections = 2;
275 const uint16_t kDaikin2Section1Length = 20;
276 const uint16_t kDaikin2Section2Length = 19;
277 const uint8_t kDaikin2Tolerance = 5; // Extra percentage tolerance
278 const uint8_t kDaikin2SwingVHigh = 0x1;
279 const uint8_t kDaikin2SwingVLow = 0x6;
280 const uint8_t kDaikin2SwingVSwing = 0xF;
281 const uint8_t kDaikin2SwingVAuto = 0xE;
282 const uint8_t kDaikin2SwingVBreeze = 0xC;
283 const uint8_t kDaikin2SwingVCirculate = 0xD;
284 
285 const uint8_t kDaikin2SwingHWide = 0xA3;
286 const uint8_t kDaikin2SwingHLeftMax = 0xA8;
287 const uint8_t kDaikin2SwingHLeft = 0xA9;
288 const uint8_t kDaikin2SwingHMiddle = 0xAA;
289 const uint8_t kDaikin2SwingHRight = 0xAB;
290 const uint8_t kDaikin2SwingHRightMax = 0xAC;
291 const uint8_t kDaikin2SwingHAuto = 0xBE;
292 const uint8_t kDaikin2SwingHSwing = 0xBF;
293 
294 const uint8_t kDaikin2MinCoolTemp = 18; // Min temp (in C) when in Cool mode.
295 
299  struct {
300  // Byte 0~6
301  uint8_t pad0[7];
302  // Byte 7
303  uint8_t Sum1 :8;
304  // Byte 8~12
305  uint8_t pad1[5];
306  // Byte 13
307  uint8_t Power :1;
308  uint8_t :3;
309  uint8_t Mode :3;
310  uint8_t :1;
311  // Byte 14
312  uint8_t :1;
313  uint8_t Temp :6;
314  uint8_t :1;
315  // Byte 15
316  uint8_t :8;
317  // Byte 16
318  uint8_t SwingV :4;
319  uint8_t Fan :4;
320  // Byte 17
321  uint8_t SwingH :4;
322  uint8_t :4;
323  // Byte 18~20
324  uint8_t pad2[3];
325  // Byte 21
326  uint8_t Powerful :1;
327  uint8_t :0;
328  // Byte 22~25
329  uint8_t pad3[4];
330  // Byte 26
331  uint8_t Sum2 :8;
332  };
333 };
334 
335 const uint16_t kDaikin216Freq = 38000; // Modulation Frequency in Hz.
336 const uint16_t kDaikin216HdrMark = 3440;
337 const uint16_t kDaikin216HdrSpace = 1750;
338 const uint16_t kDaikin216BitMark = 420;
339 const uint16_t kDaikin216OneSpace = 1300;
340 const uint16_t kDaikin216ZeroSpace = 450;
341 const uint16_t kDaikin216Gap = 29650;
342 const uint16_t kDaikin216Sections = 2;
343 const uint16_t kDaikin216Section1Length = 8;
346 
347 const uint8_t kDaikin216SwingOn = 0b1111;
348 const uint8_t kDaikin216SwingOff = 0b0000;
349 
353  struct {
354  // Byte 0~5
355  uint8_t pad0[6];
356  // Byte 6
357  uint8_t Sum1 :8;
358  // Byte 7~11
359  uint8_t pad1[5];
360  // Byte 12
361  uint8_t Power :1;
362  uint8_t :3;
363  uint8_t Mode :3;
364  uint8_t :1;
365  // Byte 13
366  uint8_t :4;
367  uint8_t SwingV :4;
368  // Byte 14~15
369  uint8_t pad2[2];
370  // Byte 16
371  uint8_t :1;
372  uint8_t Temp :6;
373  uint8_t :1;
374  // Byte 17
375  uint8_t Fan :4;
376  uint8_t :4;
377  // Byte 18
378  uint8_t :8;
379  // Byte 19
380  uint8_t Sum2 :8;
381  };
382 };
383 
384 const uint16_t kDaikin160Freq = 38000; // Modulation Frequency in Hz.
385 const uint16_t kDaikin160HdrMark = 5000;
386 const uint16_t kDaikin160HdrSpace = 2145;
387 const uint16_t kDaikin160BitMark = 342;
388 const uint16_t kDaikin160OneSpace = 1786;
389 const uint16_t kDaikin160ZeroSpace = 700;
390 const uint16_t kDaikin160Gap = 29650;
391 const uint16_t kDaikin160Sections = 2;
392 const uint16_t kDaikin160Section1Length = 7;
395 const uint8_t kDaikin160SwingVLowest = 0x1;
396 const uint8_t kDaikin160SwingVLow = 0x2;
397 const uint8_t kDaikin160SwingVMiddle = 0x3;
398 const uint8_t kDaikin160SwingVHigh = 0x4;
399 const uint8_t kDaikin160SwingVHighest = 0x5;
400 const uint8_t kDaikin160SwingVAuto = 0xF;
401 
405  struct {
406  // Byte 0~5
407  uint8_t pad0[6];
408  // Byte 6
409  uint8_t Sum1 :8;
410  // Byte 7~11
411  uint8_t pad1[5];
412  // Byte 12
413  uint8_t :4;
414  uint8_t AltMode :3;
415  uint8_t :1;
416  // Byte 13
417  uint8_t ModeButton :8;
418  // Byte 14
419  uint8_t Power :1;
420  uint8_t :3;
421  uint8_t Mode :3;
422  uint8_t :1;
423  // Byte 15~16
424  uint8_t pad2[2];
425  // Byte 17
426  uint8_t :1;
427  uint8_t Temp :6;
428  uint8_t :1;
429  // Byte 18
430  uint8_t SwingH :4;
431  uint8_t Fan :4;
432  // Byte 19~20
433  uint8_t pad3[2];
434  // Byte 21
435  uint8_t Sum2 :8;
436  };
437 };
438 
439 const uint16_t kDaikin176Freq = 38000; // Modulation Frequency in Hz.
440 const uint16_t kDaikin176HdrMark = 5070;
441 const uint16_t kDaikin176HdrSpace = 2140;
442 const uint16_t kDaikin176BitMark = 370;
443 const uint16_t kDaikin176OneSpace = 1780;
444 const uint16_t kDaikin176ZeroSpace = 710;
445 const uint16_t kDaikin176Gap = 29410;
446 const uint16_t kDaikin176Sections = 2;
447 const uint16_t kDaikin176Section1Length = 7;
450 const uint8_t kDaikin176Fan = 0b000; // 0
451 const uint8_t kDaikin176Heat = 0b001; // 1
452 const uint8_t kDaikin176Cool = 0b010; // 2
453 const uint8_t kDaikin176Auto = 0b011; // 3
454 const uint8_t kDaikin176Dry = 0b111; // 7
455 const uint8_t kDaikin176ModeButton = 0b00000100;
456 const uint8_t kDaikin176DryFanTemp = 17; // Dry/Fan mode is always 17 Celsius.
457 const uint8_t kDaikin176FanMax = 3;
458 const uint8_t kDaikin176SwingHAuto = 0x5;
459 const uint8_t kDaikin176SwingHOff = 0x6;
460 
464  struct {
465  // Byte 0
466  uint8_t :8;
467  // Byte 1
468  uint8_t Mode :4;
469  uint8_t Fan :4;
470  // Byte 2
471  uint8_t ClockMins :8;
472  // Byte 3
473  uint8_t ClockHours :8;
474  // Byte 4
475  uint8_t OnHours :6;
476  uint8_t OnHalfHour :1;
477  uint8_t OnTimer :1;
478  // Byte 5
479  uint8_t OffHours :6;
480  uint8_t OffHalfHour :1;
481  uint8_t OffTimer :1;
482  // Byte 6
483  uint8_t Temp :8;
484  // Byte 7
485  uint8_t SwingV :1;
486  uint8_t Sleep :1;
487  uint8_t :1; // always 1
488  uint8_t Power :1;
489  uint8_t Sum1 :4;
490  // Byte 8
491  uint8_t :8;
492  // Byte 9
493  uint8_t Ceiling :1;
494  uint8_t :1;
495  uint8_t Econo :1;
496  uint8_t Wall :1;
497  uint8_t :4;
498  // Byte 10~14
499  uint8_t pad[5];
500  // Byte 15
501  uint8_t Sum2 :8;
502  };
503 };
504 
505 const uint16_t kDaikin128Freq = 38000; // Modulation Frequency in Hz.
506 const uint16_t kDaikin128LeaderMark = 9800;
507 const uint16_t kDaikin128LeaderSpace = 9800;
508 const uint16_t kDaikin128HdrMark = 4600;
509 const uint16_t kDaikin128HdrSpace = 2500;
510 const uint16_t kDaikin128BitMark = 350;
511 const uint16_t kDaikin128OneSpace = 954;
512 const uint16_t kDaikin128ZeroSpace = 382;
513 const uint16_t kDaikin128Gap = 20300;
515 const uint16_t kDaikin128Sections = 2;
516 const uint16_t kDaikin128SectionLength = 8;
517 const uint8_t kDaikin128Dry = 0b00000001;
518 const uint8_t kDaikin128Cool = 0b00000010;
519 const uint8_t kDaikin128Fan = 0b00000100;
520 const uint8_t kDaikin128Heat = 0b00001000;
521 const uint8_t kDaikin128Auto = 0b00001010;
522 const uint8_t kDaikin128FanAuto = 0b0001;
523 const uint8_t kDaikin128FanHigh = 0b0010;
524 const uint8_t kDaikin128FanMed = 0b0100;
525 const uint8_t kDaikin128FanLow = 0b1000;
526 const uint8_t kDaikin128FanPowerful = 0b0011;
527 const uint8_t kDaikin128FanQuiet = 0b1001;
528 const uint8_t kDaikin128MinTemp = 16; // C
529 const uint8_t kDaikin128MaxTemp = 30; // C
530 const uint8_t kDaikin128BitWall = 0b00001000;
531 const uint8_t kDaikin128BitCeiling = 0b00000001;
532 
536  struct {
537  // Byte 0~4
538  uint8_t pad0[5];
539  // Byte 5
540  uint8_t Power :1;
541  uint8_t :3;
542  uint8_t Mode :3;
543  uint8_t :1;
544  // Byte 6
545  uint8_t :1;
546  uint8_t Temp :7;
547  // Byte 7
548  uint8_t :8;
549  // Byte 8
550  uint8_t SwingV :4;
551  uint8_t Fan :4;
552  // Byte 9~12
553  uint8_t pad1[4];
554  // Byte 13
555  uint8_t Powerful :1;
556  uint8_t :4;
557  uint8_t Quiet :1;
558  uint8_t :2;
559  // Byte 14~15
560  uint8_t pad2[2];
561  // Byte 16
562  uint8_t :1;
563  uint8_t Comfort :1;
564  uint8_t Econo :1;
565  uint8_t Sensor :1;
566  uint8_t :4;
567  // Byte 17
568  uint8_t :8;
569  // Byte 18
570  uint8_t Sum :8;
571  };
572 };
573 
574 const uint16_t kDaikin152Freq = 38000; // Modulation Frequency in Hz.
575 const uint8_t kDaikin152LeaderBits = 5;
576 const uint16_t kDaikin152HdrMark = 3492;
577 const uint16_t kDaikin152HdrSpace = 1718;
578 const uint16_t kDaikin152BitMark = 433;
579 const uint16_t kDaikin152OneSpace = 1529;
581 const uint16_t kDaikin152Gap = 25182;
582 
583 const uint8_t kDaikin152DryTemp = kDaikin2MinCoolTemp; // Celsius
584 const uint8_t kDaikin152FanTemp = 0x60; // 96 Celsius
585 
588  uint64_t raw;
589  struct {
590  uint8_t :8;
591  uint8_t Mode :4;
592  uint8_t Fan :4;
593  uint8_t ClockMins :8;
594  uint8_t ClockHours :8;
595  uint8_t OnHours :6;
596  uint8_t OnHalfHour :1;
597  uint8_t OnTimer :1;
598  uint8_t OffHours :6;
599  uint8_t OffHalfHour :1;
600  uint8_t OffTimer :1;
601  uint8_t Temp :8;
602  uint8_t SwingV :1;
603  uint8_t Sleep :1;
604  uint8_t :1;
605  uint8_t Power :1;
606  uint8_t Sum :4;
607  };
608 };
609 
616 const uint16_t kDaikin64Gap = kDaikin128Gap;
618 const uint16_t kDaikin64Freq = kDaikin128Freq; // Hz.
619 const uint8_t kDaikin64Overhead = 9;
620 const int8_t kDaikin64ToleranceDelta = 5; // +5%
621 
622 const uint64_t kDaikin64KnownGoodState = 0x7C16161607204216;
623 const uint8_t kDaikin64Dry = 0b001;
624 const uint8_t kDaikin64Cool = 0b010;
625 const uint8_t kDaikin64Fan = 0b100;
626 const uint8_t kDaikin64FanAuto = 0b0001;
627 const uint8_t kDaikin64FanLow = 0b1000;
628 const uint8_t kDaikin64FanMed = 0b0100;
629 const uint8_t kDaikin64FanHigh = 0b0010;
630 const uint8_t kDaikin64FanQuiet = 0b1001;
631 const uint8_t kDaikin64FanTurbo = 0b0011;
632 const uint8_t kDaikin64MinTemp = 16; // Celsius
633 const uint8_t kDaikin64MaxTemp = 30; // Celsius
634 const uint8_t kDaikin64ChecksumOffset = 60;
635 const uint8_t kDaikin64ChecksumSize = 4; // Mask 0b1111 << 59
636 
637 // Legacy defines.
638 #define DAIKIN_COOL kDaikinCool
639 #define DAIKIN_HEAT kDaikinHeat
640 #define DAIKIN_FAN kDaikinFan
641 #define DAIKIN_AUTO kDaikinAuto
642 #define DAIKIN_DRY kDaikinDry
643 #define DAIKIN_MIN_TEMP kDaikinMinTemp
644 #define DAIKIN_MAX_TEMP kDaikinMaxTemp
645 #define DAIKIN_FAN_MIN kDaikinFanMin
646 #define DAIKIN_FAN_MAX kDaikinFanMax
647 #define DAIKIN_FAN_AUTO kDaikinFanAuto
648 #define DAIKIN_FAN_QUIET kDaikinFanQuiet
649 
651 class IRDaikinESP {
652  public:
653  explicit IRDaikinESP(const uint16_t pin, const bool inverted = false,
654  const bool use_modulation = true);
655 
656 #if SEND_DAIKIN
657  void send(const uint16_t repeat = kDaikinDefaultRepeat);
662  int8_t calibrate(void) { return _irsend.calibrate(); }
663 #endif
664  void begin(void);
665  void on(void);
666  void off(void);
667  void setPower(const bool on);
668  bool getPower(void) const;
669  void setTemp(const uint8_t temp);
670  uint8_t getTemp(void) const;
671  void setFan(const uint8_t fan);
672  uint8_t getFan(void) const;
673  void setMode(const uint8_t mode);
674  uint8_t getMode(void) const;
675  void setSwingVertical(const bool on);
676  bool getSwingVertical(void) const;
677  void setSwingHorizontal(const bool on);
678  bool getSwingHorizontal(void) const;
679  bool getQuiet(void) const;
680  void setQuiet(const bool on);
681  bool getPowerful(void) const;
682  void setPowerful(const bool on);
683  void setSensor(const bool on);
684  bool getSensor(void) const;
685  void setEcono(const bool on);
686  bool getEcono(void) const;
687  void setMold(const bool on);
688  bool getMold(void) const;
689  void setComfort(const bool on);
690  bool getComfort(void) const;
691  void enableOnTimer(const uint16_t starttime);
692  void disableOnTimer(void);
693  uint16_t getOnTime(void) const;
694  bool getOnTimerEnabled(void) const;
695  void enableOffTimer(const uint16_t endtime);
696  void disableOffTimer(void);
697  uint16_t getOffTime(void) const;
698  bool getOffTimerEnabled(void) const;
699  void setCurrentTime(const uint16_t mins_since_midnight);
700  uint16_t getCurrentTime(void) const;
701  void setCurrentDay(const uint8_t day_of_week);
702  uint8_t getCurrentDay(void) const;
703  void setWeeklyTimerEnable(const bool on);
704  bool getWeeklyTimerEnable(void) const;
705  uint8_t* getRaw(void);
706  void setRaw(const uint8_t new_code[],
707  const uint16_t length = kDaikinStateLength);
708  static bool validChecksum(uint8_t state[],
709  const uint16_t length = kDaikinStateLength);
710  static uint8_t convertMode(const stdAc::opmode_t mode);
711  static uint8_t convertFan(const stdAc::fanspeed_t speed);
712  static stdAc::opmode_t toCommonMode(const uint8_t mode);
713  static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
714  stdAc::state_t toCommon(void) const;
715  String toString(void) const;
716 #ifndef UNIT_TEST
717 
718  private:
720 #else
721  IRsendTest _irsend;
723 #endif
725  // # of bytes per command
727  void stateReset(void);
728  void checksum(void);
729 };
730 
733 class IRDaikin2 {
734  public:
735  explicit IRDaikin2(const uint16_t pin, const bool inverted = false,
736  const bool use_modulation = true);
737 
738 #if SEND_DAIKIN2
739  void send(const uint16_t repeat = kDaikin2DefaultRepeat);
744  int8_t calibrate(void) { return _irsend.calibrate(); }
745 #endif
746  void begin(void);
747  void on(void);
748  void off(void);
749  void setPower(const bool state);
750  bool getPower(void) const;
751  void setTemp(const uint8_t temp);
752  uint8_t getTemp(void) const;
753  void setFan(const uint8_t fan);
754  uint8_t getFan(void) const;
755  uint8_t getMode(void) const;
756  void setMode(const uint8_t mode);
757  void setSwingVertical(const uint8_t position);
758  uint8_t getSwingVertical(void) const;
759  void setSwingHorizontal(const uint8_t position);
760  uint8_t getSwingHorizontal(void) const;
761  bool getQuiet(void) const;
762  void setQuiet(const bool on);
763  bool getPowerful(void) const;
764  void setPowerful(const bool on);
765  void setEcono(const bool on);
766  bool getEcono(void) const;
767  void setEye(const bool on);
768  bool getEye(void) const;
769  void setEyeAuto(const bool on);
770  bool getEyeAuto(void) const;
771  void setPurify(const bool on);
772  bool getPurify(void) const;
773  void setMold(const bool on);
774  bool getMold(void) const;
775  void enableOnTimer(const uint16_t starttime);
776  void disableOnTimer(void);
777  uint16_t getOnTime(void) const;
778  bool getOnTimerEnabled(void) const;
779  void enableSleepTimer(const uint16_t sleeptime);
780  void disableSleepTimer(void);
781  uint16_t getSleepTime(void) const;
782  bool getSleepTimerEnabled(void) const;
783  void enableOffTimer(const uint16_t endtime);
784  void disableOffTimer(void);
785  uint16_t getOffTime(void) const;
786  bool getOffTimerEnabled(void) const;
787  void setCurrentTime(const uint16_t time);
788  uint16_t getCurrentTime(void) const;
789  void setBeep(const uint8_t beep);
790  uint8_t getBeep(void) const;
791  void setLight(const uint8_t light);
792  uint8_t getLight(void) const;
793  void setClean(const bool on);
794  bool getClean(void) const;
795  void setFreshAir(const bool on);
796  bool getFreshAir(void) const;
797  void setFreshAirHigh(const bool on);
798  bool getFreshAirHigh(void) const;
799  uint8_t* getRaw(void);
800  void setRaw(const uint8_t new_code[]);
801  static bool validChecksum(uint8_t state[],
802  const uint16_t length = kDaikin2StateLength);
803  static uint8_t convertMode(const stdAc::opmode_t mode);
804  static uint8_t convertFan(const stdAc::fanspeed_t speed);
805  static uint8_t convertSwingV(const stdAc::swingv_t position);
806  static uint8_t convertSwingH(const stdAc::swingh_t position);
807  static stdAc::swingv_t toCommonSwingV(const uint8_t setting);
808  static stdAc::swingh_t toCommonSwingH(const uint8_t setting);
809  stdAc::state_t toCommon(void) const;
810  String toString(void) const;
811 #ifndef UNIT_TEST
812 
813  private:
815 #else
816  IRsendTest _irsend;
818 #endif
820  // # of bytes per command
822  void stateReset(void);
823  void checksum(void);
824  void clearOnTimerFlag(void);
825  void clearSleepTimerFlag(void);
826 };
827 
829 class IRDaikin216 {
830  public:
831  explicit IRDaikin216(const uint16_t pin, const bool inverted = false,
832  const bool use_modulation = true);
833 
834 #if SEND_DAIKIN216
835  void send(const uint16_t repeat = kDaikin216DefaultRepeat);
840  int8_t calibrate(void) { return _irsend.calibrate(); }
841 #endif
842  void begin(void);
843  uint8_t* getRaw(void);
844  void setRaw(const uint8_t new_code[]);
845  static bool validChecksum(uint8_t state[],
846  const uint16_t length = kDaikin216StateLength);
847  void on(void);
848  void off(void);
849  void setPower(const bool on);
850  bool getPower(void) const;
851  void setTemp(const uint8_t temp);
852  uint8_t getTemp(void) const;
853  void setMode(const uint8_t mode);
854  uint8_t getMode(void) const;
855  static uint8_t convertMode(const stdAc::opmode_t mode);
856  void setFan(const uint8_t fan);
857  uint8_t getFan(void) const;
858  static uint8_t convertFan(const stdAc::fanspeed_t speed);
859  void setSwingVertical(const bool on);
860  bool getSwingVertical(void) const;
861  void setSwingHorizontal(const bool on);
862  bool getSwingHorizontal(void) const;
863  void setQuiet(const bool on);
864  bool getQuiet(void) const;
865  void setPowerful(const bool on);
866  bool getPowerful(void) const;
867  stdAc::state_t toCommon(void) const;
868  String toString(void) const;
869 #ifndef UNIT_TEST
870 
871  private:
873 #else
874  IRsendTest _irsend;
876 #endif
878  // # of bytes per command
880  void stateReset(void);
881  void checksum(void);
882 };
883 
885 class IRDaikin160 {
886  public:
887  explicit IRDaikin160(const uint16_t pin, const bool inverted = false,
888  const bool use_modulation = true);
889 
890 #if SEND_DAIKIN160
891  void send(const uint16_t repeat = kDaikin160DefaultRepeat);
896  int8_t calibrate(void) { return _irsend.calibrate(); }
897 #endif
898  void begin(void);
899  uint8_t* getRaw(void);
900  void setRaw(const uint8_t new_code[]);
901  static bool validChecksum(uint8_t state[],
902  const uint16_t length = kDaikin160StateLength);
903  void on(void);
904  void off(void);
905  void setPower(const bool on);
906  bool getPower(void) const;
907  void setTemp(const uint8_t temp);
908  uint8_t getTemp(void) const;
909  void setMode(const uint8_t mode);
910  uint8_t getMode(void) const;
911  static uint8_t convertMode(const stdAc::opmode_t mode);
912  void setFan(const uint8_t fan);
913  uint8_t getFan(void) const;
914  static uint8_t convertFan(const stdAc::fanspeed_t speed);
915  void setSwingVertical(const uint8_t position);
916  uint8_t getSwingVertical(void) const;
917  static uint8_t convertSwingV(const stdAc::swingv_t position);
918  static stdAc::swingv_t toCommonSwingV(const uint8_t setting);
919  stdAc::state_t toCommon(void) const;
920  String toString(void) const;
921 #ifndef UNIT_TEST
922 
923  private:
925 #else
926  IRsendTest _irsend;
928 #endif
930  // # of bytes per command
932  void stateReset(void);
933  void checksum(void);
934 };
935 
937 class IRDaikin176 {
938  public:
939  explicit IRDaikin176(const uint16_t pin, const bool inverted = false,
940  const bool use_modulation = true);
941 
942 #if SEND_DAIKIN176
943  void send(const uint16_t repeat = kDaikin176DefaultRepeat);
948  int8_t calibrate(void) { return _irsend.calibrate(); }
949 #endif
950  void begin(void);
951  uint8_t* getRaw(void);
952  void setRaw(const uint8_t new_code[]);
953  static bool validChecksum(uint8_t state[],
954  const uint16_t length = kDaikin176StateLength);
955  void on(void);
956  void off(void);
957  void setPower(const bool on);
958  bool getPower(void) const;
959  void setTemp(const uint8_t temp);
960  uint8_t getTemp(void) const;
961  void setMode(const uint8_t mode);
962  uint8_t getMode(void) const;
963  static uint8_t convertMode(const stdAc::opmode_t mode);
964  void setFan(const uint8_t fan);
965  uint8_t getFan(void) const;
966  static uint8_t convertFan(const stdAc::fanspeed_t speed);
967  void setSwingHorizontal(const uint8_t position);
968  uint8_t getSwingHorizontal(void) const;
969  static uint8_t convertSwingH(const stdAc::swingh_t position);
970  static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
971  static stdAc::opmode_t toCommonMode(const uint8_t mode);
972  static stdAc::swingh_t toCommonSwingH(const uint8_t setting);
973  stdAc::state_t toCommon(void) const;
974  String toString(void) const;
975 
976 #ifndef UNIT_TEST
977 
978  private:
980 #else
981  IRsendTest _irsend;
983 #endif
985  // # of bytes per command
987  uint8_t _saved_temp;
988  void stateReset(void);
989  void checksum(void);
990 };
991 
994 class IRDaikin128 {
995  public:
996  explicit IRDaikin128(const uint16_t pin, const bool inverted = false,
997  const bool use_modulation = true);
998 #if SEND_DAIKIN128
999  void send(const uint16_t repeat = kDaikin128DefaultRepeat);
1004  int8_t calibrate(void) { return _irsend.calibrate(); }
1005 #endif // SEND_DAIKIN128
1006  void begin(void);
1007  void setPowerToggle(const bool toggle);
1008  bool getPowerToggle(void) const;
1009  void setTemp(const uint8_t temp);
1010  uint8_t getTemp(void) const;
1011  void setFan(const uint8_t fan);
1012  uint8_t getFan(void) const;
1013  uint8_t getMode(void) const;
1014  void setMode(const uint8_t mode);
1015  void setSwingVertical(const bool on);
1016  bool getSwingVertical(void) const;
1017  bool getSleep(void) const;
1018  void setSleep(const bool on);
1019  bool getQuiet(void) const;
1020  void setQuiet(const bool on);
1021  bool getPowerful(void) const;
1022  void setPowerful(const bool on);
1023  void setEcono(const bool on);
1024  bool getEcono(void) const;
1025  void setOnTimer(const uint16_t mins_since_midnight);
1026  uint16_t getOnTimer(void) const;
1027  bool getOnTimerEnabled(void) const;
1028  void setOnTimerEnabled(const bool on);
1029  void setOffTimer(const uint16_t mins_since_midnight);
1030  uint16_t getOffTimer(void) const;
1031  bool getOffTimerEnabled(void) const;
1032  void setOffTimerEnabled(const bool on);
1033  void setClock(const uint16_t mins_since_midnight);
1034  uint16_t getClock(void) const;
1035  void setLightToggle(const uint8_t unit_type);
1036  uint8_t getLightToggle(void) const;
1037  uint8_t* getRaw(void);
1038  void setRaw(const uint8_t new_code[]);
1039  static bool validChecksum(uint8_t state[]);
1040  static uint8_t convertMode(const stdAc::opmode_t mode);
1041  static uint8_t convertFan(const stdAc::fanspeed_t speed);
1042  static stdAc::opmode_t toCommonMode(const uint8_t mode);
1043  static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
1044  stdAc::state_t toCommon(const stdAc::state_t *prev = NULL) const;
1045  String toString(void) const;
1046 #ifndef UNIT_TEST
1047 
1048  private:
1050 #else
1051  IRsendTest _irsend;
1053 #endif
1055  // # of bytes per command
1057  void stateReset(void);
1058  static uint8_t calcFirstChecksum(const uint8_t state[]);
1059  static uint8_t calcSecondChecksum(const uint8_t state[]);
1060  void checksum(void);
1061 };
1062 
1065  public:
1066  explicit IRDaikin152(const uint16_t pin, const bool inverted = false,
1067  const bool use_modulation = true);
1068 
1069 #if SEND_DAIKIN152
1070  void send(const uint16_t repeat = kDaikin152DefaultRepeat);
1075  int8_t calibrate(void) { return _irsend.calibrate(); }
1076 #endif
1077  void begin(void);
1078  uint8_t* getRaw(void);
1079  void setRaw(const uint8_t new_code[]);
1080  static bool validChecksum(uint8_t state[],
1081  const uint16_t length = kDaikin152StateLength);
1082  void on(void);
1083  void off(void);
1084  void setPower(const bool on);
1085  bool getPower(void) const;
1086  void setTemp(const uint8_t temp);
1087  uint8_t getTemp(void) const;
1088  void setFan(const uint8_t fan);
1089  uint8_t getFan(void) const;
1090  void setMode(const uint8_t mode);
1091  uint8_t getMode(void) const;
1092  void setSwingV(const bool on);
1093  bool getSwingV(void) const;
1094  bool getQuiet(void) const;
1095  void setQuiet(const bool on);
1096  bool getPowerful(void) const;
1097  void setPowerful(const bool on);
1098  void setSensor(const bool on);
1099  bool getSensor(void) const;
1100  void setEcono(const bool on);
1101  bool getEcono(void) const;
1102  void setComfort(const bool on);
1103  bool getComfort(void) const;
1104  static uint8_t convertMode(const stdAc::opmode_t mode);
1105  static uint8_t convertFan(const stdAc::fanspeed_t speed);
1106  stdAc::state_t toCommon(void) const;
1107  String toString(void) const;
1108 #ifndef UNIT_TEST
1109 
1110  private:
1112 #else
1113  IRsendTest _irsend;
1115 #endif
1117  // # of bytes per command
1119  void stateReset(void);
1120  void checksum(void);
1121 };
1122 
1124 class IRDaikin64 {
1125  public:
1126  explicit IRDaikin64(const uint16_t pin, const bool inverted = false,
1127  const bool use_modulation = true);
1128 
1129 #if SEND_DAIKIN64
1130  void send(const uint16_t repeat = kDaikin64DefaultRepeat);
1135  int8_t calibrate(void) { return _irsend.calibrate(); }
1136 #endif // SEND_DAIKIN64
1137  void begin(void);
1138  uint64_t getRaw(void);
1139  void setRaw(const uint64_t new_state);
1140  static uint8_t calcChecksum(const uint64_t state);
1141  static bool validChecksum(const uint64_t state);
1142  void setPowerToggle(const bool on);
1143  bool getPowerToggle(void) const;
1144  void setTemp(const uint8_t temp);
1145  uint8_t getTemp(void) const;
1146  void setFan(const uint8_t fan);
1147  uint8_t getFan(void) const;
1148  void setMode(const uint8_t mode);
1149  uint8_t getMode(void) const;
1150  void setSwingVertical(const bool on);
1151  bool getSwingVertical(void) const;
1152  void setSleep(const bool on);
1153  bool getSleep(void) const;
1154  bool getQuiet(void) const;
1155  void setQuiet(const bool on);
1156  bool getTurbo(void) const;
1157  void setTurbo(const bool on);
1158  void setClock(const uint16_t mins_since_midnight);
1159  uint16_t getClock(void) const;
1160  void setOnTimeEnabled(const bool on);
1161  bool getOnTimeEnabled(void) const;
1162  void setOnTime(const uint16_t mins_since_midnight);
1163  uint16_t getOnTime(void) const;
1164  void setOffTimeEnabled(const bool on);
1165  bool getOffTimeEnabled(void) const;
1166  void setOffTime(const uint16_t mins_since_midnight);
1167  uint16_t getOffTime(void) const;
1168  static uint8_t convertMode(const stdAc::opmode_t mode);
1169  static uint8_t convertFan(const stdAc::fanspeed_t speed);
1170  static stdAc::opmode_t toCommonMode(const uint8_t mode);
1171  static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
1172  stdAc::state_t toCommon(const stdAc::state_t *prev = NULL) const;
1173  String toString(void) const;
1174 #ifndef UNIT_TEST
1175 
1176  private:
1178 #else
1179  IRsendTest _irsend;
1181 #endif
1184  void stateReset(void);
1185  void checksum(void);
1186 };
1187 #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