IRremoteESP8266
Public Member Functions | List of all members
IRArgoAC Class Reference

Supports Argo A/C SAC-WREM2 IR remote protocol. More...

#include <ir_Argo.h>

Inheritance diagram for IRArgoAC:
Inheritance graph
[legend]
Collaboration diagram for IRArgoAC:
Collaboration graph
[legend]

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...
 

Detailed Description

Supports Argo A/C SAC-WREM2 IR remote protocol.

Constructor & Destructor Documentation

◆ IRArgoAC()

IRArgoAC::IRArgoAC ( const uint16_t  pin,
const bool  inverted = false,
const bool  use_modulation = true 
)
explicit

Class constructor.

Parameters
[in]pinGPIO to be used when sending.
[in]invertedIs the output signal to be inverted?
[in]use_modulationIs frequency modulation to be used?

Member Function Documentation

◆ getFan()

uint8_t IRArgoAC::getFan ( void  ) const

Get the current fan speed setting.

Deprecated:
, for backwards-compat.
Deprecated:
Returns
The current fan speed.

◆ getFlap()

uint8_t IRArgoAC::getFlap ( void  ) const

Get the flap position. i.e. Swing. (WREM2)

Deprecated:
, for backwards-compat.
Warning
Not yet working!
Deprecated:
Returns
The current flap setting.

◆ getMode()

uint8_t IRArgoAC::getMode ( void  ) const

Get the current operation mode.

Deprecated:
, for backwards-compat.
Deprecated:
Returns
The current operation mode

◆ sendSensorTemp()

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)

Parameters
[in]degreesThe temperature in degrees celsius.
[in]repeatNr. of times the message will be repeated.

◆ setFan()

void IRArgoAC::setFan ( const uint8_t  fan)

Set the speed of the fan.

Deprecated:
Parameters
[in]fanThe desired setting.

◆ setFlap()

void IRArgoAC::setFlap ( const uint8_t  flap)

Set the flap position. i.e. Swing. (WREM2)

Warning
Not yet working!
Deprecated:
Parameters
[in]flapThe desired setting.

◆ setMode()

void IRArgoAC::setMode ( const uint8_t  mode)

Set the desired operation mode.

Deprecated:
Parameters
modeThe desired operation mode.

◆ toCommon()

stdAc::state_t IRArgoAC::toCommon ( void  ) const

Convert the current internal state into its stdAc::state_t equivalent.

Returns
The stdAc equivalent of the native settings.

◆ toString()

String IRArgoAC::toString ( void  ) const

Convert the current internal state into a human readable string (WREM2).

Returns
A human readable string.

The documentation for this class was generated from the following files: