IRremoteESP8266
ir_Mitsubishi.h
Go to the documentation of this file.
1 // Copyright 2009 Ken Shirriff
2 // Copyright 2017-2021 David Conran
3 // Copyright 2019 Mark Kuchel
4 
19 
20 // Supports:
21 // Brand: Mitsubishi, Model: TV (MITSUBISHI)
22 // Brand: Mitsubishi, Model: HC3000 Projector (MITSUBISHI2)
23 // Brand: Mitsubishi, Model: MS-GK24VA A/C
24 // Brand: Mitsubishi, Model: KM14A 0179213 remote
25 // Brand: Mitsubishi Electric, Model: PEAD-RP71JAA Ducted A/C (MITSUBISHI136)
26 // Brand: Mitsubishi Electric, Model: 001CP T7WE10714 remote (MITSUBISHI136)
27 // Brand: Mitsubishi Electric, Model: MSH-A24WV A/C (MITSUBISHI112)
28 // Brand: Mitsubishi Electric, Model: MUH-A24WV A/C (MITSUBISHI112)
29 // Brand: Mitsubishi Electric, Model: KPOA remote (MITSUBISHI112)
30 // Brand: Mitsubishi Electric, Model: MLZ-RX5017AS A/C (MITSUBISHI_AC)
31 // Brand: Mitsubishi Electric, Model: SG153/M21EDF426 remote (MITSUBISHI_AC)
32 // Brand: Mitsubishi Electric, Model: MSZ-GV2519 A/C (MITSUBISHI_AC)
33 // Brand: Mitsubishi Electric, Model: RH151/M21ED6426 remote (MITSUBISHI_AC)
34 // Brand: Mitsubishi Electric, Model: MSZ-SF25VE3 A/C (MITSUBISHI_AC)
35 // Brand: Mitsubishi Electric, Model: SG15D remote (MITSUBISHI_AC)
36 // Brand: Mitsubishi Electric, Model: MSZ-ZW4017S A/C (MITSUBISHI_AC)
37 // Brand: Mitsubishi Electric, Model: MSZ-FHnnVE A/C (MITSUBISHI_AC)
38 // Brand: Mitsubishi Electric, Model: RH151 remote (MITSUBISHI_AC)
39 
40 #ifndef IR_MITSUBISHI_H_
41 #define IR_MITSUBISHI_H_
42 
43 #define __STDC_LIMIT_MACROS
44 #include <stdint.h>
45 #ifndef UNIT_TEST
46 #include <Arduino.h>
47 #endif
48 #include "IRremoteESP8266.h"
49 #include "IRsend.h"
50 #ifdef UNIT_TEST
51 #include "IRsend_test.h"
52 #endif
53 
57  struct {
58  // Byte 0~4
59  uint8_t pad0[5];
60  // Byte 5
61  uint8_t :5;
62  uint8_t Power :1;
63  uint8_t :2;
64  // Byte 6
65  uint8_t :3;
66  uint8_t Mode :3;
67  uint8_t ISee : 1;
68  uint8_t :1;
69  // Byte 7
70  uint8_t Temp :4;
71  uint8_t HalfDegree :1;
72  uint8_t :3;
73  // Byte 8
74  uint8_t :4;
75  uint8_t WideVane:4; // SwingH
76  // Byte 9
77  uint8_t Fan :3;
78  uint8_t Vane :3; // SwingV or VaneRight
79  uint8_t VaneBit :1;
80  uint8_t FanAuto :1;
81  // Byte 10
82  uint8_t Clock :8;
83  // Byte 11
84  uint8_t StopClock :8;
85  // Byte 12
86  uint8_t StartClock:8;
87  // Byte 13
88  uint8_t Timer :3;
89  uint8_t WeeklyTimer :1;
90  uint8_t :4;
91  // Byte 14
92  uint8_t :5;
93  uint8_t Ecocool :1;
94  uint8_t :2;
95  // Byte 15
96  uint8_t DirectIndirect:2;
97  uint8_t AbsenseDetect :1;
98  uint8_t :2;
99  uint8_t iSave10C :1; // i-SAVE:mode=Heat & iSave=on AND 10C on remote
100  uint8_t :2;
101  // Byte 16
102  uint8_t :1;
103  uint8_t NaturalFlow :1;
104  uint8_t :1;
105  uint8_t VaneLeft :3; // SwingV(Left)
106  uint8_t :2;
107  // Byte 17
108  uint8_t Sum :8;
109  };
110 };
111 
112 // Constants
113 const uint8_t kMitsubishiAcAuto = 0b100;
114 const uint8_t kMitsubishiAcCool = 0b011;
115 const uint8_t kMitsubishiAcDry = 0b010;
116 const uint8_t kMitsubishiAcHeat = 0b001;
117 const uint8_t kMitsubishiAcFan = 0b111;
118 const uint8_t kMitsubishiAcFanAuto = 0;
119 const uint8_t kMitsubishiAcFanMax = 5;
120 const uint8_t kMitsubishiAcFanRealMax = 4;
121 const uint8_t kMitsubishiAcFanSilent = 6;
123 const float kMitsubishiAcMinTemp = 16.0; // 16C
124 const float kMitsubishiAcMaxTemp = 31.0; // 31C
125 const uint8_t kMitsubishiAcVaneAuto = 0b000; // Vanes move when AC wants to.
126 const uint8_t kMitsubishiAcVaneHighest = 0b001;
127 const uint8_t kMitsubishiAcVaneHigh = 0b010;
128 const uint8_t kMitsubishiAcVaneMiddle = 0b011;
129 const uint8_t kMitsubishiAcVaneLow = 0b100;
130 const uint8_t kMitsubishiAcVaneLowest = 0b101;
131 const uint8_t kMitsubishiAcVaneSwing = 0b111; // Vanes move all the time.
132 const uint8_t kMitsubishiAcVaneAutoMove = kMitsubishiAcVaneSwing; // Deprecated
133 const uint8_t kMitsubishiAcWideVaneLeftMax = 0b0001; // 1
134 const uint8_t kMitsubishiAcWideVaneLeft = 0b0010; // 2
135 const uint8_t kMitsubishiAcWideVaneMiddle = 0b0011; // 3
136 const uint8_t kMitsubishiAcWideVaneRight = 0b0100; // 4
137 const uint8_t kMitsubishiAcWideVaneRightMax = 0b0101; // 5
138 const uint8_t kMitsubishiAcWideVaneWide = 0b0110; // 6
139 const uint8_t kMitsubishiAcWideVaneAuto = 0b1000; // 8
140 const uint8_t kMitsubishiAcDirectOff = 0b00; // Vanes move when AC wants to.
141 const uint8_t kMitsubishiAcIndirect = 0b01;
142 const uint8_t kMitsubishiAcDirect = 0b11;
143 const uint8_t kMitsubishiAcNoTimer = 0;
144 const uint8_t kMitsubishiAcStartTimer = 5;
145 const uint8_t kMitsubishiAcStopTimer = 3;
146 const uint8_t kMitsubishiAcStartStopTimer = 7;
147 
151  struct {
152  // Byte 0~4
153  uint8_t pad[5];
154  // Byte 5
155  uint8_t :6;
156  uint8_t Power :1;
157  uint8_t :1;
158  // Byte 6
159  uint8_t Mode :3;
160  uint8_t :1;
161  uint8_t Temp :4;
162  // Byte 7
163  uint8_t :1;
164  uint8_t Fan :2;
165  uint8_t :1;
166  uint8_t SwingV :4;
167  };
168 };
169 
170 const uint8_t kMitsubishi136PowerByte = 5;
171 const uint8_t kMitsubishi136MinTemp = 17; // 17C
172 const uint8_t kMitsubishi136MaxTemp = 30; // 30C
173 const uint8_t kMitsubishi136Fan = 0b000;
174 const uint8_t kMitsubishi136Cool = 0b001;
175 const uint8_t kMitsubishi136Heat = 0b010;
176 const uint8_t kMitsubishi136Auto = 0b011;
177 const uint8_t kMitsubishi136Dry = 0b101;
178 const uint8_t kMitsubishi136SwingVLowest = 0b0000;
179 const uint8_t kMitsubishi136SwingVLow = 0b0001;
180 const uint8_t kMitsubishi136SwingVHigh = 0b0010;
181 const uint8_t kMitsubishi136SwingVHighest = 0b0011;
182 const uint8_t kMitsubishi136SwingVAuto = 0b1100;
183 const uint8_t kMitsubishi136FanMin = 0b00;
184 const uint8_t kMitsubishi136FanLow = 0b01;
185 const uint8_t kMitsubishi136FanMed = 0b10;
186 const uint8_t kMitsubishi136FanMax = 0b11;
188 
192  struct {
193  // Byte 0~4
194  uint8_t pad0[5];
195  // Byte 5
196  uint8_t :2;
197  uint8_t Power :1;
198  uint8_t :5;
199  // Byte 6
200  uint8_t Mode :3;
201  uint8_t :5;
202  // Byte 7
203  uint8_t Temp :4;
204  uint8_t :4;
205  // Byte 8
206  uint8_t Fan :3;
207  uint8_t SwingV :3;
208  uint8_t :2;
209  // Byte 9~11
210  uint8_t pad1[3];
211  // Byte 12
212  uint8_t :2;
213  uint8_t SwingH :4;
214  uint8_t :2;
215  // Byte 13
216  uint8_t Sum :8;
217  };
218 };
219 
220 const uint8_t kMitsubishi112Cool = 0b011;
221 const uint8_t kMitsubishi112Heat = 0b001;
222 const uint8_t kMitsubishi112Auto = 0b111;
223 const uint8_t kMitsubishi112Dry = 0b010;
224 
225 const uint8_t kMitsubishi112MinTemp = 16; // 16C
226 const uint8_t kMitsubishi112MaxTemp = 31; // 31C
227 
228 const uint8_t kMitsubishi112FanMin = 0b010;
229 const uint8_t kMitsubishi112FanLow = 0b011;
230 const uint8_t kMitsubishi112FanMed = 0b101;
231 const uint8_t kMitsubishi112FanMax = 0b000;
233 const uint8_t kMitsubishi112SwingVLowest = 0b101;
234 const uint8_t kMitsubishi112SwingVLow = 0b100;
235 const uint8_t kMitsubishi112SwingVMiddle = 0b011;
236 const uint8_t kMitsubishi112SwingVHigh = 0b010;
237 const uint8_t kMitsubishi112SwingVHighest = 0b001;
238 const uint8_t kMitsubishi112SwingVAuto = 0b111;
239 
240 const uint8_t kMitsubishi112SwingHLeftMax = 0b0001;
241 const uint8_t kMitsubishi112SwingHLeft = 0b0010;
242 const uint8_t kMitsubishi112SwingHMiddle = 0b0011;
243 const uint8_t kMitsubishi112SwingHRight = 0b0100;
244 const uint8_t kMitsubishi112SwingHRightMax = 0b0101;
245 const uint8_t kMitsubishi112SwingHWide = 0b1000;
246 const uint8_t kMitsubishi112SwingHAuto = 0b1100;
247 
248 // Legacy defines (Deprecated)
249 #define MITSUBISHI_AC_VANE_AUTO_MOVE kMitsubishiAcVaneAutoMove
250 #define MITSUBISHI_AC_VANE_AUTO kMitsubishiAcVaneAuto
251 #define MITSUBISHI_AC_MIN_TEMP kMitsubishiAcMinTemp
252 #define MITSUBISHI_AC_MAX_TEMP kMitsubishiAcMaxTemp
253 #define MITSUBISHI_AC_HEAT kMitsubishiAcHeat
254 #define MITSUBISHI_AC_FAN_SILENT kMitsubishiAcFanSilent
255 #define MITSUBISHI_AC_FAN_REAL_MAX kMitsubishiAcFanRealMax
256 #define MITSUBISHI_AC_FAN_MAX kMitsubishiAcFanMax
257 #define MITSUBISHI_AC_FAN_AUTO kMitsubishiAcFanAuto
258 #define MITSUBISHI_AC_DRY kMitsubishiAcDry
259 #define MITSUBISHI_AC_COOL kMitsubishiAcCool
260 #define MITSUBISHI_AC_AUTO kMitsubishiAcAuto
261 
262 
267  public:
268  explicit IRMitsubishiAC(const uint16_t pin, const bool inverted = false,
269  const bool use_modulation = true);
270  void stateReset(void);
271  static bool validChecksum(const uint8_t* data);
272 #if SEND_MITSUBISHI_AC
273  void send(const uint16_t repeat = kMitsubishiACMinRepeat);
278  int8_t calibrate(void) { return _irsend.calibrate(); }
279 #endif // SEND_MITSUBISHI_AC
280  void begin(void);
281  void on(void);
282  void off(void);
283  void setPower(const bool on);
284  bool getPower(void) const;
285  void setTemp(const float degrees);
286  float getTemp(void) const;
287  void setFan(const uint8_t speed);
288  uint8_t getFan(void) const;
289  void setMode(const uint8_t mode);
290  uint8_t getMode(void) const;
291  void setISave10C(const bool state);
292  bool getISave10C(void) const;
293  void setISee(const bool state);
294  bool getISee(void) const;
295  void setDirectIndirect(const uint8_t position);
296  uint8_t getDirectIndirect(void) const;
297  void setEcocool(const bool state);
298  bool getEcocool(void) const;
299  void setAbsenseDetect(const bool state);
300  bool getAbsenseDetect(void) const;
301  void setNaturalFlow(const bool state);
302  bool getNaturalFlow(void) const;
303  void setVane(const uint8_t position); // controls RIGHT vane on some models
304  uint8_t getVane(void) const;
305  void setVaneLeft(const uint8_t position);
306  uint8_t getVaneLeft(void) const;
307  void setWideVane(const uint8_t position);
308  uint8_t getWideVane(void) const;
309  uint8_t* getRaw(void);
310  void setRaw(const uint8_t* data);
311  uint8_t getClock(void) const;
312  void setClock(const uint8_t clock);
313  uint8_t getStartClock(void) const;
314  void setStartClock(const uint8_t clock);
315  uint8_t getStopClock(void) const;
316  void setStopClock(const uint8_t clock);
317  uint8_t getTimer(void) const;
318  void setTimer(const uint8_t timer);
319  bool getWeeklyTimerEnabled(void) const;
320  void setWeeklyTimerEnabled(const bool on);
321  static uint8_t convertMode(const stdAc::opmode_t mode);
322  static uint8_t convertFan(const stdAc::fanspeed_t speed);
323  static uint8_t convertSwingV(const stdAc::swingv_t position);
324  static uint8_t convertSwingH(const stdAc::swingh_t position);
325  static stdAc::opmode_t toCommonMode(const uint8_t mode);
326  static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
327  static stdAc::swingv_t toCommonSwingV(const uint8_t pos);
328  static stdAc::swingh_t toCommonSwingH(const uint8_t pos);
329  stdAc::state_t toCommon(void) const;
330  String toString(void) const;
331 #ifndef UNIT_TEST
332 
333  private:
335 #else // UNIT_TEST
336  IRsendTest _irsend;
338 #endif // UNIT_TEST
341  void checksum(void);
342  static uint8_t calculateChecksum(const uint8_t* data);
343 };
344 
347  public:
348  explicit IRMitsubishi136(const uint16_t pin, const bool inverted = false,
349  const bool use_modulation = true);
350  void stateReset(void);
351 #if SEND_MITSUBISHI136
352  void send(const uint16_t repeat = kMitsubishi136MinRepeat);
357  int8_t calibrate(void) { return _irsend.calibrate(); }
358 #endif // SEND_MITSUBISHI136
359  void begin(void);
360  static bool validChecksum(const uint8_t* data,
361  const uint16_t len = kMitsubishi136StateLength);
362  void on(void);
363  void off(void);
364  void setPower(const bool on);
365  bool getPower(void) const;
366  void setTemp(const uint8_t degrees);
367  uint8_t getTemp(void) const;
368  void setFan(const uint8_t speed);
369  uint8_t getFan(void) const;
370  void setMode(const uint8_t mode);
371  uint8_t getMode(void) const;
372  void setSwingV(const uint8_t position);
373  uint8_t getSwingV(void) const;
374  void setQuiet(const bool on);
375  bool getQuiet(void) const;
376  uint8_t* getRaw(void);
377  void setRaw(const uint8_t* data);
378  static uint8_t convertMode(const stdAc::opmode_t mode);
379  static uint8_t convertFan(const stdAc::fanspeed_t speed);
380  static uint8_t convertSwingV(const stdAc::swingv_t position);
381  static stdAc::opmode_t toCommonMode(const uint8_t mode);
382  static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
383  static stdAc::swingv_t toCommonSwingV(const uint8_t pos);
384  stdAc::state_t toCommon(void) const;
385  String toString(void) const;
386 #ifndef UNIT_TEST
387 
388  private:
390 #else // UNIT_TEST
391  IRsendTest _irsend;
393 #endif // UNIT_TEST
396  void checksum(void);
397 };
398 
401  public:
402  explicit IRMitsubishi112(const uint16_t pin, const bool inverted = false,
403  const bool use_modulation = true);
404  void stateReset(void);
405 #if SEND_MITSUBISHI112
406  void send(const uint16_t repeat = kMitsubishi112MinRepeat);
411  int8_t calibrate(void) { return _irsend.calibrate(); }
412 #endif // SEND_MITSUBISHI112
413  void begin(void);
414  void on(void);
415  void off(void);
416  void setPower(const bool on);
417  bool getPower(void) const;
418  void setTemp(const uint8_t degrees);
419  uint8_t getTemp(void) const;
420  void setFan(const uint8_t speed);
421  uint8_t getFan(void) const;
422  void setMode(const uint8_t mode);
423  uint8_t getMode(void) const;
424  void setSwingV(const uint8_t position);
425  uint8_t getSwingV(void) const;
426  void setSwingH(const uint8_t position);
427  uint8_t getSwingH(void) const;
428  void setQuiet(const bool on);
429  bool getQuiet(void) const;
430  uint8_t* getRaw(void);
431  void setRaw(const uint8_t* data);
432  static uint8_t convertMode(const stdAc::opmode_t mode);
433  static uint8_t convertFan(const stdAc::fanspeed_t speed);
434  static uint8_t convertSwingV(const stdAc::swingv_t position);
435  static uint8_t convertSwingH(const stdAc::swingh_t position);
436  static stdAc::opmode_t toCommonMode(const uint8_t mode);
437  static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
438  static stdAc::swingv_t toCommonSwingV(const uint8_t pos);
439  static stdAc::swingh_t toCommonSwingH(const uint8_t pos);
440  stdAc::state_t toCommon(void) const;
441  String toString(void) const;
442 #ifndef UNIT_TEST
443 
444  private:
446 #else // UNIT_TEST
447  IRsendTest _irsend;
449 #endif // UNIT_TEST
452  void checksum(void);
453 };
454 
455 #endif // IR_MITSUBISHI_H_
kMitsubishi112SwingVMiddle
const uint8_t kMitsubishi112SwingVMiddle
Definition: ir_Mitsubishi.h:235
Mitsubishi144Protocol::VaneLeft
uint8_t VaneLeft
Definition: ir_Mitsubishi.h:105
Mitsubishi112Protocol::SwingV
uint8_t SwingV
Definition: ir_Mitsubishi.h:207
IRMitsubishi112::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Mitsubishi.cpp:1467
kMitsubishi112SwingVLowest
const uint8_t kMitsubishi112SwingVLowest
Definition: ir_Mitsubishi.h:233
kMitsubishi112SwingVAuto
const uint8_t kMitsubishi112SwingVAuto
Definition: ir_Mitsubishi.h:238
Mitsubishi112Protocol::pad1
uint8_t pad1[3]
Definition: ir_Mitsubishi.h:210
kMitsubishi112FanQuiet
const uint8_t kMitsubishi112FanQuiet
Definition: ir_Mitsubishi.h:232
Mitsubishi144Protocol::Timer
uint8_t Timer
Definition: ir_Mitsubishi.h:88
IRMitsubishi112::stateReset
void stateReset(void)
Reset the state of the remote to a known good state/sequence.
Definition: ir_Mitsubishi.cpp:1370
kMitsubishi112SwingHLeft
const uint8_t kMitsubishi112SwingHLeft
Definition: ir_Mitsubishi.h:241
IRMitsubishi112::getQuiet
bool getQuiet(void) const
Get the Quiet mode of the A/C.
Definition: ir_Mitsubishi.cpp:1545
IRMitsubishiAC::getVane
uint8_t getVane(void) const
Get the Vane (Vertical Swing) mode of the A/C.
Definition: ir_Mitsubishi.cpp:567
Mitsubishi144Protocol::StartClock
uint8_t StartClock
Definition: ir_Mitsubishi.h:86
kMitsubishi112FanMed
const uint8_t kMitsubishi112FanMed
Definition: ir_Mitsubishi.h:230
kMitsubishiACStateLength
const uint16_t kMitsubishiACStateLength
Definition: IRremoteESP8266.h:1183
Mitsubishi112Protocol::Fan
uint8_t Fan
Definition: ir_Mitsubishi.h:206
kMitsubishiAcHeat
const uint8_t kMitsubishiAcHeat
Definition: ir_Mitsubishi.h:116
kMitsubishiAcMinTemp
const float kMitsubishiAcMinTemp
Definition: ir_Mitsubishi.h:123
kMitsubishiAcAuto
const uint8_t kMitsubishiAcAuto
Definition: ir_Mitsubishi.h:113
IRMitsubishi136::_
Mitsubishi136Protocol _
Definition: ir_Mitsubishi.h:395
IRMitsubishiAC::getNaturalFlow
bool getNaturalFlow(void) const
Get the Natural Flow mode of the A/C.
Definition: ir_Mitsubishi.cpp:550
IRMitsubishi136::toString
String toString(void) const
Convert the internal state into a human readable string.
Definition: ir_Mitsubishi.cpp:1223
IRMitsubishi112::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Mitsubishi.cpp:1383
IRMitsubishi136::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Mitsubishi.cpp:1040
IRMitsubishi112::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Mitsubishi.cpp:1455
kMitsubishi112SwingHRight
const uint8_t kMitsubishi112SwingHRight
Definition: ir_Mitsubishi.h:243
kMitsubishiAcFanSilent
const uint8_t kMitsubishiAcFanSilent
Definition: ir_Mitsubishi.h:121
IRMitsubishi112::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Mitsubishi.h:411
Mitsubishi112Protocol::SwingH
uint8_t SwingH
Definition: ir_Mitsubishi.h:213
kMitsubishiAcVaneAuto
const uint8_t kMitsubishiAcVaneAuto
Definition: ir_Mitsubishi.h:125
kMitsubishi112SwingHRightMax
const uint8_t kMitsubishi112SwingHRightMax
Definition: ir_Mitsubishi.h:244
IRMitsubishi136::stateReset
void stateReset(void)
Reset the state of the remote to a known good state/sequence.
Definition: ir_Mitsubishi.cpp:956
IRMitsubishiAC::getClock
uint8_t getClock(void) const
Get the clock time of the A/C unit.
Definition: ir_Mitsubishi.cpp:596
IRMitsubishi136::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Mitsubishi.cpp:989
IRMitsubishi112::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Mitsubishi.cpp:1662
kMitsubishi136MinRepeat
const uint16_t kMitsubishi136MinRepeat
Definition: IRremoteESP8266.h:1188
stdAc::swingv_t
swingv_t
Common A/C settings for Vertical Swing.
Definition: IRsend.h:70
IRMitsubishiAC::setAbsenseDetect
void setAbsenseDetect(const bool state)
Set the requested Absense Detect mode.
Definition: ir_Mitsubishi.cpp:516
IRMitsubishi112::getTemp
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Mitsubishi.cpp:1434
kMitsubishiAcVaneHighest
const uint8_t kMitsubishiAcVaneHighest
Definition: ir_Mitsubishi.h:126
kMitsubishiAcWideVaneRightMax
const uint8_t kMitsubishiAcWideVaneRightMax
Definition: ir_Mitsubishi.h:137
kMitsubishiAcWideVaneRight
const uint8_t kMitsubishiAcWideVaneRight
Definition: ir_Mitsubishi.h:136
IRMitsubishiAC::stateReset
void stateReset(void)
Reset the state of the remote to a known good state/sequence.
Definition: ir_Mitsubishi.cpp:320
IRMitsubishiAC::setVane
void setVane(const uint8_t position)
Set the requested vane (Vertical Swing) operation mode of the a/c unit.
Definition: ir_Mitsubishi.cpp:558
kMitsubishi136FanMed
const uint8_t kMitsubishi136FanMed
Definition: ir_Mitsubishi.h:185
Mitsubishi136Protocol::raw
uint8_t raw[kMitsubishi136StateLength]
The state in code form.
Definition: ir_Mitsubishi.h:150
kMitsubishi136PowerByte
const uint8_t kMitsubishi136PowerByte
Definition: ir_Mitsubishi.h:170
IRMitsubishi112::getSwingH
uint8_t getSwingH(void) const
Get the Horizontal Swing mode of the A/C.
Definition: ir_Mitsubishi.cpp:1528
stdAc::fanspeed_t
fanspeed_t
Common A/C settings for Fan Speeds.
Definition: IRsend.h:58
IRMitsubishiAC::getDirectIndirect
uint8_t getDirectIndirect(void) const
Get the Direct/Indirect mode of the A/C.
Definition: ir_Mitsubishi.cpp:538
IRMitsubishiAC::setStopClock
void setStopClock(const uint8_t clock)
Set the desired stop time of the A/C unit.
Definition: ir_Mitsubishi.cpp:625
kMitsubishi136MaxTemp
const uint8_t kMitsubishi136MaxTemp
Definition: ir_Mitsubishi.h:172
IRMitsubishiAC::getTemp
float getTemp(void) const
Get the current temperature setting.
Definition: ir_Mitsubishi.cpp:409
Mitsubishi112Protocol::Temp
uint8_t Temp
Definition: ir_Mitsubishi.h:203
kMitsubishiAcDirect
const uint8_t kMitsubishiAcDirect
Definition: ir_Mitsubishi.h:142
IRMitsubishi136::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Mitsubishi.cpp:1119
IRMitsubishiAC::setRaw
void setRaw(const uint8_t *data)
Set the internal state from a valid code for this protocol.
Definition: ir_Mitsubishi.cpp:349
IRMitsubishi136::setFan
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition: ir_Mitsubishi.cpp:1046
IRMitsubishiAC::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Mitsubishi.cpp:386
kMitsubishi112MinRepeat
const uint16_t kMitsubishi112MinRepeat
Definition: IRremoteESP8266.h:1191
IRMitsubishi112::setRaw
void setRaw(const uint8_t *data)
Set the internal state from a valid code for this protocol.
Definition: ir_Mitsubishi.cpp:1402
IRMitsubishiAC::setTemp
void setTemp(const float degrees)
Set the temperature.
Definition: ir_Mitsubishi.cpp:393
IRMitsubishiAC::setStartClock
void setStartClock(const uint8_t clock)
Set the desired start time of the A/C unit.
Definition: ir_Mitsubishi.cpp:613
kMitsubishi112FanLow
const uint8_t kMitsubishi112FanLow
Definition: ir_Mitsubishi.h:229
IRMitsubishi112::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Mitsubishi.cpp:1621
IRMitsubishiAC::checksum
void checksum(void)
Calculate and set the checksum values for the internal state.
Definition: ir_Mitsubishi.cpp:354
IRMitsubishi136::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Mitsubishi.cpp:1052
kMitsubishi112Heat
const uint8_t kMitsubishi112Heat
Definition: ir_Mitsubishi.h:221
kMitsubishi112SwingHLeftMax
const uint8_t kMitsubishi112SwingHLeftMax
Definition: ir_Mitsubishi.h:240
IRMitsubishiAC::validChecksum
static bool validChecksum(const uint8_t *data)
Verify the checksum is valid for a given state.
Definition: ir_Mitsubishi.cpp:361
IRMitsubishi136::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Mitsubishi.h:357
kMitsubishi112Cool
const uint8_t kMitsubishi112Cool
Definition: ir_Mitsubishi.h:220
IRMitsubishi136::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Mitsubishi.cpp:1104
IRsend.h
IRMitsubishi112::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Mitsubishi.cpp:1420
Mitsubishi144Protocol::StopClock
uint8_t StopClock
Definition: ir_Mitsubishi.h:84
kMitsubishiAcNoTimer
const uint8_t kMitsubishiAcNoTimer
Definition: ir_Mitsubishi.h:143
IRMitsubishiAC::getVaneLeft
uint8_t getVaneLeft(void) const
Get the Left Vane (Vertical Swing) mode of the A/C.
Definition: ir_Mitsubishi.cpp:579
IRMitsubishi112::send
void send(const uint16_t repeat=kMitsubishi112MinRepeat)
Send the current internal state as an IR message.
Definition: ir_Mitsubishi.cpp:1388
IRMitsubishiAC::setISave10C
void setISave10C(const bool state)
Set the iSave10C (i-SAVE) mode of the A/C.
Definition: ir_Mitsubishi.cpp:478
IRMitsubishi112::getSwingV
uint8_t getSwingV(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Mitsubishi.cpp:1502
IRMitsubishiAC::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Mitsubishi.cpp:380
IRMitsubishi112::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Mitsubishi.cpp:1609
IRMitsubishiAC::calculateChecksum
static uint8_t calculateChecksum(const uint8_t *data)
Calculate the checksum for a given state.
Definition: ir_Mitsubishi.cpp:368
IRsend
Class for sending all basic IR protocols.
Definition: IRsend.h:209
Mitsubishi144Protocol::Temp
uint8_t Temp
Definition: ir_Mitsubishi.h:70
kMitsubishiAcVaneLowest
const uint8_t kMitsubishiAcVaneLowest
Definition: ir_Mitsubishi.h:130
IRsend::calibrate
int8_t calibrate(uint16_t hz=38000U)
Calculate & set any offsets to account for execution times during sending.
Definition: IRsend.cpp:207
kMitsubishi136Cool
const uint8_t kMitsubishi136Cool
Definition: ir_Mitsubishi.h:174
kMitsubishi136Dry
const uint8_t kMitsubishi136Dry
Definition: ir_Mitsubishi.h:177
IRMitsubishi112::IRMitsubishi112
IRMitsubishi112(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Mitsubishi.cpp:1365
IRMitsubishiAC::setClock
void setClock(const uint8_t clock)
Set the clock time on the A/C unit.
Definition: ir_Mitsubishi.cpp:601
IRMitsubishiAC::getWeeklyTimerEnabled
bool getWeeklyTimerEnabled(void) const
Get the value of the WeeklyTimer Enabled setting.
Definition: ir_Mitsubishi.cpp:815
Mitsubishi112Protocol::Sum
uint8_t Sum
Definition: ir_Mitsubishi.h:216
IRMitsubishiAC::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Mitsubishi.cpp:437
String
std::string String
Definition: IRremoteESP8266.h:1373
IRMitsubishiAC
Class for handling detailed Mitsubishi 144-bit A/C messages.
Definition: ir_Mitsubishi.h:266
IRMitsubishiAC::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Mitsubishi.cpp:783
Mitsubishi144Protocol::Vane
uint8_t Vane
Definition: ir_Mitsubishi.h:78
kMitsubishiAcVaneHigh
const uint8_t kMitsubishiAcVaneHigh
Definition: ir_Mitsubishi.h:127
IRMitsubishi112::toString
String toString(void) const
Convert the internal state into a human readable string.
Definition: ir_Mitsubishi.cpp:1690
IRMitsubishiAC::convertSwingV
static uint8_t convertSwingV(const stdAc::swingv_t position)
Convert a stdAc::swingv_t enum into it's native setting.
Definition: ir_Mitsubishi.cpp:680
IRMitsubishiAC::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Mitsubishi.cpp:731
IRMitsubishiAC::setNaturalFlow
void setNaturalFlow(const bool state)
Set the requested Natural Flow mode.
Definition: ir_Mitsubishi.cpp:544
IRMitsubishi112
Class for handling detailed Mitsubishi 122-bit A/C messages.
Definition: ir_Mitsubishi.h:400
IRMitsubishiAC::setDirectIndirect
void setDirectIndirect(const uint8_t position)
Set the requested Direct/Indirect mode. Only works if I-See mode is ON.
Definition: ir_Mitsubishi.cpp:528
Mitsubishi136Protocol::Temp
uint8_t Temp
Definition: ir_Mitsubishi.h:161
IRMitsubishiAC::setFan
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition: ir_Mitsubishi.cpp:415
kMitsubishi112SwingVLow
const uint8_t kMitsubishi112SwingVLow
Definition: ir_Mitsubishi.h:234
IRMitsubishiAC::convertSwingH
static uint8_t convertSwingH(const stdAc::swingh_t position)
Convert a stdAc::swingh_t enum into it's native setting.
Definition: ir_Mitsubishi.cpp:702
IRMitsubishi112::setTemp
void setTemp(const uint8_t degrees)
Set the temperature.
Definition: ir_Mitsubishi.cpp:1426
kMitsubishi112SwingHAuto
const uint8_t kMitsubishi112SwingHAuto
Definition: ir_Mitsubishi.h:246
kMitsubishi112MinTemp
const uint8_t kMitsubishi112MinTemp
Definition: ir_Mitsubishi.h:225
IRMitsubishi136
Class for handling detailed Mitsubishi 136-bit A/C messages.
Definition: ir_Mitsubishi.h:346
Mitsubishi144Protocol::Clock
uint8_t Clock
Definition: ir_Mitsubishi.h:82
IRMitsubishi112::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Mitsubishi.cpp:1414
IRMitsubishi112::checksum
void checksum(void)
Calculate the checksum for the current internal state of the remote.
Definition: ir_Mitsubishi.cpp:1378
IRremoteESP8266.h
stdAc::swingh_t
swingh_t
Common A/C settings for Horizontal Swing.
Definition: IRsend.h:83
IRMitsubishiAC::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Mitsubishi.cpp:650
kMitsubishiAcStopTimer
const uint8_t kMitsubishiAcStopTimer
Definition: ir_Mitsubishi.h:145
kMitsubishiAcFanMax
const uint8_t kMitsubishiAcFanMax
Definition: ir_Mitsubishi.h:119
Mitsubishi136Protocol::Mode
uint8_t Mode
Definition: ir_Mitsubishi.h:159
IRMitsubishiAC::getFan
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Mitsubishi.cpp:429
Mitsubishi144Protocol::AbsenseDetect
uint8_t AbsenseDetect
Definition: ir_Mitsubishi.h:97
kMitsubishi112SwingVHighest
const uint8_t kMitsubishi112SwingVHighest
Definition: ir_Mitsubishi.h:237
IRMitsubishiAC::toCommonSwingH
static stdAc::swingh_t toCommonSwingH(const uint8_t pos)
Convert a native horizontal swing postion to it's common equivalent.
Definition: ir_Mitsubishi.cpp:769
kMitsubishi136FanLow
const uint8_t kMitsubishi136FanLow
Definition: ir_Mitsubishi.h:184
kMitsubishiACMinRepeat
const uint16_t kMitsubishiACMinRepeat
Definition: IRremoteESP8266.h:1185
kMitsubishi136MinTemp
const uint8_t kMitsubishi136MinTemp
Definition: ir_Mitsubishi.h:171
Mitsubishi144Protocol::Power
uint8_t Power
Definition: ir_Mitsubishi.h:62
IRMitsubishi136::toCommonSwingV
static stdAc::swingv_t toCommonSwingV(const uint8_t pos)
Convert a native vertical swing postion to it's common equivalent.
Definition: ir_Mitsubishi.cpp:1185
IRMitsubishi136::IRMitsubishi136
IRMitsubishi136(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Mitsubishi.cpp:951
Mitsubishi112Protocol::pad0
uint8_t pad0[5]
Definition: ir_Mitsubishi.h:194
IRMitsubishiAC::_irsend
IRsend _irsend
Instance of the IR send class.
Definition: ir_Mitsubishi.h:334
kMitsubishi136Auto
const uint8_t kMitsubishi136Auto
Definition: ir_Mitsubishi.h:176
IRMitsubishiAC::_
Mitsubishi144Protocol _
Definition: ir_Mitsubishi.h:340
kMitsubishi136FanMax
const uint8_t kMitsubishi136FanMax
Definition: ir_Mitsubishi.h:186
IRMitsubishiAC::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Mitsubishi.cpp:342
kMitsubishiAcFanAuto
const uint8_t kMitsubishiAcFanAuto
Definition: ir_Mitsubishi.h:118
IRMitsubishiAC::setWeeklyTimerEnabled
void setWeeklyTimerEnabled(const bool on)
Change the Weekly Timer Enabled setting.
Definition: ir_Mitsubishi.cpp:809
IRMitsubishiAC::getStopClock
uint8_t getStopClock(void) const
Get the desired stop time of the A/C unit.
Definition: ir_Mitsubishi.cpp:620
IRMitsubishiAC::on
void on(void)
Set the requested power state of the A/C to on.
Definition: ir_Mitsubishi.cpp:373
Mitsubishi136Protocol::Fan
uint8_t Fan
Definition: ir_Mitsubishi.h:164
kMitsubishiAcFanQuiet
const uint8_t kMitsubishiAcFanQuiet
Definition: ir_Mitsubishi.h:122
IRMitsubishi112::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Mitsubishi.cpp:1565
IRMitsubishi112::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Mitsubishi.cpp:1552
Mitsubishi144Protocol::raw
uint8_t raw[kMitsubishiACStateLength]
The state in code form.
Definition: ir_Mitsubishi.h:56
Mitsubishi144Protocol::Ecocool
uint8_t Ecocool
Definition: ir_Mitsubishi.h:93
kMitsubishiAcWideVaneAuto
const uint8_t kMitsubishiAcWideVaneAuto
Definition: ir_Mitsubishi.h:139
IRMitsubishi136::send
void send(const uint16_t repeat=kMitsubishi136MinRepeat)
Send the current internal state as an IR message.
Definition: ir_Mitsubishi.cpp:994
kMitsubishi136Fan
const uint8_t kMitsubishi136Fan
Definition: ir_Mitsubishi.h:173
IRMitsubishi112::setFan
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition: ir_Mitsubishi.cpp:1440
Mitsubishi136Protocol::Power
uint8_t Power
Definition: ir_Mitsubishi.h:156
IRMitsubishiAC::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Mitsubishi.h:278
IRMitsubishi112::off
void off(void)
Set the requested power state of the A/C to off.
Definition: ir_Mitsubishi.cpp:1410
IRMitsubishiAC::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Mitsubishi.cpp:443
Mitsubishi144Protocol::FanAuto
uint8_t FanAuto
Definition: ir_Mitsubishi.h:80
IRMitsubishi112::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Mitsubishi.cpp:1395
IRMitsubishi112::convertSwingH
static uint8_t convertSwingH(const stdAc::swingh_t position)
Convert a stdAc::swingh_t enum into it's native setting.
Definition: ir_Mitsubishi.cpp:1593
IRMitsubishi112::setSwingH
void setSwingH(const uint8_t position)
Set the Horizontal Swing mode of the A/C.
Definition: ir_Mitsubishi.cpp:1508
IRMitsubishi136::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Mitsubishi.cpp:1159
Mitsubishi144Protocol::Fan
uint8_t Fan
Definition: ir_Mitsubishi.h:77
Mitsubishi144Protocol::DirectIndirect
uint8_t DirectIndirect
Definition: ir_Mitsubishi.h:96
IRMitsubishiAC::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Mitsubishi.cpp:330
Mitsubishi112Protocol::raw
uint8_t raw[kMitsubishi112StateLength]
The state in code form.
Definition: ir_Mitsubishi.h:191
IRMitsubishiAC::IRMitsubishiAC
IRMitsubishiAC(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Mitsubishi.cpp:315
kMitsubishi136FanMin
const uint8_t kMitsubishi136FanMin
Definition: ir_Mitsubishi.h:183
kMitsubishi136SwingVAuto
const uint8_t kMitsubishi136SwingVAuto
Definition: ir_Mitsubishi.h:182
IRMitsubishi112::_irsend
IRsend _irsend
Instance of the IR send class.
Definition: ir_Mitsubishi.h:445
kMitsubishi136Heat
const uint8_t kMitsubishi136Heat
Definition: ir_Mitsubishi.h:175
IRMitsubishi136::setTemp
void setTemp(const uint8_t degrees)
Set the temperature.
Definition: ir_Mitsubishi.cpp:1032
Mitsubishi112Protocol::Power
uint8_t Power
Definition: ir_Mitsubishi.h:197
IRMitsubishiAC::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Mitsubishi.cpp:718
IRMitsubishi136::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Mitsubishi.cpp:1058
IRMitsubishi136::checksum
void checksum(void)
Calculate the checksum for the current internal state of the remote.
Definition: ir_Mitsubishi.cpp:966
IRMitsubishiAC::getStartClock
uint8_t getStartClock(void) const
Get the desired start time of the A/C unit.
Definition: ir_Mitsubishi.cpp:608
kMitsubishi112FanMin
const uint8_t kMitsubishi112FanMin
Definition: ir_Mitsubishi.h:228
kMitsubishiAcFanRealMax
const uint8_t kMitsubishiAcFanRealMax
Definition: ir_Mitsubishi.h:120
kMitsubishiAcStartStopTimer
const uint8_t kMitsubishiAcStartStopTimer
Definition: ir_Mitsubishi.h:146
IRMitsubishiAC::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Mitsubishi.cpp:663
kMitsubishiAcVaneSwing
const uint8_t kMitsubishiAcVaneSwing
Definition: ir_Mitsubishi.h:131
kMitsubishi112SwingVHigh
const uint8_t kMitsubishi112SwingVHigh
Definition: ir_Mitsubishi.h:236
kMitsubishi112SwingHMiddle
const uint8_t kMitsubishi112SwingHMiddle
Definition: ir_Mitsubishi.h:242
IRMitsubishiAC::setEcocool
void setEcocool(const bool state)
Set the requested Ecocool mode.
Definition: ir_Mitsubishi.cpp:504
kMitsubishiAcDirectOff
const uint8_t kMitsubishiAcDirectOff
Definition: ir_Mitsubishi.h:140
kMitsubishi136SwingVLow
const uint8_t kMitsubishi136SwingVLow
Definition: ir_Mitsubishi.h:179
Mitsubishi144Protocol::HalfDegree
uint8_t HalfDegree
Definition: ir_Mitsubishi.h:71
IRMitsubishi112::_
Mitsubishi112Protocol _
Definition: ir_Mitsubishi.h:451
IRMitsubishiAC::getAbsenseDetect
bool getAbsenseDetect(void) const
Get the Absense Detect mode of the A/C.
Definition: ir_Mitsubishi.cpp:522
IRMitsubishiAC::getTimer
uint8_t getTimer(void) const
Get the timers active setting of the A/C.
Definition: ir_Mitsubishi.cpp:634
Mitsubishi144Protocol::Sum
uint8_t Sum
Definition: ir_Mitsubishi.h:108
IRMitsubishi136::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Mitsubishi.cpp:1132
kMitsubishiAcVaneLow
const uint8_t kMitsubishiAcVaneLow
Definition: ir_Mitsubishi.h:129
kMitsubishiAcVaneAutoMove
const uint8_t kMitsubishiAcVaneAutoMove
Definition: ir_Mitsubishi.h:132
Mitsubishi144Protocol::NaturalFlow
uint8_t NaturalFlow
Definition: ir_Mitsubishi.h:103
IRMitsubishiAC::getEcocool
bool getEcocool(void) const
Get the Ecocool mode of the A/C.
Definition: ir_Mitsubishi.cpp:510
IRMitsubishiAC::send
void send(const uint16_t repeat=kMitsubishiACMinRepeat)
Send the current internal state as an IR message.
Definition: ir_Mitsubishi.cpp:335
IRMitsubishi136::getRaw
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Mitsubishi.cpp:1001
IRMitsubishiAC::setWideVane
void setWideVane(const uint8_t position)
Set the requested wide-vane (Horizontal Swing) operation mode of the a/c.
Definition: ir_Mitsubishi.cpp:583
Mitsubishi144Protocol::WeeklyTimer
uint8_t WeeklyTimer
Definition: ir_Mitsubishi.h:89
IRMitsubishi136::getQuiet
bool getQuiet(void) const
Get the Quiet mode of the A/C.
Definition: ir_Mitsubishi.cpp:1112
kMitsubishi112Auto
const uint8_t kMitsubishi112Auto
Definition: ir_Mitsubishi.h:222
IRMitsubishi112::getMode
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Mitsubishi.cpp:1461
kMitsubishiAcIndirect
const uint8_t kMitsubishiAcIndirect
Definition: ir_Mitsubishi.h:141
kMitsubishi136SwingVLowest
const uint8_t kMitsubishi136SwingVLowest
Definition: ir_Mitsubishi.h:178
IRMitsubishiAC::getISee
bool getISee(void) const
Get the iSee mode of the A/C.
Definition: ir_Mitsubishi.cpp:498
kMitsubishiAcStartTimer
const uint8_t kMitsubishiAcStartTimer
Definition: ir_Mitsubishi.h:144
IRMitsubishiAC::setISee
void setISee(const bool state)
Set the requested iSee mode.
Definition: ir_Mitsubishi.cpp:492
IRMitsubishi136::setRaw
void setRaw(const uint8_t *data)
Set the internal state from a valid code for this protocol.
Definition: ir_Mitsubishi.cpp:1008
kMitsubishiAcWideVaneMiddle
const uint8_t kMitsubishiAcWideVaneMiddle
Definition: ir_Mitsubishi.h:135
kMitsubishiAcVaneMiddle
const uint8_t kMitsubishiAcVaneMiddle
Definition: ir_Mitsubishi.h:128
IRMitsubishi136::convertSwingV
static uint8_t convertSwingV(const stdAc::swingv_t position)
Convert a stdAc::swingv_t enum into it's native setting.
Definition: ir_Mitsubishi.cpp:1145
IRMitsubishi112::toCommonSwingV
static stdAc::swingv_t toCommonSwingV(const uint8_t pos)
Convert a native vertical swing postion to it's common equivalent.
Definition: ir_Mitsubishi.cpp:1634
kMitsubishi112FanMax
const uint8_t kMitsubishi112FanMax
Definition: ir_Mitsubishi.h:231
IRMitsubishiAC::setVaneLeft
void setVaneLeft(const uint8_t position)
Set the requested Left Vane (Vertical Swing) operation mode of the a/c unit.
Definition: ir_Mitsubishi.cpp:573
Mitsubishi144Protocol::ISee
uint8_t ISee
Definition: ir_Mitsubishi.h:67
Mitsubishi144Protocol::iSave10C
uint8_t iSave10C
Definition: ir_Mitsubishi.h:99
kMitsubishiAcMaxTemp
const float kMitsubishiAcMaxTemp
Definition: ir_Mitsubishi.h:124
IRMitsubishiAC::getWideVane
uint8_t getWideVane(void) const
Get the Wide Vane (Horizontal Swing) mode of the A/C.
Definition: ir_Mitsubishi.cpp:589
Mitsubishi144Protocol::pad0
uint8_t pad0[5]
Definition: ir_Mitsubishi.h:59
IRMitsubishi112::on
void on(void)
Set the requested power state of the A/C to off.
Definition: ir_Mitsubishi.cpp:1407
Mitsubishi144Protocol::VaneBit
uint8_t VaneBit
Definition: ir_Mitsubishi.h:79
IRMitsubishi136::_irsend
IRsend _irsend
Instance of the IR send class.
Definition: ir_Mitsubishi.h:389
IRMitsubishi136::setSwingV
void setSwingV(const uint8_t position)
Set the Vertical Swing mode of the A/C.
Definition: ir_Mitsubishi.cpp:1081
kMitsubishi136FanQuiet
const uint8_t kMitsubishi136FanQuiet
Definition: ir_Mitsubishi.h:187
IRMitsubishi112::setQuiet
void setQuiet(const bool on)
Set the Quiet mode of the A/C.
Definition: ir_Mitsubishi.cpp:1535
Mitsubishi112Protocol
Native representation of a Mitsubishi 112-bit A/C message.
Definition: ir_Mitsubishi.h:190
IRMitsubishi112::setSwingV
void setSwingV(const uint8_t position)
Set the Vertical Swing mode of the A/C.
Definition: ir_Mitsubishi.cpp:1484
IRMitsubishi136::toCommon
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Mitsubishi.cpp:1197
IRMitsubishi136::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Mitsubishi.cpp:1172
kMitsubishiAcFan
const uint8_t kMitsubishiAcFan
Definition: ir_Mitsubishi.h:117
IRMitsubishi112::toCommonSwingH
static stdAc::swingh_t toCommonSwingH(const uint8_t pos)
Convert a native horizontal swing postion to it's common equivalent.
Definition: ir_Mitsubishi.cpp:1648
Mitsubishi112Protocol::Mode
uint8_t Mode
Definition: ir_Mitsubishi.h:200
IRMitsubishiAC::getISave10C
bool getISave10C(void) const
Get the iSave10C (i-SAVE) mode of the A/C.
Definition: ir_Mitsubishi.cpp:486
IRMitsubishi136::getSwingV
uint8_t getSwingV(void) const
Get the Vertical Swing mode of the A/C.
Definition: ir_Mitsubishi.cpp:1098
IRMitsubishi136::off
void off(void)
Set the requested power state of the A/C to off.
Definition: ir_Mitsubishi.cpp:1016
Mitsubishi144Protocol
Native representation of a Mitsubishi 144-bit A/C message.
Definition: ir_Mitsubishi.h:55
Mitsubishi144Protocol::Mode
uint8_t Mode
Definition: ir_Mitsubishi.h:66
kMitsubishi136StateLength
const uint16_t kMitsubishi136StateLength
Definition: IRremoteESP8266.h:1186
kMitsubishi136SwingVHigh
const uint8_t kMitsubishi136SwingVHigh
Definition: ir_Mitsubishi.h:180
kMitsubishiAcCool
const uint8_t kMitsubishiAcCool
Definition: ir_Mitsubishi.h:114
IRMitsubishiAC::toCommonSwingV
static stdAc::swingv_t toCommonSwingV(const uint8_t pos)
Convert a native vertical swing postion to it's common equivalent.
Definition: ir_Mitsubishi.cpp:747
kMitsubishiAcWideVaneWide
const uint8_t kMitsubishiAcWideVaneWide
Definition: ir_Mitsubishi.h:138
IRMitsubishiAC::toString
String toString(void) const
Convert the internal state into a human readable string.
Definition: ir_Mitsubishi.cpp:819
kMitsubishi112SwingHWide
const uint8_t kMitsubishi112SwingHWide
Definition: ir_Mitsubishi.h:245
IRMitsubishi136::on
void on(void)
Set the requested power state of the A/C to on.
Definition: ir_Mitsubishi.cpp:1013
IRMitsubishi112::convertSwingV
static uint8_t convertSwingV(const stdAc::swingv_t position)
Convert a stdAc::swingv_t enum into it's native setting.
Definition: ir_Mitsubishi.cpp:1579
kMitsubishi112Dry
const uint8_t kMitsubishi112Dry
Definition: ir_Mitsubishi.h:223
Mitsubishi136Protocol
Native representation of a Mitsubishi 136-bit A/C message.
Definition: ir_Mitsubishi.h:149
kMitsubishiAcWideVaneLeft
const uint8_t kMitsubishiAcWideVaneLeft
Definition: ir_Mitsubishi.h:134
IRMitsubishi136::getPower
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Mitsubishi.cpp:1026
kMitsubishi136SwingVHighest
const uint8_t kMitsubishi136SwingVHighest
Definition: ir_Mitsubishi.h:181
IRMitsubishi136::setPower
void setPower(const bool on)
Change the power setting.
Definition: ir_Mitsubishi.cpp:1020
kMitsubishiAcWideVaneLeftMax
const uint8_t kMitsubishiAcWideVaneLeftMax
Definition: ir_Mitsubishi.h:133
IRMitsubishiAC::setTimer
void setTimer(const uint8_t timer)
Set the timers active setting of the A/C.
Definition: ir_Mitsubishi.cpp:643
stdAc::state_t
Structure to hold a common A/C state.
Definition: IRsend.h:97
Mitsubishi136Protocol::pad
uint8_t pad[5]
Definition: ir_Mitsubishi.h:153
IRMitsubishiAC::off
void off(void)
Set the requested power state of the A/C to off.
Definition: ir_Mitsubishi.cpp:376
Mitsubishi136Protocol::SwingV
uint8_t SwingV
Definition: ir_Mitsubishi.h:166
kMitsubishi112StateLength
const uint16_t kMitsubishi112StateLength
Definition: IRremoteESP8266.h:1189
kMitsubishi112MaxTemp
const uint8_t kMitsubishi112MaxTemp
Definition: ir_Mitsubishi.h:226
IRMitsubishi136::validChecksum
static bool validChecksum(const uint8_t *data, const uint16_t len=kMitsubishi136StateLength)
Verify the checksum is valid for a given state.
Definition: ir_Mitsubishi.cpp:976
Mitsubishi144Protocol::WideVane
uint8_t WideVane
Definition: ir_Mitsubishi.h:75
kMitsubishiAcDry
const uint8_t kMitsubishiAcDry
Definition: ir_Mitsubishi.h:115
IRMitsubishi136::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Mitsubishi.cpp:1064
stdAc::opmode_t
opmode_t
Common A/C settings for A/C operating modes.
Definition: IRsend.h:46