IRremoteESP8266

Classes | Enumerations | Variables
ir_Argo.h File Reference

Support for Argo Ulisse 13 DCI Mobile Split ACs. More...

Go to the source code of this file.

## Classes
union | ArgoProtocol
| Native representation of a Argo A/C message for WREM-2 remote. More...
union | ArgoProtocolWREM3
| Native representation of A/C IR message for WREM-3 remote. More...
struct | ArgoProtocolWREM3::Timer
struct | ArgoProtocolWREM3::Config
class | IRArgoACBase< ARGO_PROTOCOL_T >
| Base class for handling common support for Argo remote protocols (functionality is shared across WREM-2 and WREM-3 IR protocols) More...
class | IRArgoAC
| Supports Argo A/C SAC-WREM2 IR remote protocol. More...
class | IRArgoAC_WREM3
| Supports Argo A/C SAC-WREM3 IR remote protocol. More...

## Enumerations
enum | argoIrMessageType_t : uint8_t { argoIrMessageType_t::AC_CONTROL = 0b00, argoIrMessageType_t::IFEEL_TEMP_REPORT = 0b01, argoIrMessageType_t::TIMER_COMMAND = 0b10, argoIrMessageType_t::CONFIG_PARAM_SET = 0b11 }
| IR message type (determines the payload part of IR command) More...
enum | argoMode_t : uint8_t { argoMode_t::COOL = 0b001, argoMode_t::DRY = 0b010, argoMode_t::HEAT = 0b011, argoMode_t::FAN = 0b100, argoMode_t::AUTO = 0b101 }
| A/C operation mode. More...
enum | argoFan_t : uint8_t { argoFan_t::FAN_AUTO = 0b000, argoFan_t::FAN_LOWEST = 0b001, argoFan_t::FAN_LOWER = 0b010, argoFan_t::FAN_LOW = 0b011, argoFan_t::FAN_MEDIUM = 0b100, argoFan_t::FAN_HIGH = 0b101, argoFan_t::FAN_HIGHEST = 0b110 }
| Fan speed. More...
enum | argoFlap_t : uint8_t { argoFlap_t::FLAP_AUTO = 0, argoFlap_t::FLAP_1 = 1, argoFlap_t::FLAP_2 = 2, argoFlap_t::FLAP_3 = 3, argoFlap_t::FLAP_4 = 4, argoFlap_t::FLAP_5 = 5, argoFlap_t::FLAP_6 = 6, argoFlap_t::FLAP_FULL = 7 }
| Flap position (swing-V) More...
enum | argoTimerType_t : uint8_t { argoTimerType_t::NO_TIMER = 0b000, argoTimerType_t::DELAY_TIMER = 0b001, argoTimerType_t::SCHEDULE_TIMER_1 = 0b010, argoTimerType_t::SCHEDULE_TIMER_2 = 0b011, argoTimerType_t::SCHEDULE_TIMER_3 = 0b100 }
| Timer type to set (for `argoIrMessageType_t::TIMER_COMMAND`) More...
enum | argoWeekday : uint8_t { argoWeekday::SUNDAY = 0b000, argoWeekday::MONDAY = 0b001, argoWeekday::TUESDAY = 0b010, argoWeekday::WEDNESDAY = 0b011, argoWeekday::THURSDAY = 0b100, argoWeekday::FRIDAY = 0b101, argoWeekday::SATURDAY = 0b110 }
| Day type to set (for `argoIrMessageType_t::TIMER_COMMAND`) More...

## Variables
const uint8_t | kArgoHeatBit = 0b00100000
const uint8_t | kArgoPreamble1 = 0b10101100
const uint8_t | kArgoPreamble2 = 0b11110101
const uint8_t | kArgoPost = 0b00000010
const uint16_t | kArgoFrequency = 38000
const uint8_t | kArgoTempDelta = 4
const uint8_t | kArgoMaxRoomTemp = 35
const uint8_t | kArgoMinTemp = 10
const uint8_t | kArgoMaxTemp = 32
const uint8_t | kArgoMaxChannel = 3
const uint8_t | kArgoCool = 0b000
const uint8_t | kArgoDry = 0b001
const uint8_t | kArgoAuto = 0b010
const uint8_t | kArgoOff = 0b011
const uint8_t | kArgoHeat = 0b100
const uint8_t | kArgoHeatAuto = 0b101
const uint8_t | kArgoHeatBlink = 0b110
const uint8_t | kArgoFanAuto = 0
const uint8_t | kArgoFan1 = 1
const uint8_t | kArgoFan2 = 2
const uint8_t | kArgoFan3 = 3
const uint8_t | kArgoFlapAuto = 0
const uint8_t | kArgoFlap1 = 1
const uint8_t | kArgoFlap2 = 2
const uint8_t | kArgoFlap3 = 3
const uint8_t | kArgoFlap4 = 4
const uint8_t | kArgoFlap5 = 5
const uint8_t | kArgoFlap6 = 6
const uint8_t | kArgoFlapFull = 7

