Go to the documentation of this file.
26 #define __STDC_LIMIT_MACROS
34 #include "IRsend_test.h"
248 explicit IRHitachiAc(
const uint16_t pin,
const bool inverted =
false,
249 const bool use_modulation =
true);
258 #endif // SEND_HITACHI_AC
264 void setTemp(
const uint8_t temp);
266 void setFan(
const uint8_t speed);
267 uint8_t
getFan(
void)
const;
268 void setMode(
const uint8_t mode);
275 void setRaw(
const uint8_t new_code[],
305 explicit IRHitachiAc1(
const uint16_t pin,
const bool inverted =
false,
306 const bool use_modulation =
true);
316 #endif // SEND_HITACHI_AC1
326 void setTemp(
const uint8_t temp);
328 void setFan(
const uint8_t speed,
const bool force =
false);
329 uint8_t
getFan(
void)
const;
330 void setMode(
const uint8_t mode);
345 void setRaw(
const uint8_t new_code[],
374 explicit IRHitachiAc424(
const uint16_t pin,
const bool inverted =
false,
375 const bool use_modulation =
true);
377 #if SEND_HITACHI_AC424
384 #endif // SEND_HITACHI_AC424
390 void setTemp(
const uint8_t temp,
bool setPrevious =
true);
392 void setFan(
const uint8_t speed);
393 uint8_t
getFan(
void)
const;
398 void setMode(
const uint8_t mode);
401 virtual void setRaw(
const uint8_t new_code[],
427 explicit IRHitachiAc3(
const uint16_t pin,
const bool inverted =
false,
428 const bool use_modulation =
true);
438 #endif // SEND_HITACHI_AC3
442 void setRaw(
const uint8_t new_code[],
461 explicit IRHitachiAc344(
const uint16_t pin,
const bool inverted =
false,
462 const bool use_modulation =
true);
464 void setRaw(
const uint8_t new_code[],
467 #if SEND_HITACHI_AC344
469 #endif // SEND_HITACHI_AC344
478 #endif // IR_HITACHI_H_
void setPower(const bool on)
Change the power setting.
Definition: ir_Hitachi.cpp:1064
uint8_t _previoustemp
Definition: ir_Hitachi.h:421
const uint8_t kHitachiAc424Fan
Definition: ir_Hitachi.h:140
static uint8_t calcChecksum(const uint8_t state[], const uint16_t length=kHitachiAc1StateLength)
Calculate the checksum for a given state.
Definition: ir_Hitachi.cpp:446
uint8_t Mode
Definition: ir_Hitachi.h:44
const uint8_t kHitachiAc1Fan
Definition: ir_Hitachi.h:218
const uint8_t kHitachiAc344SwingHRightMax
Definition: ir_Hitachi.h:167
IRHitachiAc3(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Hitachi.cpp:1350
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Hitachi.cpp:1083
const uint8_t kHitachiAcMinTemp
Definition: ir_Hitachi.h:80
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Hitachi.cpp:363
IRsend _irsend
Instance of the IR send class.
Definition: ir_Hitachi.h:412
void setTemp(const uint8_t temp, bool setPrevious=true)
Set the temperature.
Definition: ir_Hitachi.cpp:1108
const uint8_t kHitachiAcMaxTemp
Definition: ir_Hitachi.h:81
void setSleep(const uint8_t mode)
Set the Sleep setting of the A/C.
Definition: ir_Hitachi.cpp:680
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Hitachi.cpp:138
void off(void)
Change the power setting to Off.
Definition: ir_Hitachi.cpp:1073
const uint8_t kHitachiAcAuto
Definition: ir_Hitachi.h:71
uint8_t Sleep
Definition: ir_Hitachi.h:202
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Hitachi.cpp:583
IRsend _irsend
Instance of the IR send class.
Definition: ir_Hitachi.h:448
uint8_t pad0[10]
Definition: ir_Hitachi.h:42
const uint8_t kHitachiAc344ButtonFan
Definition: ir_Hitachi.h:128
Native representation of a Hitachi 224-bit A/C message.
Definition: ir_Hitachi.h:38
const uint8_t kHitachiAc1Model_A
Definition: ir_Hitachi.h:213
const uint8_t kHitachiAc344ButtonPowerMode
Definition: ir_Hitachi.h:127
uint8_t Power
Definition: ir_Hitachi.h:204
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition: ir_Hitachi.cpp:279
void setPowerToggle(const bool on)
Change the power toggle setting.
Definition: ir_Hitachi.cpp:543
static uint8_t convertSwingH(const stdAc::swingh_t position)
Convert a standard A/C horizontal swing into its native setting.
Definition: ir_Hitachi.cpp:1525
void checksum(const uint16_t length=kHitachiAc1StateLength)
Calculate and set the checksum values for the internal state.
Definition: ir_Hitachi.cpp:460
const uint16_t kHitachiAcStateLength
Definition: IRremoteESP8266.h:979
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Hitachi.cpp:209
fanspeed_t
Common A/C settings for Fan Speeds.
Definition: IRsend.h:58
const uint8_t kHitachiAc344SwingHRight
Definition: ir_Hitachi.h:168
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Hitachi.cpp:1391
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Hitachi.h:437
uint8_t OnTimerLow
Definition: ir_Hitachi.h:197
void setSwingVertical(const bool on)
Set the Vertical Swing setting of the A/C.
Definition: ir_Hitachi.cpp:304
uint8_t raw[kHitachiAc424StateLength]
The state in native code.
Definition: ir_Hitachi.h:86
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Hitachi.cpp:425
Native representation of a Hitachi 104-bit A/C message.
Definition: ir_Hitachi.h:175
void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
void setSwingHorizontal(const bool on)
Set the Horizontal Swing setting of the A/C.
Definition: ir_Hitachi.cpp:316
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition: ir_Hitachi.cpp:1128
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Hitachi.cpp:1077
uint8_t pad[3]
Definition: ir_Hitachi.h:179
bool getSwingHorizontal(void) const
Get the Horizontal Swing setting of the A/C.
Definition: ir_Hitachi.cpp:310
uint8_t SwingToggle
Definition: ir_Hitachi.h:201
const uint16_t kHitachiAc1StateLength
Definition: IRremoteESP8266.h:982
void setSwingVToggle(const bool on)
Set the Vertical Swing toggle setting of the A/C.
Definition: ir_Hitachi.cpp:1174
uint8_t Fan
Definition: ir_Hitachi.h:101
const uint8_t kHitachiAc1ChecksumStartByte
Definition: ir_Hitachi.h:240
uint8_t raw[kHitachiAc1StateLength]
The state in native code.
Definition: ir_Hitachi.h:176
const uint8_t kHitachiAc344FanHigh
Definition: ir_Hitachi.h:159
void setOnTimer(const uint16_t mins)
Set the On Timer time.
Definition: ir_Hitachi.cpp:693
const uint8_t kHitachiAcFanHigh
Definition: ir_Hitachi.h:79
uint8_t pad1[9]
Definition: ir_Hitachi.h:63
const uint8_t kHitachiAc1Sleep3
Definition: ir_Hitachi.h:237
hitachi_ac1_remote_model_t getModel(void) const
Get/Detect the model of the A/C.
Definition: ir_Hitachi.cpp:500
const uint8_t kHitachiAc1TimerSize
Definition: ir_Hitachi.h:232
const uint8_t kHitachiAc344Fan
Definition: ir_Hitachi.h:144
uint8_t Mode
Definition: ir_Hitachi.h:100
Class for handling detailed Hitachi 53-byte/424-bit A/C messages.
Definition: ir_Hitachi.h:371
void setInvertedStates(void)
Update the internal consistency check for the protocol.
Definition: ir_Hitachi.cpp:1027
IRHitachiAc1(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Hitachi.cpp:420
void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Hitachi.cpp:490
const uint8_t kHitachiAc1Sleep1
Definition: ir_Hitachi.h:235
void send(const uint16_t repeat=kHitachiAcDefaultRepeat) override
Create and send the IR message to the A/C.
Definition: ir_Hitachi.cpp:1481
IRHitachiAc(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Hitachi.cpp:133
HitachiProtocol _
Definition: ir_Hitachi.h:296
uint8_t SwingH
Definition: ir_Hitachi.h:206
const uint8_t kHitachiAc1Auto
Definition: ir_Hitachi.h:221
void setSwingV(const bool on)
Control the vertical swing setting.
Definition: ir_Hitachi.cpp:1495
const uint8_t kHitachiAc344MaxTemp
Definition: ir_Hitachi.h:137
const uint16_t kHitachiAc3StateLength
Definition: IRremoteESP8266.h:986
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Hitachi.cpp:249
hitachi_ac1_remote_model_t
HITACHI_AC1 A/C model numbers.
Definition: IRsend.h:139
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Hitachi.h:315
const uint8_t kHitachiAc424ButtonSwingH
Definition: ir_Hitachi.h:126
const uint8_t kHitachiAc424ButtonTempDown
Definition: ir_Hitachi.h:123
Class for sending all basic IR protocols.
Definition: IRsend.h:187
const uint8_t kHitachiAc344SwingHAuto
Definition: ir_Hitachi.h:166
void setSwingH(const bool on)
Set the Horizontal Swing setting of the A/C.
Definition: ir_Hitachi.cpp:666
const uint8_t kHitachiAc344Heat
Definition: ir_Hitachi.h:147
Class for handling detailed Hitachi 224-bit A/C messages.
Definition: ir_Hitachi.h:246
int8_t calibrate(uint16_t hz=38000U)
Calculate & set any offsets to account for execution times during sending.
Definition: IRsend.cpp:207
const uint8_t kHitachiAc344SwingHLeftMax
Definition: ir_Hitachi.h:171
static bool validChecksum(const uint8_t state[], const uint16_t length=kHitachiAc1StateLength)
Verify the checksum is valid for a given state.
Definition: ir_Hitachi.cpp:468
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Hitachi.cpp:724
uint8_t SwingV
Definition: ir_Hitachi.h:115
const uint8_t kHitachiAc1FanLow
Definition: ir_Hitachi.h:225
Class for handling detailed Hitachi 344-bit A/C messages.
Definition: ir_Hitachi.h:459
const uint8_t kHitachiAc424MinTemp
Definition: ir_Hitachi.h:134
String toString(void) const override
Convert the internal state into a human readable string.
Definition: ir_Hitachi.cpp:1562
Hitachi1Protocol _
Definition: ir_Hitachi.h:366
const uint8_t kHitachiAc344FanAuto
Definition: ir_Hitachi.h:160
std::string String
Definition: IRremoteESP8266.h:1199
uint8_t Sum
Definition: ir_Hitachi.h:208
const uint8_t kHitachiAc1Model_B
Definition: ir_Hitachi.h:214
bool getSwingToggle(void) const
Get the Swing Toggle setting of the A/C.
Definition: ir_Hitachi.cpp:636
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Hitachi.cpp:336
static uint8_t calcChecksum(const uint8_t state[], const uint16_t length=kHitachiAcStateLength)
Calculate the checksum for a given state.
Definition: ir_Hitachi.cpp:163
const uint8_t kHitachiAc1FanHigh
Definition: ir_Hitachi.h:223
const uint8_t kHitachiAc424ButtonSwingV
Definition: ir_Hitachi.h:125
const uint8_t kHitachiAcDry
Definition: ir_Hitachi.h:74
void setButton(const uint8_t button)
Set the Button/Command pressed setting of the A/C.
Definition: ir_Hitachi.cpp:1166
const uint8_t kHitachiAc1Sleep2
Definition: ir_Hitachi.h:236
const uint8_t kHitachiAc424ButtonTempUp
Definition: ir_Hitachi.h:124
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Hitachi.cpp:1356
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Hitachi.cpp:1036
const uint8_t kHitachiAc424ButtonFan
Definition: ir_Hitachi.h:122
const uint8_t kHitachiAcFanAuto
Definition: ir_Hitachi.h:76
const uint8_t kHitachiAc344Dry
Definition: ir_Hitachi.h:146
Class for handling detailed Hitachi 15to27-byte/120to216-bit A/C messages.
Definition: ir_Hitachi.h:425
swingh_t
Common A/C settings for Horizontal Swing.
Definition: IRsend.h:83
void setModel(const hitachi_ac1_remote_model_t model)
Set the model of the A/C to emulate.
Definition: ir_Hitachi.cpp:509
const uint8_t kHitachiAc344FanLow
Definition: ir_Hitachi.h:157
const uint8_t kHitachiAc424FanMaxDry
Definition: ir_Hitachi.h:155
const uint8_t kHitachiAc424FanHigh
Definition: ir_Hitachi.h:152
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Hitachi.cpp:600
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Hitachi.cpp:1122
void setSwingToggle(const bool toggle)
Set the Swing toggle setting of the A/C.
Definition: ir_Hitachi.cpp:642
Class for handling detailed Hitachi 104-bit A/C messages.
Definition: ir_Hitachi.h:303
const uint8_t kHitachiAc344SwingHLeft
Definition: ir_Hitachi.h:170
uint8_t getSwingH(void) const
Get the current horizontal swing setting.
Definition: ir_Hitachi.cpp:1518
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Hitachi.cpp:1220
void on(void)
Change the power setting to On.
Definition: ir_Hitachi.cpp:548
const uint8_t kHitachiAc1TempSize
Definition: ir_Hitachi.h:228
uint8_t Temp
Definition: ir_Hitachi.h:190
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Hitachi.cpp:1206
uint8_t Power
Definition: ir_Hitachi.h:60
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Hitachi.cpp:523
uint8_t pad1[11]
Definition: ir_Hitachi.h:98
const uint8_t kHitachiAcFanMed
Definition: ir_Hitachi.h:78
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Hitachi.cpp:589
void on(void)
Change the power setting to On.
Definition: ir_Hitachi.cpp:220
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Hitachi.cpp:323
uint8_t Power
Definition: ir_Hitachi.h:105
static bool hasInvertedStates(const uint8_t state[], const uint16_t length)
Check if every second byte of the state, after the fixed header is inverted to the previous byte.
Definition: ir_Hitachi.cpp:1385
const uint16_t kHitachiAc424StateLength
Definition: IRremoteESP8266.h:992
virtual stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Hitachi.cpp:1246
uint8_t remote_state[kHitachiAc3StateLength]
The state in native code.
Definition: ir_Hitachi.h:454
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Hitachi.cpp:751
void off(void)
Change the power setting to Off.
Definition: ir_Hitachi.cpp:223
const uint8_t kHitachiAc1Heat
Definition: ir_Hitachi.h:220
const uint16_t kHitachiAcFreq
Definition: ir_Hitachi.h:70
bool getSwingVertical(void) const
Get the Vertical Swing setting of the A/C.
Definition: ir_Hitachi.cpp:298
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Hitachi.h:383
const uint8_t kHitachiAcFanLow
Definition: ir_Hitachi.h:77
void stateReset(void) override
Reset the internal state to auto fan, cooling, 23° Celsius.
Definition: ir_Hitachi.cpp:1472
const uint8_t kHitachiAc344FanMin
Definition: ir_Hitachi.h:156
const uint8_t kHitachiAc424FanAuto
Definition: ir_Hitachi.h:153
void setRaw(const uint8_t new_code[], const uint16_t length=kHitachiAcStateLength)
Set the internal state from a valid code for this protocol.
Definition: ir_Hitachi.cpp:195
const uint8_t kHitachiAc1FanMed
Definition: ir_Hitachi.h:224
void setPower(const bool on)
Change the power setting.
Definition: ir_Hitachi.cpp:529
bool getSwingH(void) const
Get the Horizontal Swing setting of the A/C.
Definition: ir_Hitachi.cpp:660
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Hitachi.cpp:775
IRHitachiAc424(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Hitachi.cpp:996
const uint8_t kHitachiAcCool
Definition: ir_Hitachi.h:73
const uint8_t kHitachiAc1Sleep4
Definition: ir_Hitachi.h:238
static stdAc::swingh_t toCommonSwingH(const uint8_t pos)
Convert a native horizontal swing postion to it's common equivalent.
Definition: ir_Hitachi.cpp:1539
void setRaw(const uint8_t new_code[], const uint16_t length=kHitachiAc1StateLength)
Set the internal state from a valid code for this protocol.
Definition: ir_Hitachi.cpp:483
const uint8_t kHitachiAcHeat
Definition: ir_Hitachi.h:72
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Hitachi.cpp:1032
friend class IRHitachiAc344
Definition: ir_Hitachi.h:372
const uint8_t kHitachiAc424MaxTemp
Definition: ir_Hitachi.h:135
void setInvertedStates(const uint16_t length=kHitachiAc3StateLength)
Invert every second byte of the internal state, after the fixed header.
Definition: ir_Hitachi.cpp:1376
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Hitachi.cpp:803
const uint16_t kHitachiAc344StateLength
Definition: IRremoteESP8266.h:990
IRsend _irsend
Instance of the IR send class.
Definition: ir_Hitachi.h:290
void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Hitachi.cpp:202
Hitachi424Protocol _
Definition: ir_Hitachi.h:418
const uint8_t kHitachiAc424FanTemp
Definition: ir_Hitachi.h:138
const uint8_t kHitachiAc1Cool
Definition: ir_Hitachi.h:219
uint8_t getFan(void) const
Get the current fan speed setting.
Definition: ir_Hitachi.cpp:275
uint8_t _previoustemp
Definition: ir_Hitachi.h:298
const uint8_t kHitachiAc1FanAuto
Definition: ir_Hitachi.h:222
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Hitachi.cpp:157
uint16_t getOnTimer(void) const
Get the On Timer vtime of the A/C.
Definition: ir_Hitachi.cpp:701
const uint8_t kHitachiAc424PowerOff
Definition: ir_Hitachi.h:164
bool getPower(void) const
Get the value of the current power setting.
Definition: ir_Hitachi.cpp:1058
const uint8_t kHitachiAc424FanMin
Definition: ir_Hitachi.h:149
uint8_t Temp
Definition: ir_Hitachi.h:96
virtual void stateReset(void)
Reset the internal state to a fixed known good state.
Definition: ir_Hitachi.cpp:1002
const uint8_t kHitachiAc344FanMax
Definition: ir_Hitachi.h:161
uint8_t Temp
Definition: ir_Hitachi.h:46
IRsend _irsend
Instance of the IR send class.
Definition: ir_Hitachi.h:360
bool getSwingV(void) const
Get the current vertical swing setting.
Definition: ir_Hitachi.cpp:1502
const uint8_t kHitachiAc424Dry
Definition: ir_Hitachi.h:142
void setSwingH(const uint8_t position)
Control the horizontal swing setting.
Definition: ir_Hitachi.cpp:1508
uint8_t pad2[7]
Definition: ir_Hitachi.h:107
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Hitachi.cpp:561
uint16_t getOffTimer(void) const
Get the Off Timer vtime of the A/C.
Definition: ir_Hitachi.cpp:716
const uint16_t kHitachiAcDefaultRepeat
Definition: IRremoteESP8266.h:981
uint8_t Fan
Definition: ir_Hitachi.h:186
const uint8_t kHitachiAc424PowerOn
Definition: ir_Hitachi.h:163
const uint8_t kHitachiAc344SwingHMiddle
Definition: ir_Hitachi.h:169
void checksum(const uint16_t length=kHitachiAcStateLength)
Calculate and set the checksum values for the internal state.
Definition: ir_Hitachi.cpp:172
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Hitachi.cpp:1193
uint8_t Fan
Definition: ir_Hitachi.h:50
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Hitachi.cpp:555
void setFan(const uint8_t speed, const bool force=false)
Set the speed of the fan.
Definition: ir_Hitachi.cpp:607
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Hitachi.cpp:737
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Hitachi.cpp:375
void setSwingV(const bool on)
Set the Vertical Swing setting of the A/C.
Definition: ir_Hitachi.cpp:654
uint8_t SwingV
Definition: ir_Hitachi.h:53
uint8_t OffTimerHigh
Definition: ir_Hitachi.h:195
String toString(void) const
Convert the current internal state into a human readable string.
Definition: ir_Hitachi.cpp:401
static bool validChecksum(const uint8_t state[], const uint16_t length=kHitachiAcStateLength)
Verify the checksum is valid for a given state.
Definition: ir_Hitachi.cpp:180
const uint8_t kHitachiAc424FanMedium
Definition: ir_Hitachi.h:151
bool getSwingV(void) const
Get the Vertical Swing setting of the A/C.
Definition: ir_Hitachi.cpp:648
const uint8_t kHitachiAc344ButtonTempUp
Definition: ir_Hitachi.h:130
stdAc::state_t toCommon(void) const override
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Hitachi.cpp:1552
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Hitachi.cpp:350
const uint8_t kHitachiAc424Cool
Definition: ir_Hitachi.h:141
void setRaw(const uint8_t new_code[], const uint16_t length=kHitachiAc3StateLength)
Set the internal state from a valid code for this protocol.
Definition: ir_Hitachi.cpp:1403
const uint8_t kHitachiAcFan
Definition: ir_Hitachi.h:75
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Hitachi.cpp:1395
uint8_t Sum
Definition: ir_Hitachi.h:65
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Hitachi.cpp:440
bool getPowerToggle(void) const
Get the value of the current power toggle setting.
Definition: ir_Hitachi.cpp:537
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Hitachi.cpp:187
void setOffTimer(const uint16_t mins)
Set the Off Timer time.
Definition: ir_Hitachi.cpp:708
uint8_t Mode
Definition: ir_Hitachi.h:187
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Hitachi.cpp:764
uint8_t Model
Definition: ir_Hitachi.h:182
uint8_t OnTimerHigh
Definition: ir_Hitachi.h:199
uint8_t getSleep(void) const
Get the Sleep setting of the A/C.
Definition: ir_Hitachi.cpp:673
virtual void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
Send the current internal state as an IR message.
Definition: ir_Hitachi.cpp:1051
const uint8_t kHitachiAc344ButtonSwingH
Definition: ir_Hitachi.h:132
void setPower(const bool on)
Change the power setting.
Definition: ir_Hitachi.cpp:215
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition: ir_Hitachi.cpp:227
uint8_t SwingV
Definition: ir_Hitachi.h:205
virtual void setRaw(const uint8_t new_code[], const uint16_t length=kHitachiAc424StateLength)
Set the internal state from a valid code for this protocol.
Definition: ir_Hitachi.cpp:1044
void setRaw(const uint8_t new_code[], const uint16_t length=kHitachiAc344StateLength) override
Set the internal state from a valid code for this protocol.
Definition: ir_Hitachi.cpp:1489
const uint8_t kHitachiAc424FanLow
Definition: ir_Hitachi.h:150
uint8_t PowerToggle
Definition: ir_Hitachi.h:203
const uint8_t kHitachiAcAutoTemp
Definition: ir_Hitachi.h:82
Native representation of a Hitachi 53-byte/424-bit A/C message.
Definition: ir_Hitachi.h:85
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Hitachi.h:257
const uint8_t kHitachiAc344FanMedium
Definition: ir_Hitachi.h:158
const uint8_t kHitachiAc1Dry
Definition: ir_Hitachi.h:217
const uint8_t kHitachiAc344Cool
Definition: ir_Hitachi.h:145
const uint8_t kHitachiAc424FanMax
Definition: ir_Hitachi.h:154
uint8_t getTemp(void) const
Get the current temperature setting.
Definition: ir_Hitachi.cpp:1101
const uint8_t kHitachiAc424Heat
Definition: ir_Hitachi.h:143
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Hitachi.cpp:1233
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Hitachi.cpp:231
uint8_t raw[kHitachiAcStateLength]
The state in native code.
Definition: ir_Hitachi.h:39
uint8_t SwingH
Definition: ir_Hitachi.h:56
uint8_t Button
Definition: ir_Hitachi.h:91
uint8_t OffTimerLow
Definition: ir_Hitachi.h:193
bool getSwingVToggle(void) const
Get the Vertical Swing toggle setting of the A/C.
Definition: ir_Hitachi.cpp:1186
Structure to hold a common A/C state.
Definition: IRsend.h:97
const uint8_t kHitachiAc344ButtonTempDown
Definition: ir_Hitachi.h:129
const uint8_t kHitachiAc424ButtonPowerMode
Definition: ir_Hitachi.h:121
const uint8_t kHitachiAc1TempAuto
Definition: ir_Hitachi.h:230
const uint8_t kHitachiAc344MinTemp
Definition: ir_Hitachi.h:136
const uint8_t kHitachiAc1TempDelta
Definition: ir_Hitachi.h:229
void on(void)
Change the power setting to On.
Definition: ir_Hitachi.cpp:1070
uint8_t getButton(void) const
Get the Button/Command setting of the A/C.
Definition: ir_Hitachi.cpp:1160
void off(void)
Change the power setting to Off.
Definition: ir_Hitachi.cpp:551
String _toString(void) const
Convert the internal state into a human readable string for the settings that are common to protocols...
Definition: ir_Hitachi.cpp:1274
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition: ir_Hitachi.cpp:475
const uint8_t kHitachiAc344ButtonSwingV
Definition: ir_Hitachi.h:131
const uint8_t kHitachiAc1SleepOff
Definition: ir_Hitachi.h:234
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Hitachi.cpp:255
uint8_t SwingH
Definition: ir_Hitachi.h:109
uint8_t pad0[11]
Definition: ir_Hitachi.h:89
virtual String toString(void) const
Convert the internal state into a human readable string.
Definition: ir_Hitachi.cpp:1315
opmode_t
Common A/C settings for A/C operating modes.
Definition: IRsend.h:46