32#define __STDC_LIMIT_MACROS
40#include "IRsend_test.h"
374 explicit IRHitachiAc(
const uint16_t pin,
const bool inverted =
false,
375 const bool use_modulation =
true);
390 void setTemp(
const uint8_t temp);
392 void setFan(
const uint8_t speed);
393 uint8_t
getFan(
void)
const;
394 void setMode(
const uint8_t mode);
401 void setRaw(
const uint8_t new_code[],
431 explicit IRHitachiAc1(
const uint16_t pin,
const bool inverted =
false,
432 const bool use_modulation =
true);
452 void setTemp(
const uint8_t temp);
454 void setFan(
const uint8_t speed,
const bool force =
false);
455 uint8_t
getFan(
void)
const;
456 void setMode(
const uint8_t mode);
471 void setRaw(
const uint8_t new_code[],
501 explicit IRHitachiAc424(
const uint16_t pin,
const bool inverted =
false,
502 const bool use_modulation =
true);
504#if SEND_HITACHI_AC424
517 void setTemp(
const uint8_t temp,
bool setPrevious =
true);
519 virtual void setFan(
const uint8_t speed);
520 uint8_t
getFan(
void)
const;
525 void setMode(
const uint8_t mode);
528 virtual void setRaw(
const uint8_t new_code[],
554 explicit IRHitachiAc3(
const uint16_t pin,
const bool inverted =
false,
555 const bool use_modulation =
true);
569 void setRaw(
const uint8_t new_code[],
588 explicit IRHitachiAc344(
const uint16_t pin,
const bool inverted =
false,
589 const bool use_modulation =
true);
591 void setRaw(
const uint8_t new_code[],
594#if SEND_HITACHI_AC344
609 explicit IRHitachiAc264(
const uint16_t pin,
const bool inverted =
false,
610 const bool use_modulation =
true);
612 void setRaw(
const uint8_t new_code[],
614 void setFan(
const uint8_t speed)
override;
618#if SEND_HITACHI_AC264
626 explicit IRHitachiAc296(
const uint16_t pin,
const bool inverted =
false,
627 const bool use_modulation =
true);
630#if SEND_HITACHI_AC296
638 void setTemp(
const uint8_t temp);
640 void setFan(
const uint8_t speed);
641 uint8_t
getFan(
void)
const;
642 void setMode(
const uint8_t mode);
646 void setRaw(
const uint8_t new_code[],
const uint16_t kHitachiAc344StateLength
Definition IRremoteESP8266.h:1308
const uint16_t kHitachiAc296StateLength
Definition IRremoteESP8266.h:1306
const uint16_t kHitachiAcStateLength
Definition IRremoteESP8266.h:1293
const uint16_t kHitachiAc3StateLength
Definition IRremoteESP8266.h:1300
const uint16_t kHitachiAc1StateLength
Definition IRremoteESP8266.h:1296
const uint16_t kHitachiAcDefaultRepeat
Definition IRremoteESP8266.h:1295
const uint16_t kHitachiAc264StateLength
Definition IRremoteESP8266.h:1304
std::string String
Definition IRremoteESP8266.h:1564
const uint16_t kHitachiAc424StateLength
Definition IRremoteESP8266.h:1310
hitachi_ac1_remote_model_t
HITACHI_AC1 A/C model numbers.
Definition IRsend.h:169
Class for handling detailed Hitachi 104-bit A/C messages.
Definition ir_Hitachi.h:429
bool getPower(void) const
Get the value of the current power setting.
Definition ir_Hitachi.cpp:533
bool getPowerToggle(void) const
Get the value of the current power toggle setting.
Definition ir_Hitachi.cpp:547
void setTemp(const uint8_t temp)
Set the temperature.
Definition ir_Hitachi.cpp:599
bool getSwingH(void) const
Get the Horizontal Swing setting of the A/C.
Definition ir_Hitachi.cpp:670
void setSwingV(const bool on)
Set the Vertical Swing setting of the A/C.
Definition ir_Hitachi.cpp:664
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition ir_Hitachi.cpp:571
String toString(void) const
Convert the current internal state into a human readable string.
Definition ir_Hitachi.cpp:813
void setSwingToggle(const bool toggle)
Set the Swing toggle setting of the A/C.
Definition ir_Hitachi.cpp:652
void begin(void)
Set up hardware to be able to send a message.
Definition ir_Hitachi.cpp:450
void setSleep(const uint8_t mode)
Set the Sleep setting of the A/C.
Definition ir_Hitachi.cpp:690
uint16_t getOffTimer(void) const
Get the Off Timer vtime of the A/C.
Definition ir_Hitachi.cpp:726
uint8_t getTemp(void) const
Get the current temperature setting.
Definition ir_Hitachi.cpp:593
void setPower(const bool on)
Change the power setting.
Definition ir_Hitachi.cpp:539
uint16_t getOnTimer(void) const
Get the On Timer vtime of the A/C.
Definition ir_Hitachi.cpp:711
void setOnTimer(const uint16_t mins)
Set the On Timer time.
Definition ir_Hitachi.cpp:703
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition ir_Hitachi.cpp:761
IRsend _irsend
Instance of the IR send class.
Definition ir_Hitachi.h:486
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition ir_Hitachi.cpp:734
void setOffTimer(const uint16_t mins)
Set the Off Timer time.
Definition ir_Hitachi.cpp:718
void off(void)
Change the power setting to Off.
Definition ir_Hitachi.cpp:561
bool getSwingV(void) const
Get the Vertical Swing setting of the A/C.
Definition ir_Hitachi.cpp:658
static uint8_t calcChecksum(const uint8_t state[], const uint16_t length=kHitachiAc1StateLength)
Calculate the checksum for a given state.
Definition ir_Hitachi.cpp:456
void setFan(const uint8_t speed, const bool force=false)
Set the speed of the fan.
Definition ir_Hitachi.cpp:617
bool getSwingToggle(void) const
Get the Swing Toggle setting of the A/C.
Definition ir_Hitachi.cpp:646
uint8_t getSleep(void) const
Get the Sleep setting of the A/C.
Definition ir_Hitachi.cpp:683
uint8_t getFan(void) const
Get the current fan speed setting.
Definition ir_Hitachi.cpp:610
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition ir_Hitachi.h:441
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition ir_Hitachi.cpp:747
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition ir_Hitachi.cpp:435
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition ir_Hitachi.cpp:774
hitachi_ac1_remote_model_t getModel(void) const
Get/Detect the model of the A/C.
Definition ir_Hitachi.cpp:510
void checksum(const uint16_t length=kHitachiAc1StateLength)
Calculate and set the checksum values for the internal state.
Definition ir_Hitachi.cpp:470
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:478
void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
Send the current internal state as an IR message.
Definition ir_Hitachi.cpp:500
void setModel(const hitachi_ac1_remote_model_t model)
Set the model of the A/C to emulate.
Definition ir_Hitachi.cpp:519
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition ir_Hitachi.cpp:565
Hitachi1Protocol _
Definition ir_Hitachi.h:492
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition ir_Hitachi.cpp:785
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition ir_Hitachi.cpp:485
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:493
void setPowerToggle(const bool on)
Change the power toggle setting.
Definition ir_Hitachi.cpp:553
void on(void)
Change the power setting to On.
Definition ir_Hitachi.cpp:558
void setSwingH(const bool on)
Set the Horizontal Swing setting of the A/C.
Definition ir_Hitachi.cpp:676
Class for handling detailed Hitachi 264-bit A/C messages.
Definition ir_Hitachi.h:607
void setRaw(const uint8_t new_code[], const uint16_t length=kHitachiAc264StateLength) override
Set the internal state from a valid code for this protocol.
Definition ir_Hitachi.cpp:1643
void stateReset(void) override
Reset the internal state to auto fan, cooling, 23° Celsius.
Definition ir_Hitachi.cpp:1626
stdAc::state_t toCommon(void) const override
Convert the current internal state into its stdAc::state_t equivalent.
Definition ir_Hitachi.cpp:1690
void setFan(const uint8_t speed) override
Set the speed of the fan.
Definition ir_Hitachi.cpp:1649
void send(const uint16_t repeat=kHitachiAcDefaultRepeat) override
Create and send the IR message to the A/C.
Definition ir_Hitachi.cpp:1635
stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed) const override
Convert a native fan speed into its stdAc equivalent.
Definition ir_Hitachi.cpp:1679
String toString(void) const override
Convert the internal state into a human readable string.
Definition ir_Hitachi.cpp:1699
uint8_t convertFan(const stdAc::fanspeed_t speed) const override
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition ir_Hitachi.cpp:1665
Definition ir_Hitachi.h:624
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition ir_Hitachi.cpp:1843
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition ir_Hitachi.cpp:1911
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition ir_Hitachi.cpp:1813
IRsend _irsend
Instance of the IR send class.
Definition ir_Hitachi.h:657
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition ir_Hitachi.cpp:1809
HitachiAC296Protocol _
Definition ir_Hitachi.h:664
void setRaw(const uint8_t new_code[], const uint16_t length=kHitachiAc296StateLength)
Set the internal state from a valid code for this protocol.
Definition ir_Hitachi.cpp:1919
void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
Send the current internal state as an IR message.
Definition ir_Hitachi.cpp:1788
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition ir_Hitachi.cpp:1831
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition ir_Hitachi.cpp:1877
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:1777
String toString(void) const
Convert the current internal state into a human readable string.
Definition ir_Hitachi.cpp:1952
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition ir_Hitachi.cpp:1885
uint8_t getTemp(void) const
Get the current temperature setting.
Definition ir_Hitachi.cpp:1856
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition ir_Hitachi.cpp:1899
void off(void)
Change the power setting to Off.
Definition ir_Hitachi.cpp:1805
void setTemp(const uint8_t temp)
Set the temperature.
Definition ir_Hitachi.cpp:1860
bool getPower(void) const
Get the value of the current power setting.
Definition ir_Hitachi.cpp:1795
void begin(void)
Set up hardware to be able to send a message.
Definition ir_Hitachi.cpp:1783
void on(void)
Change the power setting to On.
Definition ir_Hitachi.cpp:1802
void setInvertedStates(void)
Update the internal consistency check for the protocol.
Definition ir_Hitachi.cpp:1768
void stateReset(void)
Reset the internal state to auto fan, heating, & 24° Celsius.
Definition ir_Hitachi.cpp:1735
void setPower(const bool on)
Change the power setting.
Definition ir_Hitachi.cpp:1799
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition ir_Hitachi.cpp:1926
uint8_t getFan(void) const
Get the current fan speed setting.
Definition ir_Hitachi.cpp:1873
Class for handling detailed Hitachi 344-bit A/C messages.
Definition ir_Hitachi.h:586
stdAc::state_t toCommon(void) const override
Convert the current internal state into its stdAc::state_t equivalent.
Definition ir_Hitachi.cpp:1570
static stdAc::swingh_t toCommonSwingH(const uint8_t pos)
Convert a native horizontal swing postion to it's common equivalent.
Definition ir_Hitachi.cpp:1557
static uint8_t convertSwingH(const stdAc::swingh_t position)
Convert a standard A/C horizontal swing into its native setting.
Definition ir_Hitachi.cpp:1543
void setSwingV(const bool on)
Control the vertical swing setting.
Definition ir_Hitachi.cpp:1513
void stateReset(void) override
Reset the internal state to auto fan, cooling, 23° Celsius.
Definition ir_Hitachi.cpp:1490
void setSwingH(const uint8_t position)
Control the horizontal swing setting.
Definition ir_Hitachi.cpp:1526
String toString(void) const override
Convert the internal state into a human readable string.
Definition ir_Hitachi.cpp:1580
bool getSwingV(void) const
Get the current vertical swing setting.
Definition ir_Hitachi.cpp:1520
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:1507
void send(const uint16_t repeat=kHitachiAcDefaultRepeat) override
Create and send the IR message to the A/C.
Definition ir_Hitachi.cpp:1499
uint8_t getSwingH(void) const
Get the current horizontal swing setting.
Definition ir_Hitachi.cpp:1536
Class for handling detailed Hitachi 15to27-byte/120to216-bit A/C messages.
Definition ir_Hitachi.h:552
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition ir_Hitachi.h:564
uint8_t remote_state[kHitachiAc3StateLength]
The state in native code.
Definition ir_Hitachi.h:581
void begin(void)
Set up hardware to be able to send a message.
Definition ir_Hitachi.cpp:1409
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition ir_Hitachi.cpp:1374
IRsend _irsend
Instance of the IR send class.
Definition ir_Hitachi.h:575
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition ir_Hitachi.cpp:1413
void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
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:1403
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:1421
void setInvertedStates(const uint16_t length=kHitachiAc3StateLength)
Invert every second byte of the internal state, after the fixed header.
Definition ir_Hitachi.cpp:1394
Class for handling detailed Hitachi 53-byte/424-bit A/C messages.
Definition ir_Hitachi.h:497
bool getPower(void) const
Get the value of the current power setting.
Definition ir_Hitachi.cpp:1078
void off(void)
Change the power setting to Off.
Definition ir_Hitachi.cpp:1091
void begin(void)
Set up hardware to be able to send a message.
Definition ir_Hitachi.cpp:1052
uint8_t getTemp(void) const
Get the current temperature setting.
Definition ir_Hitachi.cpp:1119
void setSwingVToggle(const bool on)
Set the Vertical Swing toggle setting of the A/C.
Definition ir_Hitachi.cpp:1192
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition ir_Hitachi.cpp:1238
uint8_t getFan(void) const
Get the current fan speed setting.
Definition ir_Hitachi.cpp:1140
virtual String toString(void) const
Convert the internal state into a human readable string.
Definition ir_Hitachi.cpp:1333
friend class IRHitachiAc264
Definition ir_Hitachi.h:498
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition ir_Hitachi.cpp:1101
virtual stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed) const
Convert a native fan speed into its stdAc equivalent.
Definition ir_Hitachi.cpp:1251
IRsend _irsend
Instance of the IR send class.
Definition ir_Hitachi.h:539
friend class IRHitachiAc344
Definition ir_Hitachi.h:499
virtual uint8_t convertFan(const stdAc::fanspeed_t speed) const
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition ir_Hitachi.cpp:1224
void setTemp(const uint8_t temp, bool setPrevious=true)
Set the temperature.
Definition ir_Hitachi.cpp:1126
void setPower(const bool on)
Change the power setting.
Definition ir_Hitachi.cpp:1082
uint8_t getButton(void) const
Get the Button/Command setting of the A/C.
Definition ir_Hitachi.cpp:1178
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition ir_Hitachi.cpp:1095
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition ir_Hitachi.cpp:1211
Hitachi424Protocol _
Definition ir_Hitachi.h:545
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition ir_Hitachi.h:510
bool getSwingVToggle(void) const
Get the Vertical Swing toggle setting of the A/C.
Definition ir_Hitachi.cpp:1204
uint8_t _previoustemp
Definition ir_Hitachi.h:548
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition ir_Hitachi.cpp:1056
void setInvertedStates(void)
Update the internal consistency check for the protocol.
Definition ir_Hitachi.cpp:1047
virtual stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition ir_Hitachi.cpp:1264
void on(void)
Change the power setting to On.
Definition ir_Hitachi.cpp:1088
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:1064
virtual void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
Send the current internal state as an IR message.
Definition ir_Hitachi.cpp:1071
void setButton(const uint8_t button)
Set the Button/Command pressed setting of the A/C.
Definition ir_Hitachi.cpp:1184
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:1292
virtual void setFan(const uint8_t speed)
Set the speed of the fan.
Definition ir_Hitachi.cpp:1146
virtual void stateReset(void)
Reset the internal state to a fixed known good state.
Definition ir_Hitachi.cpp:1021
Class for handling detailed Hitachi 224-bit A/C messages.
Definition ir_Hitachi.h:372
bool getSwingHorizontal(void) const
Get the Horizontal Swing setting of the A/C.
Definition ir_Hitachi.cpp:320
void stateReset(void)
Reset the internal state to a fixed known good state.
Definition ir_Hitachi.cpp:148
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition ir_Hitachi.cpp:289
IRsend _irsend
Instance of the IR send class.
Definition ir_Hitachi.h:416
uint8_t _previoustemp
Definition ir_Hitachi.h:424
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition ir_Hitachi.cpp:241
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:190
stdAc::state_t toCommon(void) const
Convert the current internal state into its stdAc::state_t equivalent.
Definition ir_Hitachi.cpp:385
void checksum(const uint16_t length=kHitachiAcStateLength)
Calculate and set the checksum values for the internal state.
Definition ir_Hitachi.cpp:182
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:205
HitachiProtocol _
Definition ir_Hitachi.h:422
uint8_t getTemp(void) const
Get the current temperature setting.
Definition ir_Hitachi.cpp:259
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition ir_Hitachi.cpp:346
void begin(void)
Set up hardware to be able to send a message.
Definition ir_Hitachi.cpp:167
void off(void)
Change the power setting to Off.
Definition ir_Hitachi.cpp:233
static uint8_t calcChecksum(const uint8_t state[], const uint16_t length=kHitachiAcStateLength)
Calculate the checksum for a given state.
Definition ir_Hitachi.cpp:173
void setSwingVertical(const bool on)
Set the Vertical Swing setting of the A/C.
Definition ir_Hitachi.cpp:314
void on(void)
Change the power setting to On.
Definition ir_Hitachi.cpp:230
bool getPower(void) const
Get the value of the current power setting.
Definition ir_Hitachi.cpp:219
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition ir_Hitachi.cpp:197
void setTemp(const uint8_t temp)
Set the temperature.
Definition ir_Hitachi.cpp:265
String toString(void) const
Convert the current internal state into a human readable string.
Definition ir_Hitachi.cpp:411
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition ir_Hitachi.h:383
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition ir_Hitachi.cpp:237
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition ir_Hitachi.cpp:360
bool getSwingVertical(void) const
Get the Vertical Swing setting of the A/C.
Definition ir_Hitachi.cpp:308
void setPower(const bool on)
Change the power setting.
Definition ir_Hitachi.cpp:225
uint8_t getFan(void) const
Get the current fan speed setting.
Definition ir_Hitachi.cpp:285
void setSwingHorizontal(const bool on)
Set the Horizontal Swing setting of the A/C.
Definition ir_Hitachi.cpp:326
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition ir_Hitachi.cpp:333
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition ir_Hitachi.cpp:373
void send(const uint16_t repeat=kHitachiAcDefaultRepeat)
Send the current internal state as an IR message.
Definition ir_Hitachi.cpp:212
Class for sending all basic IR protocols.
Definition IRsend.h:249
int8_t calibrate(uint16_t hz=38000U)
Calculate & set any offsets to account for execution times during sending.
Definition IRsend.cpp:209
const uint8_t kHitachiAc264Heat
Definition ir_Hitachi.h:292
const uint8_t kHitachiAc1FanLow
Definition ir_Hitachi.h:230
const uint8_t kHitachiAc344ButtonTempDown
Definition ir_Hitachi.h:137
const uint8_t kHitachiAc296MaxTemp
Definition ir_Hitachi.h:363
const uint8_t kHitachiAcFanLow
Definition ir_Hitachi.h:83
const uint8_t kHitachiAc344ButtonSwingH
Definition ir_Hitachi.h:140
const uint8_t kHitachiAc1Cool
Definition ir_Hitachi.h:224
const uint8_t kHitachiAc264Fan
Definition ir_Hitachi.h:289
const uint8_t kHitachiAc1Sleep3
Definition ir_Hitachi.h:242
const uint8_t kHitachiAcDry
Definition ir_Hitachi.h:80
const uint8_t kHitachiAc296DryCool
Definition ir_Hitachi.h:347
const uint8_t kHitachiAc1Sleep2
Definition ir_Hitachi.h:241
const uint8_t kHitachiAc296AutoDehumidifying
Definition ir_Hitachi.h:351
const uint8_t kHitachiAc1Sleep4
Definition ir_Hitachi.h:243
const uint8_t kHitachiAc424MaxTemp
Definition ir_Hitachi.h:143
const uint8_t kHitachiAc1Auto
Definition ir_Hitachi.h:226
const uint8_t kHitachiAc1TempDelta
Definition ir_Hitachi.h:234
const uint8_t kHitachiAc344Fan
Definition ir_Hitachi.h:152
const uint8_t kHitachiAcCool
Definition ir_Hitachi.h:79
const uint8_t kHitachiAc264ButtonTempUp
Definition ir_Hitachi.h:285
const uint8_t kHitachiAc1Model_B
Definition ir_Hitachi.h:219
const uint8_t kHitachiAc424ButtonPowerMode
Definition ir_Hitachi.h:129
const uint8_t kHitachiAc264FanMedium
Definition ir_Hitachi.h:295
const uint8_t kHitachiAc296FanSilent
Definition ir_Hitachi.h:355
const uint8_t kHitachiAc264ButtonTempDown
Definition ir_Hitachi.h:284
const uint8_t kHitachiAc264FanAuto
Definition ir_Hitachi.h:297
const uint8_t kHitachiAc424Fan
Definition ir_Hitachi.h:148
const uint8_t kHitachiAc344Dry
Definition ir_Hitachi.h:154
const uint8_t kHitachiAc344ButtonPowerMode
Definition ir_Hitachi.h:135
const uint8_t kHitachiAc296CondensationControl
Definition ir_Hitachi.h:353
const uint8_t kHitachiAc264ButtonPowerMode
Definition ir_Hitachi.h:282
const uint8_t kHitachiAc424MinTemp
Definition ir_Hitachi.h:142
const uint8_t kHitachiAc424FanMedium
Definition ir_Hitachi.h:159
const uint8_t kHitachiAc264MinTemp
Definition ir_Hitachi.h:287
const uint16_t kHitachiAcFreq
Definition ir_Hitachi.h:76
const uint8_t kHitachiAc296FanMedium
Definition ir_Hitachi.h:357
const uint8_t kHitachiAc264Cool
Definition ir_Hitachi.h:290
const uint8_t kHitachiAc344MaxTemp
Definition ir_Hitachi.h:145
const uint8_t kHitachiAc424ButtonFan
Definition ir_Hitachi.h:130
const uint8_t kHitachiAc344SwingHAuto
Definition ir_Hitachi.h:171
const uint8_t kHitachiAc296FanAuto
Definition ir_Hitachi.h:359
const uint8_t kHitachiAc424Dry
Definition ir_Hitachi.h:150
const uint8_t kHitachiAc424ButtonSwingV
Definition ir_Hitachi.h:133
const uint8_t kHitachiAc424Heat
Definition ir_Hitachi.h:151
const uint8_t kHitachiAc344ButtonFan
Definition ir_Hitachi.h:136
const uint8_t kHitachiAc1Model_A
Definition ir_Hitachi.h:218
const uint8_t kHitachiAc296Auto
Definition ir_Hitachi.h:350
const uint8_t kHitachiAc424FanMax
Definition ir_Hitachi.h:162
const uint8_t kHitachiAc296QuickLaundry
Definition ir_Hitachi.h:352
const uint8_t kHitachiAcMaxTemp
Definition ir_Hitachi.h:87
const uint8_t kHitachiAc344FanAuto
Definition ir_Hitachi.h:168
const uint8_t kHitachiAc424Cool
Definition ir_Hitachi.h:149
const uint8_t kHitachiAcFan
Definition ir_Hitachi.h:81
const uint8_t kHitachiAcFanAuto
Definition ir_Hitachi.h:82
const uint8_t kHitachiAc344Heat
Definition ir_Hitachi.h:155
const uint8_t kHitachiAc1FanAuto
Definition ir_Hitachi.h:227
const uint8_t kHitachiAc296FanHigh
Definition ir_Hitachi.h:358
const uint8_t kHitachiAc264FanMin
Definition ir_Hitachi.h:293
const uint8_t kHitachiAc344MinTemp
Definition ir_Hitachi.h:144
const uint8_t kHitachiAc344ButtonTempUp
Definition ir_Hitachi.h:138
const uint8_t kHitachiAc264Dry
Definition ir_Hitachi.h:291
const uint8_t kHitachiAc344SwingHMiddle
Definition ir_Hitachi.h:174
const uint8_t kHitachiAc1Dry
Definition ir_Hitachi.h:222
const uint8_t kHitachiAc344FanHigh
Definition ir_Hitachi.h:167
const uint8_t kHitachiAcFanHigh
Definition ir_Hitachi.h:85
const uint8_t kHitachiAc296Dehumidify
Definition ir_Hitachi.h:348
const uint8_t kHitachiAc424FanTemp
Definition ir_Hitachi.h:146
const uint8_t kHitachiAc264ButtonSwingV
Definition ir_Hitachi.h:286
const uint8_t kHitachiAc264MaxTemp
Definition ir_Hitachi.h:288
const uint8_t kHitachiAc344SwingHRightMax
Definition ir_Hitachi.h:172
const uint8_t kHitachiAc344Cool
Definition ir_Hitachi.h:153
const uint8_t kHitachiAc344ButtonSwingV
Definition ir_Hitachi.h:139
const uint8_t kHitachiAc1SleepOff
Definition ir_Hitachi.h:239
const uint8_t kHitachiAc264ButtonFan
Definition ir_Hitachi.h:283
const uint8_t kHitachiAcMinTemp
Definition ir_Hitachi.h:86
const uint8_t kHitachiAc296Cool
Definition ir_Hitachi.h:346
const uint8_t kHitachiAc264FanLow
Definition ir_Hitachi.h:294
const uint8_t kHitachiAc344FanMedium
Definition ir_Hitachi.h:166
const uint8_t kHitachiAcAutoTemp
Definition ir_Hitachi.h:88
const uint8_t kHitachiAc424FanHigh
Definition ir_Hitachi.h:160
const uint8_t kHitachiAc424FanMin
Definition ir_Hitachi.h:157
const uint8_t kHitachiAc296TempAuto
Definition ir_Hitachi.h:361
const uint8_t kHitachiAc1Sleep1
Definition ir_Hitachi.h:240
const uint8_t kHitachiAc1Heat
Definition ir_Hitachi.h:225
const uint8_t kHitachiAc296FanLow
Definition ir_Hitachi.h:356
const uint8_t kHitachiAc344FanMin
Definition ir_Hitachi.h:164
const uint8_t kHitachiAc296MinTemp
Definition ir_Hitachi.h:362
const uint8_t kHitachiAc1Fan
Definition ir_Hitachi.h:223
const uint8_t kHitachiAc424ButtonTempUp
Definition ir_Hitachi.h:132
const uint8_t kHitachiAcFanMed
Definition ir_Hitachi.h:84
const uint8_t kHitachiAc424FanLow
Definition ir_Hitachi.h:158
const uint8_t kHitachiAc344FanLow
Definition ir_Hitachi.h:165
const uint8_t kHitachiAc1FanHigh
Definition ir_Hitachi.h:228
const uint8_t kHitachiAc296Heat
Definition ir_Hitachi.h:349
const uint8_t kHitachiAc344SwingHLeftMax
Definition ir_Hitachi.h:176
const uint8_t kHitachiAc1TempAuto
Definition ir_Hitachi.h:235
const uint8_t kHitachiAc424ButtonTempDown
Definition ir_Hitachi.h:131
const uint8_t kHitachiAc424FanAuto
Definition ir_Hitachi.h:161
const uint8_t kHitachiAcHeat
Definition ir_Hitachi.h:78
const uint8_t kHitachiAc344FanMax
Definition ir_Hitachi.h:169
const uint8_t kHitachiAc264FanHigh
Definition ir_Hitachi.h:296
const uint8_t kHitachiAc424ButtonSwingH
Definition ir_Hitachi.h:134
const uint8_t kHitachiAc344SwingHRight
Definition ir_Hitachi.h:173
const uint8_t kHitachiAc344SwingHLeft
Definition ir_Hitachi.h:175
const uint8_t kHitachiAc424FanMaxDry
Definition ir_Hitachi.h:163
const uint8_t kHitachiAc296PowerOff
Definition ir_Hitachi.h:366
const uint8_t kHitachiAcAuto
Definition ir_Hitachi.h:77
const uint8_t kHitachiAc1ChecksumStartByte
Definition ir_Hitachi.h:245
const uint8_t kHitachiAc1FanMed
Definition ir_Hitachi.h:229
const uint8_t kHitachiAc296PowerOn
Definition ir_Hitachi.h:365
const uint8_t kHitachiAc1TimerSize
Definition ir_Hitachi.h:237
const uint8_t kHitachiAc1TempSize
Definition ir_Hitachi.h:233
fanspeed_t
Common A/C settings for Fan Speeds.
Definition IRsend.h:61
opmode_t
Common A/C settings for A/C operating modes.
Definition IRsend.h:49
swingh_t
Common A/C settings for Horizontal Swing.
Definition IRsend.h:100
Structure to hold a common A/C state.
Definition IRsend.h:114
Native representation of a Hitachi 104-bit A/C message.
Definition ir_Hitachi.h:180
uint8_t Mode
Definition ir_Hitachi.h:192
uint8_t OffTimerHigh
Definition ir_Hitachi.h:200
uint8_t pad[3]
Definition ir_Hitachi.h:184
uint8_t SwingToggle
Definition ir_Hitachi.h:206
uint8_t Power
Definition ir_Hitachi.h:209
uint8_t OnTimerLow
Definition ir_Hitachi.h:202
uint8_t Sleep
Definition ir_Hitachi.h:207
uint8_t SwingV
Definition ir_Hitachi.h:210
uint8_t OnTimerHigh
Definition ir_Hitachi.h:204
uint8_t SwingH
Definition ir_Hitachi.h:211
uint8_t Model
Definition ir_Hitachi.h:187
uint8_t Temp
Definition ir_Hitachi.h:195
uint8_t raw[kHitachiAc1StateLength]
The state in native code.
Definition ir_Hitachi.h:181
uint8_t Fan
Definition ir_Hitachi.h:191
uint8_t PowerToggle
Definition ir_Hitachi.h:208
uint8_t OffTimerLow
Definition ir_Hitachi.h:198
uint8_t Sum
Definition ir_Hitachi.h:213
Native representation of a Hitachi 53-byte/424-bit A/C message.
Definition ir_Hitachi.h:91
uint8_t Power
Definition ir_Hitachi.h:112
uint8_t raw[kHitachiAc424StateLength]
The state in native code.
Definition ir_Hitachi.h:92
uint8_t Fan
Definition ir_Hitachi.h:107
uint8_t Temp
Definition ir_Hitachi.h:102
uint8_t Mode
Definition ir_Hitachi.h:106
uint8_t Button
Definition ir_Hitachi.h:97
uint8_t pad2[7]
Definition ir_Hitachi.h:115
uint8_t pad1[11]
Definition ir_Hitachi.h:104
uint8_t pad0[11]
Definition ir_Hitachi.h:95
uint8_t SwingH
Definition ir_Hitachi.h:117
uint8_t SwingV
Definition ir_Hitachi.h:123
Native representation of a Hitachi 164-bit A/C message.
Definition ir_Hitachi.h:249
uint8_t pad1[10]
Definition ir_Hitachi.h:264
uint8_t pad0[11]
Definition ir_Hitachi.h:253
uint8_t Fan
Definition ir_Hitachi.h:267
uint8_t Temp
Definition ir_Hitachi.h:260
uint8_t Button
Definition ir_Hitachi.h:255
uint8_t Mode
Definition ir_Hitachi.h:266
uint8_t Power
Definition ir_Hitachi.h:272
uint8_t pad2[4]
Definition ir_Hitachi.h:277
uint8_t raw[kHitachiAc264StateLength]
The state in native code.
Definition ir_Hitachi.h:250
Definition ir_Hitachi.h:300
uint8_t pad0[13]
Definition ir_Hitachi.h:304
uint8_t OffTimerHigh
Definition ir_Hitachi.h:316
uint8_t Fan
Definition ir_Hitachi.h:327
uint8_t OnTimerLow
Definition ir_Hitachi.h:318
uint8_t Humidity
Definition ir_Hitachi.h:340
uint8_t TimerActive
Definition ir_Hitachi.h:334
uint8_t Mode
Definition ir_Hitachi.h:326
uint8_t Power
Definition ir_Hitachi.h:332
uint8_t Temp
Definition ir_Hitachi.h:307
uint8_t OffTimerActive
Definition ir_Hitachi.h:321
uint8_t OffTimerLow
Definition ir_Hitachi.h:314
uint8_t raw[kHitachiAc296StateLength]
Definition ir_Hitachi.h:301
uint8_t OnTimerActive
Definition ir_Hitachi.h:322
uint8_t pad1[6]
Definition ir_Hitachi.h:337
uint8_t OnTimerHigh
Definition ir_Hitachi.h:320
Native representation of a Hitachi 224-bit A/C message.
Definition ir_Hitachi.h:44
uint8_t pad1[9]
Definition ir_Hitachi.h:69
uint8_t SwingV
Definition ir_Hitachi.h:59
uint8_t Mode
Definition ir_Hitachi.h:50
uint8_t Sum
Definition ir_Hitachi.h:71
uint8_t Temp
Definition ir_Hitachi.h:52
uint8_t pad0[10]
Definition ir_Hitachi.h:48
uint8_t raw[kHitachiAcStateLength]
The state in native code.
Definition ir_Hitachi.h:45
uint8_t Power
Definition ir_Hitachi.h:66
uint8_t SwingH
Definition ir_Hitachi.h:62
uint8_t Fan
Definition ir_Hitachi.h:56