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 // Brand: Mitsubishi Electric, Model: PAR-FA32MA remote (MITSUBISHI136)
40
41 #ifndef IR_MITSUBISHI_H_
42 #define IR_MITSUBISHI_H_
43
44 #define __STDC_LIMIT_MACROS
45 #include <stdint.h>
46 #ifndef UNIT_TEST
47 #include <Arduino.h>
48 #endif
49 #include "IRremoteESP8266.h"
50 #include "IRsend.h"
51 #ifdef UNIT_TEST
52 #include "IRsend_test.h"
53 #endif
54
56 union Mitsubishi144Protocol{
57 uint8_t raw[kMitsubishiACStateLength];
58 struct {
59 // Byte 0~4
60 uint8_t pad0[5];
61 // Byte 5
62 uint8_t :5;
63 uint8_t Power :1;
64 uint8_t :2;
65 // Byte 6
66 uint8_t :3;
67 uint8_t Mode :3;
68 uint8_t ISee : 1;
69 uint8_t :1;
70 // Byte 7
71 uint8_t Temp :4;
72 uint8_t HalfDegree :1;
73 uint8_t :3;
74 // Byte 8
75 uint8_t :4;
76 uint8_t WideVane:4; // SwingH
77 // Byte 9
78 uint8_t Fan :3;
79 uint8_t Vane :3; // SwingV or VaneRight
80 uint8_t VaneBit :1;
81 uint8_t FanAuto :1;
82 // Byte 10
83 uint8_t Clock :8;
84 // Byte 11
85 uint8_t StopClock :8;
86 // Byte 12
87 uint8_t StartClock:8;
88 // Byte 13
89 uint8_t Timer :3;
90 uint8_t WeeklyTimer :1;
91 uint8_t :4;
92 // Byte 14
93 uint8_t :5;
94 uint8_t Ecocool :1;
95 uint8_t :2;
96 // Byte 15
97 uint8_t DirectIndirect:2;
98 uint8_t AbsenseDetect :1;
99 uint8_t :2;
100 uint8_t iSave10C :1; // i-SAVE:mode=Heat & iSave=on AND 10C on remote
101 uint8_t :2;
102 // Byte 16
103 uint8_t :1;
104 uint8_t NaturalFlow :1;
105 uint8_t :1;
106 uint8_t VaneLeft :3; // SwingV(Left)
107 uint8_t :2;
108 // Byte 17
109 uint8_t Sum :8;
110 };
111 };
112
113 // Constants
114 const uint8_t kMitsubishiAcAuto = 0b100;
115 const uint8_t kMitsubishiAcCool = 0b011;
116 const uint8_t kMitsubishiAcDry = 0b010;
117 const uint8_t kMitsubishiAcHeat = 0b001;
118 const uint8_t kMitsubishiAcFan = 0b111;
119 const uint8_t kMitsubishiAcFanAuto = 0;
120 const uint8_t kMitsubishiAcFanMax = 5;
121 const uint8_t kMitsubishiAcFanRealMax = 4;
122 const uint8_t kMitsubishiAcFanSilent = 6;
123 const uint8_t kMitsubishiAcFanQuiet = kMitsubishiAcFanSilent;
124 const float kMitsubishiAcMinTemp = 16.0; // 16C
125 const float kMitsubishiAcMaxTemp = 31.0; // 31C
126 const uint8_t kMitsubishiAcVaneAuto = 0b000; // Vanes move when AC wants to.
127 const uint8_t kMitsubishiAcVaneHighest = 0b001;
128 const uint8_t kMitsubishiAcVaneHigh = 0b010;
129 const uint8_t kMitsubishiAcVaneMiddle = 0b011;
130 const uint8_t kMitsubishiAcVaneLow = 0b100;
131 const uint8_t kMitsubishiAcVaneLowest = 0b101;
132 const uint8_t kMitsubishiAcVaneSwing = 0b111; // Vanes move all the time.
133 const uint8_t kMitsubishiAcVaneAutoMove = kMitsubishiAcVaneSwing; // Deprecated
134 const uint8_t kMitsubishiAcWideVaneLeftMax = 0b0001; // 1
135 const uint8_t kMitsubishiAcWideVaneLeft = 0b0010; // 2
136 const uint8_t kMitsubishiAcWideVaneMiddle = 0b0011; // 3
137 const uint8_t kMitsubishiAcWideVaneRight = 0b0100; // 4
138 const uint8_t kMitsubishiAcWideVaneRightMax = 0b0101; // 5
139 const uint8_t kMitsubishiAcWideVaneWide = 0b0110; // 6
140 const uint8_t kMitsubishiAcWideVaneAuto = 0b1000; // 8
141 const uint8_t kMitsubishiAcDirectOff = 0b00; // Vanes move when AC wants to.
142 const uint8_t kMitsubishiAcIndirect = 0b01;
143 const uint8_t kMitsubishiAcDirect = 0b11;
144 const uint8_t kMitsubishiAcNoTimer = 0;
145 const uint8_t kMitsubishiAcStartTimer = 5;
146 const uint8_t kMitsubishiAcStopTimer = 3;
147 const uint8_t kMitsubishiAcStartStopTimer = 7;
148
150 union Mitsubishi136Protocol{
151 uint8_t raw[kMitsubishi136StateLength];
152 struct {
153 // Byte 0~4
154 uint8_t pad[5];
155 // Byte 5
156 uint8_t :6;
157 uint8_t Power :1;
158 uint8_t :1;
159 // Byte 6
160 uint8_t Mode :3;
161 uint8_t :1;
162 uint8_t Temp :4;
163 // Byte 7
164 uint8_t :1;
165 uint8_t Fan :2;
166 uint8_t :1;
167 uint8_t SwingV :4;
168 };
169 };
170
171 const uint8_t kMitsubishi136PowerByte = 5;
172 const uint8_t kMitsubishi136MinTemp = 17; // 17C
173 const uint8_t kMitsubishi136MaxTemp = 30; // 30C
174 const uint8_t kMitsubishi136Fan = 0b000;
175 const uint8_t kMitsubishi136Cool = 0b001;
176 const uint8_t kMitsubishi136Heat = 0b010;
177 const uint8_t kMitsubishi136Auto = 0b011;
178 const uint8_t kMitsubishi136Dry = 0b101;
179 const uint8_t kMitsubishi136SwingVLowest = 0b0000;
180 const uint8_t kMitsubishi136SwingVLow = 0b0001;
181 const uint8_t kMitsubishi136SwingVHigh = 0b0010;
182 const uint8_t kMitsubishi136SwingVHighest = 0b0011;
183 const uint8_t kMitsubishi136SwingVAuto = 0b1100;
184 const uint8_t kMitsubishi136FanMin = 0b00;
185 const uint8_t kMitsubishi136FanLow = 0b01;
186 const uint8_t kMitsubishi136FanMed = 0b10;
187 const uint8_t kMitsubishi136FanMax = 0b11;
188 const uint8_t kMitsubishi136FanQuiet = kMitsubishi136FanMin;
189
191 union Mitsubishi112Protocol{
192 uint8_t raw[kMitsubishi112StateLength];
193 struct {
194 // Byte 0~4
195 uint8_t pad0[5];
196 // Byte 5
197 uint8_t :2;
198 uint8_t Power :1;
199 uint8_t :5;
200 // Byte 6
201 uint8_t Mode :3;
202 uint8_t :5;
203 // Byte 7
204 uint8_t Temp :4;
205 uint8_t :4;
206 // Byte 8
207 uint8_t Fan :3;
208 uint8_t SwingV :3;
209 uint8_t :2;
210 // Byte 9~11
211 uint8_t pad1[3];
212 // Byte 12
213 uint8_t :2;
214 uint8_t SwingH :4;
215 uint8_t :2;
216 // Byte 13
217 uint8_t Sum :8;
218 };
219 };
220
221 const uint8_t kMitsubishi112Cool = 0b011;
222 const uint8_t kMitsubishi112Heat = 0b001;
223 const uint8_t kMitsubishi112Auto = 0b111;
224 const uint8_t kMitsubishi112Dry = 0b010;
225
226 const uint8_t kMitsubishi112MinTemp = 16; // 16C
227 const uint8_t kMitsubishi112MaxTemp = 31; // 31C
228
229 const uint8_t kMitsubishi112FanMin = 0b010;
230 const uint8_t kMitsubishi112FanLow = 0b011;
231 const uint8_t kMitsubishi112FanMed = 0b101;
232 const uint8_t kMitsubishi112FanMax = 0b000;
233 const uint8_t kMitsubishi112FanQuiet = kMitsubishi112FanMin;
234 const uint8_t kMitsubishi112SwingVLowest = 0b101;
235 const uint8_t kMitsubishi112SwingVLow = 0b100;
236 const uint8_t kMitsubishi112SwingVMiddle = 0b011;
237 const uint8_t kMitsubishi112SwingVHigh = 0b010;
238 const uint8_t kMitsubishi112SwingVHighest = 0b001;
239 const uint8_t kMitsubishi112SwingVAuto = 0b111;
240
241 const uint8_t kMitsubishi112SwingHLeftMax = 0b0001;
242 const uint8_t kMitsubishi112SwingHLeft = 0b0010;
243 const uint8_t kMitsubishi112SwingHMiddle = 0b0011;
244 const uint8_t kMitsubishi112SwingHRight = 0b0100;
245 const uint8_t kMitsubishi112SwingHRightMax = 0b0101;
246 const uint8_t kMitsubishi112SwingHWide = 0b1000;
247 const uint8_t kMitsubishi112SwingHAuto = 0b1100;
248
249 // Legacy defines (Deprecated)
250 #define MITSUBISHI_AC_VANE_AUTO_MOVE kMitsubishiAcVaneAutoMove
251 #define MITSUBISHI_AC_VANE_AUTO kMitsubishiAcVaneAuto
252 #define MITSUBISHI_AC_MIN_TEMP kMitsubishiAcMinTemp
253 #define MITSUBISHI_AC_MAX_TEMP kMitsubishiAcMaxTemp
254 #define MITSUBISHI_AC_HEAT kMitsubishiAcHeat
255 #define MITSUBISHI_AC_FAN_SILENT kMitsubishiAcFanSilent
256 #define MITSUBISHI_AC_FAN_REAL_MAX kMitsubishiAcFanRealMax
257 #define MITSUBISHI_AC_FAN_MAX kMitsubishiAcFanMax
258 #define MITSUBISHI_AC_FAN_AUTO kMitsubishiAcFanAuto
259 #define MITSUBISHI_AC_DRY kMitsubishiAcDry
260 #define MITSUBISHI_AC_COOL kMitsubishiAcCool
261 #define MITSUBISHI_AC_AUTO kMitsubishiAcAuto
262
263
267 class IRMitsubishiAC {
268 public:
269 explicit IRMitsubishiAC(const uint16_t pin, const bool inverted = false,
270 const bool use_modulation = true);
271 void stateReset(void);
272 static bool validChecksum(const uint8_t* data);
273 #if SEND_MITSUBISHI_AC
274 void send(const uint16_t repeat = kMitsubishiACMinRepeat);
279 int8_t calibrate(void) { return _irsend.calibrate(); }
280 #endif // SEND_MITSUBISHI_AC
281 void begin(void);
282 void on(void);
283 void off(void);
284 void setPower(const bool on);
285 bool getPower(void) const;
286 void setTemp(const float degrees);
287 float getTemp(void) const;
288 void setFan(const uint8_t speed);
289 uint8_t getFan(void) const;
290 void setMode(const uint8_t mode);
291 uint8_t getMode(void) const;
292 void setISave10C(const bool state);
293 bool getISave10C(void) const;
294 void setISee(const bool state);
295 bool getISee(void) const;
296 void setDirectIndirect(const uint8_t position);
297 uint8_t getDirectIndirect(void) const;
298 void setEcocool(const bool state);
299 bool getEcocool(void) const;
300 void setAbsenseDetect(const bool state);
301 bool getAbsenseDetect(void) const;
302 void setNaturalFlow(const bool state);
303 bool getNaturalFlow(void) const;
304 void setVane(const uint8_t position); // controls RIGHT vane on some models
305 uint8_t getVane(void) const;
306 void setVaneLeft(const uint8_t position);
307 uint8_t getVaneLeft(void) const;
308 void setWideVane(const uint8_t position);
309 uint8_t getWideVane(void) const;
310 uint8_t* getRaw(void);
311 void setRaw(const uint8_t* data);
312 uint8_t getClock(void) const;
313 void setClock(const uint8_t clock);
314 uint8_t getStartClock(void) const;
315 void setStartClock(const uint8_t clock);
316 uint8_t getStopClock(void) const;
317 void setStopClock(const uint8_t clock);
318 uint8_t getTimer(void) const;
319 void setTimer(const uint8_t timer);
320 bool getWeeklyTimerEnabled(void) const;
321 void setWeeklyTimerEnabled(const bool on);
322 static uint8_t convertMode(const stdAc::opmode_t mode);
323 static uint8_t convertFan(const stdAc::fanspeed_t speed);
324 static uint8_t convertSwingV(const stdAc::swingv_t position);
325 static uint8_t convertSwingH(const stdAc::swingh_t position);
326 static stdAc::opmode_t toCommonMode(const uint8_t mode);
327 static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
328 static stdAc::swingv_t toCommonSwingV(const uint8_t pos);
329 static stdAc::swingh_t toCommonSwingH(const uint8_t pos);
330 stdAc::state_t toCommon(void) const;
331 String toString(void) const;
332 #ifndef UNIT_TEST
333
334 private:
335 IRsend _irsend;
336 #else // UNIT_TEST
337 IRsendTest _irsend;
339 #endif // UNIT_TEST
341 Mitsubishi144Protocol _;
342 void checksum(void);
343 static uint8_t calculateChecksum(const uint8_t* data);
344 };
345
347 class IRMitsubishi136 {
348 public:
349 explicit IRMitsubishi136(const uint16_t pin, const bool inverted = false,
350 const bool use_modulation = true);
351 void stateReset(void);
352 #if SEND_MITSUBISHI136
353 void send(const uint16_t repeat = kMitsubishi136MinRepeat);
358 int8_t calibrate(void) { return _irsend.calibrate(); }
359 #endif // SEND_MITSUBISHI136
360 void begin(void);
361 static bool validChecksum(const uint8_t* data,
362 const uint16_t len = kMitsubishi136StateLength);
363 void on(void);
364 void off(void);
365 void setPower(const bool on);
366 bool getPower(void) const;
367 void setTemp(const uint8_t degrees);
368 uint8_t getTemp(void) const;
369 void setFan(const uint8_t speed);
370 uint8_t getFan(void) const;
371 void setMode(const uint8_t mode);
372 uint8_t getMode(void) const;
373 void setSwingV(const uint8_t position);
374 uint8_t getSwingV(void) const;
375 void setQuiet(const bool on);
376 bool getQuiet(void) const;
377 uint8_t* getRaw(void);
378 void setRaw(const uint8_t* data);
379 static uint8_t convertMode(const stdAc::opmode_t mode);
380 static uint8_t convertFan(const stdAc::fanspeed_t speed);
381 static uint8_t convertSwingV(const stdAc::swingv_t position);
382 static stdAc::opmode_t toCommonMode(const uint8_t mode);
383 static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
384 static stdAc::swingv_t toCommonSwingV(const uint8_t pos);
385 stdAc::state_t toCommon(void) const;
386 String toString(void) const;
387 #ifndef UNIT_TEST
388
389 private:
390 IRsend _irsend;
391 #else // UNIT_TEST
392 IRsendTest _irsend;
394 #endif // UNIT_TEST
396 Mitsubishi136Protocol _;
397 void checksum(void);
398 };
399
401 class IRMitsubishi112 {
402 public:
403 explicit IRMitsubishi112(const uint16_t pin, const bool inverted = false,
404 const bool use_modulation = true);
405 void stateReset(void);
406 #if SEND_MITSUBISHI112
407 void send(const uint16_t repeat = kMitsubishi112MinRepeat);
412 int8_t calibrate(void) { return _irsend.calibrate(); }
413 #endif // SEND_MITSUBISHI112
414 void begin(void);
415 void on(void);
416 void off(void);
417 void setPower(const bool on);
418 bool getPower(void) const;
419 void setTemp(const uint8_t degrees);
420 uint8_t getTemp(void) const;
421 void setFan(const uint8_t speed);
422 uint8_t getFan(void) const;
423 void setMode(const uint8_t mode);
424 uint8_t getMode(void) const;
425 void setSwingV(const uint8_t position);
426 uint8_t getSwingV(void) const;
427 void setSwingH(const uint8_t position);
428 uint8_t getSwingH(void) const;
429 void setQuiet(const bool on);
430 bool getQuiet(void) const;
431 uint8_t* getRaw(void);
432 void setRaw(const uint8_t* data);
433 static uint8_t convertMode(const stdAc::opmode_t mode);
434 static uint8_t convertFan(const stdAc::fanspeed_t speed);
435 static uint8_t convertSwingV(const stdAc::swingv_t position);
436 static uint8_t convertSwingH(const stdAc::swingh_t position);
437 static stdAc::opmode_t toCommonMode(const uint8_t mode);
438 static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
439 static stdAc::swingv_t toCommonSwingV(const uint8_t pos);
440 static stdAc::swingh_t toCommonSwingH(const uint8_t pos);
441 stdAc::state_t toCommon(void) const;
442 String toString(void) const;
443 #ifndef UNIT_TEST
444
445 private:
446 IRsend _irsend;
447 #else // UNIT_TEST
448 IRsendTest _irsend;
450 #endif // UNIT_TEST
452 Mitsubishi112Protocol _;
453 void checksum(void);
454 };
455
456 #endif // IR_MITSUBISHI_H_
kMitsubishi112SwingVMiddle
const uint8_t kMitsubishi112SwingVMiddle
Definition: ir_Mitsubishi.h:236
Mitsubishi144Protocol::VaneLeft
uint8_t VaneLeft
Definition: ir_Mitsubishi.h:106
Mitsubishi112Protocol::SwingV
uint8_t SwingV
Definition: ir_Mitsubishi.h:208
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:234
kMitsubishi112SwingVAuto
const uint8_t kMitsubishi112SwingVAuto
Definition: ir_Mitsubishi.h:239
Mitsubishi112Protocol::pad1
uint8_t pad1[3]
Definition: ir_Mitsubishi.h:211
kMitsubishi112FanQuiet
const uint8_t kMitsubishi112FanQuiet
Definition: ir_Mitsubishi.h:233
Mitsubishi144Protocol::Timer
uint8_t Timer
Definition: ir_Mitsubishi.h:89
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:242
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:87
kMitsubishi112FanMed
const uint8_t kMitsubishi112FanMed
Definition: ir_Mitsubishi.h:231
kMitsubishiACStateLength
const uint16_t kMitsubishiACStateLength
Definition: IRremoteESP8266.h:1314
Mitsubishi112Protocol::Fan
uint8_t Fan
Definition: ir_Mitsubishi.h:207
kMitsubishiAcHeat
const uint8_t kMitsubishiAcHeat
Definition: ir_Mitsubishi.h:117
kMitsubishiAcMinTemp
const float kMitsubishiAcMinTemp
Definition: ir_Mitsubishi.h:124
kMitsubishiAcAuto
const uint8_t kMitsubishiAcAuto
Definition: ir_Mitsubishi.h:114
IRMitsubishi136::_
Mitsubishi136Protocol _
Definition: ir_Mitsubishi.h:396
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:244
kMitsubishiAcFanSilent
const uint8_t kMitsubishiAcFanSilent
Definition: ir_Mitsubishi.h:122
IRMitsubishi112::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Mitsubishi.h:412
Mitsubishi112Protocol::SwingH
uint8_t SwingH
Definition: ir_Mitsubishi.h:214
kMitsubishiAcVaneAuto
const uint8_t kMitsubishiAcVaneAuto
Definition: ir_Mitsubishi.h:126
kMitsubishi112SwingHRightMax
const uint8_t kMitsubishi112SwingHRightMax
Definition: ir_Mitsubishi.h:245
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:1319
stdAc::swingv_t
swingv_t
Common A/C settings for Vertical Swing.
Definition: IRsend.h:74
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:127
kMitsubishiAcWideVaneRightMax
const uint8_t kMitsubishiAcWideVaneRightMax
Definition: ir_Mitsubishi.h:138
kMitsubishiAcWideVaneRight
const uint8_t kMitsubishiAcWideVaneRight
Definition: ir_Mitsubishi.h:137
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:186
Mitsubishi136Protocol::raw
uint8_t raw[kMitsubishi136StateLength]
The state in code form.
Definition: ir_Mitsubishi.h:151
kMitsubishi136PowerByte
const uint8_t kMitsubishi136PowerByte
Definition: ir_Mitsubishi.h:171
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:61
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:173
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:204
kMitsubishiAcDirect
const uint8_t kMitsubishiAcDirect
Definition: ir_Mitsubishi.h:143
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:1322
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:230
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:222
kMitsubishi112SwingHLeftMax
const uint8_t kMitsubishi112SwingHLeftMax
Definition: ir_Mitsubishi.h:241
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:358
kMitsubishi112Cool
const uint8_t kMitsubishi112Cool
Definition: ir_Mitsubishi.h:221
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:85
kMitsubishiAcNoTimer
const uint8_t kMitsubishiAcNoTimer
Definition: ir_Mitsubishi.h:144
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:237
Mitsubishi144Protocol::Temp
uint8_t Temp
Definition: ir_Mitsubishi.h:71
kMitsubishiAcVaneLowest
const uint8_t kMitsubishiAcVaneLowest
Definition: ir_Mitsubishi.h:131
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:175
kMitsubishi136Dry
const uint8_t kMitsubishi136Dry
Definition: ir_Mitsubishi.h:178
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:217
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:1521
IRMitsubishiAC
Class for handling detailed Mitsubishi 144-bit A/C messages.
Definition: ir_Mitsubishi.h:267
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:79
kMitsubishiAcVaneHigh
const uint8_t kMitsubishiAcVaneHigh
Definition: ir_Mitsubishi.h:128
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:401
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:162
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:235
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:247
kMitsubishi112MinTemp
const uint8_t kMitsubishi112MinTemp
Definition: ir_Mitsubishi.h:226
IRMitsubishi136
Class for handling detailed Mitsubishi 136-bit A/C messages.
Definition: ir_Mitsubishi.h:347
Mitsubishi144Protocol::Clock
uint8_t Clock
Definition: ir_Mitsubishi.h:83
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:100
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:146
kMitsubishiAcFanMax
const uint8_t kMitsubishiAcFanMax
Definition: ir_Mitsubishi.h:120
Mitsubishi136Protocol::Mode
uint8_t Mode
Definition: ir_Mitsubishi.h:160
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:98
kMitsubishi112SwingVHighest
const uint8_t kMitsubishi112SwingVHighest
Definition: ir_Mitsubishi.h:238
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:185
kMitsubishiACMinRepeat
const uint16_t kMitsubishiACMinRepeat
Definition: IRremoteESP8266.h:1316
kMitsubishi136MinTemp
const uint8_t kMitsubishi136MinTemp
Definition: ir_Mitsubishi.h:172
Mitsubishi144Protocol::Power
uint8_t Power
Definition: ir_Mitsubishi.h:63
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:195
IRMitsubishiAC::_irsend
IRsend _irsend
Instance of the IR send class.
Definition: ir_Mitsubishi.h:335
kMitsubishi136Auto
const uint8_t kMitsubishi136Auto
Definition: ir_Mitsubishi.h:177
IRMitsubishiAC::_
Mitsubishi144Protocol _
Definition: ir_Mitsubishi.h:341
kMitsubishi136FanMax
const uint8_t kMitsubishi136FanMax
Definition: ir_Mitsubishi.h:187
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:119
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:165
kMitsubishiAcFanQuiet
const uint8_t kMitsubishiAcFanQuiet
Definition: ir_Mitsubishi.h:123
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:57
Mitsubishi144Protocol::Ecocool
uint8_t Ecocool
Definition: ir_Mitsubishi.h:94
kMitsubishiAcWideVaneAuto
const uint8_t kMitsubishiAcWideVaneAuto
Definition: ir_Mitsubishi.h:140
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:174
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:157
IRMitsubishiAC::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Mitsubishi.h:279
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:81
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:78
Mitsubishi144Protocol::DirectIndirect
uint8_t DirectIndirect
Definition: ir_Mitsubishi.h:97
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:192
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:184
kMitsubishi136SwingVAuto
const uint8_t kMitsubishi136SwingVAuto
Definition: ir_Mitsubishi.h:183
IRMitsubishi112::_irsend
IRsend _irsend
Instance of the IR send class.
Definition: ir_Mitsubishi.h:446
kMitsubishi136Heat
const uint8_t kMitsubishi136Heat
Definition: ir_Mitsubishi.h:176
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:198
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:229
kMitsubishiAcFanRealMax
const uint8_t kMitsubishiAcFanRealMax
Definition: ir_Mitsubishi.h:121
kMitsubishiAcStartStopTimer
const uint8_t kMitsubishiAcStartStopTimer
Definition: ir_Mitsubishi.h:147
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:132
kMitsubishi112SwingVHigh
const uint8_t kMitsubishi112SwingVHigh
Definition: ir_Mitsubishi.h:237
kMitsubishi112SwingHMiddle
const uint8_t kMitsubishi112SwingHMiddle
Definition: ir_Mitsubishi.h:243
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:141
kMitsubishi136SwingVLow
const uint8_t kMitsubishi136SwingVLow
Definition: ir_Mitsubishi.h:180
Mitsubishi144Protocol::HalfDegree
uint8_t HalfDegree
Definition: ir_Mitsubishi.h:72
IRMitsubishi112::_
Mitsubishi112Protocol _
Definition: ir_Mitsubishi.h:452
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:109
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:130
kMitsubishiAcVaneAutoMove
const uint8_t kMitsubishiAcVaneAutoMove
Definition: ir_Mitsubishi.h:133
Mitsubishi144Protocol::NaturalFlow
uint8_t NaturalFlow
Definition: ir_Mitsubishi.h:104
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:90
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:223
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:142
kMitsubishi136SwingVLowest
const uint8_t kMitsubishi136SwingVLowest
Definition: ir_Mitsubishi.h:179
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:145
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:136
kMitsubishiAcVaneMiddle
const uint8_t kMitsubishiAcVaneMiddle
Definition: ir_Mitsubishi.h:129
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:232
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:68
Mitsubishi144Protocol::iSave10C
uint8_t iSave10C
Definition: ir_Mitsubishi.h:100
kMitsubishiAcMaxTemp
const float kMitsubishiAcMaxTemp
Definition: ir_Mitsubishi.h:125
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:60
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:80
IRMitsubishi136::_irsend
IRsend _irsend
Instance of the IR send class.
Definition: ir_Mitsubishi.h:390
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:188
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:191
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:118
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:201
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:56
Mitsubishi144Protocol::Mode
uint8_t Mode
Definition: ir_Mitsubishi.h:67
kMitsubishi136StateLength
const uint16_t kMitsubishi136StateLength
Definition: IRremoteESP8266.h:1317
kMitsubishi136SwingVHigh
const uint8_t kMitsubishi136SwingVHigh
Definition: ir_Mitsubishi.h:181
kMitsubishiAcCool
const uint8_t kMitsubishiAcCool
Definition: ir_Mitsubishi.h:115
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:139
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:246
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:224
Mitsubishi136Protocol
Native representation of a Mitsubishi 136-bit A/C message.
Definition: ir_Mitsubishi.h:150
kMitsubishiAcWideVaneLeft
const uint8_t kMitsubishiAcWideVaneLeft
Definition: ir_Mitsubishi.h:135
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:182
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:134
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:114
Mitsubishi136Protocol::pad
uint8_t pad[5]
Definition: ir_Mitsubishi.h:154
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:167
kMitsubishi112StateLength
const uint16_t kMitsubishi112StateLength
Definition: IRremoteESP8266.h:1320
kMitsubishi112MaxTemp
const uint8_t kMitsubishi112MaxTemp
Definition: ir_Mitsubishi.h:227
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:76
kMitsubishiAcDry
const uint8_t kMitsubishiAcDry
Definition: ir_Mitsubishi.h:116
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:49