From 1a76040ebf190448b8a0b26eb3afa5ab508211f2 Mon Sep 17 00:00:00 2001 From: Hadinger Date: Mon, 25 Nov 2019 21:43:39 +0100 Subject: [PATCH] Update lib IRremoteESP8266 updated to v2.7.1, -2.7k flash and -1.5k RAM for Tasmota-IR --- lib/IRremoteESP8266-2.7.0/src/IRtext.cpp | 153 ---------------- lib/IRremoteESP8266-2.7.0/src/IRtext.h | 146 ---------------- .../CPPLINT.cfg | 0 .../LICENSE.txt | 0 .../README.md | 4 +- .../README_fr.md | 4 +- .../ReleaseNotes.md | 15 ++ .../SupportedProtocols.md | 2 +- .../CommonAcControl/CommonAcControl.ino | 0 .../examples/CommonAcControl/platformio.ini | 0 .../ControlSamsungAC/ControlSamsungAC.ino | 0 .../examples/ControlSamsungAC/platformio.ini | 0 .../DumbIRRepeater/DumbIRRepeater.ino | 0 .../examples/DumbIRRepeater/platformio.ini | 0 .../examples/IRGCSendDemo/IRGCSendDemo.ino | 0 .../examples/IRGCSendDemo/platformio.ini | 0 .../examples/IRGCTCPServer/IRGCTCPServer.ino | 0 .../examples/IRGCTCPServer/platformio.ini | 0 .../examples/IRMQTTServer/IRMQTTServer.h | 3 +- .../examples/IRMQTTServer/IRMQTTServer.ino | 85 ++++----- .../examples/IRMQTTServer/platformio.ini | 0 .../examples/IRServer/IRServer.ino | 0 .../examples/IRServer/platformio.ini | 0 .../examples/IRrecvDemo/IRrecvDemo.ino | 0 .../examples/IRrecvDemo/platformio.ini | 0 .../examples/IRrecvDump/IRrecvDump.ino | 0 .../examples/IRrecvDump/platformio.ini | 0 .../examples/IRrecvDumpV2/IRrecvDumpV2.ino | 0 .../examples/IRrecvDumpV2/platformio.ini | 0 .../examples/IRsendDemo/IRsendDemo.ino | 0 .../examples/IRsendDemo/platformio.ini | 0 .../IRsendProntoDemo/IRsendProntoDemo.ino | 0 .../examples/IRsendProntoDemo/platformio.ini | 0 .../JVCPanasonicSendDemo.ino | 0 .../JVCPanasonicSendDemo/platformio.ini | 0 .../examples/LGACSend/LGACSend.ino | 0 .../examples/LGACSend/platformio.ini | 0 .../SmartIRRepeater/SmartIRRepeater.ino | 0 .../examples/SmartIRRepeater/platformio.ini | 0 .../examples/TurnOnArgoAC/TurnOnArgoAC.ino | 0 .../examples/TurnOnArgoAC/platformio.ini | 0 .../TurnOnDaikinAC/TurnOnDaikinAC.ino | 0 .../examples/TurnOnDaikinAC/platformio.ini | 0 .../TurnOnFujitsuAC/TurnOnFujitsuAC.ino | 0 .../examples/TurnOnFujitsuAC/platformio.ini | 0 .../TurnOnKelvinatorAC/TurnOnKelvinatorAC.ino | 0 .../TurnOnKelvinatorAC/platformio.ini | 0 .../TurnOnMitsubishiAC/TurnOnMitsubishiAC.ino | 0 .../TurnOnMitsubishiAC/platformio.ini | 0 .../TurnOnMitsubishiHeavyAc.ino | 0 .../TurnOnMitsubishiHeavyAc/platformio.ini | 0 .../TurnOnPanasonicAC/TurnOnPanasonicAC.ino | 0 .../examples/TurnOnPanasonicAC/platformio.ini | 0 .../TurnOnToshibaAC/TurnOnToshibaAC.ino | 0 .../examples/TurnOnToshibaAC/platformio.ini | 0 .../TurnOnTrotecAC/TurnOnTrotecAC.ino | 0 .../examples/TurnOnTrotecAC/platformio.ini | 0 .../examples/Web-AC-control/README.md | 0 .../Web-AC-control/Web-AC-control.ino | 0 .../examples/Web-AC-control/platformio.ini | 0 .../examples/Web-AC-control/printscreen.png | Bin .../Web-AC-control/upload/favicon.ico | Bin .../Web-AC-control/upload/level_1_off.svg | 0 .../Web-AC-control/upload/level_1_on.svg | 0 .../Web-AC-control/upload/level_2_off.svg | 0 .../Web-AC-control/upload/level_2_on.svg | 0 .../Web-AC-control/upload/level_3_off.svg | 0 .../Web-AC-control/upload/level_3_on.svg | 0 .../Web-AC-control/upload/level_4_off.svg | 0 .../Web-AC-control/upload/level_4_on.svg | 0 .../examples/Web-AC-control/upload/ui.html | 0 .../examples/Web-AC-control/upload/ui.js | 0 .../keywords.txt | 147 +++++++++++++++- .../library.json | 2 +- .../library.properties | 2 +- .../pylintrc | 0 .../src/CPPLINT.cfg | 0 .../src/IRac.cpp | 153 ++++++++-------- .../src/IRac.h | 3 +- .../src/IRrecv.cpp | 0 .../src/IRrecv.h | 0 .../src/IRremoteESP8266.h | 4 +- .../src/IRsend.cpp | 0 .../src/IRsend.h | 0 lib/IRremoteESP8266-2.7.1/src/IRtext.cpp | 164 ++++++++++++++++++ lib/IRremoteESP8266-2.7.1/src/IRtext.h | 154 ++++++++++++++++ .../src/IRtimer.cpp | 0 .../src/IRtimer.h | 0 .../src/IRutils.cpp | 37 ++-- .../src/IRutils.h | 0 .../src/i18n.h | 0 .../src/ir_Aiwa.cpp | 0 .../src/ir_Amcor.cpp | 0 .../src/ir_Amcor.h | 0 .../src/ir_Argo.cpp | 8 +- .../src/ir_Argo.h | 0 .../src/ir_Carrier.cpp | 0 .../src/ir_Coolix.cpp | 59 ++++--- .../src/ir_Coolix.h | 0 .../src/ir_Daikin.cpp | 26 ++- .../src/ir_Daikin.h | 0 .../src/ir_Denon.cpp | 0 .../src/ir_Dish.cpp | 0 .../src/ir_Electra.cpp | 0 .../src/ir_Electra.h | 0 .../src/ir_Fujitsu.cpp | 26 ++- .../src/ir_Fujitsu.h | 0 .../src/ir_GICable.cpp | 0 .../src/ir_GlobalCache.cpp | 0 .../src/ir_Goodweather.cpp | 6 +- .../src/ir_Goodweather.h | 0 .../src/ir_Gree.cpp | 2 +- .../src/ir_Gree.h | 0 .../src/ir_Haier.cpp | 8 +- .../src/ir_Haier.h | 0 .../src/ir_Hitachi.cpp | 67 +++++-- .../src/ir_Hitachi.h | 15 +- .../src/ir_Inax.cpp | 0 .../src/ir_JVC.cpp | 0 .../src/ir_Kelvinator.cpp | 0 .../src/ir_Kelvinator.h | 0 .../src/ir_LG.cpp | 0 .../src/ir_LG.h | 0 .../src/ir_Lasertag.cpp | 0 .../src/ir_Lego.cpp | 0 .../src/ir_Lutron.cpp | 0 .../src/ir_MWM.cpp | 0 .../src/ir_Magiquest.cpp | 0 .../src/ir_Magiquest.h | 0 .../src/ir_Midea.cpp | 2 +- .../src/ir_Midea.h | 0 .../src/ir_Mitsubishi.cpp | 21 ++- .../src/ir_Mitsubishi.h | 0 .../src/ir_MitsubishiHeavy.cpp | 16 +- .../src/ir_MitsubishiHeavy.h | 0 .../src/ir_NEC.cpp | 0 .../src/ir_NEC.h | 0 .../src/ir_Neoclima.cpp | 0 .../src/ir_Neoclima.h | 0 .../src/ir_Nikai.cpp | 0 .../src/ir_Panasonic.cpp | 0 .../src/ir_Panasonic.h | 0 .../src/ir_Pioneer.cpp | 0 .../src/ir_Pronto.cpp | 0 .../src/ir_RC5_RC6.cpp | 0 .../src/ir_RCMM.cpp | 0 .../src/ir_Samsung.cpp | 0 .../src/ir_Samsung.h | 0 .../src/ir_Sanyo.cpp | 0 .../src/ir_Sharp.cpp | 0 .../src/ir_Sharp.h | 0 .../src/ir_Sherwood.cpp | 0 .../src/ir_Sony.cpp | 0 .../src/ir_Tcl.cpp | 0 .../src/ir_Tcl.h | 0 .../src/ir_Teco.cpp | 0 .../src/ir_Teco.h | 0 .../src/ir_Toshiba.cpp | 0 .../src/ir_Toshiba.h | 0 .../src/ir_Trotec.cpp | 0 .../src/ir_Trotec.h | 0 .../src/ir_Vestel.cpp | 10 +- .../src/ir_Vestel.h | 0 .../src/ir_Whirlpool.cpp | 2 +- .../src/ir_Whirlpool.h | 0 .../src/ir_Whynter.cpp | 0 .../src/locale/README.md | 0 .../src/locale/de-CH.h | 0 .../src/locale/de-DE.h | 0 .../src/locale/defaults.h | 34 +++- .../src/locale/en-AU.h | 0 .../src/locale/en-IE.h | 0 .../src/locale/en-UK.h | 0 .../src/locale/en-US.h | 0 .../src/locale/es-ES.h | 0 .../src/locale/fr-FR.h | 0 .../test/IRac_test.cpp | 24 ++- .../test/IRrecv_test.cpp | 0 .../test/IRrecv_test.h | 0 .../test/IRsend_test.cpp | 0 .../test/IRsend_test.h | 0 .../test/IRutils_test.cpp | 0 .../test/Makefile | 8 +- .../test/ir_Aiwa_test.cpp | 0 .../test/ir_Amcor_test.cpp | 0 .../test/ir_Argo_test.cpp | 0 .../test/ir_Carrier_test.cpp | 0 .../test/ir_Coolix_test.cpp | 54 ++++++ .../test/ir_Daikin_test.cpp | 0 .../test/ir_Denon_test.cpp | 0 .../test/ir_Dish_test.cpp | 0 .../test/ir_Electra_test.cpp | 0 .../test/ir_Fujitsu_test.cpp | 0 .../test/ir_GICable_test.cpp | 0 .../test/ir_GlobalCache_test.cpp | 0 .../test/ir_Goodweather_test.cpp | 0 .../test/ir_Gree_test.cpp | 0 .../test/ir_Haier_test.cpp | 0 .../test/ir_Hitachi_test.cpp | 57 +++++- .../test/ir_Inax_test.cpp | 0 .../test/ir_JVC_test.cpp | 0 .../test/ir_Kelvinator_test.cpp | 0 .../test/ir_LG_test.cpp | 0 .../test/ir_Lasertag_test.cpp | 0 .../test/ir_Lego_test.cpp | 0 .../test/ir_Lutron_test.cpp | 0 .../test/ir_MWM_test.cpp | 0 .../test/ir_Magiquest_test.cpp | 0 .../test/ir_Midea_test.cpp | 0 .../test/ir_MitsubishiHeavy_test.cpp | 0 .../test/ir_Mitsubishi_test.cpp | 0 .../test/ir_NEC_test.cpp | 0 .../test/ir_Neoclima_test.cpp | 0 .../test/ir_Nikai_test.cpp | 0 .../test/ir_Panasonic_test.cpp | 0 .../test/ir_Pioneer_test.cpp | 0 .../test/ir_Pronto_test.cpp | 0 .../test/ir_RC5_RC6_test.cpp | 0 .../test/ir_RCMM_test.cpp | 0 .../test/ir_Samsung_test.cpp | 0 .../test/ir_Sanyo_test.cpp | 0 .../test/ir_Sharp_test.cpp | 0 .../test/ir_Sherwood_test.cpp | 0 .../test/ir_Sony_test.cpp | 0 .../test/ir_Tcl_test.cpp | 0 .../test/ir_Teco_test.cpp | 0 .../test/ir_Toshiba_test.cpp | 0 .../test/ir_Trotec_test.cpp | 0 .../test/ir_Vestel_test.cpp | 0 .../test/ir_Whirlpool_test.cpp | 0 .../test/ir_Whynter_test.cpp | 0 .../tools/Makefile | 0 .../tools/RawToGlobalCache.sh | 0 .../tools/auto_analyse_raw_data.py | 0 .../tools/auto_analyse_raw_data_test.py | 0 .../tools/gc_decode.cpp | 0 .../tools/generate_irtext_h.sh | 4 +- .../tools/mkkeywords | 0 .../tools/mode2_decode.cpp | 0 .../tools/scrape_supported_devices.py | 0 tasmota/CHANGELOG.md | 1 + 241 files changed, 996 insertions(+), 532 deletions(-) delete mode 100644 lib/IRremoteESP8266-2.7.0/src/IRtext.cpp delete mode 100644 lib/IRremoteESP8266-2.7.0/src/IRtext.h rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/CPPLINT.cfg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/LICENSE.txt (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/README.md (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/README_fr.md (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/ReleaseNotes.md (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/SupportedProtocols.md (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/CommonAcControl/CommonAcControl.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/CommonAcControl/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/ControlSamsungAC/ControlSamsungAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/ControlSamsungAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/DumbIRRepeater/DumbIRRepeater.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/DumbIRRepeater/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRGCSendDemo/IRGCSendDemo.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRGCSendDemo/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRGCTCPServer/IRGCTCPServer.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRGCTCPServer/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRMQTTServer/IRMQTTServer.h (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRMQTTServer/IRMQTTServer.ino (97%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRMQTTServer/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRServer/IRServer.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRServer/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRrecvDemo/IRrecvDemo.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRrecvDemo/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRrecvDump/IRrecvDump.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRrecvDump/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRrecvDumpV2/IRrecvDumpV2.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRrecvDumpV2/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRsendDemo/IRsendDemo.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRsendDemo/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRsendProntoDemo/IRsendProntoDemo.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/IRsendProntoDemo/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/JVCPanasonicSendDemo/JVCPanasonicSendDemo.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/JVCPanasonicSendDemo/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/LGACSend/LGACSend.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/LGACSend/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/SmartIRRepeater/SmartIRRepeater.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/SmartIRRepeater/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnArgoAC/TurnOnArgoAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnArgoAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnDaikinAC/TurnOnDaikinAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnDaikinAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnFujitsuAC/TurnOnFujitsuAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnFujitsuAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnKelvinatorAC/TurnOnKelvinatorAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnKelvinatorAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnMitsubishiAC/TurnOnMitsubishiAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnMitsubishiAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnMitsubishiHeavyAc/TurnOnMitsubishiHeavyAc.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnMitsubishiHeavyAc/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnPanasonicAC/TurnOnPanasonicAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnPanasonicAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnToshibaAC/TurnOnToshibaAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnToshibaAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnTrotecAC/TurnOnTrotecAC.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/TurnOnTrotecAC/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/README.md (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/Web-AC-control.ino (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/platformio.ini (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/printscreen.png (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/favicon.ico (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_1_off.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_1_on.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_2_off.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_2_on.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_3_off.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_3_on.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_4_off.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/level_4_on.svg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/ui.html (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/examples/Web-AC-control/upload/ui.js (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/keywords.txt (96%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/library.json (97%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/library.properties (97%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/pylintrc (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/CPPLINT.cfg (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRac.cpp (95%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRac.h (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRrecv.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRrecv.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRremoteESP8266.h (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRsend.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRsend.h (100%) create mode 100644 lib/IRremoteESP8266-2.7.1/src/IRtext.cpp create mode 100644 lib/IRremoteESP8266-2.7.1/src/IRtext.h rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRtimer.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRtimer.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRutils.cpp (97%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/IRutils.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/i18n.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Aiwa.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Amcor.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Amcor.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Argo.cpp (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Argo.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Carrier.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Coolix.cpp (94%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Coolix.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Daikin.cpp (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Daikin.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Denon.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Dish.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Electra.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Electra.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Fujitsu.cpp (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Fujitsu.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_GICable.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_GlobalCache.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Goodweather.cpp (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Goodweather.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Gree.cpp (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Gree.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Haier.cpp (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Haier.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Hitachi.cpp (91%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Hitachi.h (90%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Inax.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_JVC.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Kelvinator.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Kelvinator.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_LG.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_LG.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Lasertag.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Lego.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Lutron.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_MWM.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Magiquest.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Magiquest.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Midea.cpp (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Midea.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Mitsubishi.cpp (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Mitsubishi.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_MitsubishiHeavy.cpp (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_MitsubishiHeavy.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_NEC.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_NEC.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Neoclima.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Neoclima.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Nikai.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Panasonic.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Panasonic.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Pioneer.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Pronto.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_RC5_RC6.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_RCMM.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Samsung.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Samsung.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Sanyo.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Sharp.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Sharp.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Sherwood.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Sony.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Tcl.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Tcl.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Teco.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Teco.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Toshiba.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Toshiba.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Trotec.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Trotec.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Vestel.cpp (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Vestel.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Whirlpool.cpp (99%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Whirlpool.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/ir_Whynter.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/README.md (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/de-CH.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/de-DE.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/defaults.h (91%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/en-AU.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/en-IE.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/en-UK.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/en-US.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/es-ES.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/src/locale/fr-FR.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/IRac_test.cpp (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/IRrecv_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/IRrecv_test.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/IRsend_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/IRsend_test.h (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/IRutils_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/Makefile (98%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Aiwa_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Amcor_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Argo_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Carrier_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Coolix_test.cpp (93%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Daikin_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Denon_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Dish_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Electra_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Fujitsu_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_GICable_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_GlobalCache_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Goodweather_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Gree_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Haier_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Hitachi_test.cpp (96%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Inax_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_JVC_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Kelvinator_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_LG_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Lasertag_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Lego_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Lutron_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_MWM_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Magiquest_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Midea_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_MitsubishiHeavy_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Mitsubishi_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_NEC_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Neoclima_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Nikai_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Panasonic_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Pioneer_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Pronto_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_RC5_RC6_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_RCMM_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Samsung_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Sanyo_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Sharp_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Sherwood_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Sony_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Tcl_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Teco_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Toshiba_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Trotec_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Vestel_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Whirlpool_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/test/ir_Whynter_test.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/Makefile (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/RawToGlobalCache.sh (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/auto_analyse_raw_data.py (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/auto_analyse_raw_data_test.py (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/gc_decode.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/generate_irtext_h.sh (85%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/mkkeywords (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/mode2_decode.cpp (100%) rename lib/{IRremoteESP8266-2.7.0 => IRremoteESP8266-2.7.1}/tools/scrape_supported_devices.py (100%) diff --git a/lib/IRremoteESP8266-2.7.0/src/IRtext.cpp b/lib/IRremoteESP8266-2.7.0/src/IRtext.cpp deleted file mode 100644 index 7f9c57e1e..000000000 --- a/lib/IRremoteESP8266-2.7.0/src/IRtext.cpp +++ /dev/null @@ -1,153 +0,0 @@ -// Copyright 2019 - David Conran (@crankyoldgit) - -#ifndef UNIT_TEST -#include -#endif // UNIT_TEST -#include "IRremoteESP8266.h" -#include "i18n.h" - -// Common - -#ifdef USE_IR_REMOTE_FULL // full IR protocols - -String kUnknownStr = D_STR_UNKNOWN; -String kProtocolStr = D_STR_PROTOCOL; -String kPowerStr = D_STR_POWER; -String kOnStr = D_STR_ON; -String kOffStr = D_STR_OFF; -String kModeStr = D_STR_MODE; -String kToggleStr = D_STR_TOGGLE; -String kTurboStr = D_STR_TURBO; -String kSuperStr = D_STR_SUPER; -String kSleepStr = D_STR_SLEEP; -String kLightStr = D_STR_LIGHT; -String kPowerfulStr = D_STR_POWERFUL; -String kQuietStr = D_STR_QUIET; -String kEconoStr = D_STR_ECONO; -String kSwingStr = D_STR_SWING; -String kSwingHStr = D_STR_SWINGH; -String kSwingVStr = D_STR_SWINGV; -String kBeepStr = D_STR_BEEP; -String kZoneFollowStr = D_STR_ZONEFOLLOW; -String kFixedStr = D_STR_FIXED; -String kMouldStr = D_STR_MOULD; -String kCleanStr = D_STR_CLEAN; -String kPurifyStr = D_STR_PURIFY; -String kTimerStr = D_STR_TIMER; -String kOnTimerStr = D_STR_ONTIMER; -String kOffTimerStr = D_STR_OFFTIMER; -String kClockStr = D_STR_CLOCK; -String kCommandStr = D_STR_COMMAND; -String kXFanStr = D_STR_XFAN; -String kHealthStr = D_STR_HEALTH; -String kModelStr = D_STR_MODEL; -String kTempStr = D_STR_TEMP; -String kIFeelStr = D_STR_IFEEL; -String kHumidStr = D_STR_HUMID; -String kSaveStr = D_STR_SAVE; -String kEyeStr = D_STR_EYE; -String kFollowStr = D_STR_FOLLOW; -String kIonStr = D_STR_ION; -String kFreshStr = D_STR_FRESH; -String kHoldStr = D_STR_HOLD; -String kButtonStr = D_STR_BUTTON; -String k8CHeatStr = D_STR_8C_HEAT; -String kNightStr = D_STR_NIGHT; -String kSilentStr = D_STR_SILENT; -String kFilterStr = D_STR_FILTER; -String k3DStr = D_STR_3D; -String kCelsiusStr = D_STR_CELSIUS; -String kTempUpStr = D_STR_TEMPUP; -String kTempDownStr = D_STR_TEMPDOWN; -String kStartStr = D_STR_START; -String kStopStr = D_STR_STOP; -String kMoveStr = D_STR_MOVE; -String kSetStr = D_STR_SET; -String kCancelStr = D_STR_CANCEL; -String kUpStr = D_STR_UP; -String kDownStr = D_STR_DOWN; -String kChangeStr = D_STR_CHANGE; -String kComfortStr = D_STR_COMFORT; -String kSensorStr = D_STR_SENSOR; -String kWeeklyTimerStr = D_STR_WEEKLYTIMER; -String kWifiStr = D_STR_WIFI; -String kLastStr = D_STR_LAST; -String kFastStr = D_STR_FAST; -String kSlowStr = D_STR_SLOW; -String kAirFlowStr = D_STR_AIRFLOW; -String kStepStr = D_STR_STEP; -String kNAStr = D_STR_NA; -String kOutsideStr = D_STR_OUTSIDE; -String kLoudStr = D_STR_LOUD; -String kLowerStr = D_STR_LOWER; -String kUpperStr = D_STR_UPPER; -String kBreezeStr = D_STR_BREEZE; -String kCirculateStr = D_STR_CIRCULATE; -String kCeilingStr = D_STR_CEILING; -String kWallStr = D_STR_WALL; -String kRoomStr = D_STR_ROOM; -String k6thSenseStr = D_STR_6THSENSE; - -String kAutoStr = D_STR_AUTO; -String kAutomaticStr = D_STR_AUTOMATIC; -String kManualStr = D_STR_MANUAL; -String kCoolStr = D_STR_COOL; -String kHeatStr = D_STR_HEAT; -String kFanStr = D_STR_FAN; -String kDryStr = D_STR_DRY; -String kFanOnlyStr = D_STR_FANONLY; - -String kMaxStr = D_STR_MAX; -String kMaximumStr = D_STR_MAXIMUM; -String kMinStr = D_STR_MIN; -String kMinimumStr = D_STR_MINIMUM; -String kMedStr = D_STR_MED; -String kMediumStr = D_STR_MEDIUM; - -String kHighestStr = D_STR_HIGHEST; -String kHighStr = D_STR_HIGH; -String kHiStr = D_STR_HI; -String kMidStr = D_STR_MID; -String kMiddleStr = D_STR_MIDDLE; -String kLowStr = D_STR_LOW; -String kLoStr = D_STR_LO; -String kLowestStr = D_STR_LOWEST; -String kMaxRightStr = D_STR_MAXRIGHT; -String kRightMaxStr = D_STR_RIGHTMAX_NOSPACE; -String kRightStr = D_STR_RIGHT; -String kLeftStr = D_STR_LEFT; -String kMaxLeftStr = D_STR_MAXLEFT; -String kLeftMaxStr = D_STR_LEFTMAX_NOSPACE; -String kWideStr = D_STR_WIDE; -String kCentreStr = D_STR_CENTRE; -String kTopStr = D_STR_TOP; -String kBottomStr = D_STR_BOTTOM; - -String kSpaceLBraceStr = D_STR_SPACELBRACE; -String kCommaSpaceStr = D_STR_COMMASPACE; -String kColonSpaceStr = D_STR_COLONSPACE; - -// IRutils -// - Time -char kTimeSep = D_CHR_TIME_SEP; -String kDayStr = D_STR_DAY; -String kDaysStr = D_STR_DAYS; -String kHourStr = D_STR_HOUR; -String kHoursStr = D_STR_HOURS; -String kMinuteStr = D_STR_MINUTE; -String kMinutesStr = D_STR_MINUTES; -String kSecondStr = D_STR_SECOND; -String kSecondsStr = D_STR_SECONDS; -String kNowStr = D_STR_NOW; -String kThreeLetterDayOfWeekStr = D_STR_THREELETTERDAYS; - -String kYesStr = D_STR_YES; -String kNoStr = D_STR_NO; -String kTrueStr = D_STR_TRUE; -String kFalseStr = D_STR_FALSE; - -String kRepeatStr = D_STR_REPEAT; -String kCodeStr = D_STR_CODE; -String kBitsStr = D_STR_BITS; - -#endif // USE_IR_REMOTE_FULL // full IR protocols \ No newline at end of file diff --git a/lib/IRremoteESP8266-2.7.0/src/IRtext.h b/lib/IRremoteESP8266-2.7.0/src/IRtext.h deleted file mode 100644 index 526290c1c..000000000 --- a/lib/IRremoteESP8266-2.7.0/src/IRtext.h +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright 2019 - David Conran (@crankyoldgit) -// This header file is to be included in files **other than** 'IRtext.cpp'. -// -// WARNING: Do not edit this file! This file is automatically generated by -// 'tools/generate_irtext_h.sh'. - -#ifndef IRTEXT_H_ -#define IRTEXT_H_ - -#include "i18n.h" - -// Constant text to be shared across all object files. -// This means there is only one copy of the character/string/text etc. - -extern const char kTimeSep; -extern const String k3DStr; -extern const String k6thSenseStr; -extern const String k8CHeatStr; -extern const String kAirFlowStr; -extern const String kAutomaticStr; -extern const String kAutoStr; -extern const String kBeepStr; -extern const String kBitsStr; -extern const String kBottomStr; -extern const String kBreezeStr; -extern const String kButtonStr; -extern const String kCancelStr; -extern const String kCeilingStr; -extern const String kCelsiusStr; -extern const String kCentreStr; -extern const String kChangeStr; -extern const String kCirculateStr; -extern const String kCleanStr; -extern const String kClockStr; -extern const String kCodeStr; -extern const String kColonSpaceStr; -extern const String kComfortStr; -extern const String kCommandStr; -extern const String kCommaSpaceStr; -extern const String kCoolStr; -extern const String kDaysStr; -extern const String kDayStr; -extern const String kDownStr; -extern const String kDryStr; -extern const String kEconoStr; -extern const String kEyeStr; -extern const String kFalseStr; -extern const String kFanOnlyStr; -extern const String kFanStr; -extern const String kFastStr; -extern const String kFilterStr; -extern const String kFixedStr; -extern const String kFollowStr; -extern const String kFreshStr; -extern const String kHealthStr; -extern const String kHeatStr; -extern const String kHighestStr; -extern const String kHighStr; -extern const String kHiStr; -extern const String kHoldStr; -extern const String kHoursStr; -extern const String kHourStr; -extern const String kHumidStr; -extern const String kIFeelStr; -extern const String kIonStr; -extern const String kLastStr; -extern const String kLeftMaxStr; -extern const String kLeftStr; -extern const String kLightStr; -extern const String kLoStr; -extern const String kLoudStr; -extern const String kLowerStr; -extern const String kLowestStr; -extern const String kLowStr; -extern const String kManualStr; -extern const String kMaximumStr; -extern const String kMaxLeftStr; -extern const String kMaxRightStr; -extern const String kMaxStr; -extern const String kMediumStr; -extern const String kMedStr; -extern const String kMiddleStr; -extern const String kMidStr; -extern const String kMinimumStr; -extern const String kMinStr; -extern const String kMinutesStr; -extern const String kMinuteStr; -extern const String kModelStr; -extern const String kModeStr; -extern const String kMouldStr; -extern const String kMoveStr; -extern const String kNAStr; -extern const String kNightStr; -extern const String kNoStr; -extern const String kNowStr; -extern const String kOffStr; -extern const String kOffTimerStr; -extern const String kOnStr; -extern const String kOnTimerStr; -extern const String kOutsideStr; -extern const String kPowerfulStr; -extern const String kPowerStr; -extern const String kProtocolStr; -extern const String kPurifyStr; -extern const String kQuietStr; -extern const String kRepeatStr; -extern const String kRightMaxStr; -extern const String kRightStr; -extern const String kRoomStr; -extern const String kSaveStr; -extern const String kSecondsStr; -extern const String kSecondStr; -extern const String kSensorStr; -extern const String kSetStr; -extern const String kSilentStr; -extern const String kSleepStr; -extern const String kSlowStr; -extern const String kSpaceLBraceStr; -extern const String kStartStr; -extern const String kStepStr; -extern const String kStopStr; -extern const String kSuperStr; -extern const String kSwingHStr; -extern const String kSwingStr; -extern const String kSwingVStr; -extern const String kTempDownStr; -extern const String kTempStr; -extern const String kTempUpStr; -extern const String kThreeLetterDayOfWeekStr; -extern const String kTimerStr; -extern const String kToggleStr; -extern const String kTopStr; -extern const String kTrueStr; -extern const String kTurboStr; -extern const String kUnknownStr; -extern const String kUpperStr; -extern const String kUpStr; -extern const String kWallStr; -extern const String kWeeklyTimerStr; -extern const String kWideStr; -extern const String kWifiStr; -extern const String kXFanStr; -extern const String kYesStr; -extern const String kZoneFollowStr; - -#endif // IRTEXT_H_ diff --git a/lib/IRremoteESP8266-2.7.0/CPPLINT.cfg b/lib/IRremoteESP8266-2.7.1/CPPLINT.cfg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/CPPLINT.cfg rename to lib/IRremoteESP8266-2.7.1/CPPLINT.cfg diff --git a/lib/IRremoteESP8266-2.7.0/LICENSE.txt b/lib/IRremoteESP8266-2.7.1/LICENSE.txt similarity index 100% rename from lib/IRremoteESP8266-2.7.0/LICENSE.txt rename to lib/IRremoteESP8266-2.7.1/LICENSE.txt diff --git a/lib/IRremoteESP8266-2.7.0/README.md b/lib/IRremoteESP8266-2.7.1/README.md similarity index 98% rename from lib/IRremoteESP8266-2.7.0/README.md rename to lib/IRremoteESP8266-2.7.1/README.md index c609eb632..e06c8fb79 100644 --- a/lib/IRremoteESP8266-2.7.0/README.md +++ b/lib/IRremoteESP8266-2.7.1/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.0 Now Available -Version 2.7.0 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.1 Now Available +Version 2.7.1 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.0/README_fr.md b/lib/IRremoteESP8266-2.7.1/README_fr.md similarity index 98% rename from lib/IRremoteESP8266-2.7.0/README_fr.md rename to lib/IRremoteESP8266-2.7.1/README_fr.md index 38581eeb0..b24d935c5 100644 --- a/lib/IRremoteESP8266-2.7.0/README_fr.md +++ b/lib/IRremoteESP8266-2.7.1/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.0 disponible -Version 2.7.0 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.1 disponible +Version 2.7.1 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.0/ReleaseNotes.md b/lib/IRremoteESP8266-2.7.1/ReleaseNotes.md similarity index 98% rename from lib/IRremoteESP8266-2.7.0/ReleaseNotes.md rename to lib/IRremoteESP8266-2.7.1/ReleaseNotes.md index cdc5ad4a2..537960ac9 100644 --- a/lib/IRremoteESP8266-2.7.0/ReleaseNotes.md +++ b/lib/IRremoteESP8266-2.7.1/ReleaseNotes.md @@ -1,5 +1,20 @@ # Release Notes +## _v2.7.1 (20191125)_ + +**[Bug Fixes]** +- Hitachi424Ac: Fix Incorrect Power Byte Values (#987) +- Coolix: Fix setPower(false) issue. (#990) + +**[Features]** +- Use `char*` instead of `String` for common text. Saves ~1-3k. (#992, #989) +- Hitachi424Ac: Add Vertical Swing ability (#986) + +**[Misc]** +- IRMQTTServer: Update HA example/discovery message. (#995) +- Move newly added common text to a better location. (#993) + + ## _v2.7.0 (20191030)_ **[Bug Fixes]** diff --git a/lib/IRremoteESP8266-2.7.0/SupportedProtocols.md b/lib/IRremoteESP8266-2.7.1/SupportedProtocols.md similarity index 99% rename from lib/IRremoteESP8266-2.7.0/SupportedProtocols.md rename to lib/IRremoteESP8266-2.7.1/SupportedProtocols.md index afd31587e..02d51093a 100644 --- a/lib/IRremoteESP8266-2.7.0/SupportedProtocols.md +++ b/lib/IRremoteESP8266-2.7.1/SupportedProtocols.md @@ -1,6 +1,6 @@ + Last generated: Mon Nov 25 11:12:06 2019 ---> # IR Protocols supported by this library | Protocol | Brand | Model | A/C Model | Detailed A/C Support | diff --git a/lib/IRremoteESP8266-2.7.0/examples/CommonAcControl/CommonAcControl.ino b/lib/IRremoteESP8266-2.7.1/examples/CommonAcControl/CommonAcControl.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/CommonAcControl/CommonAcControl.ino rename to lib/IRremoteESP8266-2.7.1/examples/CommonAcControl/CommonAcControl.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/CommonAcControl/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/CommonAcControl/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/CommonAcControl/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/CommonAcControl/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/ControlSamsungAC/ControlSamsungAC.ino b/lib/IRremoteESP8266-2.7.1/examples/ControlSamsungAC/ControlSamsungAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/ControlSamsungAC/ControlSamsungAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/ControlSamsungAC/ControlSamsungAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/ControlSamsungAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/ControlSamsungAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/ControlSamsungAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/ControlSamsungAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/DumbIRRepeater/DumbIRRepeater.ino b/lib/IRremoteESP8266-2.7.1/examples/DumbIRRepeater/DumbIRRepeater.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/DumbIRRepeater/DumbIRRepeater.ino rename to lib/IRremoteESP8266-2.7.1/examples/DumbIRRepeater/DumbIRRepeater.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/DumbIRRepeater/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/DumbIRRepeater/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/DumbIRRepeater/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/DumbIRRepeater/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRGCSendDemo/IRGCSendDemo.ino b/lib/IRremoteESP8266-2.7.1/examples/IRGCSendDemo/IRGCSendDemo.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRGCSendDemo/IRGCSendDemo.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRGCSendDemo/IRGCSendDemo.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRGCSendDemo/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRGCSendDemo/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRGCSendDemo/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRGCSendDemo/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRGCTCPServer/IRGCTCPServer.ino b/lib/IRremoteESP8266-2.7.1/examples/IRGCTCPServer/IRGCTCPServer.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRGCTCPServer/IRGCTCPServer.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRGCTCPServer/IRGCTCPServer.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRGCTCPServer/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRGCTCPServer/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRGCTCPServer/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRGCTCPServer/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/IRMQTTServer.h b/lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/IRMQTTServer.h similarity index 99% rename from lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/IRMQTTServer.h rename to lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/IRMQTTServer.h index eb5a4e37f..c9d4898b9 100644 --- a/lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/IRMQTTServer.h +++ b/lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/IRMQTTServer.h @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -237,7 +238,7 @@ const uint16_t kJsonAcStateMaxSize = 1024; // Bytes // ----------------- End of User Configuration Section ------------------------- // Constants -#define _MY_VERSION_ "v1.4.4" +#define _MY_VERSION_ "v1.4.5" const uint8_t kRebootTime = 15; // Seconds const uint8_t kQuickDisplayTime = 2; // Seconds diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/IRMQTTServer.ino b/lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/IRMQTTServer.ino similarity index 97% rename from lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/IRMQTTServer.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/IRMQTTServer.ino index 6373181a0..dfb1aa044 100644 --- a/lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/IRMQTTServer.ino +++ b/lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/IRMQTTServer.ino @@ -12,7 +12,7 @@ * A compatible IR RX modules SHOULD be connected to ESP * if you want to capture & decode IR nessages. e.g. GPIO14 (D5) * See 'IR_RX' in IRMQTTServer.h. - * GPIOs are configurable from the http:///gpio + * GPIOs are configurable from the http:///gpio * page. * * WARN: This is *very* advanced & complicated example code. Not for beginners. @@ -56,25 +56,25 @@ * https://github.com/tzapu/WiFiManager#how-it-works * * If you need to reset the WiFi and saved settings to go back to "First Boot", - * visit: http:///reset + * visit: http:///reset * * ## Normal Use (After initial setup) - * Enter 'http:///gpio page to configure the GPIOs + * Visit the http:///gpio page to configure the GPIOs * for the IR LED(s) and/or IR RX demodulator. * * You can send URLs like the following, with similar data type limitations as * the MQTT formating in the next section. e.g: - * http:///ir?type=7&code=E0E09966 - * http:///ir?type=4&code=0xf50&bits=12 - * http:///ir?code=C1A2E21D&repeats=8&type=19 - * http:///ir?type=31&code=40000,1,1,96,24,24,24,48,24,24,24,24,24,48,24,24,24,24,24,48,24,24,24,24,24,24,24,24,1058 - * http:///ir?type=18&code=190B8050000000E0190B8070000010f0 - * http:///ir?repeats=1&type=25&code=0000,006E,0022,0002,0155,00AA,0015,0040,0015,0040,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0040,0015,0040,0015,0015,0015,0040,0015,0015,0015,0015,0015,0015,0015,0040,0015,0015,0015,0015,0015,0040,0015,0040,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0040,0015,0015,0015,0015,0015,0040,0015,0040,0015,0040,0015,0040,0015,0040,0015,0640,0155,0055,0015,0E40 + * http:///ir?type=7&code=E0E09966 + * http:///ir?type=4&code=0xf50&bits=12 + * http:///ir?code=C1A2E21D&repeats=8&type=19 + * http:///ir?type=31&code=40000,1,1,96,24,24,24,48,24,24,24,24,24,48,24,24,24,24,24,48,24,24,24,24,24,24,24,24,1058 + * http:///ir?type=18&code=190B8050000000E0190B8070000010f0 + * http:///ir?repeats=1&type=25&code=0000,006E,0022,0002,0155,00AA,0015,0040,0015,0040,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0040,0015,0040,0015,0015,0015,0040,0015,0015,0015,0015,0015,0015,0015,0040,0015,0015,0015,0015,0015,0040,0015,0040,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0015,0040,0015,0015,0015,0015,0015,0040,0015,0040,0015,0040,0015,0040,0015,0040,0015,0640,0155,0055,0015,0E40 * If you have enabled more than 1 TX GPIO, you can use the "channel" argument: - * http:///ir?channel=0&type=7&code=E0E09966 - * http:///ir?channel=1&type=7&code=E0E09966 + * http:///ir?channel=0&type=7&code=E0E09966 + * http:///ir?channel=1&type=7&code=E0E09966 * * or * @@ -241,20 +241,20 @@ * - "dry" * - "fan_only" * fan_modes: - * - "auto" - * - "min" - * - "low" - * - "medium" - * - "high" - * - "max" + * - "Auto" + * - "Min" + * - "Low" + * - "Medium" + * - "High" + * - "Max" * swing_modes: - * - "off" - * - "auto" - * - "highest" - * - "high" - * - "middle" - * - "low" - * - "lowest" + * - "Off" + * - "Auto" + * - "Highest" + * - "High" + * - "Middle" + * - "Low" + * - "Lowest" * power_command_topic: "ir_server/ac/cmnd/power" * mode_command_topic: "ir_server/ac/cmnd/mode" * mode_state_topic: "ir_server/ac/stat/mode" @@ -284,13 +284,13 @@ * first TX GPIO climate. You will need to manually configure the others. * * ### via HTTP: - * Use the "http:///aircon/set" URL and pass on + * Use the "http:///aircon/set" URL and pass on * the arguments as needed to control your device. See the `KEY_*` #defines * in the code for all the parameters. * i.e. protocol, model, power, mode, temp, fanspeed, swingv, swingh, quiet, * turbo, light, beep, econo, sleep, filter, clean, use_celsius, channel * Example: - * http:///aircon/set?channel=0&protocol=PANASONIC_AC&model=LKE&power=on&mode=auto&fanspeed=min&temp=23 + * http:///aircon/set?channel=0&protocol=PANASONIC_AC&model=LKE&power=on&mode=auto&fanspeed=min&temp=23 * * NOTE: If you don't set the channel, the first GPIO (Channel 0) is used. * @@ -353,6 +353,7 @@ #include #include #include +#include #include #include #include @@ -1181,7 +1182,7 @@ void handleAdmin(void) { #endif // MQTT_ENABLE html += htmlButton( kUrlReboot, F("Reboot"), - F("A simple reboot of the ESP8266. ie. No changes
" + F("A simple reboot of the ESP. ie. No changes
" "
")); html += htmlButton( kUrlWipe, F("Wipe Settings"), @@ -2514,6 +2515,8 @@ void sendMQTTDiscovery(const char *topic) { "\"pow_cmd_t\":\"~/" MQTT_CLIMATE_CMND "/" KEY_POWER "\"," "\"mode_cmd_t\":\"~/" MQTT_CLIMATE_CMND "/" KEY_MODE "\"," "\"mode_stat_t\":\"~/" MQTT_CLIMATE_STAT "/" KEY_MODE "\"," + // I don't know why, but the modes need to be lower case to work with + // Home Assistant & Google Home. "\"modes\":[\"off\",\"auto\",\"cool\",\"heat\",\"dry\",\"fan_only\"]," "\"temp_cmd_t\":\"~/" MQTT_CLIMATE_CMND "/" KEY_TEMP "\"," "\"temp_stat_t\":\"~/" MQTT_CLIMATE_STAT "/" KEY_TEMP "\"," @@ -2522,11 +2525,13 @@ void sendMQTTDiscovery(const char *topic) { "\"temp_step\":\"1\"," "\"fan_mode_cmd_t\":\"~/" MQTT_CLIMATE_CMND "/" KEY_FANSPEED "\"," "\"fan_mode_stat_t\":\"~/" MQTT_CLIMATE_STAT "/" KEY_FANSPEED "\"," - "\"fan_modes\":[\"auto\",\"min\",\"low\",\"medium\",\"high\",\"max\"]," + "\"fan_modes\":[\"" D_STR_AUTO "\",\"" D_STR_MIN "\",\"" D_STR_LOW "\",\"" + D_STR_MEDIUM "\",\"" D_STR_HIGH "\",\"" D_STR_MAX "\"]," "\"swing_mode_cmd_t\":\"~/" MQTT_CLIMATE_CMND "/" KEY_SWINGV "\"," "\"swing_mode_stat_t\":\"~/" MQTT_CLIMATE_STAT "/" KEY_SWINGV "\"," - "\"swing_modes\":[" - "\"off\",\"auto\",\"highest\",\"high\",\"middle\",\"low\",\"lowest\"]" + "\"swing_modes\":[\"" D_STR_OFF "\",\"" D_STR_AUTO "\",\"" D_STR_HIGHEST + "\",\"" D_STR_HIGH "\",\"" D_STR_MIDDLE "\",\"" + D_STR_LOW "\",\"" D_STR_LOWEST "\"]" "}").c_str(), true)) { mqttLog("MQTT climate discovery successful sent."); hasDiscoveryBeenSent = true; @@ -2961,16 +2966,15 @@ bool sendClimate(const String topic_prefix, const bool retain, diff = true; success &= sendInt(topic_prefix + KEY_MODEL, next.model, retain); } + String mode_str = IRac::opmodeToString(next.mode); + // I don't know why, but the modes need to be lower case to work with + // Home Assistant & Google Home. + mode_str.toLowerCase(); #if MQTT_CLIMATE_HA_MODE // Home Assistant want's these two bound together. if (prev.power != next.power || prev.mode != next.mode || forceMQTT) { - diff = true; success &= sendBool(topic_prefix + KEY_POWER, next.power, retain); - success &= sendString(topic_prefix + KEY_MODE, - (next.power ? IRac::opmodeToString(next.mode) - : F("off")), - retain); - } + if (!next.power) mode_str = F("off"); #else // MQTT_CLIMATE_HA_MODE // In non-Home Assistant mode, power and mode are not bound together. if (prev.power != next.power || forceMQTT) { @@ -2978,11 +2982,10 @@ bool sendClimate(const String topic_prefix, const bool retain, success &= sendBool(topic_prefix + KEY_POWER, next.power, retain); } if (prev.mode != next.mode || forceMQTT) { - diff = true; - success &= sendString(topic_prefix + KEY_MODE, - IRac::opmodeToString(next.mode), retain); - } #endif // MQTT_CLIMATE_HA_MODE + success &= sendString(topic_prefix + KEY_MODE, mode_str, retain); + diff = true; + } if (prev.degrees != next.degrees || forceMQTT) { diff = true; success &= sendFloat(topic_prefix + KEY_TEMP, next.degrees, retain); diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRMQTTServer/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRMQTTServer/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRServer/IRServer.ino b/lib/IRremoteESP8266-2.7.1/examples/IRServer/IRServer.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRServer/IRServer.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRServer/IRServer.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRServer/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRServer/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRServer/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRServer/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRrecvDemo/IRrecvDemo.ino b/lib/IRremoteESP8266-2.7.1/examples/IRrecvDemo/IRrecvDemo.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRrecvDemo/IRrecvDemo.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRrecvDemo/IRrecvDemo.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRrecvDemo/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRrecvDemo/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRrecvDemo/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRrecvDemo/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRrecvDump/IRrecvDump.ino b/lib/IRremoteESP8266-2.7.1/examples/IRrecvDump/IRrecvDump.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRrecvDump/IRrecvDump.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRrecvDump/IRrecvDump.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRrecvDump/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRrecvDump/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRrecvDump/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRrecvDump/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRrecvDumpV2/IRrecvDumpV2.ino b/lib/IRremoteESP8266-2.7.1/examples/IRrecvDumpV2/IRrecvDumpV2.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRrecvDumpV2/IRrecvDumpV2.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRrecvDumpV2/IRrecvDumpV2.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRrecvDumpV2/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRrecvDumpV2/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRrecvDumpV2/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRrecvDumpV2/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRsendDemo/IRsendDemo.ino b/lib/IRremoteESP8266-2.7.1/examples/IRsendDemo/IRsendDemo.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRsendDemo/IRsendDemo.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRsendDemo/IRsendDemo.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRsendDemo/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRsendDemo/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRsendDemo/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRsendDemo/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRsendProntoDemo/IRsendProntoDemo.ino b/lib/IRremoteESP8266-2.7.1/examples/IRsendProntoDemo/IRsendProntoDemo.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRsendProntoDemo/IRsendProntoDemo.ino rename to lib/IRremoteESP8266-2.7.1/examples/IRsendProntoDemo/IRsendProntoDemo.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/IRsendProntoDemo/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/IRsendProntoDemo/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/IRsendProntoDemo/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/IRsendProntoDemo/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/JVCPanasonicSendDemo/JVCPanasonicSendDemo.ino b/lib/IRremoteESP8266-2.7.1/examples/JVCPanasonicSendDemo/JVCPanasonicSendDemo.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/JVCPanasonicSendDemo/JVCPanasonicSendDemo.ino rename to lib/IRremoteESP8266-2.7.1/examples/JVCPanasonicSendDemo/JVCPanasonicSendDemo.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/JVCPanasonicSendDemo/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/JVCPanasonicSendDemo/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/JVCPanasonicSendDemo/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/JVCPanasonicSendDemo/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/LGACSend/LGACSend.ino b/lib/IRremoteESP8266-2.7.1/examples/LGACSend/LGACSend.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/LGACSend/LGACSend.ino rename to lib/IRremoteESP8266-2.7.1/examples/LGACSend/LGACSend.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/LGACSend/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/LGACSend/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/LGACSend/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/LGACSend/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/SmartIRRepeater/SmartIRRepeater.ino b/lib/IRremoteESP8266-2.7.1/examples/SmartIRRepeater/SmartIRRepeater.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/SmartIRRepeater/SmartIRRepeater.ino rename to lib/IRremoteESP8266-2.7.1/examples/SmartIRRepeater/SmartIRRepeater.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/SmartIRRepeater/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/SmartIRRepeater/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/SmartIRRepeater/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/SmartIRRepeater/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnArgoAC/TurnOnArgoAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnArgoAC/TurnOnArgoAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnArgoAC/TurnOnArgoAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnArgoAC/TurnOnArgoAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnArgoAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnArgoAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnArgoAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnArgoAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnDaikinAC/TurnOnDaikinAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnDaikinAC/TurnOnDaikinAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnDaikinAC/TurnOnDaikinAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnDaikinAC/TurnOnDaikinAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnDaikinAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnDaikinAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnDaikinAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnDaikinAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnFujitsuAC/TurnOnFujitsuAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnFujitsuAC/TurnOnFujitsuAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnFujitsuAC/TurnOnFujitsuAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnFujitsuAC/TurnOnFujitsuAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnFujitsuAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnFujitsuAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnFujitsuAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnFujitsuAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnKelvinatorAC/TurnOnKelvinatorAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnKelvinatorAC/TurnOnKelvinatorAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnKelvinatorAC/TurnOnKelvinatorAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnKelvinatorAC/TurnOnKelvinatorAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnKelvinatorAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnKelvinatorAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnKelvinatorAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnKelvinatorAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiAC/TurnOnMitsubishiAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiAC/TurnOnMitsubishiAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiAC/TurnOnMitsubishiAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiAC/TurnOnMitsubishiAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiHeavyAc/TurnOnMitsubishiHeavyAc.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiHeavyAc/TurnOnMitsubishiHeavyAc.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiHeavyAc/TurnOnMitsubishiHeavyAc.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiHeavyAc/TurnOnMitsubishiHeavyAc.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiHeavyAc/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiHeavyAc/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnMitsubishiHeavyAc/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnMitsubishiHeavyAc/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnPanasonicAC/TurnOnPanasonicAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnPanasonicAC/TurnOnPanasonicAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnPanasonicAC/TurnOnPanasonicAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnPanasonicAC/TurnOnPanasonicAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnPanasonicAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnPanasonicAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnPanasonicAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnPanasonicAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnToshibaAC/TurnOnToshibaAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnToshibaAC/TurnOnToshibaAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnToshibaAC/TurnOnToshibaAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnToshibaAC/TurnOnToshibaAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnToshibaAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnToshibaAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnToshibaAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnToshibaAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnTrotecAC/TurnOnTrotecAC.ino b/lib/IRremoteESP8266-2.7.1/examples/TurnOnTrotecAC/TurnOnTrotecAC.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnTrotecAC/TurnOnTrotecAC.ino rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnTrotecAC/TurnOnTrotecAC.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/TurnOnTrotecAC/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/TurnOnTrotecAC/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/TurnOnTrotecAC/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/TurnOnTrotecAC/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/README.md b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/README.md similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/README.md rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/README.md diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/Web-AC-control.ino b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/Web-AC-control.ino similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/Web-AC-control.ino rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/Web-AC-control.ino diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/platformio.ini b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/platformio.ini similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/platformio.ini rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/platformio.ini diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/printscreen.png b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/printscreen.png similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/printscreen.png rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/printscreen.png diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/favicon.ico b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/favicon.ico similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/favicon.ico rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/favicon.ico diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_1_off.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_1_off.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_1_off.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_1_off.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_1_on.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_1_on.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_1_on.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_1_on.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_2_off.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_2_off.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_2_off.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_2_off.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_2_on.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_2_on.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_2_on.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_2_on.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_3_off.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_3_off.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_3_off.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_3_off.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_3_on.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_3_on.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_3_on.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_3_on.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_4_off.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_4_off.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_4_off.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_4_off.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_4_on.svg b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_4_on.svg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/level_4_on.svg rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/level_4_on.svg diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/ui.html b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/ui.html similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/ui.html rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/ui.html diff --git a/lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/ui.js b/lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/ui.js similarity index 100% rename from lib/IRremoteESP8266-2.7.0/examples/Web-AC-control/upload/ui.js rename to lib/IRremoteESP8266-2.7.1/examples/Web-AC-control/upload/ui.js diff --git a/lib/IRremoteESP8266-2.7.0/keywords.txt b/lib/IRremoteESP8266-2.7.1/keywords.txt similarity index 96% rename from lib/IRremoteESP8266-2.7.0/keywords.txt rename to lib/IRremoteESP8266-2.7.1/keywords.txt index 33a48f5f2..f027e808b 100644 --- a/lib/IRremoteESP8266-2.7.0/keywords.txt +++ b/lib/IRremoteESP8266-2.7.1/keywords.txt @@ -920,6 +920,7 @@ PANASONIC LITERAL1 PANASONIC_AC LITERAL1 PANASONIC_BITS LITERAL1 PIONEER LITERAL1 +PROGMEM LITERAL1 PRONTO LITERAL1 RAW LITERAL1 RAWTICK LITERAL1 @@ -1052,6 +1053,10 @@ WHYNTER LITERAL1 WHYNTER_BITS LITERAL1 YAW1F LITERAL1 YBOFB LITERAL1 +k3DStr LITERAL1 +k6thSenseStr LITERAL1 +k8CHeatStr LITERAL1 +kAirFlowStr LITERAL1 kAiwaRcT501Bits LITERAL1 kAiwaRcT501MinRepeats LITERAL1 kAiwaRcT501PostBits LITERAL1 @@ -1152,6 +1157,14 @@ kArgoTempLowOffset LITERAL1 kArgoTempLowSize LITERAL1 kArgoZeroSpace LITERAL1 kAuto LITERAL1 +kAutoStr LITERAL1 +kAutomaticStr LITERAL1 +kBeepStr LITERAL1 +kBitsStr LITERAL1 +kBottomStr LITERAL1 +kBreezeStr LITERAL1 +kButtonStr LITERAL1 +kCancelStr LITERAL1 kCarrierAcBitMark LITERAL1 kCarrierAcBits LITERAL1 kCarrierAcGap LITERAL1 @@ -1160,7 +1173,20 @@ kCarrierAcHdrSpace LITERAL1 kCarrierAcMinRepeat LITERAL1 kCarrierAcOneSpace LITERAL1 kCarrierAcZeroSpace LITERAL1 +kCeilingStr LITERAL1 +kCelsiusStr LITERAL1 +kCentreStr LITERAL1 +kChangeStr LITERAL1 +kCirculateStr LITERAL1 +kCleanStr LITERAL1 +kClockStr LITERAL1 +kCodeStr LITERAL1 +kColonSpaceStr LITERAL1 +kComfortStr LITERAL1 +kCommaSpaceStr LITERAL1 +kCommandStr LITERAL1 kCool LITERAL1 +kCoolStr LITERAL1 kCoolixAuto LITERAL1 kCoolixBitMark LITERAL1 kCoolixBitMarkTicks LITERAL1 @@ -1537,6 +1563,8 @@ kDaikinTempSize LITERAL1 kDaikinTolerance LITERAL1 kDaikinUnusedTime LITERAL1 kDaikinZeroSpace LITERAL1 +kDayStr LITERAL1 +kDaysStr LITERAL1 kDefaultESP32Timer LITERAL1 kDefaultMessageGap LITERAL1 kDenon48Bits LITERAL1 @@ -1572,9 +1600,12 @@ kDishRptSpaceTicks LITERAL1 kDishTick LITERAL1 kDishZeroSpace LITERAL1 kDishZeroSpaceTicks LITERAL1 +kDownStr LITERAL1 kDry LITERAL1 +kDryStr LITERAL1 kDutyDefault LITERAL1 kDutyMax LITERAL1 +kEconoStr LITERAL1 kElectraAcAuto LITERAL1 kElectraAcBitMark LITERAL1 kElectraAcBits LITERAL1 @@ -1607,10 +1638,20 @@ kElectraAcTempDelta LITERAL1 kElectraAcTempOffset LITERAL1 kElectraAcTempSize LITERAL1 kElectraAcZeroSpace LITERAL1 +kEyeAutoStr LITERAL1 +kEyeStr LITERAL1 +kFalseStr LITERAL1 kFan LITERAL1 +kFanOnlyStr LITERAL1 +kFanStr LITERAL1 +kFastStr LITERAL1 +kFilterStr LITERAL1 +kFixedStr LITERAL1 kFnvBasis32 LITERAL1 kFnvPrime32 LITERAL1 +kFollowStr LITERAL1 kFooter LITERAL1 +kFreshStr LITERAL1 kFujitsuAcBitMark LITERAL1 kFujitsuAcBits LITERAL1 kFujitsuAcCleanOffset LITERAL1 @@ -1863,10 +1904,15 @@ kHaierAcYrw02TurboOffset LITERAL1 kHaierAcYrw02TurboSize LITERAL1 kHaierAcZeroSpace LITERAL1 kHeader LITERAL1 +kHealthStr LITERAL1 kHeat LITERAL1 +kHeatStr LITERAL1 +kHiStr LITERAL1 kHigh LITERAL1 kHighNibble LITERAL1 +kHighStr LITERAL1 kHighest LITERAL1 +kHighestStr LITERAL1 kHitachiAc1Bits LITERAL1 kHitachiAc1HdrMark LITERAL1 kHitachiAc1HdrSpace LITERAL1 @@ -1875,6 +1921,12 @@ kHitachiAc2Bits LITERAL1 kHitachiAc2StateLength LITERAL1 kHitachiAc424BitMark LITERAL1 kHitachiAc424Bits LITERAL1 +kHitachiAc424ButtonByte LITERAL1 +kHitachiAc424ButtonFan LITERAL1 +kHitachiAc424ButtonPowerMode LITERAL1 +kHitachiAc424ButtonSwingV LITERAL1 +kHitachiAc424ButtonTempDown LITERAL1 +kHitachiAc424ButtonTempUp LITERAL1 kHitachiAc424Cool LITERAL1 kHitachiAc424Dry LITERAL1 kHitachiAc424Fan LITERAL1 @@ -1897,7 +1949,8 @@ kHitachiAc424MinTemp LITERAL1 kHitachiAc424ModeByte LITERAL1 kHitachiAc424OneSpace LITERAL1 kHitachiAc424PowerByte LITERAL1 -kHitachiAc424PowerOffset LITERAL1 +kHitachiAc424PowerOff LITERAL1 +kHitachiAc424PowerOn LITERAL1 kHitachiAc424StateLength LITERAL1 kHitachiAc424TempByte LITERAL1 kHitachiAc424TempOffset LITERAL1 @@ -1927,6 +1980,11 @@ kHitachiAcPowerOffset LITERAL1 kHitachiAcStateLength LITERAL1 kHitachiAcSwingOffset LITERAL1 kHitachiAcZeroSpace LITERAL1 +kHoldStr LITERAL1 +kHourStr LITERAL1 +kHoursStr LITERAL1 +kHumidStr LITERAL1 +kIFeelStr LITERAL1 kIdleState LITERAL1 kInaxBitMark LITERAL1 kInaxBits LITERAL1 @@ -1937,6 +1995,7 @@ kInaxMinRepeat LITERAL1 kInaxOneSpace LITERAL1 kInaxTick LITERAL1 kInaxZeroSpace LITERAL1 +kIonStr LITERAL1 kJvcBitMark LITERAL1 kJvcBitMarkTicks LITERAL1 kJvcBits LITERAL1 @@ -2008,10 +2067,13 @@ kLasertagTolerance LITERAL1 kLastDecodeType LITERAL1 kLastFanspeedEnum LITERAL1 kLastOpmodeEnum LITERAL1 +kLastStr LITERAL1 kLastSwinghEnum LITERAL1 kLastSwingvEnum LITERAL1 kLeft LITERAL1 kLeftMax LITERAL1 +kLeftMaxStr LITERAL1 +kLeftStr LITERAL1 kLegoPfBitMark LITERAL1 kLegoPfBits LITERAL1 kLegoPfHdrSpace LITERAL1 @@ -2050,9 +2112,16 @@ kLgRptSpaceTicks LITERAL1 kLgTick LITERAL1 kLgZeroSpace LITERAL1 kLgZeroSpaceTicks LITERAL1 +kLightStr LITERAL1 +kLightToggleStr LITERAL1 +kLoStr LITERAL1 +kLoudStr LITERAL1 kLow LITERAL1 kLowNibble LITERAL1 +kLowStr LITERAL1 +kLowerStr LITERAL1 kLowest LITERAL1 +kLowestStr LITERAL1 kLutronBits LITERAL1 kLutronDelta LITERAL1 kLutronGap LITERAL1 @@ -2073,14 +2142,23 @@ kMagiQuestSpaceZero LITERAL1 kMagiQuestTotalUsec LITERAL1 kMagiQuestZeroRatio LITERAL1 kMagiquestBits LITERAL1 +kManualStr LITERAL1 kMark LITERAL1 kMarkExcess LITERAL1 kMarkState LITERAL1 kMax LITERAL1 kMaxAccurateUsecDelay LITERAL1 +kMaxLeftStr LITERAL1 +kMaxRightStr LITERAL1 +kMaxStr LITERAL1 kMaxTimeoutMs LITERAL1 +kMaximumStr LITERAL1 +kMedStr LITERAL1 kMedium LITERAL1 +kMediumStr LITERAL1 +kMidStr LITERAL1 kMiddle LITERAL1 +kMiddleStr LITERAL1 kMideaACAuto LITERAL1 kMideaACCelsiusOffset LITERAL1 kMideaACCool LITERAL1 @@ -2120,6 +2198,10 @@ kMideaTolerance LITERAL1 kMideaZeroSpace LITERAL1 kMideaZeroSpaceTicks LITERAL1 kMin LITERAL1 +kMinStr LITERAL1 +kMinimumStr LITERAL1 +kMinuteStr LITERAL1 +kMinutesStr LITERAL1 kMitsubishi112Auto LITERAL1 kMitsubishi112BitMark LITERAL1 kMitsubishi112Bits LITERAL1 @@ -2350,6 +2432,11 @@ kMitsubishiTick LITERAL1 kMitsubishiZeroSpace LITERAL1 kMitsubishiZeroSpaceTicks LITERAL1 kModeBitsSize LITERAL1 +kModeStr LITERAL1 +kModelStr LITERAL1 +kMouldStr LITERAL1 +kMoveStr LITERAL1 +kNAStr LITERAL1 kNECBits LITERAL1 kNecBitMark LITERAL1 kNecBitMarkTicks LITERAL1 @@ -2428,6 +2515,7 @@ kNeoclimaTempSize LITERAL1 kNeoclimaTurboOffset LITERAL1 kNeoclimaZeroSpace LITERAL1 kNibbleSize LITERAL1 +kNightStr LITERAL1 kNikaiBitMark LITERAL1 kNikaiBitMarkTicks LITERAL1 kNikaiBits LITERAL1 @@ -2443,7 +2531,15 @@ kNikaiTick LITERAL1 kNikaiZeroSpace LITERAL1 kNikaiZeroSpaceTicks LITERAL1 kNoRepeat LITERAL1 +kNoStr LITERAL1 +kNowStr LITERAL1 kOff LITERAL1 +kOffStr LITERAL1 +kOffTimerStr LITERAL1 +kOnStr LITERAL1 +kOnTimerStr LITERAL1 +kOutsideQuietStr LITERAL1 +kOutsideStr LITERAL1 kPanasonicAcAuto LITERAL1 kPanasonicAcBits LITERAL1 kPanasonicAcChecksumInit LITERAL1 @@ -2537,6 +2633,9 @@ kPioneerOneSpaceTicks LITERAL1 kPioneerTick LITERAL1 kPioneerZeroSpace LITERAL1 kPioneerZeroSpaceTicks LITERAL1 +kPowerStr LITERAL1 +kPowerToggleStr LITERAL1 +kPowerfulStr LITERAL1 kProntoDataOffset LITERAL1 kProntoFreqFactor LITERAL1 kProntoFreqOffset LITERAL1 @@ -2544,6 +2643,9 @@ kProntoMinLength LITERAL1 kProntoSeq1LenOffset LITERAL1 kProntoSeq2LenOffset LITERAL1 kProntoTypeOffset LITERAL1 +kProtocolStr LITERAL1 +kPurifyStr LITERAL1 +kQuietStr LITERAL1 kRC5Bits LITERAL1 kRC5RawBits LITERAL1 kRC5XBits LITERAL1 @@ -2588,8 +2690,12 @@ kRcmmRptLengthTicks LITERAL1 kRcmmTick LITERAL1 kRcmmTolerance LITERAL1 kRepeat LITERAL1 +kRepeatStr LITERAL1 kRight LITERAL1 kRightMax LITERAL1 +kRightMaxStr LITERAL1 +kRightStr LITERAL1 +kRoomStr LITERAL1 kSamsung36Bits LITERAL1 kSamsungACSectionLength LITERAL1 kSamsungAcAuto LITERAL1 @@ -2676,6 +2782,12 @@ kSanyoSa8650bHdrSpace LITERAL1 kSanyoSa8650bOneMark LITERAL1 kSanyoSa8650bRptLength LITERAL1 kSanyoSa8650bZeroMark LITERAL1 +kSaveStr LITERAL1 +kSecondStr LITERAL1 +kSecondsStr LITERAL1 +kSensorStr LITERAL1 +kSensorTempStr LITERAL1 +kSetStr LITERAL1 kSharpAcAuto LITERAL1 kSharpAcBitFanManualOffset LITERAL1 kSharpAcBitMark LITERAL1 @@ -2725,7 +2837,11 @@ kSharpZeroSpace LITERAL1 kSharpZeroSpaceTicks LITERAL1 kSherwoodBits LITERAL1 kSherwoodMinRepeat LITERAL1 +kSilentStr LITERAL1 kSingleRepeat LITERAL1 +kSleepStr LITERAL1 +kSleepTimerStr LITERAL1 +kSlowStr LITERAL1 kSony12Bits LITERAL1 kSony15Bits LITERAL1 kSony20Bits LITERAL1 @@ -2745,10 +2861,20 @@ kSonyTick LITERAL1 kSonyZeroMark LITERAL1 kSonyZeroMarkTicks LITERAL1 kSpace LITERAL1 +kSpaceLBraceStr LITERAL1 kSpaceState LITERAL1 kStartOffset LITERAL1 +kStartStr LITERAL1 kStateSizeMax LITERAL1 +kStepStr LITERAL1 kStopState LITERAL1 +kStopStr LITERAL1 +kSuperStr LITERAL1 +kSwingHStr LITERAL1 +kSwingStr LITERAL1 +kSwingVModeStr LITERAL1 +kSwingVStr LITERAL1 +kSwingVToggleStr LITERAL1 kTcl112AcAuto LITERAL1 kTcl112AcBitEconoOffset LITERAL1 kTcl112AcBitHealthOffset LITERAL1 @@ -2821,8 +2947,15 @@ kTecoTimerTensHoursSize LITERAL1 kTecoTimerUnitHoursOffset LITERAL1 kTecoTimerUnitHoursSize LITERAL1 kTecoZeroSpace LITERAL1 +kTempDownStr LITERAL1 +kTempStr LITERAL1 +kTempUpStr LITERAL1 +kThreeLetterDayOfWeekStr LITERAL1 kTimeoutMs LITERAL1 +kTimerStr LITERAL1 +kToggleStr LITERAL1 kTolerance LITERAL1 +kTopStr LITERAL1 kToshibaACBits LITERAL1 kToshibaACMinRepeat LITERAL1 kToshibaACStateLength LITERAL1 @@ -2881,7 +3014,12 @@ kTrotecTempOffset LITERAL1 kTrotecTempSize LITERAL1 kTrotecTimerBitOffset LITERAL1 kTrotecZeroSpace LITERAL1 +kTrueStr LITERAL1 +kTurboStr LITERAL1 +kUnknownStr LITERAL1 kUnknownThreshold LITERAL1 +kUpStr LITERAL1 +kUpperStr LITERAL1 kUseDefTol LITERAL1 kVestelAcAuto LITERAL1 kVestelAcBitMark LITERAL1 @@ -2934,6 +3072,8 @@ kVestelAcTolerance LITERAL1 kVestelAcTurbo LITERAL1 kVestelAcTurboSleepOffset LITERAL1 kVestelAcZeroSpace LITERAL1 +kWallStr LITERAL1 +kWeeklyTimerStr LITERAL1 kWhirlpoolAcAltTempOffset LITERAL1 kWhirlpoolAcAltTempPos LITERAL1 kWhirlpoolAcAuto LITERAL1 @@ -3014,3 +3154,8 @@ kWhynterTick LITERAL1 kWhynterZeroSpace LITERAL1 kWhynterZeroSpaceTicks LITERAL1 kWide LITERAL1 +kWideStr LITERAL1 +kWifiStr LITERAL1 +kXFanStr LITERAL1 +kYesStr LITERAL1 +kZoneFollowStr LITERAL1 diff --git a/lib/IRremoteESP8266-2.7.0/library.json b/lib/IRremoteESP8266-2.7.1/library.json similarity index 97% rename from lib/IRremoteESP8266-2.7.0/library.json rename to lib/IRremoteESP8266-2.7.1/library.json index 361bbb0af..50464bed1 100644 --- a/lib/IRremoteESP8266-2.7.0/library.json +++ b/lib/IRremoteESP8266-2.7.1/library.json @@ -1,6 +1,6 @@ { "name": "IRremoteESP8266", - "version": "2.7.0", + "version": "2.7.1", "keywords": "infrared, ir, remote, esp8266, esp32", "description": "Send and receive infrared signals with multiple protocols (ESP8266/ESP32)", "repository": diff --git a/lib/IRremoteESP8266-2.7.0/library.properties b/lib/IRremoteESP8266-2.7.1/library.properties similarity index 97% rename from lib/IRremoteESP8266-2.7.0/library.properties rename to lib/IRremoteESP8266-2.7.1/library.properties index 1f2c0770f..6e7215626 100644 --- a/lib/IRremoteESP8266-2.7.0/library.properties +++ b/lib/IRremoteESP8266-2.7.1/library.properties @@ -1,5 +1,5 @@ name=IRremoteESP8266 -version=2.7.0 +version=2.7.1 author=David Conran, Sebastien Warin, Mark Szabo, Ken Shirriff maintainer=Mark Szabo, David Conran, Sebastien Warin, Roi Dayan, Massimiliano Pinto sentence=Send and receive infrared signals with multiple protocols (ESP8266/ESP32) diff --git a/lib/IRremoteESP8266-2.7.0/pylintrc b/lib/IRremoteESP8266-2.7.1/pylintrc similarity index 100% rename from lib/IRremoteESP8266-2.7.0/pylintrc rename to lib/IRremoteESP8266-2.7.1/pylintrc diff --git a/lib/IRremoteESP8266-2.7.0/src/CPPLINT.cfg b/lib/IRremoteESP8266-2.7.1/src/CPPLINT.cfg similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/CPPLINT.cfg rename to lib/IRremoteESP8266-2.7.1/src/CPPLINT.cfg diff --git a/lib/IRremoteESP8266-2.7.0/src/IRac.cpp b/lib/IRremoteESP8266-2.7.1/src/IRac.cpp similarity index 95% rename from lib/IRremoteESP8266-2.7.0/src/IRac.cpp rename to lib/IRremoteESP8266-2.7.1/src/IRac.cpp index bec5eb554..f8e5ca759 100644 --- a/lib/IRremoteESP8266-2.7.0/src/IRac.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/IRac.cpp @@ -670,13 +670,15 @@ void IRac::hitachi(IRHitachiAc *ac, #if SEND_HITACHI_AC424 void IRac::hitachi424(IRHitachiAc424 *ac, const bool on, const stdAc::opmode_t mode, - const float degrees, const stdAc::fanspeed_t fan) { + const float degrees, const stdAc::fanspeed_t fan, + const stdAc::swingv_t swingv) { ac->begin(); - ac->setPower(on); ac->setMode(ac->convertMode(mode)); ac->setTemp(degrees); ac->setFan(ac->convertFan(fan)); - // TODO(jamsinclair): Add Swing(V) support. + ac->setPower(on); + // SwingVToggle is special. Needs to be last method called. + ac->setSwingVToggle(swingv != stdAc::swingv_t::kOff); // No Swing(H) setting available. // No Quiet setting available. // No Turbo setting available. @@ -1174,6 +1176,7 @@ stdAc::state_t IRac::handleToggles(const stdAc::state_t desired, result.light = desired.light ^ prev->light; break; case decode_type_t::MIDEA: + case decode_type_t::HITACHI_AC424: if ((desired.swingv == stdAc::swingv_t::kOff) ^ (prev->swingv == stdAc::swingv_t::kOff)) // It changed, so toggle. result.swingv = stdAc::swingv_t::kAuto; @@ -1413,7 +1416,7 @@ bool IRac::sendAc(const stdAc::state_t desired, const stdAc::state_t *prev) { case HITACHI_AC424: { IRHitachiAc424 ac(_pin, _inverted, _modulation); - hitachi424(&ac, on, send.mode, degC, send.fanspeed); + hitachi424(&ac, on, send.mode, degC, send.fanspeed, send.swingv); break; } #endif // SEND_HITACHI_AC424 @@ -1601,25 +1604,25 @@ bool IRac::hasStateChanged(void) { return cmpStates(next, _prev); } stdAc::opmode_t IRac::strToOpmode(const char *str, const stdAc::opmode_t def) { - if (!strcasecmp(str, kAutoStr.c_str()) || - !strcasecmp(str, kAutomaticStr.c_str())) + if (!strcasecmp(str, kAutoStr) || + !strcasecmp(str, kAutomaticStr)) return stdAc::opmode_t::kAuto; - else if (!strcasecmp(str, kOffStr.c_str()) || - !strcasecmp(str, kStopStr.c_str())) + else if (!strcasecmp(str, kOffStr) || + !strcasecmp(str, kStopStr)) return stdAc::opmode_t::kOff; - else if (!strcasecmp(str, kCoolStr.c_str()) || + else if (!strcasecmp(str, kCoolStr) || !strcasecmp(str, "COOLING")) return stdAc::opmode_t::kCool; - else if (!strcasecmp(str, kHeatStr.c_str()) || + else if (!strcasecmp(str, kHeatStr) || !strcasecmp(str, "HEATING")) return stdAc::opmode_t::kHeat; - else if (!strcasecmp(str, kDryStr.c_str()) || + else if (!strcasecmp(str, kDryStr) || !strcasecmp(str, "DRYING") || !strcasecmp(str, "DEHUMIDIFY")) return stdAc::opmode_t::kDry; - else if (!strcasecmp(str, kFanStr.c_str()) || + else if (!strcasecmp(str, kFanStr) || !strcasecmp(str, "FANONLY") || - !strcasecmp(str, kFanOnlyStr.c_str())) + !strcasecmp(str, kFanOnlyStr)) return stdAc::opmode_t::kFan; else return def; @@ -1627,26 +1630,26 @@ stdAc::opmode_t IRac::strToOpmode(const char *str, stdAc::fanspeed_t IRac::strToFanspeed(const char *str, const stdAc::fanspeed_t def) { - if (!strcasecmp(str, kAutoStr.c_str()) || - !strcasecmp(str, kAutomaticStr.c_str())) + if (!strcasecmp(str, kAutoStr) || + !strcasecmp(str, kAutomaticStr)) return stdAc::fanspeed_t::kAuto; - else if (!strcasecmp(str, kMinStr.c_str()) || - !strcasecmp(str, kMinimumStr.c_str()) || - !strcasecmp(str, kLowestStr.c_str())) + else if (!strcasecmp(str, kMinStr) || + !strcasecmp(str, kMinimumStr) || + !strcasecmp(str, kLowestStr)) return stdAc::fanspeed_t::kMin; - else if (!strcasecmp(str, kLowStr.c_str()) || - !strcasecmp(str, kLoStr.c_str())) + else if (!strcasecmp(str, kLowStr) || + !strcasecmp(str, kLoStr)) return stdAc::fanspeed_t::kLow; - else if (!strcasecmp(str, kMedStr.c_str()) || - !strcasecmp(str, kMediumStr.c_str()) || - !strcasecmp(str, kMidStr.c_str())) + else if (!strcasecmp(str, kMedStr) || + !strcasecmp(str, kMediumStr) || + !strcasecmp(str, kMidStr)) return stdAc::fanspeed_t::kMedium; - else if (!strcasecmp(str, kHighStr.c_str()) || - !strcasecmp(str, kHiStr.c_str())) + else if (!strcasecmp(str, kHighStr) || + !strcasecmp(str, kHiStr)) return stdAc::fanspeed_t::kHigh; - else if (!strcasecmp(str, kMaxStr.c_str()) || - !strcasecmp(str, kMaximumStr.c_str()) || - !strcasecmp(str, kHighestStr.c_str())) + else if (!strcasecmp(str, kMaxStr) || + !strcasecmp(str, kMaximumStr) || + !strcasecmp(str, kHighestStr)) return stdAc::fanspeed_t::kMax; else return def; @@ -1654,36 +1657,36 @@ stdAc::fanspeed_t IRac::strToFanspeed(const char *str, stdAc::swingv_t IRac::strToSwingV(const char *str, const stdAc::swingv_t def) { - if (!strcasecmp(str, kAutoStr.c_str()) || - !strcasecmp(str, kAutomaticStr.c_str()) || - !strcasecmp(str, kOnStr.c_str()) || - !strcasecmp(str, kSwingStr.c_str())) + if (!strcasecmp(str, kAutoStr) || + !strcasecmp(str, kAutomaticStr) || + !strcasecmp(str, kOnStr) || + !strcasecmp(str, kSwingStr)) return stdAc::swingv_t::kAuto; - else if (!strcasecmp(str, kOffStr.c_str()) || - !strcasecmp(str, kStopStr.c_str())) + else if (!strcasecmp(str, kOffStr) || + !strcasecmp(str, kStopStr)) return stdAc::swingv_t::kOff; - else if (!strcasecmp(str, kMinStr.c_str()) || - !strcasecmp(str, kMinimumStr.c_str()) || - !strcasecmp(str, kLowestStr.c_str()) || - !strcasecmp(str, kBottomStr.c_str()) || - !strcasecmp(str, kDownStr.c_str())) + else if (!strcasecmp(str, kMinStr) || + !strcasecmp(str, kMinimumStr) || + !strcasecmp(str, kLowestStr) || + !strcasecmp(str, kBottomStr) || + !strcasecmp(str, kDownStr)) return stdAc::swingv_t::kLowest; - else if (!strcasecmp(str, kLowStr.c_str())) + else if (!strcasecmp(str, kLowStr)) return stdAc::swingv_t::kLow; - else if (!strcasecmp(str, kMidStr.c_str()) || - !strcasecmp(str, kMiddleStr.c_str()) || - !strcasecmp(str, kMedStr.c_str()) || - !strcasecmp(str, kMediumStr.c_str()) || - !strcasecmp(str, kCentreStr.c_str())) + else if (!strcasecmp(str, kMidStr) || + !strcasecmp(str, kMiddleStr) || + !strcasecmp(str, kMedStr) || + !strcasecmp(str, kMediumStr) || + !strcasecmp(str, kCentreStr)) return stdAc::swingv_t::kMiddle; - else if (!strcasecmp(str, kHighStr.c_str()) || - !strcasecmp(str, kHiStr.c_str())) + else if (!strcasecmp(str, kHighStr) || + !strcasecmp(str, kHiStr)) return stdAc::swingv_t::kHigh; - else if (!strcasecmp(str, kHighestStr.c_str()) || - !strcasecmp(str, kMaxStr.c_str()) || - !strcasecmp(str, kMaximumStr.c_str()) || - !strcasecmp(str, kTopStr.c_str()) || - !strcasecmp(str, kUpStr.c_str())) + else if (!strcasecmp(str, kHighestStr) || + !strcasecmp(str, kMaxStr) || + !strcasecmp(str, kMaximumStr) || + !strcasecmp(str, kTopStr) || + !strcasecmp(str, kUpStr)) return stdAc::swingv_t::kHighest; else return def; @@ -1691,34 +1694,34 @@ stdAc::swingv_t IRac::strToSwingV(const char *str, stdAc::swingh_t IRac::strToSwingH(const char *str, const stdAc::swingh_t def) { - if (!strcasecmp(str, kAutoStr.c_str()) || - !strcasecmp(str, kAutomaticStr.c_str()) || - !strcasecmp(str, kOnStr.c_str()) || !strcasecmp(str, kSwingStr.c_str())) + if (!strcasecmp(str, kAutoStr) || + !strcasecmp(str, kAutomaticStr) || + !strcasecmp(str, kOnStr) || !strcasecmp(str, kSwingStr)) return stdAc::swingh_t::kAuto; - else if (!strcasecmp(str, kOffStr.c_str()) || - !strcasecmp(str, kStopStr.c_str())) + else if (!strcasecmp(str, kOffStr) || + !strcasecmp(str, kStopStr)) return stdAc::swingh_t::kOff; - else if (!strcasecmp(str, kLeftMaxStr.c_str()) || + else if (!strcasecmp(str, kLeftMaxStr) || !strcasecmp(str, D_STR_LEFT " " D_STR_MAX) || !strcasecmp(str, D_STR_MAX D_STR_LEFT) || - !strcasecmp(str, kMaxLeftStr.c_str())) + !strcasecmp(str, kMaxLeftStr)) return stdAc::swingh_t::kLeftMax; - else if (!strcasecmp(str, kLeftStr.c_str())) + else if (!strcasecmp(str, kLeftStr)) return stdAc::swingh_t::kLeft; - else if (!strcasecmp(str, kMidStr.c_str()) || - !strcasecmp(str, kMiddleStr.c_str()) || - !strcasecmp(str, kMedStr.c_str()) || - !strcasecmp(str, kMediumStr.c_str()) || - !strcasecmp(str, kCentreStr.c_str())) + else if (!strcasecmp(str, kMidStr) || + !strcasecmp(str, kMiddleStr) || + !strcasecmp(str, kMedStr) || + !strcasecmp(str, kMediumStr) || + !strcasecmp(str, kCentreStr)) return stdAc::swingh_t::kMiddle; - else if (!strcasecmp(str, kRightStr.c_str())) + else if (!strcasecmp(str, kRightStr)) return stdAc::swingh_t::kRight; - else if (!strcasecmp(str, kRightMaxStr.c_str()) || + else if (!strcasecmp(str, kRightMaxStr) || !strcasecmp(str, D_STR_MAX " " D_STR_RIGHT) || !strcasecmp(str, D_STR_MAX D_STR_RIGHT) || - !strcasecmp(str, kMaxRightStr.c_str())) + !strcasecmp(str, kMaxRightStr)) return stdAc::swingh_t::kRightMax; - else if (!strcasecmp(str, kWideStr.c_str())) + else if (!strcasecmp(str, kWideStr)) return stdAc::swingh_t::kWide; else return def; @@ -1771,15 +1774,15 @@ int16_t IRac::strToModel(const char *str, const int16_t def) { } bool IRac::strToBool(const char *str, const bool def) { - if (!strcasecmp(str, kOnStr.c_str()) || + if (!strcasecmp(str, kOnStr) || !strcasecmp(str, "1") || - !strcasecmp(str, kYesStr.c_str()) || - !strcasecmp(str, kTrueStr.c_str())) + !strcasecmp(str, kYesStr) || + !strcasecmp(str, kTrueStr)) return true; - else if (!strcasecmp(str, kOffStr.c_str()) || + else if (!strcasecmp(str, kOffStr) || !strcasecmp(str, "0") || - !strcasecmp(str, kNoStr.c_str()) || - !strcasecmp(str, kFalseStr.c_str())) + !strcasecmp(str, kNoStr) || + !strcasecmp(str, kFalseStr)) return false; else return def; diff --git a/lib/IRremoteESP8266-2.7.0/src/IRac.h b/lib/IRremoteESP8266-2.7.1/src/IRac.h similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/IRac.h rename to lib/IRremoteESP8266-2.7.1/src/IRac.h index 2fae0084a..4e1237d8d 100644 --- a/lib/IRremoteESP8266-2.7.0/src/IRac.h +++ b/lib/IRremoteESP8266-2.7.1/src/IRac.h @@ -219,7 +219,8 @@ void electra(IRElectraAc *ac, #if SEND_HITACHI_AC424 void hitachi424(IRHitachiAc424 *ac, const bool on, const stdAc::opmode_t mode, - const float degrees, const stdAc::fanspeed_t fan); + const float degrees, const stdAc::fanspeed_t fan, + const stdAc::swingv_t swingv); #endif // SEND_HITACHI_AC424 #if SEND_KELVINATOR void kelvinator(IRKelvinatorAC *ac, diff --git a/lib/IRremoteESP8266-2.7.0/src/IRrecv.cpp b/lib/IRremoteESP8266-2.7.1/src/IRrecv.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/IRrecv.cpp rename to lib/IRremoteESP8266-2.7.1/src/IRrecv.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/IRrecv.h b/lib/IRremoteESP8266-2.7.1/src/IRrecv.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/IRrecv.h rename to lib/IRremoteESP8266-2.7.1/src/IRrecv.h diff --git a/lib/IRremoteESP8266-2.7.0/src/IRremoteESP8266.h b/lib/IRremoteESP8266-2.7.1/src/IRremoteESP8266.h similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/IRremoteESP8266.h rename to lib/IRremoteESP8266-2.7.1/src/IRremoteESP8266.h index 0bdd0a2dd..9e4cdbaab 100644 --- a/lib/IRremoteESP8266-2.7.0/src/IRremoteESP8266.h +++ b/lib/IRremoteESP8266-2.7.1/src/IRremoteESP8266.h @@ -1,4 +1,4 @@ - /*************************************************** +/*************************************************** * IRremote for ESP8266 * * Based on the IRremote library for Arduino by Ken Shirriff @@ -52,7 +52,7 @@ #endif // UNIT_TEST // Library Version -#define _IRREMOTEESP8266_VERSION_ "2.7.0" +#define _IRREMOTEESP8266_VERSION_ "2.7.1" // Set the language & locale for the library. See the `locale` dir for options. #ifndef _IR_LOCALE_ diff --git a/lib/IRremoteESP8266-2.7.0/src/IRsend.cpp b/lib/IRremoteESP8266-2.7.1/src/IRsend.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/IRsend.cpp rename to lib/IRremoteESP8266-2.7.1/src/IRsend.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/IRsend.h b/lib/IRremoteESP8266-2.7.1/src/IRsend.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/IRsend.h rename to lib/IRremoteESP8266-2.7.1/src/IRsend.h diff --git a/lib/IRremoteESP8266-2.7.1/src/IRtext.cpp b/lib/IRremoteESP8266-2.7.1/src/IRtext.cpp new file mode 100644 index 000000000..82f728191 --- /dev/null +++ b/lib/IRremoteESP8266-2.7.1/src/IRtext.cpp @@ -0,0 +1,164 @@ +// Copyright 2019 - David Conran (@crankyoldgit) + +#ifndef UNIT_TEST +#include +#endif // UNIT_TEST +#include "IRremoteESP8266.h" +#include "i18n.h" + +#ifndef PROGMEM +#define PROGMEM // Pretend we have the PROGMEM macro even if we really don't. +#endif + +// Common + +const PROGMEM char* kUnknownStr = D_STR_UNKNOWN; +const PROGMEM char* kProtocolStr = D_STR_PROTOCOL; +const PROGMEM char* kPowerStr = D_STR_POWER; +const PROGMEM char* kOnStr = D_STR_ON; +const PROGMEM char* kOffStr = D_STR_OFF; +const PROGMEM char* kModeStr = D_STR_MODE; +const PROGMEM char* kToggleStr = D_STR_TOGGLE; +const PROGMEM char* kTurboStr = D_STR_TURBO; +const PROGMEM char* kSuperStr = D_STR_SUPER; +const PROGMEM char* kSleepStr = D_STR_SLEEP; +const PROGMEM char* kLightStr = D_STR_LIGHT; +const PROGMEM char* kPowerfulStr = D_STR_POWERFUL; +const PROGMEM char* kQuietStr = D_STR_QUIET; +const PROGMEM char* kEconoStr = D_STR_ECONO; +const PROGMEM char* kSwingStr = D_STR_SWING; +const PROGMEM char* kSwingHStr = D_STR_SWINGH; +const PROGMEM char* kSwingVStr = D_STR_SWINGV; +const PROGMEM char* kBeepStr = D_STR_BEEP; +const PROGMEM char* kZoneFollowStr = D_STR_ZONEFOLLOW; +const PROGMEM char* kFixedStr = D_STR_FIXED; +const PROGMEM char* kMouldStr = D_STR_MOULD; +const PROGMEM char* kCleanStr = D_STR_CLEAN; +const PROGMEM char* kPurifyStr = D_STR_PURIFY; +const PROGMEM char* kTimerStr = D_STR_TIMER; +const PROGMEM char* kOnTimerStr = D_STR_ONTIMER; +const PROGMEM char* kOffTimerStr = D_STR_OFFTIMER; +const PROGMEM char* kClockStr = D_STR_CLOCK; +const PROGMEM char* kCommandStr = D_STR_COMMAND; +const PROGMEM char* kXFanStr = D_STR_XFAN; +const PROGMEM char* kHealthStr = D_STR_HEALTH; +const PROGMEM char* kModelStr = D_STR_MODEL; +const PROGMEM char* kTempStr = D_STR_TEMP; +const PROGMEM char* kIFeelStr = D_STR_IFEEL; +const PROGMEM char* kHumidStr = D_STR_HUMID; +const PROGMEM char* kSaveStr = D_STR_SAVE; +const PROGMEM char* kEyeStr = D_STR_EYE; +const PROGMEM char* kFollowStr = D_STR_FOLLOW; +const PROGMEM char* kIonStr = D_STR_ION; +const PROGMEM char* kFreshStr = D_STR_FRESH; +const PROGMEM char* kHoldStr = D_STR_HOLD; +const PROGMEM char* kButtonStr = D_STR_BUTTON; +const PROGMEM char* k8CHeatStr = D_STR_8C_HEAT; +const PROGMEM char* kNightStr = D_STR_NIGHT; +const PROGMEM char* kSilentStr = D_STR_SILENT; +const PROGMEM char* kFilterStr = D_STR_FILTER; +const PROGMEM char* k3DStr = D_STR_3D; +const PROGMEM char* kCelsiusStr = D_STR_CELSIUS; +const PROGMEM char* kTempUpStr = D_STR_TEMPUP; +const PROGMEM char* kTempDownStr = D_STR_TEMPDOWN; +const PROGMEM char* kStartStr = D_STR_START; +const PROGMEM char* kStopStr = D_STR_STOP; +const PROGMEM char* kMoveStr = D_STR_MOVE; +const PROGMEM char* kSetStr = D_STR_SET; +const PROGMEM char* kCancelStr = D_STR_CANCEL; +const PROGMEM char* kUpStr = D_STR_UP; +const PROGMEM char* kDownStr = D_STR_DOWN; +const PROGMEM char* kChangeStr = D_STR_CHANGE; +const PROGMEM char* kComfortStr = D_STR_COMFORT; +const PROGMEM char* kSensorStr = D_STR_SENSOR; +const PROGMEM char* kWeeklyTimerStr = D_STR_WEEKLYTIMER; +const PROGMEM char* kWifiStr = D_STR_WIFI; +const PROGMEM char* kLastStr = D_STR_LAST; +const PROGMEM char* kFastStr = D_STR_FAST; +const PROGMEM char* kSlowStr = D_STR_SLOW; +const PROGMEM char* kAirFlowStr = D_STR_AIRFLOW; +const PROGMEM char* kStepStr = D_STR_STEP; +const PROGMEM char* kNAStr = D_STR_NA; +const PROGMEM char* kOutsideStr = D_STR_OUTSIDE; +const PROGMEM char* kLoudStr = D_STR_LOUD; +const PROGMEM char* kLowerStr = D_STR_LOWER; +const PROGMEM char* kUpperStr = D_STR_UPPER; +const PROGMEM char* kBreezeStr = D_STR_BREEZE; +const PROGMEM char* kCirculateStr = D_STR_CIRCULATE; +const PROGMEM char* kCeilingStr = D_STR_CEILING; +const PROGMEM char* kWallStr = D_STR_WALL; +const PROGMEM char* kRoomStr = D_STR_ROOM; +const PROGMEM char* k6thSenseStr = D_STR_6THSENSE; + +const PROGMEM char* kAutoStr = D_STR_AUTO; +const PROGMEM char* kAutomaticStr = D_STR_AUTOMATIC; +const PROGMEM char* kManualStr = D_STR_MANUAL; +const PROGMEM char* kCoolStr = D_STR_COOL; +const PROGMEM char* kHeatStr = D_STR_HEAT; +const PROGMEM char* kFanStr = D_STR_FAN; +const PROGMEM char* kDryStr = D_STR_DRY; +const PROGMEM char* kFanOnlyStr = D_STR_FANONLY; + +const PROGMEM char* kMaxStr = D_STR_MAX; +const PROGMEM char* kMaximumStr = D_STR_MAXIMUM; +const PROGMEM char* kMinStr = D_STR_MIN; +const PROGMEM char* kMinimumStr = D_STR_MINIMUM; +const PROGMEM char* kMedStr = D_STR_MED; +const PROGMEM char* kMediumStr = D_STR_MEDIUM; + +const PROGMEM char* kHighestStr = D_STR_HIGHEST; +const PROGMEM char* kHighStr = D_STR_HIGH; +const PROGMEM char* kHiStr = D_STR_HI; +const PROGMEM char* kMidStr = D_STR_MID; +const PROGMEM char* kMiddleStr = D_STR_MIDDLE; +const PROGMEM char* kLowStr = D_STR_LOW; +const PROGMEM char* kLoStr = D_STR_LO; +const PROGMEM char* kLowestStr = D_STR_LOWEST; +const PROGMEM char* kMaxRightStr = D_STR_MAXRIGHT; +const PROGMEM char* kRightMaxStr = D_STR_RIGHTMAX_NOSPACE; +const PROGMEM char* kRightStr = D_STR_RIGHT; +const PROGMEM char* kLeftStr = D_STR_LEFT; +const PROGMEM char* kMaxLeftStr = D_STR_MAXLEFT; +const PROGMEM char* kLeftMaxStr = D_STR_LEFTMAX_NOSPACE; +const PROGMEM char* kWideStr = D_STR_WIDE; +const PROGMEM char* kCentreStr = D_STR_CENTRE; +const PROGMEM char* kTopStr = D_STR_TOP; +const PROGMEM char* kBottomStr = D_STR_BOTTOM; + +// Compound words/phrases/descriptions from pre-defined words. +const PROGMEM char* kEyeAutoStr = D_STR_EYEAUTO; +const PROGMEM char* kLightToggleStr = D_STR_LIGHTTOGGLE; +const PROGMEM char* kOutsideQuietStr = D_STR_OUTSIDEQUIET; +const PROGMEM char* kPowerToggleStr = D_STR_POWERTOGGLE; +const PROGMEM char* kSensorTempStr = D_STR_SENSORTEMP; +const PROGMEM char* kSleepTimerStr = D_STR_SLEEP_TIMER; +const PROGMEM char* kSwingVModeStr = D_STR_SWINGVMODE; +const PROGMEM char* kSwingVToggleStr = D_STR_SWINGVTOGGLE; + +// Separators +char kTimeSep = D_CHR_TIME_SEP; +const PROGMEM char* kSpaceLBraceStr = D_STR_SPACELBRACE; +const PROGMEM char* kCommaSpaceStr = D_STR_COMMASPACE; +const PROGMEM char* kColonSpaceStr = D_STR_COLONSPACE; + +// IRutils +// - Time +const PROGMEM char* kDayStr = D_STR_DAY; +const PROGMEM char* kDaysStr = D_STR_DAYS; +const PROGMEM char* kHourStr = D_STR_HOUR; +const PROGMEM char* kHoursStr = D_STR_HOURS; +const PROGMEM char* kMinuteStr = D_STR_MINUTE; +const PROGMEM char* kMinutesStr = D_STR_MINUTES; +const PROGMEM char* kSecondStr = D_STR_SECOND; +const PROGMEM char* kSecondsStr = D_STR_SECONDS; +const PROGMEM char* kNowStr = D_STR_NOW; +const PROGMEM char* kThreeLetterDayOfWeekStr = D_STR_THREELETTERDAYS; + +const PROGMEM char* kYesStr = D_STR_YES; +const PROGMEM char* kNoStr = D_STR_NO; +const PROGMEM char* kTrueStr = D_STR_TRUE; +const PROGMEM char* kFalseStr = D_STR_FALSE; + +const PROGMEM char* kRepeatStr = D_STR_REPEAT; +const PROGMEM char* kCodeStr = D_STR_CODE; +const PROGMEM char* kBitsStr = D_STR_BITS; diff --git a/lib/IRremoteESP8266-2.7.1/src/IRtext.h b/lib/IRremoteESP8266-2.7.1/src/IRtext.h new file mode 100644 index 000000000..522b528bc --- /dev/null +++ b/lib/IRremoteESP8266-2.7.1/src/IRtext.h @@ -0,0 +1,154 @@ +// Copyright 2019 - David Conran (@crankyoldgit) +// This header file is to be included in files **other than** 'IRtext.cpp'. +// +// WARNING: Do not edit this file! This file is automatically generated by +// 'tools/generate_irtext_h.sh'. + +#ifndef IRTEXT_H_ +#define IRTEXT_H_ + +#include "i18n.h" + +// Constant text to be shared across all object files. +// This means there is only one copy of the character/string/text etc. + +extern char kTimeSep; +extern const char* k3DStr; +extern const char* k6thSenseStr; +extern const char* k8CHeatStr; +extern const char* kAirFlowStr; +extern const char* kAutomaticStr; +extern const char* kAutoStr; +extern const char* kBeepStr; +extern const char* kBitsStr; +extern const char* kBottomStr; +extern const char* kBreezeStr; +extern const char* kButtonStr; +extern const char* kCancelStr; +extern const char* kCeilingStr; +extern const char* kCelsiusStr; +extern const char* kCentreStr; +extern const char* kChangeStr; +extern const char* kCirculateStr; +extern const char* kCleanStr; +extern const char* kClockStr; +extern const char* kCodeStr; +extern const char* kColonSpaceStr; +extern const char* kComfortStr; +extern const char* kCommandStr; +extern const char* kCommaSpaceStr; +extern const char* kCoolStr; +extern const char* kDaysStr; +extern const char* kDayStr; +extern const char* kDownStr; +extern const char* kDryStr; +extern const char* kEconoStr; +extern const char* kEyeAutoStr; +extern const char* kEyeStr; +extern const char* kFalseStr; +extern const char* kFanOnlyStr; +extern const char* kFanStr; +extern const char* kFastStr; +extern const char* kFilterStr; +extern const char* kFixedStr; +extern const char* kFollowStr; +extern const char* kFreshStr; +extern const char* kHealthStr; +extern const char* kHeatStr; +extern const char* kHighestStr; +extern const char* kHighStr; +extern const char* kHiStr; +extern const char* kHoldStr; +extern const char* kHoursStr; +extern const char* kHourStr; +extern const char* kHumidStr; +extern const char* kIFeelStr; +extern const char* kIonStr; +extern const char* kLastStr; +extern const char* kLeftMaxStr; +extern const char* kLeftStr; +extern const char* kLightStr; +extern const char* kLightToggleStr; +extern const char* kLoStr; +extern const char* kLoudStr; +extern const char* kLowerStr; +extern const char* kLowestStr; +extern const char* kLowStr; +extern const char* kManualStr; +extern const char* kMaximumStr; +extern const char* kMaxLeftStr; +extern const char* kMaxRightStr; +extern const char* kMaxStr; +extern const char* kMediumStr; +extern const char* kMedStr; +extern const char* kMiddleStr; +extern const char* kMidStr; +extern const char* kMinimumStr; +extern const char* kMinStr; +extern const char* kMinutesStr; +extern const char* kMinuteStr; +extern const char* kModelStr; +extern const char* kModeStr; +extern const char* kMouldStr; +extern const char* kMoveStr; +extern const char* kNAStr; +extern const char* kNightStr; +extern const char* kNoStr; +extern const char* kNowStr; +extern const char* kOffStr; +extern const char* kOffTimerStr; +extern const char* kOnStr; +extern const char* kOnTimerStr; +extern const char* kOutsideQuietStr; +extern const char* kOutsideStr; +extern const char* kPowerfulStr; +extern const char* kPowerStr; +extern const char* kPowerToggleStr; +extern const char* kProtocolStr; +extern const char* kPurifyStr; +extern const char* kQuietStr; +extern const char* kRepeatStr; +extern const char* kRightMaxStr; +extern const char* kRightStr; +extern const char* kRoomStr; +extern const char* kSaveStr; +extern const char* kSecondsStr; +extern const char* kSecondStr; +extern const char* kSensorStr; +extern const char* kSensorTempStr; +extern const char* kSetStr; +extern const char* kSilentStr; +extern const char* kSleepStr; +extern const char* kSleepTimerStr; +extern const char* kSlowStr; +extern const char* kSpaceLBraceStr; +extern const char* kStartStr; +extern const char* kStepStr; +extern const char* kStopStr; +extern const char* kSuperStr; +extern const char* kSwingHStr; +extern const char* kSwingStr; +extern const char* kSwingVModeStr; +extern const char* kSwingVStr; +extern const char* kSwingVToggleStr; +extern const char* kTempDownStr; +extern const char* kTempStr; +extern const char* kTempUpStr; +extern const char* kThreeLetterDayOfWeekStr; +extern const char* kTimerStr; +extern const char* kToggleStr; +extern const char* kTopStr; +extern const char* kTrueStr; +extern const char* kTurboStr; +extern const char* kUnknownStr; +extern const char* kUpperStr; +extern const char* kUpStr; +extern const char* kWallStr; +extern const char* kWeeklyTimerStr; +extern const char* kWideStr; +extern const char* kWifiStr; +extern const char* kXFanStr; +extern const char* kYesStr; +extern const char* kZoneFollowStr; + +#endif // IRTEXT_H_ diff --git a/lib/IRremoteESP8266-2.7.0/src/IRtimer.cpp b/lib/IRremoteESP8266-2.7.1/src/IRtimer.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/IRtimer.cpp rename to lib/IRremoteESP8266-2.7.1/src/IRtimer.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/IRtimer.h b/lib/IRremoteESP8266-2.7.1/src/IRtimer.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/IRtimer.h rename to lib/IRremoteESP8266-2.7.1/src/IRtimer.h diff --git a/lib/IRremoteESP8266-2.7.0/src/IRutils.cpp b/lib/IRremoteESP8266-2.7.1/src/IRutils.cpp similarity index 97% rename from lib/IRremoteESP8266-2.7.0/src/IRutils.cpp rename to lib/IRremoteESP8266-2.7.1/src/IRutils.cpp index 76a3db307..0aa19e821 100644 --- a/lib/IRremoteESP8266-2.7.0/src/IRutils.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/IRutils.cpp @@ -91,7 +91,7 @@ void serialPrintUint64(uint64_t input, uint8_t base) { // Returns: // A decode_type_t enum. decode_type_t strToDecodeType(const char * const str) { - if (!strcasecmp(str, kUnknownStr.c_str())) + if (!strcasecmp(str, kUnknownStr)) return decode_type_t::UNKNOWN; else if (!strcasecmp(str, "UNUSED")) return decode_type_t::UNUSED; @@ -487,7 +487,11 @@ String typeToString(const decode_type_t protocol, const bool isRepeat) { result = kUnknownStr; break; } - if (isRepeat) result += kSpaceLBraceStr + kRepeatStr + ')'; + if (isRepeat) { + result += kSpaceLBraceStr; + result += kRepeatStr; + result += ')'; + } return result; } @@ -683,16 +687,20 @@ String resultToHumanReadableBasic(const decode_results * const results) { // Reserve some space for the string to reduce heap fragmentation. output.reserve(2 * kStateSizeMax + 50); // Should cover most cases. // Show Encoding standard - output += kProtocolStr + F(" : "); + output += kProtocolStr; + output += F(" : "); output += typeToString(results->decode_type, results->repeat); output += '\n'; // Show Code & length - output += kCodeStr + F(" : "); + output += kCodeStr; + output += F(" : "); output += resultToHexidecimal(results); output += kSpaceLBraceStr; output += uint64ToString(results->bits); - output += ' ' + kBitsStr + F(")\n"); + output += ' '; + output += kBitsStr; + output += F(")\n"); return output; } @@ -891,10 +899,10 @@ namespace irutils { result += kSpaceLBraceStr; if ((uint8_t)(day_of_week + offset) < 7) #if UNIT_TEST - result += kThreeLetterDayOfWeekStr.substr( + result += String(kThreeLetterDayOfWeekStr).substr( (day_of_week + offset) * 3, 3); #else // UNIT_TEST - result += kThreeLetterDayOfWeekStr.substring( + result += String(kThreeLetterDayOfWeekStr).substring( (day_of_week + offset) * 3, (day_of_week + offset) * 3 + 3); #endif // UNIT_TEST else @@ -991,21 +999,22 @@ namespace irutils { String result = ""; if (days) - result += uint64ToString(days) + ' ' + ((days > 1) ? kDaysStr : kDayStr); + result += uint64ToString(days) + ' ' + String((days > 1) ? kDaysStr + : kDayStr); if (hours) { if (result.length()) result += ' '; - result += uint64ToString(hours) + ' ' + ((hours > 1) ? kHoursStr - : kHourStr); + result += uint64ToString(hours) + ' ' + String((hours > 1) ? kHoursStr + : kHourStr); } if (minutes) { if (result.length()) result += ' '; - result += uint64ToString(minutes) + ' ' + ((minutes > 1) ? kMinutesStr - : kMinuteStr); + result += uint64ToString(minutes) + ' ' + String( + (minutes > 1) ? kMinutesStr : kMinuteStr); } if (seconds) { if (result.length()) result += ' '; - result += uint64ToString(seconds) + ' ' + ((seconds > 1) ? kSecondsStr - : kSecondStr); + result += uint64ToString(seconds) + ' ' + String( + (seconds > 1) ? kSecondsStr : kSecondStr); } return result; } diff --git a/lib/IRremoteESP8266-2.7.0/src/IRutils.h b/lib/IRremoteESP8266-2.7.1/src/IRutils.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/IRutils.h rename to lib/IRremoteESP8266-2.7.1/src/IRutils.h diff --git a/lib/IRremoteESP8266-2.7.0/src/i18n.h b/lib/IRremoteESP8266-2.7.1/src/i18n.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/i18n.h rename to lib/IRremoteESP8266-2.7.1/src/i18n.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Aiwa.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Aiwa.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Aiwa.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Aiwa.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Amcor.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Amcor.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Amcor.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Amcor.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Amcor.h b/lib/IRremoteESP8266-2.7.1/src/ir_Amcor.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Amcor.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Amcor.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Argo.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Argo.cpp similarity index 98% rename from lib/IRremoteESP8266-2.7.0/src/ir_Argo.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Argo.cpp index 2721d3dc5..f1806ebcd 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Argo.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Argo.cpp @@ -332,7 +332,9 @@ String IRArgoAC::toString(void) { result += kDryStr; break; case kArgoHeatAuto: - result += kHeatStr + ' ' + kAutoStr; + result += kHeatStr; + result += ' '; + result += kAutoStr; break; case kArgoOff: result += kOffStr; @@ -361,7 +363,9 @@ String IRArgoAC::toString(void) { } result += ')'; result += addTempToString(getTemp()); - result += kCommaSpaceStr + kRoomStr + ' '; + result += kCommaSpaceStr; + result += kRoomStr; + result += ' '; result += addTempToString(getRoomTemp(), true, false); result += addBoolToString(getMax(), kMaxStr); result += addBoolToString(getiFeel(), kIFeelStr); diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Argo.h b/lib/IRremoteESP8266-2.7.1/src/ir_Argo.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Argo.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Argo.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Carrier.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Carrier.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Carrier.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Carrier.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Coolix.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Coolix.cpp similarity index 94% rename from lib/IRremoteESP8266-2.7.0/src/ir_Coolix.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Coolix.cpp index 2c840fe47..0dbd68d63 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Coolix.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Coolix.cpp @@ -132,15 +132,15 @@ uint32_t IRCoolixAC::getRaw() { return remote_state; } void IRCoolixAC::setRaw(const uint32_t new_code) { if (!handleSpecialState(new_code)) { - // it isn`t special so might afect Temp|mode|Fan + // it isn`t special so might affect Temp|mode|Fan if (new_code == kCoolixCmdFan) { setMode(kCoolixFan); - } else { - // must be a command changing Temp|Mode|Fan - // it is safe to just copy to remote var - remote_state = new_code; + return; } } + // must be a command changing Temp|Mode|Fan + // it is safe to just copy to remote var + remote_state = new_code; } // Return true if the current state is a special state. @@ -243,17 +243,13 @@ bool IRCoolixAC::getPower() { } void IRCoolixAC::setPower(const bool on) { - if (powerFlag) { - if (!on) { - updateSavedState(); - remote_state = kCoolixOff; - } - } else { - if (on) { - // at this point remote_state must be ready - // to be transmitted - recoverSavedState(); - } + if (!on) { + updateSavedState(); + remote_state = kCoolixOff; + } else if (!powerFlag) { + // at this point remote_state must be ready + // to be transmitted + recoverSavedState(); } powerFlag = on; } @@ -500,23 +496,38 @@ String IRCoolixAC::toString(void) { if (!getPower()) return result; // If it's off, there is no other info. // Special modes. if (getSwing()) { - result += kCommaSpaceStr + kSwingStr + kColonSpaceStr + kToggleStr; + result += kCommaSpaceStr; + result += kSwingStr; + result += kColonSpaceStr; + result += kToggleStr; return result; } if (getSleep()) { - result += kCommaSpaceStr + kSleepStr + kColonSpaceStr + kToggleStr; + result += kCommaSpaceStr; + result += kSleepStr; + result += kColonSpaceStr; + result += kToggleStr; return result; } if (getTurbo()) { - result += kCommaSpaceStr + kTurboStr + kColonSpaceStr + kToggleStr; + result += kCommaSpaceStr; + result += kTurboStr; + result += kColonSpaceStr; + result += kToggleStr; return result; } if (getLed()) { - result += kCommaSpaceStr + kLightStr + kColonSpaceStr + kToggleStr; + result += kCommaSpaceStr; + result += kLightStr; + result += kColonSpaceStr; + result += kToggleStr; return result; } if (getClean()) { - result += kCommaSpaceStr + kCleanStr + kColonSpaceStr + kToggleStr; + result += kCommaSpaceStr; + result += kCleanStr; + result += kColonSpaceStr; + result += kToggleStr; return result; } result += addModeToString(getMode(), kCoolixAuto, kCoolixCool, kCoolixHeat, @@ -528,7 +539,8 @@ String IRCoolixAC::toString(void) { result += kAutoStr; break; case kCoolixFanAuto0: - result += kAutoStr + '0'; + result += kAutoStr; + result += '0'; break; case kCoolixFanMax: result += kMaxStr; @@ -554,8 +566,7 @@ String IRCoolixAC::toString(void) { result += addBoolToString(getZoneFollow(), kZoneFollowStr); result += addLabeledString( (getSensorTemp() > kCoolixSensorTempMax) - ? kOffStr : uint64ToString(getSensorTemp()) + F("C"), - kSensorStr + ' ' + kTempStr); + ? kOffStr : uint64ToString(getSensorTemp()) + 'C', kSensorTempStr); return result; } diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Coolix.h b/lib/IRremoteESP8266-2.7.1/src/ir_Coolix.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Coolix.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Coolix.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Daikin.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Daikin.cpp similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/ir_Daikin.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Daikin.cpp index b90dd682b..678e43f88 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Daikin.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Daikin.cpp @@ -1102,10 +1102,19 @@ String IRDaikin2::toString(void) { case kDaikin2SwingVHigh: result += kHighestStr; break; - case 2: result += kHighStr; break; - case 3: result += kUpperStr + kMiddleStr; break; - case 4: result += kLowerStr + kMiddleStr; break; - case 5: result += kLowStr; break; + case 2: + result += kHighStr; + break; + case 3: + result += kUpperStr; + result += kMiddleStr; + break; + case 4: + result += kLowerStr; + result += kMiddleStr; + break; + case 5: + result += kLowStr; break; case kDaikin2SwingVLow: result += kLowestStr; @@ -1146,7 +1155,7 @@ String IRDaikin2::toString(void) { kOffTimerStr); result += addLabeledString( getSleepTimerEnabled() ? minsToString(getSleepTime()) : kOffStr, - kSleepStr + ' ' + kTimerStr); + kSleepTimerStr); result += addIntToString(getBeep(), kBeepStr); result += kSpaceLBraceStr; switch (getBeep()) { @@ -1185,7 +1194,7 @@ String IRDaikin2::toString(void) { getFreshAir() ? (getFreshAirHigh() ? kHighStr : kOnStr) : kOffStr, kFreshStr); result += addBoolToString(getEye(), kEyeStr); - result += addBoolToString(getEyeAuto(), kEyeStr + ' ' + kAutoStr); + result += addBoolToString(getEyeAuto(), kEyeAutoStr); result += addBoolToString(getQuiet(), kQuietStr); result += addBoolToString(getPowerful(), kPowerfulStr); result += addBoolToString(getPurify(), kPurifyStr); @@ -2693,8 +2702,7 @@ uint8_t IRDaikin128::getLightToggle(void) { String IRDaikin128::toString(void) { String result = ""; result.reserve(240); // Reserve some heap for the string to reduce fragging. - result += addBoolToString(getPowerToggle(), kPowerStr + ' ' + kToggleStr, - false); + result += addBoolToString(getPowerToggle(), kPowerToggleStr, false); result += addModeToString(getMode(), kDaikin128Auto, kDaikin128Cool, kDaikin128Heat, kDaikin128Dry, kDaikin128Fan); result += addTempToString(getTemp()); @@ -2711,7 +2719,7 @@ String IRDaikin128::toString(void) { result += addLabeledString(minsToString(getOnTimer()), kOnTimerStr); result += addBoolToString(getOffTimerEnabled(), kOffTimerStr); result += addLabeledString(minsToString(getOffTimer()), kOffTimerStr); - result += addIntToString(getLightToggle(), kLightStr + ' ' + kToggleStr); + result += addIntToString(getLightToggle(), kLightToggleStr); result += kSpaceLBraceStr; switch (getLightToggle()) { case kDaikin128BitCeiling: result += kCeilingStr; break; diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Daikin.h b/lib/IRremoteESP8266-2.7.1/src/ir_Daikin.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Daikin.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Daikin.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Denon.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Denon.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Denon.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Denon.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Dish.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Dish.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Dish.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Dish.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Electra.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Electra.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Electra.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Electra.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Electra.h b/lib/IRremoteESP8266-2.7.1/src/ir_Electra.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Electra.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Electra.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Fujitsu.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Fujitsu.cpp similarity index 98% rename from lib/IRremoteESP8266-2.7.0/src/ir_Fujitsu.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Fujitsu.cpp index fe8c2bfed..4b0095b1e 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Fujitsu.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Fujitsu.cpp @@ -632,26 +632,38 @@ String IRFujitsuAC::toString(void) { result += kSwingHStr; break; case kFujitsuAcSwingBoth: - result += kSwingVStr + '+' + kSwingHStr; + result += kSwingVStr; + result += '+'; + result += kSwingHStr; break; default: result += kUnknownStr; } result += ')'; } - result += kCommaSpaceStr + kCommandStr + kColonSpaceStr; + result += kCommaSpaceStr; + result += kCommandStr; + result += kColonSpaceStr; switch (this->getCmd()) { case kFujitsuAcCmdStepHoriz: - result += kStepStr + ' ' + kSwingHStr; + result += kStepStr; + result += ' '; + result += kSwingHStr; break; case kFujitsuAcCmdStepVert: - result += kStepStr + ' ' + kSwingVStr; + result += kStepStr; + result += ' '; + result += kSwingVStr; break; case kFujitsuAcCmdToggleSwingHoriz: - result += kToggleStr + ' ' + kSwingHStr; + result += kToggleStr; + result += ' '; + result += kSwingHStr; break; case kFujitsuAcCmdToggleSwingVert: - result += kToggleStr + ' ' + kSwingVStr; + result += kToggleStr; + result += ' '; + result += kSwingVStr; break; case kFujitsuAcCmdEcono: result += kEconoStr; @@ -663,7 +675,7 @@ String IRFujitsuAC::toString(void) { result += kNAStr; } if (this->getModel() == fujitsu_ac_remote_model_t::ARREB1E) - result += addBoolToString(getOutsideQuiet(), kOutsideStr + ' ' + kQuietStr); + result += addBoolToString(getOutsideQuiet(), kOutsideQuietStr); return result; } diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Fujitsu.h b/lib/IRremoteESP8266-2.7.1/src/ir_Fujitsu.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Fujitsu.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Fujitsu.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_GICable.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_GICable.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_GICable.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_GICable.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_GlobalCache.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_GlobalCache.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_GlobalCache.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_GlobalCache.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Goodweather.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Goodweather.cpp similarity index 98% rename from lib/IRremoteESP8266-2.7.0/src/ir_Goodweather.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Goodweather.cpp index 4cf2e55cd..4c5aa3513 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Goodweather.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Goodweather.cpp @@ -300,9 +300,9 @@ String IRGoodweatherAc::toString(void) { result += addFanToString(getFan(), kGoodweatherFanHigh, kGoodweatherFanLow, kGoodweatherFanAuto, kGoodweatherFanAuto, kGoodweatherFanMed); - result += addLabeledString(getTurbo() ? kToggleStr : F("-"), kTurboStr); - result += addLabeledString(getLight() ? kToggleStr : F("-"), kLightStr); - result += addLabeledString(getSleep() ? kToggleStr : F("-"), kSleepStr); + result += addLabeledString(getTurbo() ? kToggleStr : "-", kTurboStr); + result += addLabeledString(getLight() ? kToggleStr : "-", kLightStr); + result += addLabeledString(getSleep() ? kToggleStr : "-", kSleepStr); result += addIntToString(getSwing(), kSwingStr); result += kSpaceLBraceStr; switch (this->getSwing()) { diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Goodweather.h b/lib/IRremoteESP8266-2.7.1/src/ir_Goodweather.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Goodweather.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Goodweather.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Gree.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Gree.cpp similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/ir_Gree.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Gree.cpp index 21eb78e28..2dbebe84b 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Gree.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Gree.cpp @@ -490,7 +490,7 @@ String IRGreeAC::toString(void) { result += addBoolToString(getLight(), kLightStr); result += addBoolToString(getSleep(), kSleepStr); result += addLabeledString(getSwingVerticalAuto() ? kAutoStr : kManualStr, - kSwingVStr + ' ' + kModeStr); + kSwingVModeStr); result += addIntToString(getSwingVerticalPosition(), kSwingVStr); result += kSpaceLBraceStr; switch (getSwingVerticalPosition()) { diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Gree.h b/lib/IRremoteESP8266-2.7.1/src/ir_Gree.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Gree.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Gree.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Haier.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Haier.cpp similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/ir_Haier.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Haier.cpp index d0cbf5230..ac8be71ac 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Haier.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Haier.cpp @@ -414,10 +414,14 @@ String IRHaierAC::toString(void) { result += kSleepStr; break; case kHaierAcCmdTimerSet: - result += kTimerStr + ' ' + kSetStr; + result += kTimerStr; + result += ' '; + result += kSetStr; break; case kHaierAcCmdTimerCancel: - result += kTimerStr + ' ' + kCancelStr; + result += kTimerStr; + result += ' '; + result += kCancelStr; break; case kHaierAcCmdHealth: result += kHealthStr; diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Haier.h b/lib/IRremoteESP8266-2.7.1/src/ir_Haier.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Haier.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Haier.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Hitachi.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Hitachi.cpp similarity index 91% rename from lib/IRremoteESP8266-2.7.0/src/ir_Hitachi.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Hitachi.cpp index 6fe776362..fcbcb5fec 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Hitachi.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Hitachi.cpp @@ -537,7 +537,6 @@ void IRHitachiAc424::stateReset(void) { remote_state[3] = 0x40; remote_state[5] = 0xFF; remote_state[7] = 0xCC; - remote_state[11] = 0x13; // Button Action remote_state[33] = 0x80; remote_state[35] = 0x03; remote_state[37] = 0x01; @@ -576,12 +575,13 @@ void IRHitachiAc424::send(const uint16_t repeat) { #endif // SEND_HITACHI_AC424 bool IRHitachiAc424::getPower(void) { - return GETBIT8(remote_state[kHitachiAc424PowerByte], - kHitachiAc424PowerOffset); + return remote_state[kHitachiAc424PowerByte] == kHitachiAc424PowerOn; } void IRHitachiAc424::setPower(const bool on) { - setBit(&remote_state[kHitachiAc424PowerByte], kHitachiAc424PowerOffset, on); + setButton(kHitachiAc424ButtonPowerMode); + remote_state[kHitachiAc424PowerByte] = on ? kHitachiAc424PowerOn + : kHitachiAc424PowerOff; } void IRHitachiAc424::on(void) { setPower(true); } @@ -606,6 +606,7 @@ void IRHitachiAc424::setMode(const uint8_t mode) { newMode); if (newMode != kHitachiAc424Fan) setTemp(_previoustemp); setFan(getFan()); // Reset the fan speed after the mode change. + setButton(kHitachiAc424ButtonPowerMode); } uint8_t IRHitachiAc424::getTemp(void) { @@ -615,11 +616,15 @@ uint8_t IRHitachiAc424::getTemp(void) { void IRHitachiAc424::setTemp(const uint8_t celsius, bool setPrevious) { uint8_t temp; - if (setPrevious) _previoustemp = celsius; temp = std::min(celsius, kHitachiAc424MaxTemp); temp = std::max(temp, kHitachiAc424MinTemp); setBits(&remote_state[kHitachiAc424TempByte], kHitachiAc424TempOffset, kHitachiAc424TempSize, temp); + if (_previoustemp > temp) + setButton(kHitachiAc424ButtonTempDown); + else if (_previoustemp < temp) + setButton(kHitachiAc424ButtonTempUp); + if (setPrevious) _previoustemp = temp; } uint8_t IRHitachiAc424::getFan(void) { @@ -641,6 +646,9 @@ void IRHitachiAc424::setFan(const uint8_t speed) { } newSpeed = std::min(newSpeed, fanMax); + // Handle the setting the button value if we are going to change the value. + if (newSpeed != getFan()) setButton(kHitachiAc424ButtonFan); + // Set the values setBits(&remote_state[kHitachiAc424FanByte], kHighNibble, kNibbleSize, newSpeed); remote_state[9] = 0x92; @@ -654,6 +662,31 @@ void IRHitachiAc424::setFan(const uint8_t speed) { } } +uint8_t IRHitachiAc424::getButton(void) { + return remote_state[kHitachiAc424ButtonByte]; +} + +// The remote sends the type of button pressed on send +void IRHitachiAc424::setButton(const uint8_t button) { + remote_state[kHitachiAc424ButtonByte] = button; +} + +// The remote does not keep state of the vertical swing. +// A byte is sent indicating the swing button is pressed on the remote +void IRHitachiAc424::setSwingVToggle(const bool on) { + uint8_t button = getButton(); // Get the current button value. + if (on) + button = kHitachiAc424ButtonSwingV; // Set the button to SwingV. + else if (button == kHitachiAc424ButtonSwingV) // Asked to unset it + // It was set previous, so use Power as a default + button = kHitachiAc424ButtonPowerMode; + setButton(button); +} + +bool IRHitachiAc424::getSwingVToggle(void) { + return getButton() == kHitachiAc424ButtonSwingV; +} + // Convert a standard A/C mode into its native mode. uint8_t IRHitachiAc424::convertMode(const stdAc::opmode_t mode) { switch (mode) { @@ -710,10 +743,8 @@ stdAc::state_t IRHitachiAc424::toCommon(void) { result.celsius = true; result.degrees = this->getTemp(); result.fanspeed = this->toCommonFanSpeed(this->getFan()); - - // TODO(jamsinclair): Add support. - result.swingv = stdAc::swingv_t::kOff; - + result.swingv = this->getSwingVToggle() ? stdAc::swingv_t::kAuto + : stdAc::swingv_t::kOff; // Not supported. result.swingh = stdAc::swingh_t::kOff; result.quiet = false; @@ -731,7 +762,7 @@ stdAc::state_t IRHitachiAc424::toCommon(void) { // Convert the internal state into a human readable string. String IRHitachiAc424::toString(void) { String result = ""; - result.reserve(60); // Reserve some heap for the string to reduce fragging. + result.reserve(100); // Reserve some heap for the string to reduce fragging. result += addBoolToString(getPower(), kPowerStr, false); result += addModeToString(getMode(), 0, kHitachiAc424Cool, kHitachiAc424Heat, kHitachiAc424Dry, @@ -749,5 +780,21 @@ String IRHitachiAc424::toString(void) { default: result += kUnknownStr; } result += ')'; + result += addBoolToString(getSwingVToggle(), kSwingVToggleStr); + result += addIntToString(getButton(), kButtonStr); + result += kSpaceLBraceStr; + switch (getButton()) { + case kHitachiAc424ButtonPowerMode: + result += kPowerStr; + result += '/'; + result += kModeStr; + break; + case kHitachiAc424ButtonFan: result += kFanStr; break; + case kHitachiAc424ButtonSwingV: result += kSwingVStr; break; + case kHitachiAc424ButtonTempDown: result += kTempDownStr; break; + case kHitachiAc424ButtonTempUp: result += kTempUpStr; break; + default: result += kUnknownStr; + } + result += ')'; return result; } diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Hitachi.h b/lib/IRremoteESP8266-2.7.1/src/ir_Hitachi.h similarity index 90% rename from lib/IRremoteESP8266-2.7.0/src/ir_Hitachi.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Hitachi.h index 4b02b3a4c..3e5ab4ae0 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Hitachi.h +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Hitachi.h @@ -41,6 +41,14 @@ const uint8_t kHitachiAcPowerOffset = 0; const uint8_t kHitachiAcSwingOffset = 7; // HitachiAc424 +// Byte[11] +const uint8_t kHitachiAc424ButtonByte = 11; +const uint8_t kHitachiAc424ButtonPowerMode = 0x13; +const uint8_t kHitachiAc424ButtonFan = 0x42; +const uint8_t kHitachiAc424ButtonTempDown = 0x43; +const uint8_t kHitachiAc424ButtonTempUp = 0x44; +const uint8_t kHitachiAc424ButtonSwingV = 0x81; + // Byte[13] const uint8_t kHitachiAc424TempByte = 13; const uint8_t kHitachiAc424TempOffset = 2; @@ -65,7 +73,8 @@ const uint8_t kHitachiAc424FanMax = 6; const uint8_t kHitachiAc424FanMaxDry = 2; // Byte[27] const uint8_t kHitachiAc424PowerByte = 27; -const uint8_t kHitachiAc424PowerOffset = 4; +const uint8_t kHitachiAc424PowerOn = 0xF1; +const uint8_t kHitachiAc424PowerOff = 0xE1; // Classes class IRHitachiAc { @@ -138,6 +147,10 @@ class IRHitachiAc424 { uint8_t getTemp(void); void setFan(const uint8_t speed); uint8_t getFan(void); + uint8_t getButton(void); + void setButton(const uint8_t button); + void setSwingVToggle(const bool on); + bool getSwingVToggle(void); void setMode(const uint8_t mode); uint8_t getMode(void); uint8_t* getRaw(void); diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Inax.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Inax.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Inax.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Inax.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_JVC.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_JVC.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_JVC.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_JVC.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Kelvinator.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Kelvinator.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Kelvinator.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Kelvinator.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Kelvinator.h b/lib/IRremoteESP8266-2.7.1/src/ir_Kelvinator.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Kelvinator.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Kelvinator.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_LG.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_LG.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_LG.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_LG.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_LG.h b/lib/IRremoteESP8266-2.7.1/src/ir_LG.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_LG.h rename to lib/IRremoteESP8266-2.7.1/src/ir_LG.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Lasertag.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Lasertag.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Lasertag.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Lasertag.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Lego.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Lego.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Lego.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Lego.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Lutron.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Lutron.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Lutron.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Lutron.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_MWM.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_MWM.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_MWM.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_MWM.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Magiquest.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Magiquest.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Magiquest.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Magiquest.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Magiquest.h b/lib/IRremoteESP8266-2.7.1/src/ir_Magiquest.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Magiquest.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Magiquest.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Midea.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Midea.cpp similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/ir_Midea.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Midea.cpp index 3160fc291..ce373ebfe 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Midea.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Midea.cpp @@ -387,7 +387,7 @@ String IRMideaAC::toString(void) { kMideaACFanAuto, kMideaACFanAuto, kMideaACFanMed); result += addBoolToString(getSleep(), kSleepStr); } - result += addBoolToString(getSwingVToggle(), kSwingVStr + ' ' + kToggleStr, + result += addBoolToString(getSwingVToggle(), kSwingVToggleStr, !isSwingVToggle()); return result; } diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Midea.h b/lib/IRremoteESP8266-2.7.1/src/ir_Midea.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Midea.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Midea.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Mitsubishi.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Mitsubishi.cpp similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/ir_Mitsubishi.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Mitsubishi.cpp index 7e28fd332..cf5c573fc 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Mitsubishi.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Mitsubishi.cpp @@ -745,9 +745,16 @@ String IRMitsubishiAC::toString(void) { result += addIntToString(this->getVane(), kSwingVStr); result += kSpaceLBraceStr; switch (this->getVane()) { - case kMitsubishiAcVaneAuto: result += kAutoStr; break; - case kMitsubishiAcVaneAutoMove: result += kAutoStr + ' ' + kMoveStr; break; - default: result += kUnknownStr; + case kMitsubishiAcVaneAuto: + result += kAutoStr; + break; + case kMitsubishiAcVaneAutoMove: + result += kAutoStr; + result += ' '; + result += kMoveStr; + break; + default: + result += kUnknownStr; } result += ')'; result += addIntToString(this->getWideVane(), kSwingHStr); @@ -760,7 +767,9 @@ String IRMitsubishiAC::toString(void) { result += addLabeledString(minsToString(getClock() * 10), kClockStr); result += addLabeledString(minsToString(getStartClock() * 10), kOnTimerStr); result += addLabeledString(minsToString(getStopClock() * 10), kOffTimerStr); - result += kCommaSpaceStr + kTimerStr + kColonSpaceStr; + result += kCommaSpaceStr; + result += kTimerStr; + result += kColonSpaceStr; switch (this->getTimer()) { case kMitsubishiAcNoTimer: result += '-'; @@ -772,7 +781,9 @@ String IRMitsubishiAC::toString(void) { result += kStopStr; break; case kMitsubishiAcStartStopTimer: - result += kStartStr + '+' + kStopStr; + result += kStartStr; + result += '+'; + result += kStopStr; break; default: result += F("? ("); diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Mitsubishi.h b/lib/IRremoteESP8266-2.7.1/src/ir_Mitsubishi.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Mitsubishi.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Mitsubishi.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_MitsubishiHeavy.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_MitsubishiHeavy.cpp similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/ir_MitsubishiHeavy.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_MitsubishiHeavy.cpp index 35ba18548..cc6d066f3 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_MitsubishiHeavy.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_MitsubishiHeavy.cpp @@ -501,10 +501,14 @@ String IRMitsubishiHeavy152Ac::toString(void) { result += kMaxRightStr; break; case kMitsubishiHeavy152SwingHLeftRight: - result += kLeftStr + ' ' + kRightStr; + result += kLeftStr; + result += ' '; + result += kRightStr; break; case kMitsubishiHeavy152SwingHRightLeft: - result += kRightStr + ' ' + kLeftStr; + result += kRightStr; + result += ' '; + result += kLeftStr; break; case kMitsubishiHeavy152SwingHOff: result += kOffStr; @@ -924,10 +928,14 @@ String IRMitsubishiHeavy88Ac::toString(void) { result += kMaxRightStr; break; case kMitsubishiHeavy88SwingHLeftRight: - result += kLeftStr + ' ' + kRightStr; + result += kLeftStr; + result += ' '; + result += kRightStr; break; case kMitsubishiHeavy88SwingHRightLeft: - result += kRightStr + ' ' + kLeftStr; + result += kRightStr; + result += ' '; + result += kLeftStr; break; case kMitsubishiHeavy88SwingH3D: result += k3DStr; diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_MitsubishiHeavy.h b/lib/IRremoteESP8266-2.7.1/src/ir_MitsubishiHeavy.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_MitsubishiHeavy.h rename to lib/IRremoteESP8266-2.7.1/src/ir_MitsubishiHeavy.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_NEC.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_NEC.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_NEC.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_NEC.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_NEC.h b/lib/IRremoteESP8266-2.7.1/src/ir_NEC.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_NEC.h rename to lib/IRremoteESP8266-2.7.1/src/ir_NEC.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Neoclima.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Neoclima.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Neoclima.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Neoclima.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Neoclima.h b/lib/IRremoteESP8266-2.7.1/src/ir_Neoclima.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Neoclima.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Neoclima.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Nikai.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Nikai.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Nikai.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Nikai.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Panasonic.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Panasonic.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Panasonic.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Panasonic.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Panasonic.h b/lib/IRremoteESP8266-2.7.1/src/ir_Panasonic.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Panasonic.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Panasonic.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Pioneer.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Pioneer.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Pioneer.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Pioneer.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Pronto.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Pronto.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Pronto.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Pronto.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_RC5_RC6.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_RC5_RC6.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_RC5_RC6.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_RC5_RC6.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_RCMM.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_RCMM.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_RCMM.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_RCMM.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Samsung.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Samsung.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Samsung.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Samsung.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Samsung.h b/lib/IRremoteESP8266-2.7.1/src/ir_Samsung.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Samsung.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Samsung.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Sanyo.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Sanyo.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Sanyo.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Sanyo.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Sharp.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Sharp.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Sharp.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Sharp.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Sharp.h b/lib/IRremoteESP8266-2.7.1/src/ir_Sharp.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Sharp.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Sharp.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Sherwood.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Sherwood.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Sherwood.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Sherwood.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Sony.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Sony.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Sony.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Sony.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Tcl.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Tcl.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Tcl.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Tcl.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Tcl.h b/lib/IRremoteESP8266-2.7.1/src/ir_Tcl.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Tcl.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Tcl.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Teco.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Teco.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Teco.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Teco.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Teco.h b/lib/IRremoteESP8266-2.7.1/src/ir_Teco.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Teco.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Teco.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Toshiba.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Toshiba.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Toshiba.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Toshiba.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Toshiba.h b/lib/IRremoteESP8266-2.7.1/src/ir_Toshiba.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Toshiba.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Toshiba.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Trotec.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Trotec.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Trotec.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Trotec.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Trotec.h b/lib/IRremoteESP8266-2.7.1/src/ir_Trotec.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Trotec.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Trotec.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Vestel.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Vestel.cpp similarity index 98% rename from lib/IRremoteESP8266-2.7.0/src/ir_Vestel.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Vestel.cpp index c54a262d7..c2a3a905b 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Vestel.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Vestel.cpp @@ -469,7 +469,7 @@ String IRVestelAc::toString(void) { // Not a time command, it's a normal command. result += addBoolToString(getPower(), kPowerStr, false); result += addModeToString(getMode(), kVestelAcAuto, kVestelAcCool, - kVestelAcHeat, kVestelAcDry, kVestelAcFan); + kVestelAcHeat, kVestelAcDry, kVestelAcFan); result += addTempToString(getTemp()); result += addIntToString(getFan(), kFanStr); result += kSpaceLBraceStr; @@ -487,10 +487,14 @@ String IRVestelAc::toString(void) { result += kHighStr; break; case kVestelAcFanAutoCool: - result += kAutoStr + ' ' + kCoolStr; + result += kAutoStr; + result += ' '; + result += kCoolStr; break; case kVestelAcFanAutoHot: - result += kAutoStr + ' ' + kHeatStr; + result += kAutoStr; + result += ' '; + result += kHeatStr; break; default: result += kUnknownStr; diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Vestel.h b/lib/IRremoteESP8266-2.7.1/src/ir_Vestel.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Vestel.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Vestel.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Whirlpool.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Whirlpool.cpp similarity index 99% rename from lib/IRremoteESP8266-2.7.0/src/ir_Whirlpool.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Whirlpool.cpp index b9bef9120..9dbdf62e5 100644 --- a/lib/IRremoteESP8266-2.7.0/src/ir_Whirlpool.cpp +++ b/lib/IRremoteESP8266-2.7.1/src/ir_Whirlpool.cpp @@ -472,7 +472,7 @@ String IRWhirlpoolAc::toString(void) { String result = ""; result.reserve(200); // Reserve some heap for the string to reduce fragging. result += addModelToString(decode_type_t::WHIRLPOOL_AC, getModel(), false); - result += addBoolToString(getPowerToggle(), kPowerStr + ' ' + kToggleStr); + result += addBoolToString(getPowerToggle(), kPowerToggleStr); result += addModeToString(getMode(), kWhirlpoolAcAuto, kWhirlpoolAcCool, kWhirlpoolAcHeat, kWhirlpoolAcDry, kWhirlpoolAcFan); result += addTempToString(getTemp()); diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Whirlpool.h b/lib/IRremoteESP8266-2.7.1/src/ir_Whirlpool.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Whirlpool.h rename to lib/IRremoteESP8266-2.7.1/src/ir_Whirlpool.h diff --git a/lib/IRremoteESP8266-2.7.0/src/ir_Whynter.cpp b/lib/IRremoteESP8266-2.7.1/src/ir_Whynter.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/ir_Whynter.cpp rename to lib/IRremoteESP8266-2.7.1/src/ir_Whynter.cpp diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/README.md b/lib/IRremoteESP8266-2.7.1/src/locale/README.md similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/README.md rename to lib/IRremoteESP8266-2.7.1/src/locale/README.md diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/de-CH.h b/lib/IRremoteESP8266-2.7.1/src/locale/de-CH.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/de-CH.h rename to lib/IRremoteESP8266-2.7.1/src/locale/de-CH.h diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/de-DE.h b/lib/IRremoteESP8266-2.7.1/src/locale/de-DE.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/de-DE.h rename to lib/IRremoteESP8266-2.7.1/src/locale/de-DE.h diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/defaults.h b/lib/IRremoteESP8266-2.7.1/src/locale/defaults.h similarity index 91% rename from lib/IRremoteESP8266-2.7.0/src/locale/defaults.h rename to lib/IRremoteESP8266-2.7.1/src/locale/defaults.h index 57d2d9d5b..20e38082a 100644 --- a/lib/IRremoteESP8266-2.7.0/src/locale/defaults.h +++ b/lib/IRremoteESP8266-2.7.1/src/locale/defaults.h @@ -349,6 +349,37 @@ #define D_STR_BOTTOM "Bottom" #endif // D_STR_BOTTOM +// Compound words/phrases/descriptions from pre-defined words. +// Note: Obviously these need to be defined *after* their component words. +#ifndef D_STR_EYEAUTO +#define D_STR_EYEAUTO D_STR_EYE " " D_STR_AUTO +#endif // D_STR_EYEAUTO +#ifndef D_STR_LIGHTTOGGLE +#define D_STR_LIGHTTOGGLE D_STR_LIGHT " " D_STR_TOGGLE +#endif // D_STR_LIGHTTOGGLE +#ifndef D_STR_OUTSIDEQUIET +#define D_STR_OUTSIDEQUIET D_STR_OUTSIDE " " D_STR_QUIET +#endif // D_STR_OUTSIDEQUIET +#ifndef D_STR_POWERTOGGLE +#define D_STR_POWERTOGGLE D_STR_POWER " " D_STR_TOGGLE +#endif // D_STR_POWERTOGGLE +#ifndef D_STR_SENSORTEMP +#define D_STR_SENSORTEMP D_STR_SENSOR " " D_STR_TEMP +#endif // D_STR_SENSORTEMP +#ifndef D_STR_SLEEP_TIMER +#define D_STR_SLEEP_TIMER D_STR_SLEEP " " D_STR_TIMER +#endif // D_STR_SLEEP_TIMER +#ifndef D_STR_SWINGVMODE +#define D_STR_SWINGVMODE D_STR_SWINGV " " D_STR_MODE +#endif // D_STR_SWINGVMODE +#ifndef D_STR_SWINGVTOGGLE +#define D_STR_SWINGVTOGGLE D_STR_SWINGV " " D_STR_TOGGLE +#endif // D_STR_SWINGVTOGGLE + +// Separators +#ifndef D_CHR_TIME_SEP +#define D_CHR_TIME_SEP ':' +#endif // D_CHR_TIME_SEP #ifndef D_STR_SPACELBRACE #define D_STR_SPACELBRACE " (" #endif // D_STR_SPACELBRACE @@ -359,9 +390,6 @@ #define D_STR_COLONSPACE ": " #endif // D_STR_COLONSPACE -#ifndef D_CHR_TIME_SEP -#define D_CHR_TIME_SEP ':' -#endif // D_CHR_TIME_SEP #ifndef D_STR_DAY #define D_STR_DAY "Day" #endif // D_STR_DAY diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/en-AU.h b/lib/IRremoteESP8266-2.7.1/src/locale/en-AU.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/en-AU.h rename to lib/IRremoteESP8266-2.7.1/src/locale/en-AU.h diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/en-IE.h b/lib/IRremoteESP8266-2.7.1/src/locale/en-IE.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/en-IE.h rename to lib/IRremoteESP8266-2.7.1/src/locale/en-IE.h diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/en-UK.h b/lib/IRremoteESP8266-2.7.1/src/locale/en-UK.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/en-UK.h rename to lib/IRremoteESP8266-2.7.1/src/locale/en-UK.h diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/en-US.h b/lib/IRremoteESP8266-2.7.1/src/locale/en-US.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/en-US.h rename to lib/IRremoteESP8266-2.7.1/src/locale/en-US.h diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/es-ES.h b/lib/IRremoteESP8266-2.7.1/src/locale/es-ES.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/es-ES.h rename to lib/IRremoteESP8266-2.7.1/src/locale/es-ES.h diff --git a/lib/IRremoteESP8266-2.7.0/src/locale/fr-FR.h b/lib/IRremoteESP8266-2.7.1/src/locale/fr-FR.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/src/locale/fr-FR.h rename to lib/IRremoteESP8266-2.7.1/src/locale/fr-FR.h diff --git a/lib/IRremoteESP8266-2.7.0/test/IRac_test.cpp b/lib/IRremoteESP8266-2.7.1/test/IRac_test.cpp similarity index 98% rename from lib/IRremoteESP8266-2.7.0/test/IRac_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/IRac_test.cpp index dfe808db4..0d8dfdb12 100644 --- a/lib/IRremoteESP8266-2.7.0/test/IRac_test.cpp +++ b/lib/IRremoteESP8266-2.7.1/test/IRac_test.cpp @@ -572,14 +572,19 @@ TEST(TestIRac, Hitachi424) { IRac irac(0); IRrecv capture(0); char expected[] = - "Power: On, Mode: 6 (Heat), Temp: 25C, Fan: 6 (Max)"; + "Power: On, Mode: 6 (Heat), Temp: 25C, Fan: 6 (Max), " + "Swing(V) Toggle: Off, Button: 19 (Power/Mode)"; + char expected_swingv[] = + "Power: On, Mode: 3 (Cool), Temp: 26C, Fan: 1 (Min), " + "Swing(V) Toggle: On, Button: 129 (Swing(V))"; ac.begin(); irac.hitachi424(&ac, true, // Power stdAc::opmode_t::kHeat, // Mode 25, // Celsius - stdAc::fanspeed_t::kMax); // Fan speed + stdAc::fanspeed_t::kMax, // Fan speed + stdAc::swingv_t::kOff); // Swing(V) ASSERT_EQ(expected, ac.toString()); ac._irsend.makeDecodeResult(); @@ -587,6 +592,21 @@ TEST(TestIRac, Hitachi424) { ASSERT_EQ(HITACHI_AC424, ac._irsend.capture.decode_type); ASSERT_EQ(kHitachiAc424Bits, ac._irsend.capture.bits); ASSERT_EQ(expected, IRAcUtils::resultAcToString(&ac._irsend.capture)); + + ac._irsend.reset(); + irac.hitachi424(&ac, + true, // Power + stdAc::opmode_t::kCool, // Mode + 26, // Celsius + stdAc::fanspeed_t::kMin, // Fan speed + stdAc::swingv_t::kAuto); // Swing(V) + + ASSERT_EQ(expected_swingv, ac.toString()); + ac._irsend.makeDecodeResult(); + EXPECT_TRUE(capture.decode(&ac._irsend.capture)); + ASSERT_EQ(HITACHI_AC424, ac._irsend.capture.decode_type); + ASSERT_EQ(kHitachiAc424Bits, ac._irsend.capture.bits); + ASSERT_EQ(expected_swingv, IRAcUtils::resultAcToString(&ac._irsend.capture)); } TEST(TestIRac, Kelvinator) { diff --git a/lib/IRremoteESP8266-2.7.0/test/IRrecv_test.cpp b/lib/IRremoteESP8266-2.7.1/test/IRrecv_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/IRrecv_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/IRrecv_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/IRrecv_test.h b/lib/IRremoteESP8266-2.7.1/test/IRrecv_test.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/IRrecv_test.h rename to lib/IRremoteESP8266-2.7.1/test/IRrecv_test.h diff --git a/lib/IRremoteESP8266-2.7.0/test/IRsend_test.cpp b/lib/IRremoteESP8266-2.7.1/test/IRsend_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/IRsend_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/IRsend_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/IRsend_test.h b/lib/IRremoteESP8266-2.7.1/test/IRsend_test.h similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/IRsend_test.h rename to lib/IRremoteESP8266-2.7.1/test/IRsend_test.h diff --git a/lib/IRremoteESP8266-2.7.0/test/IRutils_test.cpp b/lib/IRremoteESP8266-2.7.1/test/IRutils_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/IRutils_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/IRutils_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/Makefile b/lib/IRremoteESP8266-2.7.1/test/Makefile similarity index 98% rename from lib/IRremoteESP8266-2.7.0/test/Makefile rename to lib/IRremoteESP8266-2.7.1/test/Makefile index 0235042f7..ad75937b8 100644 --- a/lib/IRremoteESP8266-2.7.0/test/Makefile +++ b/lib/IRremoteESP8266-2.7.1/test/Makefile @@ -153,13 +153,13 @@ gtest_main.a : gtest-all.o gtest_main.o IRtext.o : $(USER_DIR)/IRtext.cpp $(USER_DIR)/IRtext.h $(USER_DIR)/IRremoteESP8266.h $(USER_DIR)/i18n.h $(USER_DIR)/locale/*.h $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDES) -c $(USER_DIR)/IRtext.cpp -IRutils.o : $(USER_DIR)/IRutils.cpp $(USER_DIR)/IRutils.h $(USER_DIR)/IRremoteESP8266.h $(USER_DIR)/i18n.h +IRutils.o : $(USER_DIR)/IRutils.cpp $(USER_DIR)/IRutils.h $(USER_DIR)/IRremoteESP8266.h $(USER_DIR)/i18n.h $(USER_DIR)/IRtext.cpp $(USER_DIR)/IRtext.h $(USER_DIR)/locale/*.h $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDES) -c $(USER_DIR)/IRutils.cpp IRutils_test.o : IRutils_test.cpp $(COMMON_TEST_DEPS) $(GTEST_HEADERS) $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDES) -c IRutils_test.cpp -IRutils_test : IRutils_test.o ir_NEC.o ir_Nikai.o ir_Toshiba.o $(COMMON_OBJ) gtest_main.a +IRutils_test : IRutils_test.o ir_NEC.o ir_Nikai.o ir_Toshiba.o IRtext.o $(COMMON_OBJ) gtest_main.a $(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o $@ IRtimer.o : $(USER_DIR)/IRtimer.cpp $(USER_DIR)/IRtimer.h @@ -390,7 +390,7 @@ ir_Daikin_test.o : ir_Daikin_test.cpp $(USER_DIR)/ir_Daikin.h $(COMMON_TEST_DEPS ir_Daikin_test : $(COMMON_OBJ) ir_Daikin_test.o $(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o $@ -ir_Gree.o : $(USER_DIR)/ir_Gree.cpp $(GTEST_HEADERS) +ir_Gree.o : $(USER_DIR)/ir_Gree.cpp $(GTEST_HEADERS) $(COMMON_DEPS) $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDES) -c $(USER_DIR)/ir_Gree.cpp ir_Gree_test.o : ir_Gree_test.cpp $(COMMON_TEST_DEPS) $(GTEST_HEADERS) @@ -417,7 +417,7 @@ ir_Nikai_test.o : ir_Nikai_test.cpp $(COMMON_TEST_DEPS) $(GTEST_HEADERS) ir_Nikai_test : $(COMMON_OBJ) ir_Nikai_test.o $(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o $@ -ir_Toshiba.o : $(USER_DIR)/ir_Toshiba.cpp $(USER_DIR)/ir_Toshiba.h $(GTEST_HEADERS) +ir_Toshiba.o : $(USER_DIR)/ir_Toshiba.cpp $(USER_DIR)/ir_Toshiba.h $(COMMON_DEPS) $(GTEST_HEADERS) $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDES) -c $(USER_DIR)/ir_Toshiba.cpp ir_Toshiba_test.o : ir_Toshiba_test.cpp $(USER_DIR)/ir_Toshiba.h $(COMMON_TEST_DEPS) $(GTEST_HEADERS) diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Aiwa_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Aiwa_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Aiwa_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Aiwa_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Amcor_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Amcor_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Amcor_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Amcor_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Argo_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Argo_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Argo_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Argo_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Carrier_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Carrier_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Carrier_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Carrier_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Coolix_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Coolix_test.cpp similarity index 93% rename from lib/IRremoteESP8266-2.7.0/test/ir_Coolix_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Coolix_test.cpp index 2a3367765..514e16dba 100644 --- a/lib/IRremoteESP8266-2.7.0/test/ir_Coolix_test.cpp +++ b/lib/IRremoteESP8266-2.7.1/test/ir_Coolix_test.cpp @@ -1,6 +1,7 @@ // Copyright 2017-2018 David Conran #include "ir_Coolix.h" +#include "IRac.h" #include "IRsend.h" #include "IRsend_test.h" #include "gtest/gtest.h" @@ -746,3 +747,56 @@ TEST(TestCoolixACClass, Issue722) { // 564,1620,566,1618,562 // Raw data matches what is expected. "m560s1680m560s1680m560s105040", ac._irsend.outputStr()); } + +TEST(TestCoolixACClass, Issue985) { + IRrecv irrecv(0); + IRCoolixAC ac(0); + + // Test that if we ONLY turn the power off, it only sends a "power off" mesg. + // i.e. Code from: https://github.com/crankyoldgit/IRremoteESP8266/issues/985#issue-516210106 + // First block in the first code included. + ac.setPower(false); + ac.send(); + + ac._irsend.makeDecodeResult(); + ASSERT_TRUE(irrecv.decode(&ac._irsend.capture)); + EXPECT_EQ(COOLIX, ac._irsend.capture.decode_type); + EXPECT_EQ(kCoolixBits, ac._irsend.capture.bits); + EXPECT_EQ(kCoolixOff, ac._irsend.capture.value); + EXPECT_EQ("Power: Off", IRAcUtils::resultAcToString(&ac._irsend.capture)); + + ac._irsend.reset(); + + // Turn the unit on, cool mode, and set the temp. + // Code from: https://github.com/crankyoldgit/IRremoteESP8266/issues/985#issue-516210106 + // Second block in the first code included. + uint8_t aircon_temp = 20; // Random value chosen. + ac.setPower(true); + ac.setMode(kCoolixCool); + ac.setTemp(aircon_temp); + ac.send(); + + ac._irsend.makeDecodeResult(); + ASSERT_TRUE(irrecv.decode(&ac._irsend.capture)); + EXPECT_EQ(COOLIX, ac._irsend.capture.decode_type); + EXPECT_EQ(kCoolixBits, ac._irsend.capture.bits); + EXPECT_NE(kCoolixOff, ac._irsend.capture.value); + EXPECT_EQ( + "Power: On, Mode: 0 (Cool), Fan: 5 (Auto), Temp: 20C, Zone Follow: Off, " + "Sensor Temp: Off", IRAcUtils::resultAcToString(&ac._irsend.capture)); + + ac._irsend.reset(); + + // Now repeat the first block again. + // i.e. Code from: https://github.com/crankyoldgit/IRremoteESP8266/issues/985#issue-516210106 + // First block in the first code included. + ac.setPower(false); + ac.send(); + + ac._irsend.makeDecodeResult(); + ASSERT_TRUE(irrecv.decode(&ac._irsend.capture)); + EXPECT_EQ(COOLIX, ac._irsend.capture.decode_type); + EXPECT_EQ(kCoolixBits, ac._irsend.capture.bits); + EXPECT_EQ(kCoolixOff, ac._irsend.capture.value); + EXPECT_EQ("Power: Off", IRAcUtils::resultAcToString(&ac._irsend.capture)); +} diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Daikin_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Daikin_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Daikin_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Daikin_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Denon_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Denon_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Denon_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Denon_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Dish_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Dish_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Dish_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Dish_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Electra_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Electra_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Electra_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Electra_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Fujitsu_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Fujitsu_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Fujitsu_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Fujitsu_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_GICable_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_GICable_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_GICable_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_GICable_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_GlobalCache_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_GlobalCache_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_GlobalCache_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_GlobalCache_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Goodweather_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Goodweather_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Goodweather_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Goodweather_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Gree_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Gree_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Gree_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Gree_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Haier_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Haier_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Haier_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Haier_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Hitachi_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Hitachi_test.cpp similarity index 96% rename from lib/IRremoteESP8266-2.7.0/test/ir_Hitachi_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Hitachi_test.cpp index e84897dc8..1f04ee8ee 100644 --- a/lib/IRremoteESP8266-2.7.0/test/ir_Hitachi_test.cpp +++ b/lib/IRremoteESP8266-2.7.1/test/ir_Hitachi_test.cpp @@ -912,7 +912,8 @@ TEST(TestDecodeHitachiAc424, RealExample) { IRHitachiAc ac(0); ac.setRaw(irsend.capture.state); EXPECT_EQ( - "Power: On, Mode: 3 (Cool), Temp: 23C, Fan: 5 (Auto)", + "Power: On, Mode: 3 (Cool), Temp: 23C, Fan: 5 (Auto), " + "Swing(V) Toggle: Off, Button: 19 (Power/Mode)", IRAcUtils::resultAcToString(&irsend.capture)); } @@ -969,8 +970,10 @@ TEST(TestIRHitachiAc424Class, SetAndGetPower) { EXPECT_FALSE(ac.getPower()); ac.setPower(true); EXPECT_TRUE(ac.getPower()); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonPowerMode); ac.setPower(false); EXPECT_FALSE(ac.getPower()); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonPowerMode); } TEST(TestIRHitachiAc424Class, SetAndGetTemp) { @@ -1014,6 +1017,7 @@ TEST(TestIRHitachiAc424Class, SetAndGetFan) { EXPECT_EQ(kHitachiAc424FanAuto, ac.getFan()); ac.setFan(kHitachiAc424FanLow); EXPECT_EQ(kHitachiAc424FanLow, ac.getFan()); + EXPECT_EQ(kHitachiAc424ButtonFan, ac.getButton()); ac.setFan(kHitachiAc424FanHigh); EXPECT_EQ(kHitachiAc424FanHigh, ac.getFan()); ac.setFan(kHitachiAc424FanMax + 1); @@ -1050,6 +1054,29 @@ TEST(TestIRHitachiAc424Class, SetAndGetFan) { EXPECT_EQ(ac.getRaw()[29], 0x00); } + +TEST(TestIRHitachiAc424Class, SetAndGetButton) { + IRHitachiAc424 ac(0); + ac.on(); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonPowerMode); + ac.setButton(kHitachiAc424ButtonTempUp); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonTempUp); + ac.setButton(kHitachiAc424ButtonSwingV); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonSwingV); +} + +TEST(TestIRHitachiAc424Class, ToggleSwingVertical) { + IRHitachiAc424 ac(0); + ac.on(); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonPowerMode); + ac.setSwingVToggle(true); + EXPECT_TRUE(ac.getSwingVToggle()); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonSwingV); + ac.setSwingVToggle(false); + EXPECT_FALSE(ac.getSwingVToggle()); + EXPECT_EQ(ac.getButton(), kHitachiAc424ButtonPowerMode); +} + TEST(TestIRHitachiAc424Class, HumanReadable) { IRHitachiAc424 ac(0); @@ -1058,17 +1085,34 @@ TEST(TestIRHitachiAc424Class, HumanReadable) { ac.on(); ac.setFan(kHitachiAc424FanHigh); EXPECT_EQ( - "Power: On, Mode: 6 (Heat), Temp: 32C, Fan: 4 (High)", + "Power: On, Mode: 6 (Heat), Temp: 32C, Fan: 4 (High), " + "Swing(V) Toggle: Off, Button: 66 (Fan)", ac.toString()); ac.setMode(kHitachiAc424Cool); - ac.setTemp(kHitachiAc424MinTemp); ac.setFan(kHitachiAc424FanMin); + ac.setTemp(kHitachiAc424MinTemp); EXPECT_EQ( - "Power: On, Mode: 3 (Cool), Temp: 16C, Fan: 1 (Min)", + "Power: On, Mode: 3 (Cool), Temp: 16C, Fan: 1 (Min), " + "Swing(V) Toggle: Off, Button: 67 (Temp Down)", + ac.toString()); + ac.setSwingVToggle(true); + EXPECT_EQ( + "Power: On, Mode: 3 (Cool), Temp: 16C, Fan: 1 (Min), " + "Swing(V) Toggle: On, Button: 129 (Swing(V))", + ac.toString()); + ac.setTemp(ac.getTemp() + 1); + EXPECT_EQ( + "Power: On, Mode: 3 (Cool), Temp: 17C, Fan: 1 (Min), " + "Swing(V) Toggle: Off, Button: 68 (Temp Up)", + ac.toString()); + ac.setTemp(ac.getTemp() - 1); + EXPECT_EQ( + "Power: On, Mode: 3 (Cool), Temp: 16C, Fan: 1 (Min), " + "Swing(V) Toggle: Off, Button: 67 (Temp Down)", ac.toString()); } -TEST(TestIRHitachiAcClass424, toCommon) { +TEST(TestIRHitachiAc424Class, toCommon) { IRHitachiAc424 ac(0); ac.setPower(true); ac.setMode(kHitachiAc424Cool); @@ -1082,9 +1126,8 @@ TEST(TestIRHitachiAcClass424, toCommon) { ASSERT_EQ(20, ac.toCommon().degrees); ASSERT_EQ(stdAc::opmode_t::kCool, ac.toCommon().mode); ASSERT_EQ(stdAc::fanspeed_t::kMax, ac.toCommon().fanspeed); - // TODO(jamsinclair): Add support. - ASSERT_EQ(stdAc::swingv_t::kOff, ac.toCommon().swingv); // Unsupported. + ASSERT_EQ(stdAc::swingv_t::kOff, ac.toCommon().swingv); ASSERT_EQ(stdAc::swingh_t::kOff, ac.toCommon().swingh); ASSERT_FALSE(ac.toCommon().turbo); ASSERT_FALSE(ac.toCommon().clean); diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Inax_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Inax_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Inax_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Inax_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_JVC_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_JVC_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_JVC_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_JVC_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Kelvinator_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Kelvinator_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Kelvinator_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Kelvinator_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_LG_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_LG_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_LG_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_LG_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Lasertag_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Lasertag_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Lasertag_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Lasertag_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Lego_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Lego_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Lego_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Lego_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Lutron_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Lutron_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Lutron_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Lutron_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_MWM_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_MWM_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_MWM_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_MWM_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Magiquest_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Magiquest_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Magiquest_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Magiquest_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Midea_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Midea_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Midea_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Midea_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_MitsubishiHeavy_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_MitsubishiHeavy_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_MitsubishiHeavy_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_MitsubishiHeavy_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Mitsubishi_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Mitsubishi_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Mitsubishi_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Mitsubishi_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_NEC_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_NEC_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_NEC_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_NEC_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Neoclima_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Neoclima_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Neoclima_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Neoclima_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Nikai_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Nikai_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Nikai_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Nikai_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Panasonic_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Panasonic_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Panasonic_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Panasonic_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Pioneer_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Pioneer_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Pioneer_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Pioneer_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Pronto_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Pronto_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Pronto_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Pronto_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_RC5_RC6_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_RC5_RC6_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_RC5_RC6_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_RC5_RC6_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_RCMM_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_RCMM_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_RCMM_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_RCMM_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Samsung_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Samsung_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Samsung_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Samsung_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Sanyo_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Sanyo_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Sanyo_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Sanyo_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Sharp_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Sharp_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Sharp_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Sharp_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Sherwood_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Sherwood_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Sherwood_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Sherwood_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Sony_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Sony_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Sony_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Sony_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Tcl_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Tcl_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Tcl_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Tcl_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Teco_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Teco_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Teco_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Teco_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Toshiba_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Toshiba_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Toshiba_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Toshiba_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Trotec_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Trotec_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Trotec_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Trotec_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Vestel_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Vestel_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Vestel_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Vestel_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Whirlpool_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Whirlpool_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Whirlpool_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Whirlpool_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/test/ir_Whynter_test.cpp b/lib/IRremoteESP8266-2.7.1/test/ir_Whynter_test.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/test/ir_Whynter_test.cpp rename to lib/IRremoteESP8266-2.7.1/test/ir_Whynter_test.cpp diff --git a/lib/IRremoteESP8266-2.7.0/tools/Makefile b/lib/IRremoteESP8266-2.7.1/tools/Makefile similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/Makefile rename to lib/IRremoteESP8266-2.7.1/tools/Makefile diff --git a/lib/IRremoteESP8266-2.7.0/tools/RawToGlobalCache.sh b/lib/IRremoteESP8266-2.7.1/tools/RawToGlobalCache.sh similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/RawToGlobalCache.sh rename to lib/IRremoteESP8266-2.7.1/tools/RawToGlobalCache.sh diff --git a/lib/IRremoteESP8266-2.7.0/tools/auto_analyse_raw_data.py b/lib/IRremoteESP8266-2.7.1/tools/auto_analyse_raw_data.py similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/auto_analyse_raw_data.py rename to lib/IRremoteESP8266-2.7.1/tools/auto_analyse_raw_data.py diff --git a/lib/IRremoteESP8266-2.7.0/tools/auto_analyse_raw_data_test.py b/lib/IRremoteESP8266-2.7.1/tools/auto_analyse_raw_data_test.py similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/auto_analyse_raw_data_test.py rename to lib/IRremoteESP8266-2.7.1/tools/auto_analyse_raw_data_test.py diff --git a/lib/IRremoteESP8266-2.7.0/tools/gc_decode.cpp b/lib/IRremoteESP8266-2.7.1/tools/gc_decode.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/gc_decode.cpp rename to lib/IRremoteESP8266-2.7.1/tools/gc_decode.cpp diff --git a/lib/IRremoteESP8266-2.7.0/tools/generate_irtext_h.sh b/lib/IRremoteESP8266-2.7.1/tools/generate_irtext_h.sh similarity index 85% rename from lib/IRremoteESP8266-2.7.0/tools/generate_irtext_h.sh rename to lib/IRremoteESP8266-2.7.1/tools/generate_irtext_h.sh index 5b6e2e544..b4a600eef 100755 --- a/lib/IRremoteESP8266-2.7.0/tools/generate_irtext_h.sh +++ b/lib/IRremoteESP8266-2.7.1/tools/generate_irtext_h.sh @@ -26,8 +26,8 @@ cat >${OUTPUT} << EOF EOF # Parse and output contents of INPUT file. -egrep "^(String|char) " ${INPUT} | cut -f1 -d= | - sed 's/ PROGMEM//;s/ $/;/;s/^/extern const /' | sort -u >> ${OUTPUT} +sed 's/ PROGMEM//' ${INPUT} | egrep "^(const )?char" | cut -f1 -d= | + sed 's/ $/;/;s/^/extern /' | sort -u >> ${OUTPUT} # Footer cat >> ${OUTPUT} << EOF diff --git a/lib/IRremoteESP8266-2.7.0/tools/mkkeywords b/lib/IRremoteESP8266-2.7.1/tools/mkkeywords similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/mkkeywords rename to lib/IRremoteESP8266-2.7.1/tools/mkkeywords diff --git a/lib/IRremoteESP8266-2.7.0/tools/mode2_decode.cpp b/lib/IRremoteESP8266-2.7.1/tools/mode2_decode.cpp similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/mode2_decode.cpp rename to lib/IRremoteESP8266-2.7.1/tools/mode2_decode.cpp diff --git a/lib/IRremoteESP8266-2.7.0/tools/scrape_supported_devices.py b/lib/IRremoteESP8266-2.7.1/tools/scrape_supported_devices.py similarity index 100% rename from lib/IRremoteESP8266-2.7.0/tools/scrape_supported_devices.py rename to lib/IRremoteESP8266-2.7.1/tools/scrape_supported_devices.py diff --git a/tasmota/CHANGELOG.md b/tasmota/CHANGELOG.md index 1a343d51e..2d0acc894 100644 --- a/tasmota/CHANGELOG.md +++ b/tasmota/CHANGELOG.md @@ -5,6 +5,7 @@ - Add colorpicker to WebUI by Christian Staars (#6984) - Change new Fade system much smoother, Speed now up to 40 (#6942, #3714) - Fix Arduino IDE function prototyping compile error (#6982) +- Change update lib IRremoteESP8266 updated to v2.7.1, -2.7k flash and -1.5k RAM for Tasmota-IR ### 7.0.0.5 20191118