-#endif
-#include "IRremoteESP8266.h"
-#include "IRsend.h"
-#ifdef UNIT_TEST
-#include "IRsend_test.h"
-#endif
-
-/* State bit map:
-
-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+------+
-| FIXED HEADER | TEMPERATURE | FAN |F or C|
-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+------+
- 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
-
-+--+--+--+--+-----+-----+
-|ON| MODE |Boost|Sleep|
-+--+--+--+--+-----+-----+
-16 17 18 19 20 21
-
-+--+--+------------+--+--+--+--+--+--+--+--+--+--+--+--+--+
-| 0| 0|Timer Enable| ON TIME HOUR | 0 0| ON TIME MIN |
-+--+--+------------+--+--+--+--+--+--+--+--+--+--+--+--+--+
- 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
-
-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
-| 0 0| OFF TIMER | CHECKSUM |
-+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
- 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
-
-*/
-
-// Constants
-const uint8_t kDelonghiAcTempOffset = 8;
-const uint8_t kDelonghiAcTempSize = 5;
-const uint8_t kDelonghiAcTempMinC = 18; // Deg C
-const uint8_t kDelonghiAcTempMaxC = 32; // Deg C
-const uint8_t kDelonghiAcTempMinF = 64; // Deg F
-const uint8_t kDelonghiAcTempMaxF = 90; // Deg F
-const uint8_t kDelonghiAcTempAutoDryMode = 0;
-const uint8_t kDelonghiAcTempFanMode = 0b00110;
-const uint8_t kDelonghiAcFanOffset = kDelonghiAcTempOffset +
- kDelonghiAcTempSize; // 13
-const uint8_t kDelonghiAcFanSize = 2;
-const uint8_t kDelonghiAcFanAuto = 0b00;
-const uint8_t kDelonghiAcFanHigh = 0b01;
-const uint8_t kDelonghiAcFanMedium = 0b10;
-const uint8_t kDelonghiAcFanLow = 0b11;
-const uint8_t kDelonghiAcTempUnitBit = kDelonghiAcFanOffset +
- kDelonghiAcFanSize; // 15 (1 = Celsius, 0 = Fahrenheit)
-const uint8_t kDelonghiAcPowerBit = kDelonghiAcTempUnitBit + 1; // 16
-const uint8_t kDelonghiAcModeOffset = kDelonghiAcPowerBit + 1; // 17
-const uint8_t kDelonghiAcModeSize = 3;
-const uint8_t kDelonghiAcCool = 0b000;
-const uint8_t kDelonghiAcDry = 0b001;
-const uint8_t kDelonghiAcFan = 0b010;
-const uint8_t kDelonghiAcAuto = 0b100;
-const uint8_t kDelonghiAcBoostBit = kDelonghiAcModeOffset +
- kDelonghiAcModeSize; // 20 (Aka Turbo)
-const uint8_t kDelonghiAcSleepBit = kDelonghiAcBoostBit + 1; // 21
-// Two zero bits
-const uint8_t kDelonghiAcOnTimerEnableBit = kDelonghiAcSleepBit + 3; // 24
-const uint8_t kDelonghiAcHoursSize = 5; // Max 23 hrs
-const uint8_t kDelonghiAcMinsSize = 6; // Max 59 mins
-const uint16_t kDelonghiAcTimerMax = 23 * 60 + 59;
-const uint8_t kDelonghiAcOnTimerHoursOffset = kDelonghiAcOnTimerEnableBit +
- 1; // 25
-const uint8_t kDelonghiAcOnTimerMinsOffset = kDelonghiAcOnTimerHoursOffset +
- kDelonghiAcHoursSize + 2; // 32 (inc another two zero bits)
-// Two zero bits
-const uint8_t kDelonghiAcOffTimerEnableBit = kDelonghiAcOnTimerMinsOffset +
- kDelonghiAcMinsSize + 2; // 40
-const uint8_t kDelonghiAcOffTimerHoursOffset = kDelonghiAcOffTimerEnableBit +
- 1; // 41
-const uint8_t kDelonghiAcOffTimerMinsOffset = kDelonghiAcOffTimerHoursOffset +
- kDelonghiAcHoursSize + 2; // 48 (inc another two zero bits)
-// Two zero bits
-const uint8_t kDelonghiAcChecksumOffset = kDelonghiAcOffTimerMinsOffset +
- kDelonghiAcMinsSize + 2; // 56
-const uint8_t kDelonghiAcChecksumSize = 8;
-
-
-// Classes
-
-/// Class for handling detailed Delonghi A/C messages.
-class IRDelonghiAc {
- public:
- explicit IRDelonghiAc(const uint16_t pin, const bool inverted = false,
- const bool use_modulation = true);
- void stateReset();
-#if SEND_DELONGHI_AC
- void send(const uint16_t repeat = kDelonghiAcDefaultRepeat);
- /// Run the calibration to calculate uSec timing offsets for this platform.
- /// @return The uSec timing offset needed per modulation of the IR Led.
- /// @note This will produce a 65ms IR signal pulse at 38kHz.
- /// Only ever needs to be run once per object instantiation, if at all.
- int8_t calibrate(void) { return _irsend.calibrate(); }
-#endif // SEND_DELONGHI_AC
- void begin();
- static uint8_t calcChecksum(const uint64_t state);
- static bool validChecksum(const uint64_t state);
- void setPower(const bool on);
- bool getPower();
- void on();
- void off();
- void setTempUnit(const bool celsius);
- bool getTempUnit(void);
- void setTemp(const uint8_t temp, const bool fahrenheit = false,
- const bool force = false);
- uint8_t getTemp();
- void setFan(const uint8_t speed);
- uint8_t getFan();
- void setMode(const uint8_t mode);
- uint8_t getMode();
- void setBoost(const bool on); // Aka Turbo
- bool getBoost(); // Aka Turbo
- void setSleep(const bool on);
- bool getSleep();
- void setOnTimerEnabled(const bool on);
- bool getOnTimerEnabled(void);
- void setOnTimer(const uint16_t nr_of_mins);
- uint16_t getOnTimer(void);
- void setOffTimerEnabled(const bool on);
- bool getOffTimerEnabled(void);
- void setOffTimer(const uint16_t nr_of_mins);
- uint16_t getOffTimer(void);
- uint64_t getRaw();
- void setRaw(const uint64_t state);
- uint8_t convertMode(const stdAc::opmode_t mode);
- 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(void);
- String toString();
-#ifndef UNIT_TEST
-
- private:
- IRsend _irsend; ///< instance of the IR send class
-#else
- /// @cond IGNORE
- IRsendTest _irsend; ///< instance of the testing IR send class
- /// @endcond
-#endif
- uint64_t remote_state; ///< The state of the IR remote.
- uint8_t _saved_temp; ///< The previously user requested temp value.
- uint8_t _saved_temp_units; ///< The previously user requested temp units.
- void checksum(void);
-};
-#endif // IR_DELONGHI_H_
diff --git a/lib/IRremoteESP8266-2.7.10/.github/CONTRIBUTING.md b/lib/IRremoteESP8266-2.7.11/.github/CONTRIBUTING.md
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/.github/CONTRIBUTING.md
rename to lib/IRremoteESP8266-2.7.11/.github/CONTRIBUTING.md
diff --git a/lib/IRremoteESP8266-2.7.10/.github/Contributors.md b/lib/IRremoteESP8266-2.7.11/.github/Contributors.md
similarity index 96%
rename from lib/IRremoteESP8266-2.7.10/.github/Contributors.md
rename to lib/IRremoteESP8266-2.7.11/.github/Contributors.md
index 43b681bc4..811bfea84 100644
--- a/lib/IRremoteESP8266-2.7.10/.github/Contributors.md
+++ b/lib/IRremoteESP8266-2.7.11/.github/Contributors.md
@@ -17,6 +17,7 @@
- [Motea Marius](https://github.com/mariusmotea)
- [Mark Kuchel](https://github.com/kuchel77)
- [Christian Nilsson](https://github.com/NiKiZe)
+- [Zhongxian Li](https://github.com/siriuslzx)
All contributors can be found on the [contributors site](https://github.com/crankyoldgit/IRremoteESP8266/graphs/contributors).
diff --git a/lib/IRremoteESP8266-2.7.10/.github/issue_template.md b/lib/IRremoteESP8266-2.7.11/.github/issue_template.md
similarity index 82%
rename from lib/IRremoteESP8266-2.7.10/.github/issue_template.md
rename to lib/IRremoteESP8266-2.7.11/.github/issue_template.md
index d9b80dab6..f0ecf1fba 100644
--- a/lib/IRremoteESP8266-2.7.10/.github/issue_template.md
+++ b/lib/IRremoteESP8266-2.7.11/.github/issue_template.md
@@ -23,6 +23,11 @@ e.g.
#### Output of raw data from IRrecvDumpV2.ino (if applicable)
_Include some raw dumps of what the device saw._
+### What brand/model IR demodulator are you using?
+_Brand/Model code_ or _None_
+
+_If VS1838b: That is likely your problem. Please buy a better one & try again. Reporting a capture or decode issue when you use one of these is effectively wasting our & your time. See the [FAQ](https://github.com/crankyoldgit/IRremoteESP8266/wiki/Frequently-Asked-Questions#Help_Im_getting_very_inconsistent_results_when_capturing_an_IR_message_using_a_VS1838b_IR_demodulator)_
+
### Steps to reproduce the behavior
_What can we do to (pref. reliably) repeat what is happening?_
diff --git a/lib/IRremoteESP8266-2.7.10/.gitignore b/lib/IRremoteESP8266-2.7.11/.gitignore
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/.gitignore
rename to lib/IRremoteESP8266-2.7.11/.gitignore
diff --git a/lib/IRremoteESP8266-2.7.10/.gitmodules b/lib/IRremoteESP8266-2.7.11/.gitmodules
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/.gitmodules
rename to lib/IRremoteESP8266-2.7.11/.gitmodules
diff --git a/lib/IRremoteESP8266-2.7.10/.style.yapf b/lib/IRremoteESP8266-2.7.11/.style.yapf
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/.style.yapf
rename to lib/IRremoteESP8266-2.7.11/.style.yapf
diff --git a/lib/IRremoteESP8266-2.7.10/.travis.yml b/lib/IRremoteESP8266-2.7.11/.travis.yml
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/.travis.yml
rename to lib/IRremoteESP8266-2.7.11/.travis.yml
diff --git a/lib/IRremoteESP8266-2.7.10/CPPLINT.cfg b/lib/IRremoteESP8266-2.7.11/CPPLINT.cfg
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/CPPLINT.cfg
rename to lib/IRremoteESP8266-2.7.11/CPPLINT.cfg
diff --git a/lib/IRremoteESP8266-2.7.10/Doxyfile b/lib/IRremoteESP8266-2.7.11/Doxyfile
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/Doxyfile
rename to lib/IRremoteESP8266-2.7.11/Doxyfile
diff --git a/lib/IRremoteESP8266-2.7.10/LICENSE.txt b/lib/IRremoteESP8266-2.7.11/LICENSE.txt
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/LICENSE.txt
rename to lib/IRremoteESP8266-2.7.11/LICENSE.txt
diff --git a/lib/IRremoteESP8266-2.7.10/README.md b/lib/IRremoteESP8266-2.7.11/README.md
similarity index 98%
rename from lib/IRremoteESP8266-2.7.10/README.md
rename to lib/IRremoteESP8266-2.7.11/README.md
index 0640c53ff..bfcb48d98 100644
--- a/lib/IRremoteESP8266-2.7.10/README.md
+++ b/lib/IRremoteESP8266-2.7.11/README.md
@@ -9,8 +9,8 @@
This library enables you to **send _and_ receive** infra-red signals on an [ESP8266](https://github.com/esp8266/Arduino) or an
[ESP32](https://github.com/espressif/arduino-esp32) using the [Arduino framework](https://www.arduino.cc/) using common 940nm IR LEDs and common IR receiver modules. e.g. TSOP{17,22,24,36,38,44,48}* demodulators etc.
-## v2.7.10 Now Available
-Version 2.7.10 of the library is now [available](https://github.com/crankyoldgit/IRremoteESP8266/releases/latest). You can view the [Release Notes](ReleaseNotes.md) for all the significant changes.
+## v2.7.11 Now Available
+Version 2.7.11 of the library is now [available](https://github.com/crankyoldgit/IRremoteESP8266/releases/latest). You can view the [Release Notes](ReleaseNotes.md) for all the significant changes.
#### Upgrading from pre-v2.0
Usage of the library has been slightly changed in v2.0. You will need to change your usage to work with v2.0 and beyond. You can read more about the changes required on our [Upgrade to v2.0](https://github.com/crankyoldgit/IRremoteESP8266/wiki/Upgrading-to-v2.0) page.
diff --git a/lib/IRremoteESP8266-2.7.10/README_fr.md b/lib/IRremoteESP8266-2.7.11/README_fr.md
similarity index 98%
rename from lib/IRremoteESP8266-2.7.10/README_fr.md
rename to lib/IRremoteESP8266-2.7.11/README_fr.md
index 3c26ff76f..69ea67b9f 100644
--- a/lib/IRremoteESP8266-2.7.10/README_fr.md
+++ b/lib/IRremoteESP8266-2.7.11/README_fr.md
@@ -9,8 +9,8 @@
Cette librairie vous permetra de **recevoir et d'envoyer des signaux** infrarouge sur le protocole [ESP8266](https://github.com/esp8266/Arduino) ou sur le protocole
[ESP32](https://github.com/espressif/arduino-esp32) en utilisant le [Arduino framework](https://www.arduino.cc/) qui utilise la norme 940nm IR LEDs et le module basique de reception d'onde IR. Exemple : TSOP{17,22,24,36,38,44,48}* modules etc.
-## v2.7.10 disponible
-Version 2.7.10 de la libraire est maintenant [disponible](https://github.com/crankyoldgit/IRremoteESP8266/releases/latest). Vous pouvez voir le [Release Notes](ReleaseNotes.md) pour tous les changements importants.
+## v2.7.11 disponible
+Version 2.7.11 de la libraire est maintenant [disponible](https://github.com/crankyoldgit/IRremoteESP8266/releases/latest). Vous pouvez voir le [Release Notes](ReleaseNotes.md) pour tous les changements importants.
#### mise à jour depuis pre-v2.0
L'utilisation de la librairie à un peu changer depuis la version in v2.0. Si vous voulez l'utiliser vous devrez changer votre utilisation aussi. Vous pouvez vous renseigner sur les précondition d'utilisation ici : [Upgrade to v2.0](https://github.com/crankyoldgit/IRremoteESP8266/wiki/Upgrading-to-v2.0) page.
diff --git a/lib/IRremoteESP8266-2.7.10/ReleaseNotes.md b/lib/IRremoteESP8266-2.7.11/ReleaseNotes.md
similarity index 96%
rename from lib/IRremoteESP8266-2.7.10/ReleaseNotes.md
rename to lib/IRremoteESP8266-2.7.11/ReleaseNotes.md
index 3e62465e8..012f16527 100644
--- a/lib/IRremoteESP8266-2.7.10/ReleaseNotes.md
+++ b/lib/IRremoteESP8266-2.7.11/ReleaseNotes.md
@@ -1,9 +1,36 @@
# Release Notes
+## _v2.7.11 (20201002)_
+
+**[Features]**
+- Transcold: Add detailed support. (#1256 #1278)
+- Airwell/Whirlpool: Add handling of previous state to `.toCommon()` (#1275 #1276)
+- IRMQTTServer: Change how MQTT packet/buffer size is set. (#1271)
+- Fujitsu: Add support for timers. (#1255 #1261 #1262)
+- Neoclima: Add Economy & Fahrenheit support (#1260 #1265)
+- Technibel: Cleanup and code fixes/improvements. (#1259 #1266)
+- Technibel: Add detailed A/C support (#1259)
+- Transcold: Add basic support. (#1256 #1258)
+
+**[Misc]**
+- refactor ir_Delonghi (#1285)
+- Whirlpool: Change default mode in `convertMode()` (#1283 #1284)
+- SamsungAC: Unit tests to help debug poor signal (#1277 #1280)
+- Add question & note about VS1838b use to issue template. (#1281)
+- rewrite ir_Corona (#1274)
+- tools/mkkeywords: Fix minor parsing issue. (#1272)
+- Add Zhongxian Li to Contributers.md (#1270)
+- rewrite Carrier (#1269)
+- rewrite ir_Argo by using bit field (#1264)
+- rewrite ir_Amcor by using bit field (#1263)
+- Update Fujitsu supported model info.
+- Clarify the scope of the LittleFS breaking change.
+
+
## _v2.7.10 (20200831)_
**[BREAKING CHANGES]**
-- move SPIFFS to LittleFS for ESP8266 (#1182 #1226)
+- IRMQTTServer & Web-AC-Control: move SPIFFS to LittleFS for ESP8266 (#1182 #1226)
- Daikin176: Change & increase operating mode values. (#1233 #1235)
**[Bug Fixes]**
diff --git a/lib/IRremoteESP8266-2.7.10/SupportedProtocols.md b/lib/IRremoteESP8266-2.7.11/SupportedProtocols.md
similarity index 94%
rename from lib/IRremoteESP8266-2.7.10/SupportedProtocols.md
rename to lib/IRremoteESP8266-2.7.11/SupportedProtocols.md
index ab3b47f51..e8bf0cd49 100644
--- a/lib/IRremoteESP8266-2.7.10/SupportedProtocols.md
+++ b/lib/IRremoteESP8266-2.7.11/SupportedProtocols.md
@@ -1,6 +1,6 @@
+ Last generated: Fri 02 Oct 2020 10:51:12 +0000 --->
# IR Protocols supported by this library
| Protocol | Brand | Model | A/C Model | Detailed A/C Support |
@@ -23,8 +23,8 @@
| [Electra](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Electra.cpp) | **[AUX](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Electra.h)** | KFR-35GW/BpNFW=3 A/C
YKR-T/011 remote | | Yes |
| [Electra](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Electra.cpp) | **[Electra](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Electra.h)** | Classic INV 17 / AXW12DCS A/C
YKR-M/003E remote | | Yes |
| [Epson](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Epson.cpp) | **Epson** | EN-TW9100W Projector | | - |
-| [Fujitsu](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.cpp) | **[Fujitsu](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.h)** | AGTV14LAC A/C
AR-DB1 remote
AR-DL10 remote
AR-RAC1E remote
AR-RAE1E remote
AR-RAH2E remote
AR-REB1E remote
AR-RY4 remote
AST9RSGCW A/C (ARDB1)
ASTB09LBC A/C
ASU30C1 A/C
ASYG30LFCA A/C (ARRAH2E)
ASYG7LMCA A/C (ARREB1E) | ARDB1
ARJW2
ARRAH2E
ARREB1E
ARRY4 | Yes |
-| [Fujitsu](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.cpp) | **[Fujitsu General](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.h)** | AR-JW2 remote | ARDB1
ARJW2
ARRAH2E
ARREB1E
ARRY4 | Yes |
+| [Fujitsu](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.cpp) | **[Fujitsu](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.h)** | AGTV14LAC A/C (ARRAH2E)
AR-DB1 remote (ARDB1)
AR-DL10 remote (ARDB1)
AR-RAC1E remote (ARRAH2E)
AR-RAE1E remote (ARRAH2E)
AR-RAH2E remote (ARRAH2E)
AR-REB1E remote (ARREB1E)
AR-RY4 remote (ARRY4)
AST9RSGCW A/C (ARDB1)
ASTB09LBC A/C (ARRY4)
ASU30C1 A/C (ARDB1)
ASYG30LFCA A/C (ARRAH2E)
ASYG7LMCA A/C (ARREB1E) | ARDB1
ARJW2
ARRAH2E
ARREB1E
ARRY4 | Yes |
+| [Fujitsu](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.cpp) | **[Fujitsu General](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Fujitsu.h)** | AOHG09LLC A/C (ARRAH2E)
AR-JW2 remote (ARJW2)
AR-RCE1E remote (ARRAH2E)
ASHG09LLCA A/C (ARRAH2E) | ARDB1
ARJW2
ARRAH2E
ARREB1E
ARRY4 | Yes |
| [GICable](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_GICable.cpp) | **G.I. Cable** | XRC-200 remote | | - |
| [GlobalCache](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_GlobalCache.cpp) | **Global Cache** | Control Tower IR DB | | - |
| [Goodweather](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Goodweather.cpp) | **[Goodweather](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Goodweather.h)** | ZH/JT-03 remote | | Yes |
@@ -62,6 +62,7 @@
| [NEC](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_NEC.cpp) | **[Toshiba](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_NEC.h)** | 42TL838 LCD TV | | - |
| [NEC](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_NEC.cpp) | **[Yamaha](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_NEC.h)** | RAV561 remote
RXV585B A/V Receiver | | - |
| [Neoclima](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Neoclima.cpp) | **[Neoclima](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Neoclima.h)** | NS-09AHTI A/C
ZH/TY-01 remote | | Yes |
+| [Neoclima](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Neoclima.cpp) | **[Soleus Air](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Neoclima.h)** | TTWM1-10-01 A/C
ZCF/TL-05 remote | | Yes |
| [Nikai](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Nikai.cpp) | **Nikai** | Unknown LCD TV | | - |
| [Panasonic](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Panasonic.cpp) | **[Panasonic](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Panasonic.h)** | A75C2311 remote (PANASONIC_AC CKP/5)
A75C2616-1 remote (PANASONIC_AC DKE/3)
A75C3704 remote (PANASONIC_AC DKE/3)
A75C3747 remote (PANASONIC_AC JKE/4)
CKP series A/C (PANASONIC_AC CKP/5)
CS-E7PKR A/C (PANASONIC_AC DKE/2)
CS-ME10CKPG A/C (PANASONIC_AC CKP/5)
CS-ME12CKPG A/C (PANASONIC_AC CKP/5)
CS-ME14CKPG A/C (PANASONIC_AC CKP/5)
CS-YW9MKD A/C (PANASONIC_AC JKE/4)
CS-Z9RKR A/C (PANASONIC_AC RKR/6)
DKE series A/C (PANASONIC_AC DKE/3)
DKW series A/C (PANASONIC_AC DKE/3)
JKE series A/C (PANASONIC_AC JKE/4)
NKE series A/C (PANASONIC_AC NKE/2)
PKR series A/C (PANASONIC_AC DKE/3)
RKR series A/C (PANASONIC_AC RKR/6)
TV (PANASONIC) | CKP
DKE
JKE
LKE
NKE
RKR | Yes |
| [Pioneer](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Pioneer.cpp) | **Pioneer** | AV Receivers
AXD7690 Remote
VSX-324 AV Receiver | | - |
@@ -79,9 +80,11 @@
| [Symphony](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Symphony.cpp) | **Symphony** | Air Cooler 3Di | | - |
| [Symphony](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Symphony.cpp) | **Westinghouse** | 78095 Remote
Ceiling fan | | - |
| [Tcl](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Tcl.cpp) | **[Leberg](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Tcl.h)** | LBS-TOR07 A/C | | Yes |
+| [Technibel](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Technibel.cpp) | **[Technibel](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Technibel.h)** | IRO PLUS | | Yes |
| [Teco](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Teco.cpp) | **[Alaska](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Teco.h)** | SAC9010QC A/C
SAC9010QC remote | | Yes |
| [Toshiba](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Toshiba.cpp) | **[Carrier](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Toshiba.h)** | 42NQV025M2 / 38NYV025M2 A/C
42NQV035M2 / 38NYV035M2 A/C
42NQV050M2 / 38NYV050M2 A/C
42NQV060M2 / 38NYV060M2 A/C | | Yes |
| [Toshiba](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Toshiba.cpp) | **[Toshiba](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Toshiba.h)** | Akita EVO II
RAS 18SKP-ES
RAS-B13N3KV2
RAS-B13N3KVP-E
WC-L03SE
WH-TA04NE | | Yes |
+| [Transcold](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Transcold.cpp) | **[Transcold](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Transcold.h)** | M1-F-NO-6 A/C | | Yes |
| [Trotec](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Trotec.cpp) | **[Duux](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Trotec.h)** | Blizzard Smart 10K / DXMA04 A/C | | Yes |
| [Trotec](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Trotec.cpp) | **[Trotec](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Trotec.h)** | PAC 3200 A/C | | Yes |
| [Vestel](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Vestel.cpp) | **[Vestel](https://github.com/crankyoldgit/IRremoteESP8266/blob/master/src/ir_Vestel.h)** | BIOX CXP-9 A/C (9K BTU) | | Yes |
@@ -180,8 +183,10 @@
- SONY
- SYMPHONY
- TCL112AC
+- TECHNIBEL_AC
- TECO
- TOSHIBA_AC
+- TRANSCOLD
- TROTEC
- VESTEL_AC
- VOLTAS
diff --git a/lib/IRremoteESP8266-2.7.10/docs/README.md b/lib/IRremoteESP8266-2.7.11/docs/README.md
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/docs/README.md
rename to lib/IRremoteESP8266-2.7.11/docs/README.md
diff --git a/lib/IRremoteESP8266-2.7.10/docs/README_fr.md b/lib/IRremoteESP8266-2.7.11/docs/README_fr.md
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/docs/README_fr.md
rename to lib/IRremoteESP8266-2.7.11/docs/README_fr.md
diff --git a/lib/IRremoteESP8266-2.7.10/docs/_config.yml b/lib/IRremoteESP8266-2.7.11/docs/_config.yml
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/docs/_config.yml
rename to lib/IRremoteESP8266-2.7.11/docs/_config.yml
diff --git a/lib/IRremoteESP8266-2.7.10/docs/doxygen/html/IRac_8cpp.html b/lib/IRremoteESP8266-2.7.11/docs/doxygen/html/IRac_8cpp.html
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/docs/doxygen/html/IRac_8cpp.html
rename to lib/IRremoteESP8266-2.7.11/docs/doxygen/html/IRac_8cpp.html
diff --git a/lib/IRremoteESP8266-2.7.10/docs/doxygen/html/IRac_8h.html b/lib/IRremoteESP8266-2.7.11/docs/doxygen/html/IRac_8h.html
similarity index 100%
rename from lib/IRremoteESP8266-2.7.10/docs/doxygen/html/IRac_8h.html
rename to lib/IRremoteESP8266-2.7.11/docs/doxygen/html/IRac_8h.html
diff --git a/lib/IRremoteESP8266-2.7.10/docs/doxygen/html/IRac_8h_source.html b/lib/IRremoteESP8266-2.7.11/docs/doxygen/html/IRac_8h_source.html
similarity index 87%
rename from lib/IRremoteESP8266-2.7.10/docs/doxygen/html/IRac_8h_source.html
rename to lib/IRremoteESP8266-2.7.11/docs/doxygen/html/IRac_8h_source.html
index 25336b9b2..a7b1ad1a7 100644
--- a/lib/IRremoteESP8266-2.7.10/docs/doxygen/html/IRac_8h_source.html
+++ b/lib/IRremoteESP8266-2.7.11/docs/doxygen/html/IRac_8h_source.html
@@ -103,578 +103,599 @@ $(function() {
-
-
-
-
-
-
-
-
-
-
-
-
-
- 49 explicit IRac(
const uint16_t pin,
const bool inverted =
false,
- 50 const bool use_modulation =
true);
-
-
-
-
- 55 const float degrees,
const bool celsius,
-
-
-
- 59 const bool quiet,
const bool turbo,
const bool econo,
- 60 const bool light,
const bool filter,
const bool clean,
- 61 const bool beep,
const int16_t sleep,
-
-
-
-
-
-
-
-
-
- 71 const bool quiet,
const bool turbo,
const bool econo,
- 72 const bool light,
const bool filter,
const bool clean,
- 73 const bool beep,
const int16_t sleep = -1,
- 74 const int16_t clock = -1);
-
- 76 static bool strToBool(
const char *str,
const bool def =
false);
- 77 static int16_t
strToModel(
const char *str,
const int16_t def = -1);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 108 #endif // SEND_AIRWELL
-
-
-
-
-
-
-
-
-
- 118 const bool turbo,
const int16_t sleep = -1);
-
- 120 #if SEND_CARRIER_AC64
-
-
-
-
- 125 #endif // SEND_CARRIER_AC64
-
-
-
-
-
- 131 const bool turbo,
const bool light,
const bool clean,
- 132 const int16_t sleep = -1);
- 133 #endif // SEND_COOLIX
-
-
-
-
-
- 139 #endif // SEND_CORONA_AC
-
-
-
-
-
- 145 const bool quiet,
const bool turbo,
const bool econo,
-
- 147 #endif // SEND_DAIKIN
-
-
-
-
-
- 153 const bool quiet,
const bool turbo,
const bool light,
- 154 const bool econo,
const int16_t sleep = -1,
- 155 const int16_t clock = -1);
- 156 #endif // SEND_DAIKIN128
-
-
-
-
-
- 162 const bool quiet,
const bool turbo,
const bool econo);
- 163 #endif // SEND_DAIKIN152
-
-
-
-
-
- 169 #endif // SEND_DAIKIN160
-
-
-
-
-
- 175 #endif // SEND_DAIKIN176
-
-
-
-
-
- 181 const bool quiet,
const bool turbo,
const bool light,
- 182 const bool econo,
const bool filter,
const bool clean,
- 183 const bool beep,
const int16_t sleep = -1,
- 184 const int16_t clock = -1);
- 185 #endif // SEND_DAIKIN2
-
-
-
-
-
- 191 const bool quiet,
const bool turbo);
- 192 #endif // SEND_DAIKIN216
-
-
-
-
-
- 198 const bool quiet,
const bool turbo,
- 199 const int16_t sleep = -1,
const int16_t clock = -1);
- 200 #endif // SEND_DAIKIN64
-
-
-
-
- 205 const bool turbo,
const int16_t sleep = -1);
- 206 #endif // SEND_DELONGHI_AC
-
-
-
-
-
-
- 213 const bool lighttoggle,
const bool clean);
- 214 #endif // SEND_ELECTRA_AC
-
-
-
-
-
- 220 const bool quiet,
const bool turbo,
const bool econo,
- 221 const bool filter,
const bool clean);
- 222 #endif // SEND_FUJITSU_AC
-
-
-
-
-
-
- 229 const bool turbo,
const bool light,
- 230 const int16_t sleep = -1);
- 231 #endif // SEND_GOODWEATHER
-
-
-
-
-
- 237 const bool clean,
const int16_t sleep = -1);
-
-
-
-
-
- 243 const bool filter,
const int16_t sleep = -1,
- 244 const int16_t clock = -1);
- 245 #endif // SEND_HAIER_AC
- 246 #if SEND_HAIER_AC_YRW02
-
-
-
-
- 251 const bool turbo,
const bool filter,
- 252 const int16_t sleep = -1);
- 253 #endif // SEND_HAIER_AC_YRW02
-
-
-
-
-
- 259 #endif // SEND_HITACHI_AC
-
-
- 262 const bool on,
const bool power_toggle,
-
-
-
- 266 const bool swing_toggle,
const int16_t sleep = -1);
- 267 #endif // SEND_HITACHI_AC1
- 268 #if SEND_HITACHI_AC344
-
-
-
-
-
- 274 #endif // SEND_HITACHI_AC344
- 275 #if SEND_HITACHI_AC424
-
-
-
-
- 280 #endif // SEND_HITACHI_AC424
-
-
-
-
-
- 286 const bool quiet,
const bool turbo,
const bool light,
- 287 const bool filter,
const bool clean);
- 288 #endif // SEND_KELVINATOR
-
-
-
-
-
-
-
-
-
-
- 299 const int16_t sleep = -1);
-
- 301 #if SEND_MITSUBISHI_AC
-
-
-
-
-
- 307 const bool quiet,
const int16_t clock = -1);
- 308 #endif // SEND_MITSUBISHI_AC
- 309 #if SEND_MITSUBISHI112
-
-
-
-
-
-
- 316 #endif // SEND_MITSUBISHI112
- 317 #if SEND_MITSUBISHI136
-
-
-
-
- 322 #endif // SEND_MITSUBISHI136
- 323 #if SEND_MITSUBISHIHEAVY
-
-
-
-
-
- 329 const bool turbo,
const bool econo,
const bool clean);
-
-
-
-
-
- 335 const bool quiet,
const bool turbo,
const bool econo,
- 336 const bool filter,
const bool clean,
- 337 const int16_t sleep = -1);
- 338 #endif // SEND_MITSUBISHIHEAVY
-
-
-
-
- 343 const bool turbo,
const bool light,
const bool filter,
- 344 const int16_t sleep = -1);
- 345 #endif // SEND_NEOCLIMA
- 346 #if SEND_PANASONIC_AC
-
-
-
-
- 351 const bool quiet,
const bool turbo,
const bool filter,
- 352 const int16_t clock = -1);
- 353 #endif // SEND_PANASONIC_AC
-
-
-
-
- 358 const bool quiet,
const bool turbo,
const bool light,
- 359 const bool filter,
const bool clean,
- 360 const bool beep,
const bool prevpower =
true,
- 361 const bool forcepower =
true);
- 362 #endif // SEND_SAMSUNG_AC
-
-
-
-
- 367 const bool beep,
const int16_t sleep = -1);
- 368 #endif // SEND_SANYO_AC
-
-
-
-
-
-
- 375 #endif // SEND_SHARP_AC
-
-
-
-
-
- 381 const bool turbo,
const bool light,
const bool econo,
-
- 383 #endif // SEND_TCL112AC
-
-
-
-
- 388 const bool light,
const int16_t sleep = -1);
-
-
-
-
-
- 394 const bool turbo,
const bool econo);
- 395 #endif // SEND_TOSHIBA_AC
-
-
-
-
- 400 #endif // SEND_TROTEC
-
-
-
-
- 405 const bool turbo,
const bool filter,
- 406 const int16_t sleep = -1,
const int16_t clock = -1,
- 407 const bool sendNormal =
true);
- 408 #endif // SEND_VESTEL_AC
-
-
-
-
-
- 414 const bool turbo,
const bool econo,
const bool light,
- 415 const int16_t sleep = -1);
- 416 #endif // SEND_VOLTAS
- 417 #if SEND_WHIRLPOOL_AC
-
-
-
- 421 const bool turbo,
const bool light,
- 422 const int16_t sleep = -1,
const int16_t clock = -1);
- 423 #endif // SEND_WHIRLPOOL_AC
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 51 explicit IRac(
const uint16_t pin,
const bool inverted =
false,
+ 52 const bool use_modulation =
true);
+
+
+
+
+ 57 const float degrees,
const bool celsius,
+
+
+
+ 61 const bool quiet,
const bool turbo,
const bool econo,
+ 62 const bool light,
const bool filter,
const bool clean,
+ 63 const bool beep,
const int16_t sleep,
+
+
+
+
+
+
+
+
+
+ 73 const bool quiet,
const bool turbo,
const bool econo,
+ 74 const bool light,
const bool filter,
const bool clean,
+ 75 const bool beep,
const int16_t sleep = -1,
+ 76 const int16_t clock = -1);
+
+ 78 static bool strToBool(
const char *str,
const bool def =
false);
+ 79 static int16_t
strToModel(
const char *str,
const int16_t def = -1);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 110 #endif // SEND_AIRWELL
+
+
+
+
+
+
+
+
+
+ 120 const bool turbo,
const int16_t sleep = -1);
+
+ 122 #if SEND_CARRIER_AC64
+
+
+
+
+ 127 #endif // SEND_CARRIER_AC64
+
+
+
+
+
+ 133 const bool turbo,
const bool light,
const bool clean,
+ 134 const int16_t sleep = -1);
+ 135 #endif // SEND_COOLIX
+
+
+
+
+
+ 141 #endif // SEND_CORONA_AC
+
+
+
+
+
+ 147 const bool quiet,
const bool turbo,
const bool econo,
+
+ 149 #endif // SEND_DAIKIN
+
+
+
+
+
+ 155 const bool quiet,
const bool turbo,
const bool light,
+ 156 const bool econo,
const int16_t sleep = -1,
+ 157 const int16_t clock = -1);
+ 158 #endif // SEND_DAIKIN128
+
+
+
+
+
+ 164 const bool quiet,
const bool turbo,
const bool econo);
+ 165 #endif // SEND_DAIKIN152
+
+
+
+
+
+ 171 #endif // SEND_DAIKIN160
+
+
+
+
+
+ 177 #endif // SEND_DAIKIN176
+
+
+
+
+
+ 183 const bool quiet,
const bool turbo,
const bool light,
+ 184 const bool econo,
const bool filter,
const bool clean,
+ 185 const bool beep,
const int16_t sleep = -1,
+ 186 const int16_t clock = -1);
+ 187 #endif // SEND_DAIKIN2
+
+
+
+
+
+ 193 const bool quiet,
const bool turbo);
+ 194 #endif // SEND_DAIKIN216
+
+
+
+
+
+ 200 const bool quiet,
const bool turbo,
+ 201 const int16_t sleep = -1,
const int16_t clock = -1);
+ 202 #endif // SEND_DAIKIN64
+
+
+
+
+ 207 const bool turbo,
const int16_t sleep = -1);
+ 208 #endif // SEND_DELONGHI_AC
+
+
+
+
+
+
+ 215 const bool lighttoggle,
const bool clean);
+ 216 #endif // SEND_ELECTRA_AC
+
+
+
+
+
+ 222 const bool quiet,
const bool turbo,
const bool econo,
+ 223 const bool filter,
const bool clean,
const int16_t sleep = -1);
+ 224 #endif // SEND_FUJITSU_AC
+
+
+
+
+
+
+ 231 const bool turbo,
const bool light,
+ 232 const int16_t sleep = -1);
+ 233 #endif // SEND_GOODWEATHER
+
+
+
+
+
+ 239 const bool clean,
const int16_t sleep = -1);
+
+
+
+
+
+ 245 const bool filter,
const int16_t sleep = -1,
+ 246 const int16_t clock = -1);
+ 247 #endif // SEND_HAIER_AC
+ 248 #if SEND_HAIER_AC_YRW02
+
+
+
+
+ 253 const bool turbo,
const bool filter,
+ 254 const int16_t sleep = -1);
+ 255 #endif // SEND_HAIER_AC_YRW02
+
+
+
+
+
+ 261 #endif // SEND_HITACHI_AC
+
+
+ 264 const bool on,
const bool power_toggle,
+
+
+
+ 268 const bool swing_toggle,
const int16_t sleep = -1);
+ 269 #endif // SEND_HITACHI_AC1
+ 270 #if SEND_HITACHI_AC344
+
+
+
+
+
+ 276 #endif // SEND_HITACHI_AC344
+ 277 #if SEND_HITACHI_AC424
+
+
+
+
+ 282 #endif // SEND_HITACHI_AC424
+
+
+
+
+
+ 288 const bool quiet,
const bool turbo,
const bool light,
+ 289 const bool filter,
const bool clean);
+ 290 #endif // SEND_KELVINATOR
+
+
+
+
+
+
+
+
+
+
+ 301 const int16_t sleep = -1);
+
+ 303 #if SEND_MITSUBISHI_AC
+
+
+
+
+
+ 309 const bool quiet,
const int16_t clock = -1);
+ 310 #endif // SEND_MITSUBISHI_AC
+ 311 #if SEND_MITSUBISHI112
+
+
+
+
+
+
+ 318 #endif // SEND_MITSUBISHI112
+ 319 #if SEND_MITSUBISHI136
+
+
+
+
+ 324 #endif // SEND_MITSUBISHI136
+ 325 #if SEND_MITSUBISHIHEAVY
+
+
+
+
+
+ 331 const bool turbo,
const bool econo,
const bool clean);
+
+
+
+
+
+ 337 const bool quiet,
const bool turbo,
const bool econo,
+ 338 const bool filter,
const bool clean,
+ 339 const int16_t sleep = -1);
+ 340 #endif // SEND_MITSUBISHIHEAVY
+
+
+ 343 const bool celsius,
const float degrees,
+
+
+ 346 const bool turbo,
const bool econo,
const bool light,
+ 347 const bool filter,
const int16_t sleep = -1);
+ 348 #endif // SEND_NEOCLIMA
+ 349 #if SEND_PANASONIC_AC
+
+
+
+
+ 354 const bool quiet,
const bool turbo,
const bool filter,
+ 355 const int16_t clock = -1);
+ 356 #endif // SEND_PANASONIC_AC
+
+
+
+
+ 361 const bool quiet,
const bool turbo,
const bool light,
+ 362 const bool filter,
const bool clean,
+ 363 const bool beep,
const bool prevpower =
true,
+ 364 const bool forcepower =
true);
+ 365 #endif // SEND_SAMSUNG_AC
+
+
+
+
+ 370 const bool beep,
const int16_t sleep = -1);
+ 371 #endif // SEND_SANYO_AC
+
+
+
+
+
+
+ 378 #endif // SEND_SHARP_AC
+
+
+
+
+
+ 384 const bool turbo,
const bool light,
const bool econo,
+
+ 386 #endif // SEND_TCL112AC
+ 387 #if SEND_TECHNIBEL_AC
+
+
+
+
+ 392 #endif // SEND_TECHNIBEL_AC
+
+
+
+
+ 397 const bool light,
const int16_t sleep = -1);
+
+
+
+
+
+ 403 const bool turbo,
const bool econo);
+ 404 #endif // SEND_TOSHIBA_AC
+
+
+
+
+ 409 #endif // SEND_TROTEC
+
+
+
+
+ 414 const bool turbo,
const bool filter,
+ 415 const int16_t sleep = -1,
const int16_t clock = -1,
+ 416 const bool sendNormal =
true);
+ 417 #endif // SEND_VESTEL_AC
+
+
+
+
+
+ 423 const bool turbo,
const bool econo,
const bool light,
+ 424 const int16_t sleep = -1);
+ 425 #endif // SEND_VOLTAS
+ 426 #if SEND_WHIRLPOOL_AC
+
+
+
+ 430 const bool turbo,
const bool light,
+ 431 const int16_t sleep = -1,
const int16_t clock = -1);
+ 432 #endif // SEND_WHIRLPOOL_AC
+
+
+
+
+
+ 438 #endif // SEND_TRANSCOLD
+
+
+
+
+
+
+
+
+
+
+
Class for handling detailed Panasonic A/C messages.
Definition: ir_Panasonic.h:98
-void airwell(IRAirwellAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan)
Send an Airwell A/C message with the supplied settings.
Definition: IRac.cpp:291
+void airwell(IRAirwellAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan)
Send an Airwell A/C message with the supplied settings.
Definition: IRac.cpp:299
Support for Kelvinator A/C protocols.
Class for handling detailed Samsung A/C messages.
Definition: ir_Samsung.h:97
-void hitachi(IRHitachiAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh)
Send a Hitachi A/C message with the supplied settings.
Definition: IRac.cpp:1060
+void hitachi(IRHitachiAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh)
Send a Hitachi A/C message with the supplied settings.
Definition: IRac.cpp:1070
Class for handling detailed Toshiba A/C messages.
Definition: ir_Toshiba.h:100
-decode_type_t
Enumerator for defining and numbering of supported IR protocol.
Definition: IRremoteESP8266.h:736
-stdAc::state_t getStatePrev(void)
Get the previous internal A/C climate state that should have already been sent to the device....
Definition: IRac.cpp:131
-stdAc::state_t getState(void)
Get the current internal A/C climate state.
Definition: IRac.cpp:126
+decode_type_t
Enumerator for defining and numbering of supported IR protocol.
Definition: IRremoteESP8266.h:750
+stdAc::state_t getStatePrev(void)
Get the previous internal A/C climate state that should have already been sent to the device....
Definition: IRac.cpp:133
+stdAc::state_t getState(void)
Get the current internal A/C climate state.
Definition: IRac.cpp:128
Class for handling detailed Mitsubishi Heavy 152-bit A/C messages.
Definition: ir_MitsubishiHeavy.h:133
-static stdAc::swingh_t strToSwingH(const char *str, const stdAc::swingh_t def=stdAc::swingh_t::kOff)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2664
-void hitachi344(IRHitachiAc344 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh)
Send a Hitachi 344-bit A/C message with the supplied settings.
Definition: IRac.cpp:1136
+static stdAc::swingh_t strToSwingH(const char *str, const stdAc::swingh_t def=stdAc::swingh_t::kOff)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2772
+void hitachi344(IRHitachiAc344 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh)
Send a Hitachi 344-bit A/C message with the supplied settings.
Definition: IRac.cpp:1146
Support for Electra A/C protocols.
-void markAsSent(void)
Update the previous state to the current one.
Definition: IRac.cpp:2527
+void markAsSent(void)
Update the previous state to the current one.
Definition: IRac.cpp:2635
swingv_t
Common A/C settings for Vertical Swing.
Definition: IRsend.h:70
Airwell "Manchester code" based protocol. Some other Airwell products use the COOLIX protocol.
-void daikin2(IRDaikin2 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool light, const bool econo, const bool filter, const bool clean, const bool beep, const int16_t sleep=-1, const int16_t clock=-1)
Send a Daikin2 A/C message with the supplied settings.
Definition: IRac.cpp:680
+void daikin2(IRDaikin2 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool light, const bool econo, const bool filter, const bool clean, const bool beep, const int16_t sleep=-1, const int16_t clock=-1)
Send a Daikin2 A/C message with the supplied settings.
Definition: IRac.cpp:688
Support for Trotec protocols.
-void sanyo(IRSanyoAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool beep, const int16_t sleep=-1)
Send a Toshiba A/C message with the supplied settings.
Definition: IRac.cpp:1629
+void sanyo(IRSanyoAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool beep, const int16_t sleep=-1)
Send a Toshiba A/C message with the supplied settings.
Definition: IRac.cpp:1642
Class for handling detailed Daikin 280-bit A/C messages.
Definition: ir_Daikin.h:526
-void lg(IRLgAc *ac, const lg_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan)
Send a LG A/C message with the supplied settings.
Definition: IRac.cpp:1242
-Class for handling detailed Delonghi A/C messages.
Definition: ir_Delonghi.h:102
-Class for handling detailed Corona A/C messages.
Definition: ir_Corona.h:93
-void kelvinator(IRKelvinatorAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool light, const bool filter, const bool clean)
Send a Kelvinator A/C message with the supplied settings.
Definition: IRac.cpp:1208
+void lg(IRLgAc *ac, const lg_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan)
Send a LG A/C message with the supplied settings.
Definition: IRac.cpp:1252
+Class for handling detailed Delonghi A/C messages.
Definition: ir_Delonghi.h:72
+Class for handling detailed Corona A/C messages.
Definition: ir_Corona.h:105
+void kelvinator(IRKelvinatorAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool light, const bool filter, const bool clean)
Send a Kelvinator A/C message with the supplied settings.
Definition: IRac.cpp:1218
Class for handling detailed Daikin 312-bit A/C messages.
Definition: ir_Daikin.h:608
Support for Neoclima protocols. Analysis by crankyoldgit & AndreyShpilevoy.
Class for handling detailed Daikin 128-bit A/C messages.
Definition: ir_Daikin.h:869
fanspeed_t
Common A/C settings for Fan Speeds.
Definition: IRsend.h:58
Support for Sharp protocols.
-static String fanspeedToString(const stdAc::fanspeed_t speed)
Convert the supplied fan speed enum into the appropriate String.
Definition: IRac.cpp:2814
+static String fanspeedToString(const stdAc::fanspeed_t speed)
Convert the supplied fan speed enum into the appropriate String.
Definition: IRac.cpp:2922
whirlpool_ac_remote_model_t
Whirlpool A/C model numbers.
Definition: IRsend.h:158
-void whirlpool(IRWhirlpoolAc *ac, const whirlpool_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool light, const int16_t sleep=-1, const int16_t clock=-1)
Send a Whirlpool A/C message with the supplied settings.
Definition: IRac.cpp:1948
+void whirlpool(IRWhirlpoolAc *ac, const whirlpool_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool light, const int16_t sleep=-1, const int16_t clock=-1)
Send a Whirlpool A/C message with the supplied settings.
Definition: IRac.cpp:1994
Results returned from the decoder.
Definition: IRrecv.h:92
-void daikin64(IRDaikin64 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const int16_t sleep=-1, const int16_t clock=-1)
Send a Daikin 64-bit A/C message with the supplied settings.
Definition: IRac.cpp:749
-void voltas(IRVoltas *ac, const voltas_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool econo, const bool light, const int16_t sleep=-1)
Send a Voltas A/C message with the supplied settings.
Definition: IRac.cpp:1907
-void tcl112(IRTcl112Ac *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool light, const bool econo, const bool filter)
Send a TCL 112-bit A/C message with the supplied settings.
Definition: IRac.cpp:1723
-bool sendAc(void)
Send an A/C message based soley on our internal state.
Definition: IRac.cpp:2533
-static bool cmpStates(const stdAc::state_t a, const stdAc::state_t b)
Compare two AirCon states.
Definition: IRac.cpp:2544
+void daikin64(IRDaikin64 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const int16_t sleep=-1, const int16_t clock=-1)
Send a Daikin 64-bit A/C message with the supplied settings.
Definition: IRac.cpp:757
+void voltas(IRVoltas *ac, const voltas_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool econo, const bool light, const int16_t sleep=-1)
Send a Voltas A/C message with the supplied settings.
Definition: IRac.cpp:1953
+void tcl112(IRTcl112Ac *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool light, const bool econo, const bool filter)
Send a TCL 112-bit A/C message with the supplied settings.
Definition: IRac.cpp:1736
+void transcold(IRTranscoldAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh)
Send a Transcold A/C message with the supplied settings.
Definition: IRac.cpp:2031
+bool sendAc(void)
Send an A/C message based soley on our internal state.
Definition: IRac.cpp:2641
+static bool cmpStates(const stdAc::state_t a, const stdAc::state_t b)
Compare two AirCon states.
Definition: IRac.cpp:2652
Support for Midea protocols. Midea added by crankyoldgit & bwze.
Support for Daikin A/C protocols.
gree_ac_remote_model_t
Gree A/C model numbers.
Definition: IRsend.h:129
Class for handling detailed Daikin 64-bit A/C messages.
Definition: ir_Daikin.h:1003
-void vestel(IRVestelAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool filter, const int16_t sleep=-1, const int16_t clock=-1, const bool sendNormal=true)
Send a Vestel A/C message with the supplied settings.
Definition: IRac.cpp:1865
+void vestel(IRVestelAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool filter, const int16_t sleep=-1, const int16_t clock=-1, const bool sendNormal=true)
Send a Vestel A/C message with the supplied settings.
Definition: IRac.cpp:1911
Class for handling detailed Hitachi 53-byte/424-bit A/C messages.
Definition: ir_Hitachi.h:313
-void daikin(IRDaikinESP *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool clean)
Send a Daikin A/C message with the supplied settings.
Definition: IRac.cpp:516
-IRac(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: IRac.cpp:52
+void daikin(IRDaikinESP *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool clean)
Send a Daikin A/C message with the supplied settings.
Definition: IRac.cpp:524
+IRac(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)
Class constructor.
Definition: IRac.cpp:54
Class for handling detailed Daikin 216-bit A/C messages.
Definition: ir_Daikin.h:704
Class for handling detailed Voltas A/C messages.
Definition: ir_Voltas.h:90
hitachi_ac1_remote_model_t
HITACHI_AC1 A/C model numbers.
Definition: IRsend.h:135
-void samsung(IRSamsungAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const bool light, const bool filter, const bool clean, const bool beep, const bool prevpower=true, const bool forcepower=true)
Send a Samsung A/C message with the supplied settings.
Definition: IRac.cpp:1588
-void daikin128(IRDaikin128 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const bool light, const bool econo, const int16_t sleep=-1, const int16_t clock=-1)
Send a Daikin 128-bit A/C message with the supplied settings.
Definition: IRac.cpp:556
+void samsung(IRSamsungAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const bool light, const bool filter, const bool clean, const bool beep, const bool prevpower=true, const bool forcepower=true)
Send a Samsung A/C message with the supplied settings.
Definition: IRac.cpp:1601
+void daikin128(IRDaikin128 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const bool light, const bool econo, const int16_t sleep=-1, const int16_t clock=-1)
Send a Daikin 128-bit A/C message with the supplied settings.
Definition: IRac.cpp:564
Class for handling detailed Hitachi 224-bit A/C messages.
Definition: ir_Hitachi.h:188
-const int8_t kGpioUnused
A placeholder for not using an actual GPIO.
Definition: IRac.h:43
-Common functions for use with all A/Cs supported by the IRac class.
Definition: IRac.cpp:2883
+const int8_t kGpioUnused
A placeholder for not using an actual GPIO.
Definition: IRac.h:45
+Common functions for use with all A/Cs supported by the IRac class.
Definition: IRac.cpp:2991
Class for handling detailed Sanyo A/C messages.
Definition: ir_Sanyo.h:98
-void haier(IRHaierAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool filter, const int16_t sleep=-1, const int16_t clock=-1)
Send a Haier A/C message with the supplied settings.
Definition: IRac.cpp:991
+void haier(IRHaierAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool filter, const int16_t sleep=-1, const int16_t clock=-1)
Send a Haier A/C message with the supplied settings.
Definition: IRac.cpp:1001
Class for handling detailed Whirlpool A/C messages.
Definition: ir_Whirlpool.h:91
Class for handling detailed Hitachi 344-bit A/C messages.
Definition: ir_Hitachi.h:401
-static String boolToString(const bool value)
Convert the supplied boolean into the appropriate String.
Definition: IRac.cpp:2785
-stdAc::state_t next
The state we want the device to be in after we send.
Definition: IRac.h:95
-std::string String
Definition: IRremoteESP8266.h:1128
+static String boolToString(const bool value)
Convert the supplied boolean into the appropriate String.
Definition: IRac.cpp:2893
+stdAc::state_t next
The state we want the device to be in after we send.
Definition: IRac.h:97
+std::string String
Definition: IRremoteESP8266.h:1148
Class for handling detailed Mitsubishi 144-bit A/C messages.
Definition: ir_Mitsubishi.h:168
-void trotec(IRTrotecESP *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const int16_t sleep=-1)
Send a Trotec A/C message with the supplied settings.
Definition: IRac.cpp:1828
-static int16_t strToModel(const char *str, const int16_t def=-1)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2704
-Class for handling detailed Amcor A/C messages.
Definition: ir_Amcor.h:81
+void trotec(IRTrotecESP *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const int16_t sleep=-1)
Send a Trotec A/C message with the supplied settings.
Definition: IRac.cpp:1874
+static int16_t strToModel(const char *str, const int16_t def=-1)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2812
+Class for handling detailed Amcor A/C messages.
Definition: ir_Amcor.h:89
Class for handling detailed Mitsubishi 122-bit A/C messages.
Definition: ir_Mitsubishi.h:286
Class for handling detailed TCL A/C messages.
Definition: ir_Tcl.h:63
-void daikin176(IRDaikin176 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingh_t swingh)
Send a Daikin 176-bit A/C message with the supplied settings.
Definition: IRac.cpp:648
+void daikin176(IRDaikin176 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingh_t swingh)
Send a Daikin 176-bit A/C message with the supplied settings.
Definition: IRac.cpp:656
Class for handling detailed Electra A/C messages.
Definition: ir_Electra.h:80
Support for TCL protocols.
-bool hasStateChanged(void)
Check if the internal state has changed from what was previously sent.
Definition: IRac.cpp:2556
-void haierYrwo2(IRHaierACYRW02 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool filter, const int16_t sleep=-1)
Send a Haier YRWO2 A/C message with the supplied settings.
Definition: IRac.cpp:1028
-void daikin216(IRDaikin216 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo)
Send a Daikin 216-bit A/C message with the supplied settings.
Definition: IRac.cpp:719
+bool hasStateChanged(void)
Check if the internal state has changed from what was previously sent.
Definition: IRac.cpp:2664
+void haierYrwo2(IRHaierACYRW02 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool filter, const int16_t sleep=-1)
Send a Haier YRWO2 A/C message with the supplied settings.
Definition: IRac.cpp:1038
+void daikin216(IRDaikin216 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo)
Send a Daikin 216-bit A/C message with the supplied settings.
Definition: IRac.cpp:727
+Support for Transcold A/C protocols.
Support for Hitachi A/C protocols.
Support for Panasonic protocols.
-static stdAc::state_t handleToggles(const stdAc::state_t desired, const stdAc::state_t *prev=NULL)
Create a new state base on desired & previous states but handle any state changes for options that ne...
Definition: IRac.cpp:1992
+static stdAc::state_t handleToggles(const stdAc::state_t desired, const stdAc::state_t *prev=NULL)
Create a new state base on desired & previous states but handle any state changes for options that ne...
Definition: IRac.cpp:2080
Class for handling detailed Mitsubishi 136-bit A/C messages.
Definition: ir_Mitsubishi.h:232
panasonic_ac_remote_model_t
Panasonic A/C model numbers.
Definition: IRsend.h:141
swingh_t
Common A/C settings for Horizontal Swing.
Definition: IRsend.h:83
-void mitsubishi112(IRMitsubishi112 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet)
Send a Mitsubishi 112-bit A/C message with the supplied settings.
Definition: IRac.cpp:1350
-bool decodeToState(const decode_results *decode, stdAc::state_t *result, const stdAc::state_t *prev)
Convert a valid IR A/C remote message that we understand enough into a Common A/C state.
Definition: IRac.cpp:3227
+void mitsubishi112(IRMitsubishi112 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet)
Send a Mitsubishi 112-bit A/C message with the supplied settings.
Definition: IRac.cpp:1360
+bool decodeToState(const decode_results *decode, stdAc::state_t *result, const stdAc::state_t *prev)
Convert a valid IR A/C remote message that we understand enough into a Common A/C state.
Definition: IRac.cpp:3350
Class for handling detailed Hitachi 104-bit A/C messages.
Definition: ir_Hitachi.h:245
-void hitachi424(IRHitachiAc424 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv)
Send a Hitachi 424-bit A/C message with the supplied settings.
Definition: IRac.cpp:1170
+void hitachi424(IRHitachiAc424 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv)
Send a Hitachi 424-bit A/C message with the supplied settings.
Definition: IRac.cpp:1180
Support for Samsung protocols. Samsung originally added from https://github.com/shirriff/Arduino-IRre...
-String resultAcToString(const decode_results *const result)
Display the human readable state of an A/C message if we can.
Definition: IRac.cpp:2889
-void daikin152(IRDaikin152 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const bool econo)
Send a Daikin 152-bit A/C message with the supplied settings.
Definition: IRac.cpp:593
+String resultAcToString(const decode_results *const result)
Display the human readable state of an A/C message if we can.
Definition: IRac.cpp:2997
+void daikin152(IRDaikin152 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet, const bool turbo, const bool econo)
Send a Daikin 152-bit A/C message with the supplied settings.
Definition: IRac.cpp:601
fujitsu_ac_remote_model_t
Fujitsu A/C model numbers.
Definition: IRsend.h:120
Support for Gree A/C protocols.
-Class for handling detailed Carrier 64 bit A/C messages.
Definition: ir_Carrier.h:74
+Class for handling detailed Carrier 64 bit A/C messages.
Definition: ir_Carrier.h:83
Class for handling detailed Midea A/C messages.
Definition: ir_Midea.h:99
Class for handling detailed Kelvinator A/C messages.
Definition: ir_Kelvinator.h:137
-bool _inverted
IR LED is lit when GPIO is LOW (true) or HIGH (false)?
Definition: IRac.h:101
-Class for handling detailed Fujitsu A/C messages.
Definition: ir_Fujitsu.h:101
+bool _inverted
IR LED is lit when GPIO is LOW (true) or HIGH (false)?
Definition: IRac.h:103
+Class for handling detailed Fujitsu A/C messages.
Definition: ir_Fujitsu.h:113
Support for Mitsubishi Heavy Industry protocols. Code to emulate Mitsubishi Heavy Industries A/C IR r...
Class for handling detailed Coolix A/C messages.
Definition: ir_Coolix.h:105
-void panasonic(IRPanasonicAc *ac, const panasonic_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool filter, const int16_t clock=-1)
Send a Panasonic A/C message with the supplied settings.
Definition: IRac.cpp:1544
-static String swingvToString(const stdAc::swingv_t swingv)
Convert the supplied enum into the appropriate String.
Definition: IRac.cpp:2836
+void panasonic(IRPanasonicAc *ac, const panasonic_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool filter, const int16_t clock=-1)
Send a Panasonic A/C message with the supplied settings.
Definition: IRac.cpp:1557
+static String swingvToString(const stdAc::swingv_t swingv)
Convert the supplied enum into the appropriate String.
Definition: IRac.cpp:2944
Support for Mitsubishi protocols. Mitsubishi (TV) decoding added from https://github....
-A universal/common/generic interface for controling supported A/Cs.
Definition: IRac.h:47
+A universal/common/generic interface for controling supported A/Cs.
Definition: IRac.h:49
Support for Teco protocols.
-void gree(IRGreeAC *ac, const gree_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool light, const bool clean, const int16_t sleep=-1)
Send a Gree A/C message with the supplied settings.
Definition: IRac.cpp:953
+void gree(IRGreeAC *ac, const gree_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool light, const bool clean, const int16_t sleep=-1)
Send a Gree A/C message with the supplied settings.
Definition: IRac.cpp:963
-void electra(IRElectraAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool lighttoggle, const bool clean)
Send an Electra A/C message with the supplied settings.
Definition: IRac.cpp:806
-static stdAc::state_t cleanState(const stdAc::state_t state)
Create a new state base on the provided state that has been suitably fixed.
Definition: IRac.cpp:1979
+void electra(IRElectraAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool lighttoggle, const bool clean)
Send an Electra A/C message with the supplied settings.
Definition: IRac.cpp:814
+static stdAc::state_t cleanState(const stdAc::state_t state)
Create a new state base on the provided state that has been suitably fixed.
Definition: IRac.cpp:2067
Support for Argo Ulisse 13 DCI Mobile Split ACs.
-void mitsubishi(IRMitsubishiAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const int16_t clock=-1)
Send a Mitsubishi A/C message with the supplied settings.
Definition: IRac.cpp:1315
-void amcor(IRAmcorAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan)
Send an Amcor A/C message with the supplied settings.
Definition: IRac.cpp:319
+void mitsubishi(IRMitsubishiAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const int16_t clock=-1)
Send a Mitsubishi A/C message with the supplied settings.
Definition: IRac.cpp:1325
+void amcor(IRAmcorAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan)
Send an Amcor A/C message with the supplied settings.
Definition: IRac.cpp:327
+Definition: ir_Technibel.h:107
Class for handling detailed Airwell A/C messages.
Definition: ir_Airwell.h:58
Support for Voltas A/C protocol.
Class for handling detailed Daikin 152-bit A/C messages.
Definition: ir_Daikin.h:943
Class for handling detailed LG A/C messages.
Definition: ir_LG.h:64
Support for Fujitsu A/C protocols. Fujitsu A/C support added by Jonny Graham.
Class for handling detailed Haier A/C messages.
Definition: ir_Haier.h:244
+void neoclima(IRNeoclimaAc *ac, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool econo, const bool light, const bool filter, const int16_t sleep=-1)
Send a Neoclima A/C message with the supplied settings.
Definition: IRac.cpp:1516
Class for handling detailed Daikin 160-bit A/C messages.
Definition: ir_Daikin.h:760
-static String opmodeToString(const stdAc::opmode_t mode)
Convert the supplied operation mode into the appropriate String.
Definition: IRac.cpp:2792
+static String opmodeToString(const stdAc::opmode_t mode)
Convert the supplied operation mode into the appropriate String.
Definition: IRac.cpp:2900
Class for handling detailed Sharp A/C messages.
Definition: ir_Sharp.h:108
-void toshiba(IRToshibaAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool econo)
Send a Toshiba A/C message with the supplied settings.
Definition: IRac.cpp:1792
+void toshiba(IRToshibaAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool econo)
Send a Toshiba A/C message with the supplied settings.
Definition: IRac.cpp:1838
Support for Goodweather compatible HVAC protocols.
-void argo(IRArgoAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const int16_t sleep=-1)
Send an Argo A/C message with the supplied settings.
Definition: IRac.cpp:351
+void argo(IRArgoAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const int16_t sleep=-1)
Send an Argo A/C message with the supplied settings.
Definition: IRac.cpp:359
lg_ac_remote_model_t
LG A/C model numbers.
Definition: IRsend.h:164
-void mitsubishi136(IRMitsubishi136 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet)
Send a Mitsubishi 136-bit A/C message with the supplied settings.
Definition: IRac.cpp:1386
+void mitsubishi136(IRMitsubishi136 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool quiet)
Send a Mitsubishi 136-bit A/C message with the supplied settings.
Definition: IRac.cpp:1396
-bool _modulation
Is frequency modulation to be used?
Definition: IRac.h:102
-void teco(IRTecoAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool light, const int16_t sleep=-1)
Send a Teco A/C message with the supplied settings.
Definition: IRac.cpp:1759
-static stdAc::opmode_t strToOpmode(const char *str, const stdAc::opmode_t def=stdAc::opmode_t::kAuto)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2562
+bool _modulation
Is frequency modulation to be used?
Definition: IRac.h:104
+void teco(IRTecoAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool light, const int16_t sleep=-1)
Send a Teco A/C message with the supplied settings.
Definition: IRac.cpp:1805
+static stdAc::opmode_t strToOpmode(const char *str, const stdAc::opmode_t def=stdAc::opmode_t::kAuto)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2670
Support for Sanyo protocols. Sanyo LC7461 support originally by marcosamarinho Sanyo SA 8650B origina...
-void hitachi1(IRHitachiAc1 *ac, const hitachi_ac1_remote_model_t model, const bool on, const bool power_toggle, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool swing_toggle, const int16_t sleep=-1)
Send a Hitachi1 A/C message with the supplied settings.
Definition: IRac.cpp:1097
+void hitachi1(IRHitachiAc1 *ac, const hitachi_ac1_remote_model_t model, const bool on, const bool power_toggle, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool swing_toggle, const int16_t sleep=-1)
Send a Hitachi1 A/C message with the supplied settings.
Definition: IRac.cpp:1107
+Definition: ir_Transcold.h:110
Support for Whirlpool protocols. Decoding help from: @redmusicxd, @josh929800, @raducostea.
-static bool strToBool(const char *str, const bool def=false)
Convert the supplied str into the appropriate boolean value.
Definition: IRac.cpp:2767
-void mitsubishiHeavy88(IRMitsubishiHeavy88Ac *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool econo, const bool clean)
Send a Mitsubishi Heavy 88-bit A/C message with the supplied settings.
Definition: IRac.cpp:1421
-static stdAc::swingv_t strToSwingV(const char *str, const stdAc::swingv_t def=stdAc::swingv_t::kOff)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2623
+static bool strToBool(const char *str, const bool def=false)
Convert the supplied str into the appropriate boolean value.
Definition: IRac.cpp:2875
+void mitsubishiHeavy88(IRMitsubishiHeavy88Ac *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool econo, const bool clean)
Send a Mitsubishi Heavy 88-bit A/C message with the supplied settings.
Definition: IRac.cpp:1431
+static stdAc::swingv_t strToSwingV(const char *str, const stdAc::swingv_t def=stdAc::swingv_t::kOff)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2731
Class for handling detailed Vestel A/C messages.
Definition: ir_Vestel.h:116
-void neoclima(IRNeoclimaAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool light, const bool filter, const int16_t sleep=-1)
Send a Neoclima A/C message with the supplied settings.
Definition: IRac.cpp:1504
Class for handling detailed Trotec A/C messages.
Definition: ir_Trotec.h:76
Class for handling detailed Teco A/C messages.
Definition: ir_Teco.h:107
-static String swinghToString(const stdAc::swingh_t swingh)
Convert the supplied enum into the appropriate String.
Definition: IRac.cpp:2860
-void delonghiac(IRDelonghiAc *ac, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const bool turbo, const int16_t sleep=-1)
Send a Delonghi A/C message with the supplied settings.
Definition: IRac.cpp:779
-stdAc::state_t _prev
The state we expect the device to currently be in.
Definition: IRac.h:103
+static String swinghToString(const stdAc::swingh_t swingh)
Convert the supplied enum into the appropriate String.
Definition: IRac.cpp:2968
+void fujitsu(IRFujitsuAC *ac, const fujitsu_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool filter, const bool clean, const int16_t sleep=-1)
Send a Fujitsu A/C message with the supplied settings.
Definition: IRac.cpp:857
+Support for Technibel protocol.
+void delonghiac(IRDelonghiAc *ac, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const bool turbo, const int16_t sleep=-1)
Send a Delonghi A/C message with the supplied settings.
Definition: IRac.cpp:787
+stdAc::state_t _prev
The state we expect the device to currently be in.
Definition: IRac.h:105
Class for handling detailed Haier ACYRW02 A/C messages.
Definition: ir_Haier.h:314
-void daikin160(IRDaikin160 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv)
Send a Daikin 160-bit A/C message with the supplied settings.
Definition: IRac.cpp:626
-void corona(IRCoronaAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool econo)
Send a Corona A/C message with the supplied settings.
Definition: IRac.cpp:481
-static void initState(stdAc::state_t *state, const decode_type_t vendor, const int16_t model, const bool power, const stdAc::opmode_t mode, const float degrees, const bool celsius, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool light, const bool filter, const bool clean, const bool beep, const int16_t sleep, const int16_t clock)
Initialse the given state with the supplied settings.
Definition: IRac.cpp:83
-void mitsubishiHeavy152(IRMitsubishiHeavy152Ac *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool filter, const bool clean, const int16_t sleep=-1)
Send a Mitsubishi Heavy 152-bit A/C message with the supplied settings.
Definition: IRac.cpp:1462
+void daikin160(IRDaikin160 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv)
Send a Daikin 160-bit A/C message with the supplied settings.
Definition: IRac.cpp:634
+void corona(IRCoronaAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool econo)
Send a Corona A/C message with the supplied settings.
Definition: IRac.cpp:489
+static void initState(stdAc::state_t *state, const decode_type_t vendor, const int16_t model, const bool power, const stdAc::opmode_t mode, const float degrees, const bool celsius, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool light, const bool filter, const bool clean, const bool beep, const int16_t sleep, const int16_t clock)
Initialse the given state with the supplied settings.
Definition: IRac.cpp:85
+void mitsubishiHeavy152(IRMitsubishiHeavy152Ac *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool filter, const bool clean, const int16_t sleep=-1)
Send a Mitsubishi Heavy 152-bit A/C message with the supplied settings.
Definition: IRac.cpp:1472
Support for Haier A/C protocols. The specifics of reverse engineering the protocols details:
Class for handling detailed Mitsubishi Heavy 88-bit A/C messages.
Definition: ir_MitsubishiHeavy.h:220
Class for handling detailed Gree A/C messages.
Definition: ir_Gree.h:130
-void coolix(IRCoolixAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool light, const bool clean, const int16_t sleep=-1)
Send a Coolix A/C message with the supplied settings.
Definition: IRac.cpp:420
-static stdAc::fanspeed_t strToFanspeed(const char *str, const stdAc::fanspeed_t def=stdAc::fanspeed_t::kAuto)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2592
-void midea(IRMideaAC *ac, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool econo, const int16_t sleep=-1)
Send a Midea A/C message with the supplied settings.
Definition: IRac.cpp:1277
+void coolix(IRCoolixAC *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool turbo, const bool light, const bool clean, const int16_t sleep=-1)
Send a Coolix A/C message with the supplied settings.
Definition: IRac.cpp:428
+static stdAc::fanspeed_t strToFanspeed(const char *str, const stdAc::fanspeed_t def=stdAc::fanspeed_t::kAuto)
Convert the supplied str into the appropriate enum.
Definition: IRac.cpp:2700
+void midea(IRMideaAC *ac, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool econo, const int16_t sleep=-1)
Send a Midea A/C message with the supplied settings.
Definition: IRac.cpp:1287
Support for Toshiba protocols.
-void sharp(IRSharpAc *ac, const bool on, const bool prev_power, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool filter, const bool clean)
Send a Sharp A/C message with the supplied settings.
Definition: IRac.cpp:1671
-void goodweather(IRGoodweatherAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool light, const int16_t sleep=-1)
Send a Goodweather A/C message with the supplied settings.
Definition: IRac.cpp:911
+void sharp(IRSharpAc *ac, const bool on, const bool prev_power, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool filter, const bool clean)
Send a Sharp A/C message with the supplied settings.
Definition: IRac.cpp:1684
+void goodweather(IRGoodweatherAc *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const bool turbo, const bool light, const int16_t sleep=-1)
Send a Goodweather A/C message with the supplied settings.
Definition: IRac.cpp:921
Structure to hold a common A/C state.
Definition: IRsend.h:97
Class for handling detailed Goodweather A/C messages.
Definition: ir_Goodweather.h:90
Support for Vestel protocols. Vestel added by Erdem U. Altinyurt.
-Class for handling detailed Argo A/C messages.
Definition: ir_Argo.h:129
-void fujitsu(IRFujitsuAC *ac, const fujitsu_ac_remote_model_t model, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const stdAc::swingh_t swingh, const bool quiet, const bool turbo, const bool econo, const bool filter, const bool clean)
Send a Fujitsu A/C message with the supplied settings.
Definition: IRac.cpp:848
-Class for handling detailed Neoclima A/C messages.
Definition: ir_Neoclima.h:86
-static bool isProtocolSupported(const decode_type_t protocol)
Is the given protocol supported by the IRac class?
Definition: IRac.cpp:136
+Class for handling detailed Argo A/C messages.
Definition: ir_Argo.h:126
+Class for handling detailed Neoclima A/C messages.
Definition: ir_Neoclima.h:94
+static bool isProtocolSupported(const decode_type_t protocol)
Is the given protocol supported by the IRac class?
Definition: IRac.cpp:138
Class for handling detailed Daikin 176-bit A/C messages.
Definition: ir_Daikin.h:812
-uint16_t _pin
The GPIO to use to transmit messages from.
Definition: IRac.h:100
+uint16_t _pin
The GPIO to use to transmit messages from.
Definition: IRac.h:102
+void technibel(IRTechnibelAc *ac, const bool on, const stdAc::opmode_t mode, const bool celsius, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const int16_t sleep=-1)
Send a Technibel A/C message with the supplied settings.
Definition: IRac.cpp:1772
voltas_ac_remote_model_t
Voltas A/C model numbers.
Definition: IRsend.h:152
Support for LG protocols.
-void carrier64(IRCarrierAc64 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const int16_t sleep=-1)
Send a Carrier 64-bit A/C message with the supplied settings.
Definition: IRac.cpp:383
+void carrier64(IRCarrierAc64 *ac, const bool on, const stdAc::opmode_t mode, const float degrees, const stdAc::fanspeed_t fan, const stdAc::swingv_t swingv, const int16_t sleep=-1)
Send a Carrier 64-bit A/C message with the supplied settings.
Definition: IRac.cpp:391
opmode_t
Common A/C settings for A/C operating modes.
Definition: IRsend.h:46