IRremoteESP8266
|
Supports Argo A/C SAC-WREM2 IR remote protocol. More...
#include <ir_Argo.h>
Public Member Functions | |
IRArgoAC (const uint16_t pin, const bool inverted=false, const bool use_modulation=true) | |
Class constructor. More... | |
void | sendSensorTemp (const uint8_t degrees, const uint16_t repeat=kArgoDefaultRepeat) |
Send current room temperature for the iFeel feature as a silent IR message (no acknowledgement from the device) (WREM2) More... | |
String | toString (void) const |
Convert the current internal state into a human readable string (WREM2). More... | |
stdAc::state_t | toCommon (void) const |
Convert the current internal state into its stdAc::state_t equivalent. More... | |
void | setMode (const uint8_t mode) |
Set the desired operation mode. More... | |
uint8_t | getMode (void) const |
Get the current operation mode. More... | |
void | setFan (const uint8_t fan) |
Set the speed of the fan. More... | |
uint8_t | getFan (void) const |
Get the current fan speed setting. More... | |
void | setFlap (const uint8_t flap) |
Set the flap position. i.e. Swing. (WREM2) More... | |
uint8_t | getFlap (void) const |
Get the flap position. i.e. Swing. (WREM2) More... | |
Public Member Functions inherited from IRArgoACBase< ArgoProtocol > | |
IRArgoACBase (const uint16_t pin, const bool inverted=false, const bool use_modulation=true) | |
Class constructor. More... | |
void | send (const uint16_t repeat=kArgoDefaultRepeat) |
Send the current internal state as an IR message. More... | |
int8_t | calibrate (void) |
Run the calibration to calculate uSec timing offsets for this platform. More... | |
void | begin (void) |
Set up hardware to be able to send a message. More... | |
void | on (void) |
Set the internal state to have the power on. More... | |
void | off (void) |
Set the internal state to have the power off. More... | |
void | setPower (const bool on) |
Set the internal state to have the desired power. More... | |
bool | getPower (void) const |
Get the power setting from the internal state. More... | |
void | setTemp (const uint8_t degrees) |
Set the temperature. More... | |
uint8_t | getTemp (void) const |
Get the current temperature setting. More... | |
void | setSensorTemp (const uint8_t degrees) |
Set the value for the current room temperature. More... | |
uint8_t | getSensorTemp (void) const |
Get the currently stored value for the room temperature setting. More... | |
void | setFan (const argoFan_t fan) |
Set the desired fan mode (WREM3). More... | |
void | setFanEx (const argoFan_t fan) |
argoFan_t | getFanEx (void) const |
-Ex for backw. compat w/ IRArgoAC More... | |
void | setFlap (const argoFlap_t flap) |
Set the desired flap mode. More... | |
void | setFlapEx (const argoFlap_t flap) |
argoFlap_t | getFlapEx (void) const |
-Ex for backw. compat w/ IRArgoAC More... | |
void | setMode (const argoMode_t mode) |
Set the desired operation mode. More... | |
void | setModeEx (const argoMode_t mode) |
argoMode_t | getModeEx (void) const |
-Ex for backw. compat w/ IRArgoAC More... | |
void | setMax (const bool on) |
Control the current Max setting. (i.e. Turbo) More... | |
bool | getMax (void) const |
Is the Max (i.e. Turbo) setting on? More... | |
void | setNight (const bool on) |
Turn on/off the Night mode. i.e. Sleep. More... | |
bool | getNight (void) const |
Get the status of Night mode. i.e. Sleep. More... | |
void | setiFeel (const bool on) |
Turn on/off the iFeel mode. More... | |
bool | getiFeel (void) const |
Get the status of iFeel mode. More... | |
void | setMessageType (const argoIrMessageType_t msgType) |
Set the message type of the next command (setting this resets state) More... | |
argoIrMessageType_t | getMessageType (void) const |
Get the message type. More... | |
uint8_t * | getRaw (void) |
Get the raw state of the object, suitable to be sent with the appropriate IRsend object method. More... | |
uint16_t | getRawByteLength () const |
Get actual raw state byte length for the current state. More... | |
void | setRaw (const uint8_t state[], const uint16_t length) |
Set the raw state of the object. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from IRArgoACBase< ArgoProtocol > | |
static argoIrMessageType_t | getMessageType (const uint8_t state[], const uint16_t length) |
Get message type from raw WREM-3 data. More... | |
static uint16_t | getStateLengthForIrMsgType (argoIrMessageType_t type) |
Get byte length of raw WREM-3 message based on IR cmd type. More... | |
static bool | validChecksum (const uint8_t state[], const uint16_t length) |
Verify the checksum is valid for a given state. More... | |
static argoMode_t | convertMode (const stdAc::opmode_t mode) |
Convert a stdAc::opmode_t enum into its native mode. More... | |
static argoFan_t | convertFan (const stdAc::fanspeed_t speed) |
Convert a stdAc::fanspeed_t enum into it's native speed. More... | |
static argoFlap_t | convertSwingV (const stdAc::swingv_t position) |
Convert a stdAc::swingv_t enum into it's native setting. More... | |
static argoIrMessageType_t | convertCommand (const stdAc::ac_command_t command) |
Convert a stdAc::ac_command_t enum into its native message type. More... | |
Protected Member Functions inherited from IRArgoACBase< ArgoProtocol > | |
void | _stateReset (ArgoProtocol *state, argoIrMessageType_t messageType=argoIrMessageType_t::AC_CONTROL) |
void | stateReset (argoIrMessageType_t messageType=argoIrMessageType_t::AC_CONTROL) |
Reset the internals of the object to a known good state. More... | |
void | _checksum (ArgoProtocol *state) |
void | checksum (void) |
Update the checksum for the internal state. More... | |
Static Protected Member Functions inherited from IRArgoACBase< ArgoProtocol > | |
static uint16_t | getRawByteLength (const ArgoProtocol &raw, argoIrMessageType_t messageTypeHint=argoIrMessageType_t::AC_CONTROL) |
static uint8_t | calcChecksum (const uint8_t state[], const uint16_t length) |
Calculate the checksum for a given state (WREM-3). More... | |
static uint8_t | getChecksum (const uint8_t state[], const uint16_t length) |
Retrieve the checksum value from transmitted state. More... | |
static stdAc::opmode_t | toCommonMode (const argoMode_t mode) |
Convert a native mode into its stdAc equivalent. More... | |
static stdAc::fanspeed_t | toCommonFanSpeed (const argoFan_t speed) |
Convert a native fan speed into its stdAc equivalent. More... | |
static stdAc::swingv_t | toCommonSwingV (const uint8_t position) |
Convert a native flap mode into its stdAc equivalent (WREM3). More... | |
static stdAc::ac_command_t | toCommonCommand (const argoIrMessageType_t command) |
Convert a native message type into its stdAc equivalent. More... | |
Protected Attributes inherited from IRArgoACBase< ArgoProtocol > | |
ArgoProtocol | _ |
The raw protocol data. More... | |
uint16_t | _length |
argoIrMessageType_t | _messageType |
IRsend | _irsend |
instance of the IR send class More... | |
Related Functions inherited from IRArgoACBase< ArgoProtocol > | |
uint16_t | getRawByteLength (const ArgoProtocol &, argoIrMessageType_t messageType) |
Get actual raw state byte length for the current state _param 1st param ignored: WREM-2 does not caryy type in payload, allegedly. More... | |
uint16_t | getRawByteLength (const ArgoProtocolWREM3 &raw, argoIrMessageType_t) |
Get actual raw state byte length for the current state. More... | |
void | _stateReset (ArgoProtocol *state, argoIrMessageType_t) |
Reset the given state to a known good state. More... | |
void | _stateReset (ArgoProtocolWREM3 *state, argoIrMessageType_t messageType) |
Reset the given state to a known good state. More... | |
void | _checksum (ArgoProtocol *state) |
Update the checksum for a given state (WREM2). More... | |
void | _checksum (ArgoProtocolWREM3 *state) |
Update the checksum for a given state (WREM3). More... | |
Supports Argo A/C SAC-WREM2 IR remote protocol.
|
explicit |
Class constructor.
[in] | pin | GPIO to be used when sending. |
[in] | inverted | Is the output signal to be inverted? |
[in] | use_modulation | Is frequency modulation to be used? |
uint8_t IRArgoAC::getFan | ( | void | ) | const |
uint8_t IRArgoAC::getFlap | ( | void | ) | const |
Get the flap position. i.e. Swing. (WREM2)
uint8_t IRArgoAC::getMode | ( | void | ) | const |
Get the current operation mode.
void IRArgoAC::sendSensorTemp | ( | const uint8_t | degrees, |
const uint16_t | repeat = kArgoDefaultRepeat |
||
) |
Send current room temperature for the iFeel feature as a silent IR message (no acknowledgement from the device) (WREM2)
[in] | degrees | The temperature in degrees celsius. |
[in] | repeat | Nr. of times the message will be repeated. |
void IRArgoAC::setFan | ( | const uint8_t | fan | ) |
void IRArgoAC::setFlap | ( | const uint8_t | flap | ) |
Set the flap position. i.e. Swing. (WREM2)
[in] | flap | The desired setting. |
void IRArgoAC::setMode | ( | const uint8_t | mode | ) |
stdAc::state_t IRArgoAC::toCommon | ( | void | ) | const |
Convert the current internal state into its stdAc::state_t equivalent.
String IRArgoAC::toString | ( | void | ) | const |
Convert the current internal state into a human readable string (WREM2).