## Detailed Description

Support for Argo Ulisse 13 DCI Mobile Split ACs.

## Enumeration Type Documentation

## ◆ argoFan_t

enum argoFan_t : uint8_t
| strong

Fan speed.

Note
  Raw values match WREM-3 protocol, but the enum is used in generic context

Enumerator
FAN_AUTO |
FAN_LOWEST |
FAN_LOWER |
FAN_LOW |
FAN_MEDIUM |
FAN_HIGH |
FAN_HIGHEST |

## ◆ argoFlap_t

enum argoFlap_t : uint8_t
| strong

Flap position (swing-V)

Note
  Raw values match WREM-3 protocol, but the enum is used in generic context

Enumerator
FLAP_AUTO |
FLAP_1 |
FLAP_2 |
FLAP_3 |
FLAP_4 |
FLAP_5 |
FLAP_6 |
FLAP_FULL |

## ◆ argoIrMessageType_t

enum argoIrMessageType_t : uint8_t
| strong

IR message type (determines the payload part of IR command)

Note
  Raw values match WREM-3 protocol, but the enum is used in generic context
  WREM-3 remote supports all commands separately, whereas WREM-2 (allegedly) only has the `AC_CONTROL` and `IFEEL_TEMP_REPORT` (timers are part of `AC_CONTROL` command), and there's no config.

Enumerator
AC_CONTROL |
IFEEL_TEMP_REPORT |
TIMER_COMMAND |
CONFIG_PARAM_SET |

## ◆ argoMode_t

enum argoMode_t : uint8_t
| strong

A/C operation mode.

Note
  Raw values match WREM-3 protocol, but the enum is used in generic context

Enumerator
COOL |
DRY |
HEAT |
FAN |
AUTO |

## ◆ argoTimerType_t

enum argoTimerType_t : uint8_t
| strong

Timer type to set (for `argoIrMessageType_t::TIMER_COMMAND`)

Note
  Raw values match WREM-3 protocol

Enumerator
NO_TIMER |
DELAY_TIMER |
SCHEDULE_TIMER_1 |
SCHEDULE_TIMER_2 |
SCHEDULE_TIMER_3 |

## ◆ argoWeekday

enum argoWeekday : uint8_t
| strong

Day type to set (for `argoIrMessageType_t::TIMER_COMMAND`)

Note
  Raw values match WREM-3 protocol

Enumerator
SUNDAY |
MONDAY |
TUESDAY |
WEDNESDAY |
THURSDAY |
FRIDAY |
SATURDAY |

## Variable Documentation

## ◆ kArgoAuto

const uint8_t kArgoAuto = 0b010

## ◆ kArgoCool

const uint8_t kArgoCool = 0b000

## ◆ kArgoDry

const uint8_t kArgoDry = 0b001

## ◆ kArgoFan1

const uint8_t kArgoFan1 = 1

## ◆ kArgoFan2

const uint8_t kArgoFan2 = 2

## ◆ kArgoFan3

const uint8_t kArgoFan3 = 3

## ◆ kArgoFanAuto

const uint8_t kArgoFanAuto = 0

## ◆ kArgoFlap1

const uint8_t kArgoFlap1 = 1

## ◆ kArgoFlap2

const uint8_t kArgoFlap2 = 2

## ◆ kArgoFlap3

const uint8_t kArgoFlap3 = 3

## ◆ kArgoFlap4

const uint8_t kArgoFlap4 = 4

## ◆ kArgoFlap5

const uint8_t kArgoFlap5 = 5

## ◆ kArgoFlap6

const uint8_t kArgoFlap6 = 6

## ◆ kArgoFlapAuto

const uint8_t kArgoFlapAuto = 0

## ◆ kArgoFlapFull

const uint8_t kArgoFlapFull = 7

## ◆ kArgoFrequency

const uint16_t kArgoFrequency = 38000

## ◆ kArgoHeat

const uint8_t kArgoHeat = 0b100

## ◆ kArgoHeatAuto

const uint8_t kArgoHeatAuto = 0b101

## ◆ kArgoHeatBit

const uint8_t kArgoHeatBit = 0b00100000

## ◆ kArgoHeatBlink

const uint8_t kArgoHeatBlink = 0b110

## ◆ kArgoMaxChannel

const uint8_t kArgoMaxChannel = 3

## ◆ kArgoMaxRoomTemp

const uint8_t kArgoMaxRoomTemp = 35

## ◆ kArgoMaxTemp

const uint8_t kArgoMaxTemp = 32

## ◆ kArgoMinTemp

const uint8_t kArgoMinTemp = 10

## ◆ kArgoOff

const uint8_t kArgoOff = 0b011

## ◆ kArgoPost

const uint8_t kArgoPost = 0b00000010

## ◆ kArgoPreamble1

const uint8_t kArgoPreamble1 = 0b10101100

## ◆ kArgoPreamble2

const uint8_t kArgoPreamble2 = 0b11110101

## ◆ kArgoTempDelta

const uint8_t kArgoTempDelta = 4