# IRremoteESP8266: src/ir_Whirlpool.h Source File

ir_Whirlpool.h
Go to the documentation of this file.
// Copyright 2018 David Conran
// Supports:
// Brand: Whirlpool, Model: DG11J1-3A remote
// Brand: Whirlpool, Model: DG11J1-04 remote
// Brand: Whirlpool, Model: DG11J1-91 remote
// Brand: Whirlpool, Model: SPIS409L A/C
// Brand: Whirlpool, Model: SPIS412L A/C
// Brand: Whirlpool, Model: SPIW409L A/C
// Brand: Whirlpool, Model: SPIW412L A/C
// Brand: Whirlpool, Model: SPIW418L A/C
#ifndef IR_WHIRLPOOL_H_
#define IR_WHIRLPOOL_H_
#define __STDC_LIMIT_MACROS
#include <stdint.h>
#ifndef UNIT_TEST
#include <Arduino.h>
#endif
#include "IRremoteESP8266.h"
#include "IRsend.h"
#ifdef UNIT_TEST
#include "IRsend_test.h"
#endif
// Constants
const uint8_t kWhirlpoolAcChecksumByte1 = 13;
const uint8_t kWhirlpoolAcChecksumByte2 = kWhirlpoolAcStateLength - 1;
const uint8_t kWhirlpoolAcHeat = 0;
const uint8_t kWhirlpoolAcAuto = 1;
const uint8_t kWhirlpoolAcCool = 2;
const uint8_t kWhirlpoolAcDry = 3;
const uint8_t kWhirlpoolAcFan = 4;
const uint8_t kWhirlpoolAcModeOffset = 0;
const uint8_t kWhirlpoolAcModePos = 3;
const uint8_t kWhirlpoolAcFanOffset = 0; // Mask 0b00000011
const uint8_t kWhirlpoolAcFanSize = 2; // Nr. of bits
const uint8_t kWhirlpoolAcFanAuto = 0;
const uint8_t kWhirlpoolAcFanHigh = 1;
const uint8_t kWhirlpoolAcFanMedium = 2;
const uint8_t kWhirlpoolAcFanLow = 3;
const uint8_t kWhirlpoolAcFanPos = 2;
const uint8_t kWhirlpoolAcMinTemp = 18; // 18C (DG11J1-3A), 16C (DG11J1-91)
const uint8_t kWhirlpoolAcMaxTemp = 32; // 32C (DG11J1-3A), 30C (DG11J1-91)
const uint8_t kWhirlpoolAcAutoTemp = 23; // 23C
const uint8_t kWhirlpoolAcTempPos = 3;
const uint8_t kWhirlpoolAcSwing1Offset = 7;
const uint8_t kWhirlpoolAcSwing2Offset = 6;
const uint8_t kWhirlpoolAcLightOffset = 5;
const uint8_t kWhirlpoolAcPowerToggleOffset = 2; // 0b00000100
const uint8_t kWhirlpoolAcPowerTogglePos = 2;
const uint8_t kWhirlpoolAcSleepOffset = 3;
const uint8_t kWhirlpoolAcSleepPos = 2;
const uint8_t kWhirlpoolAcSuperMask = 0b10010000;
const uint8_t kWhirlpoolAcSuperPos = 5;
const uint8_t kWhirlpoolAcHourOffset = 0; // Mask 0b00011111
const uint8_t kWhirlpoolAcHourSize = 5; // Nr. of bits
const uint8_t kWhirlpoolAcMinuteOffset = 0; // Mask 0b00111111
const uint8_t kWhirlpoolAcMinuteSize = 6; // Nr. of bits
const uint8_t kWhirlpoolAcTimerEnableOffset = 7; // 0b10000000
const uint8_t kWhirlpoolAcClockPos = 6;
const uint8_t kWhirlpoolAcOffTimerPos = 8;
const uint8_t kWhirlpoolAcOnTimerPos = 10;
const uint8_t kWhirlpoolAcCommandPos = 15;
const uint8_t kWhirlpoolAcCommandLight = 0x00;
const uint8_t kWhirlpoolAcCommandPower = 0x01;
const uint8_t kWhirlpoolAcCommandTemp = 0x02;
const uint8_t kWhirlpoolAcCommandSleep = 0x03;
const uint8_t kWhirlpoolAcCommandSuper = 0x04;
const uint8_t kWhirlpoolAcCommandOnTimer = 0x05;
const uint8_t kWhirlpoolAcCommandMode = 0x06;
const uint8_t kWhirlpoolAcCommandSwing = 0x07;
const uint8_t kWhirlpoolAcCommandIFeel = 0x0D;
const uint8_t kWhirlpoolAcCommandFanSpeed = 0x11;
const uint8_t kWhirlpoolAcCommand6thSense = 0x17;
const uint8_t kWhirlpoolAcCommandOffTimer = 0x1D;
const uint8_t kWhirlpoolAcAltTempOffset = 3;
const uint8_t kWhirlpoolAcAltTempPos = 18;
// Classes
class IRWhirlpoolAc {
public:
explicit IRWhirlpoolAc(const uint16_t pin, const bool inverted = false,
const bool use_modulation = true);
void stateReset(void);
#if SEND_WHIRLPOOL_AC
void send(const uint16_t repeat = kWhirlpoolAcDefaultRepeat,
const bool calcchecksum = true);
int8_t calibrate(void) { return _irsend.calibrate(); }
#endif // SEND_WHIRLPOOL_AC
void begin(void);
void setPowerToggle(const bool on);
bool getPowerToggle(void);
void setSleep(const bool on);
bool getSleep(void);
void setSuper(const bool on);
bool getSuper(void);
void setTemp(const uint8_t temp);
uint8_t getTemp(void);
void setFan(const uint8_t speed);
uint8_t getFan(void);
void setMode(const uint8_t mode);
uint8_t getMode(void);
void setSwing(const bool on);
bool getSwing(void);
void setLight(const bool on);
bool getLight(void);
uint16_t getClock(void);
void setClock(const uint16_t minspastmidnight);
uint16_t getOnTimer(void);
void setOnTimer(const uint16_t minspastmidnight);
void enableOnTimer(const bool on);
bool isOnTimerEnabled(void);
uint16_t getOffTimer(void);
void setOffTimer(const uint16_t minspastmidnight);
void enableOffTimer(const bool on);
bool isOffTimerEnabled(void);
void setCommand(const uint8_t code);
uint8_t getCommand(void);
whirlpool_ac_remote_model_t getModel(void);
void setModel(const whirlpool_ac_remote_model_t model);
uint8_t* getRaw(const bool calcchecksum = true);
void setRaw(const uint8_t new_code[],
const uint16_t length = kWhirlpoolAcStateLength);
static bool validChecksum(const uint8_t state[],
const uint16_t length = kWhirlpoolAcStateLength);
static uint8_t convertMode(const stdAc::opmode_t mode);
static uint8_t convertFan(const stdAc::fanspeed_t speed);
static stdAc::opmode_t toCommonMode(const uint8_t mode);
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
stdAc::state_t toCommon(const stdAc::state_t *prev = NULL);
String toString(void);
#ifndef UNIT_TEST
private:
IRsend _irsend;
#else // UNIT_TEST
IRsendTest _irsend;
#endif // UNIT_TEST
uint8_t remote_state[kWhirlpoolAcStateLength];
uint8_t _desiredtemp;
void checksum(const uint16_t length = kWhirlpoolAcStateLength);
uint16_t getTime(const uint16_t pos);
void setTime(const uint16_t pos, const uint16_t minspastmidnight);
bool isTimerEnabled(const uint16_t pos);
void enableTimer(const uint16_t pos, const bool state);
void _setTemp(const uint8_t temp, const bool remember = true);
void _setMode(const uint8_t mode);
int8_t getTempOffset(void);
};
#endif // IR_WHIRLPOOL_H_
kWhirlpoolAcLightOffset
const uint8_t kWhirlpoolAcLightOffset
Definition: ir_Whirlpool.h:58
IRWhirlpoolAc::send
void send(const uint16_t repeat=kWhirlpoolAcDefaultRepeat, const bool calcchecksum=true)
Send the current internal state as an IR message.
Definition: ir_Whirlpool.cpp:139
kWhirlpoolAcOnTimerPos
const uint8_t kWhirlpoolAcOnTimerPos
Definition: ir_Whirlpool.h:72
IRWhirlpoolAc::stateReset
void stateReset(void)
Reset the state of the remote to a known good state/sequence.
Definition: ir_Whirlpool.cpp:89
IRWhirlpoolAc::getClock
uint16_t getClock(void)
Get the clock time in nr. of minutes past midnight.
Definition: ir_Whirlpool.cpp:357
kWhirlpoolAcCommandSuper
const uint8_t kWhirlpoolAcCommandSuper
Definition: ir_Whirlpool.h:78
IRWhirlpoolAc::calibrate
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition: ir_Whirlpool.h:103
kWhirlpoolAcFanSize
const uint8_t kWhirlpoolAcFanSize
Definition: ir_Whirlpool.h:46
IRWhirlpoolAc::convertMode
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition: ir_Whirlpool.cpp:485
kWhirlpoolAcSuperPos
const uint8_t kWhirlpoolAcSuperPos
Definition: ir_Whirlpool.h:64
IRWhirlpoolAc::_setTemp
void _setTemp(const uint8_t temp, const bool remember=true)
Set the temperature.
Definition: ir_Whirlpool.cpp:198
stdAc::fanspeed_t
fanspeed_t
Common A/C settings for Fan Speeds.
Definition: IRsend.h:58
whirlpool_ac_remote_model_t
whirlpool_ac_remote_model_t
Whirlpool A/C model numbers.
Definition: IRsend.h:164
kWhirlpoolAcAutoTemp
const uint8_t kWhirlpoolAcAutoTemp
Definition: ir_Whirlpool.h:54
kWhirlpoolAcModePos
const uint8_t kWhirlpoolAcModePos
Definition: ir_Whirlpool.h:44
kWhirlpoolAcFanHigh
const uint8_t kWhirlpoolAcFanHigh
Definition: ir_Whirlpool.h:48
kWhirlpoolAcPowerTogglePos
const uint8_t kWhirlpoolAcPowerTogglePos
Definition: ir_Whirlpool.h:60
kWhirlpoolAcMaxTemp
const uint8_t kWhirlpoolAcMaxTemp
Definition: ir_Whirlpool.h:53
kWhirlpoolAcAltTempPos
const uint8_t kWhirlpoolAcAltTempPos
Definition: ir_Whirlpool.h:87
kWhirlpoolAcAuto
const uint8_t kWhirlpoolAcAuto
Definition: ir_Whirlpool.h:39
kWhirlpoolAcFanPos
const uint8_t kWhirlpoolAcFanPos
Definition: ir_Whirlpool.h:51
IRWhirlpoolAc::convertFan
static uint8_t convertFan(const stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition: ir_Whirlpool.cpp:500
IRWhirlpoolAc::toCommonFanSpeed
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition: ir_Whirlpool.cpp:527
IRWhirlpoolAc::isOnTimerEnabled
bool isOnTimerEnabled(void)
Is the On timer enabled?
Definition: ir_Whirlpool.cpp:400
IRWhirlpoolAc::IRWhirlpoolAc
IRWhirlpoolAc(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: ir_Whirlpool.cpp:84
IRWhirlpoolAc::getMode
uint8_t getMode(void)
Get the operating mode setting of the A/C.
Definition: ir_Whirlpool.cpp:255
kWhirlpoolAcCommandOnTimer
const uint8_t kWhirlpoolAcCommandOnTimer
Definition: ir_Whirlpool.h:79
IRsend.h
kWhirlpoolAcTempPos
const uint8_t kWhirlpoolAcTempPos
Definition: ir_Whirlpool.h:55
IRWhirlpoolAc::getLight
bool getLight(void)
Get the Light (Display/LED) setting of the A/C.
Definition: ir_Whirlpool.cpp:308
IRWhirlpoolAc::setTemp
void setTemp(const uint8_t temp)
Set the temperature.
Definition: ir_Whirlpool.cpp:209
kWhirlpoolAcTimerEnableOffset
const uint8_t kWhirlpoolAcTimerEnableOffset
Definition: ir_Whirlpool.h:69
kWhirlpoolAcCommandIFeel
const uint8_t kWhirlpoolAcCommandIFeel
Definition: ir_Whirlpool.h:82
IRWhirlpoolAc::getSwing
bool getSwing(void)
Get the (vertical) swing setting of the A/C.
Definition: ir_Whirlpool.cpp:293
kWhirlpoolAcModeOffset
const uint8_t kWhirlpoolAcModeOffset
Definition: ir_Whirlpool.h:43
IRWhirlpoolAc::setClock
void setClock(const uint16_t minspastmidnight)
Set the clock time in nr. of minutes past midnight.
Definition: ir_Whirlpool.cpp:351
IRsend
Class for sending all basic IR protocols.
Definition: IRsend.h:182
kWhirlpoolAcSuperMask
const uint8_t kWhirlpoolAcSuperMask
Definition: ir_Whirlpool.h:63
IRsend::calibrate
int8_t calibrate(uint16_t hz=38000U)
Calculate & set any offsets to account for execution times during sending.
Definition: IRsend.cpp:207
kWhirlpoolAcChecksumByte1
const uint8_t kWhirlpoolAcChecksumByte1
Definition: ir_Whirlpool.h:36
IRWhirlpoolAc::getSleep
bool getSleep(void)
Get the Sleep setting of the A/C.
Definition: ir_Whirlpool.cpp:444
kWhirlpoolAcMinuteSize
const uint8_t kWhirlpoolAcMinuteSize
Definition: ir_Whirlpool.h:68
IRWhirlpoolAc::getTime
uint16_t getTime(const uint16_t pos)
Get the time in nr. of minutes past midnight.
Definition: ir_Whirlpool.cpp:328
IRWhirlpoolAc::enableTimer
void enableTimer(const uint16_t pos, const bool state)
Enable the timer enabled at the given byte offset.
Definition: ir_Whirlpool.cpp:345
IRWhirlpoolAc
Class for handling detailed Whirlpool A/C messages.
Definition: ir_Whirlpool.h:91
String
std::string String
Definition: IRremoteESP8266.h:1178
kWhirlpoolAcCommandPos
const uint8_t kWhirlpoolAcCommandPos
Definition: ir_Whirlpool.h:73
kWhirlpoolAcCommandMode
const uint8_t kWhirlpoolAcCommandMode
Definition: ir_Whirlpool.h:80
IRWhirlpoolAc::getTemp
uint8_t getTemp(void)
Get the current temperature setting.
Definition: ir_Whirlpool.cpp:217
IRWhirlpoolAc::getTempOffset
int8_t getTempOffset(void)
Calculate the temp. offset in deg C for the current model.
Definition: ir_Whirlpool.cpp:187
IRWhirlpoolAc::getFan
uint8_t getFan(void)
Get the current fan speed setting.
Definition: ir_Whirlpool.cpp:278
kWhirlpoolAcCool
const uint8_t kWhirlpoolAcCool
Definition: ir_Whirlpool.h:40
kWhirlpoolAcSleepPos
const uint8_t kWhirlpoolAcSleepPos
Definition: ir_Whirlpool.h:62
IRWhirlpoolAc::getModel
whirlpool_ac_remote_model_t getModel(void)
Get/Detect the model of the A/C.
Definition: ir_Whirlpool.cpp:162
kWhirlpoolAcCommandOffTimer
const uint8_t kWhirlpoolAcCommandOffTimer
Definition: ir_Whirlpool.h:85
kWhirlpoolAcSwing1Offset
const uint8_t kWhirlpoolAcSwing1Offset
Definition: ir_Whirlpool.h:56
IRremoteESP8266.h
kWhirlpoolAcCommandSwing
const uint8_t kWhirlpoolAcCommandSwing
Definition: ir_Whirlpool.h:81
IRWhirlpoolAc::isOffTimerEnabled
bool isOffTimerEnabled(void)
Is the Off timer enabled?
Definition: ir_Whirlpool.cpp:375
kWhirlpoolAcMinuteOffset
const uint8_t kWhirlpoolAcMinuteOffset
Definition: ir_Whirlpool.h:67
IRWhirlpoolAc::validChecksum
static bool validChecksum(const uint8_t state[], const uint16_t length=kWhirlpoolAcStateLength)
Verify the checksum is valid for a given state.
Definition: ir_Whirlpool.cpp:104
kWhirlpoolAcFanMedium
const uint8_t kWhirlpoolAcFanMedium
Definition: ir_Whirlpool.h:49
kWhirlpoolAcDry
const uint8_t kWhirlpoolAcDry
Definition: ir_Whirlpool.h:41
kWhirlpoolAcAltTempOffset
const uint8_t kWhirlpoolAcAltTempOffset
Definition: ir_Whirlpool.h:86
IRWhirlpoolAc::setPowerToggle
void setPowerToggle(const bool on)
Change the power toggle setting.
Definition: ir_Whirlpool.cpp:413
IRWhirlpoolAc::setOffTimer
void setOffTimer(const uint16_t minspastmidnight)
Set the Off Timer time.
Definition: ir_Whirlpool.cpp:363
kWhirlpoolAcSwing2Offset
const uint8_t kWhirlpoolAcSwing2Offset
Definition: ir_Whirlpool.h:57
kWhirlpoolAcCommandLight
const uint8_t kWhirlpoolAcCommandLight
Definition: ir_Whirlpool.h:74
IRWhirlpoolAc::getCommand
uint8_t getCommand(void)
Get the Command (Button) setting of the A/C.
Definition: ir_Whirlpool.cpp:429
IRWhirlpoolAc::_setMode
void _setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Whirlpool.cpp:225
kWhirlpoolAcFanLow
const uint8_t kWhirlpoolAcFanLow
Definition: ir_Whirlpool.h:50
kWhirlpoolAcDefaultRepeat
const uint16_t kWhirlpoolAcDefaultRepeat
Definition: IRremoteESP8266.h:1090
kWhirlpoolAcOffTimerPos
const uint8_t kWhirlpoolAcOffTimerPos
Definition: ir_Whirlpool.h:71
IRWhirlpoolAc::getOffTimer
uint16_t getOffTimer(void)
Get the Off Timer time..
Definition: ir_Whirlpool.cpp:369
IRWhirlpoolAc::setModel
void setModel(const whirlpool_ac_remote_model_t model)
Set the model of the A/C to emulate.
Definition: ir_Whirlpool.cpp:171
IRWhirlpoolAc::setSuper
void setSuper(const bool on)
Set the Super (Turbo/Jet) setting of the A/C.
Definition: ir_Whirlpool.cpp:450
kWhirlpoolAcChecksumByte2
const uint8_t kWhirlpoolAcChecksumByte2
Definition: ir_Whirlpool.h:37
kWhirlpoolAcFan
const uint8_t kWhirlpoolAcFan
Definition: ir_Whirlpool.h:42
IRWhirlpoolAc::getOnTimer
uint16_t getOnTimer(void)
Get the On Timer time..
Definition: ir_Whirlpool.cpp:394
kWhirlpoolAcCommandFanSpeed
const uint8_t kWhirlpoolAcCommandFanSpeed
Definition: ir_Whirlpool.h:83
IRWhirlpoolAc::setCommand
void setCommand(const uint8_t code)
Set the Command (Button) setting of the A/C.
Definition: ir_Whirlpool.cpp:478
kWhirlpoolAcStateLength
const uint16_t kWhirlpoolAcStateLength
Definition: IRremoteESP8266.h:1088
IRWhirlpoolAc::toCommon
stdAc::state_t toCommon(const stdAc::state_t *prev=NULL)
Convert the current internal state into its stdAc::state_t equivalent.
Definition: ir_Whirlpool.cpp:539
kWhirlpoolAcHourOffset
const uint8_t kWhirlpoolAcHourOffset
Definition: ir_Whirlpool.h:65
IRWhirlpoolAc::setRaw
void setRaw(const uint8_t new_code[], const uint16_t length=kWhirlpoolAcStateLength)
Set the internal state from a valid code for this protocol.
Definition: ir_Whirlpool.cpp:156
kWhirlpoolAcMinTemp
const uint8_t kWhirlpoolAcMinTemp
Definition: ir_Whirlpool.h:52
IRWhirlpoolAc::getSuper
bool getSuper(void)
Get the Super (Turbo/Jet) setting of the A/C.
Definition: ir_Whirlpool.cpp:472
IRWhirlpoolAc::setSleep
void setSleep(const bool on)
Set the Sleep setting of the A/C.
Definition: ir_Whirlpool.cpp:435
IRWhirlpoolAc::remote_state
uint8_t remote_state[kWhirlpoolAcStateLength]
The state in IR code form.
Definition: ir_Whirlpool.h:156
IRWhirlpoolAc::setMode
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition: ir_Whirlpool.cpp:248
IRWhirlpoolAc::toString
String toString(void)
Convert the current internal state into a human readable string.
Definition: ir_Whirlpool.cpp:574
kWhirlpoolAcHeat
const uint8_t kWhirlpoolAcHeat
Definition: ir_Whirlpool.h:38
IRWhirlpoolAc::checksum
void checksum(const uint16_t length=kWhirlpoolAcStateLength)
Calculate & set the checksum for the current internal state of the remote.
Definition: ir_Whirlpool.cpp:125
IRWhirlpoolAc::enableOffTimer
void enableOffTimer(const bool on)
Enable the Off Timer.
Definition: ir_Whirlpool.cpp:381
kWhirlpoolAcCommandPower
const uint8_t kWhirlpoolAcCommandPower
Definition: ir_Whirlpool.h:75
IRWhirlpoolAc::enableOnTimer
void enableOnTimer(const bool on)
Enable the On Timer.
Definition: ir_Whirlpool.cpp:406
IRWhirlpoolAc::_irsend
IRsend _irsend
Instance of the IR send class.
Definition: ir_Whirlpool.h:150
IRWhirlpoolAc::setOnTimer
void setOnTimer(const uint16_t minspastmidnight)
Set the On Timer time.
Definition: ir_Whirlpool.cpp:388
IRWhirlpoolAc::_desiredtemp
uint8_t _desiredtemp
The last user explicitly set temperature.
Definition: ir_Whirlpool.h:157
IRWhirlpoolAc::getPowerToggle
bool getPowerToggle(void)
Get the value of the current power toggle setting.
Definition: ir_Whirlpool.cpp:422
kWhirlpoolAcCommandTemp
const uint8_t kWhirlpoolAcCommandTemp
Definition: ir_Whirlpool.h:76
kWhirlpoolAcFanOffset
const uint8_t kWhirlpoolAcFanOffset
Definition: ir_Whirlpool.h:45
kWhirlpoolAcCommand6thSense
const uint8_t kWhirlpoolAcCommand6thSense
Definition: ir_Whirlpool.h:84
kWhirlpoolAcCommandSleep
const uint8_t kWhirlpoolAcCommandSleep
Definition: ir_Whirlpool.h:77
kWhirlpoolAcClockPos
const uint8_t kWhirlpoolAcClockPos
Definition: ir_Whirlpool.h:70
kWhirlpoolAcPowerToggleOffset
const uint8_t kWhirlpoolAcPowerToggleOffset
Definition: ir_Whirlpool.h:59
IRWhirlpoolAc::begin
void begin(void)
Set up hardware to be able to send a message.
Definition: ir_Whirlpool.cpp:98
kWhirlpoolAcSleepOffset
const uint8_t kWhirlpoolAcSleepOffset
Definition: ir_Whirlpool.h:61
stdAc::state_t
Structure to hold a common A/C state.
Definition: IRsend.h:97
IRWhirlpoolAc::setFan
void setFan(const uint8_t speed)
Set the speed of the fan.
Definition: ir_Whirlpool.cpp:262
IRWhirlpoolAc::setLight
void setLight(const bool on)
Set the Light (Display/LED) setting of the A/C.
Definition: ir_Whirlpool.cpp:301
IRWhirlpoolAc::setTime
void setTime(const uint16_t pos, const uint16_t minspastmidnight)
Set the time in nr. of minutes past midnight.
Definition: ir_Whirlpool.cpp:315
IRWhirlpoolAc::setSwing
void setSwing(const bool on)
Set the (vertical) swing setting of the A/C.
Definition: ir_Whirlpool.cpp:285
IRWhirlpoolAc::toCommonMode
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition: ir_Whirlpool.cpp:514
kWhirlpoolAcHourSize
const uint8_t kWhirlpoolAcHourSize
Definition: ir_Whirlpool.h:66
kWhirlpoolAcFanAuto
const uint8_t kWhirlpoolAcFanAuto
Definition: ir_Whirlpool.h:47
IRWhirlpoolAc::getRaw
uint8_t * getRaw(const bool calcchecksum=true)
Get a copy of the internal state/code for this protocol.
Definition: ir_Whirlpool.cpp:148
IRWhirlpoolAc::isTimerEnabled
bool isTimerEnabled(const uint16_t pos)
Is the timer enabled at the given byte offset?
Definition: ir_Whirlpool.cpp:338
stdAc::opmode_t
opmode_t
Common A/C settings for A/C operating modes.
Definition: IRsend.h:46