From 3130cf3705cd198937a6db0f346a34436b447260 Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:18:32 +0300 Subject: [PATCH 01/11] Update aux_ac_simple.yaml --- examples/simple/aux_ac_simple.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/simple/aux_ac_simple.yaml b/examples/simple/aux_ac_simple.yaml index df12e23..3da24b1 100644 --- a/examples/simple/aux_ac_simple.yaml +++ b/examples/simple/aux_ac_simple.yaml @@ -1,5 +1,5 @@ external_components: - - source: github://GrKoR/esphome_aux_ac_component + - source: github://Brokly/esphome_aux_ac_component components: [ aux_ac ] refresh: 0s @@ -43,4 +43,4 @@ uart: climate: - platform: aux_ac - name: "AC Name" \ No newline at end of file + name: "AC Name" From 3f44a8e06f2157cd1fad40e782b9870e687723f6 Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:23:54 +0300 Subject: [PATCH 02/11] Update ac-energolux-bern.yaml --- examples/advanced/ac-energolux-bern.yaml | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/examples/advanced/ac-energolux-bern.yaml b/examples/advanced/ac-energolux-bern.yaml index 69035c3..b9ac1f7 100644 --- a/examples/advanced/ac-energolux-bern.yaml +++ b/examples/advanced/ac-energolux-bern.yaml @@ -1,20 +1,22 @@ external_components: - source: - #type: git - #url: https://github.com/GrKoR/esphome_aux_ac_component - type: local - path: my_components + type: git + url: https://github.com/Brokly/esphome_aux_ac_component + #type: local + #path: my_components components: [ aux_ac ] refresh: 0s esphome: name: $devicename + platform: ESP8266 + board: esp12e -esp32: - board: nodemcu-32s - framework: - type: arduino - +#esp32: +# board: nodemcu-32s +# framework: +# type: arduino + wifi: ssid: !secret wifi_ssid password: !secret wifi_pass @@ -34,9 +36,10 @@ debug: logger: level: DEBUG + baud_rate: 0 api: -# password: !secret api_pass + password: !secret api_pass ota: password: !secret ota_pass From 75bac4c29020836155b64de136f92f48cfc13a32 Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:43:24 +0300 Subject: [PATCH 03/11] Update ac-energolux-bern.yaml --- examples/advanced/ac-energolux-bern.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/advanced/ac-energolux-bern.yaml b/examples/advanced/ac-energolux-bern.yaml index b9ac1f7..7f3e8f7 100644 --- a/examples/advanced/ac-energolux-bern.yaml +++ b/examples/advanced/ac-energolux-bern.yaml @@ -52,8 +52,10 @@ web_server: uart: id: ac_uart_bus - tx_pin: GPIO16 - rx_pin: GPIO17 + #tx_pin: GPIO16 + #rx_pin: GPIO17 + tx_pin: GPIO1 + rx_pin: GPIO3 baud_rate: 4800 data_bits: 8 parity: EVEN From b8ebe409194232ac15c12ec15da4e5e6d208229c Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:46:12 +0300 Subject: [PATCH 04/11] Update ac_kitchen.yaml --- examples/advanced/ac_kitchen.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/examples/advanced/ac_kitchen.yaml b/examples/advanced/ac_kitchen.yaml index 91ead20..867ead3 100644 --- a/examples/advanced/ac_kitchen.yaml +++ b/examples/advanced/ac_kitchen.yaml @@ -6,7 +6,8 @@ #=================================================================================== substitutions: - devicename: kitchen_ac + devicename: kitchen-ac + low_devicename: kitchen_ac upper_devicename: Kitchen AC # use different wifi_ip and wifi_ota_ip in case of esp ip-address change @@ -14,4 +15,4 @@ substitutions: wifi_ip: !secret wifi_ip_kitchen wifi_ota_ip: !secret wifi_ota_ip_kitchen -<<: !include ac_common.yaml \ No newline at end of file +<<: !include ac-energolux-bern.yaml From b6918b3d278bf4e39f0d1a22de3d8d953e0437c2 Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:47:44 +0300 Subject: [PATCH 05/11] Update ac_livingroom.yaml --- examples/advanced/ac_livingroom.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/examples/advanced/ac_livingroom.yaml b/examples/advanced/ac_livingroom.yaml index 08f985b..f874727 100644 --- a/examples/advanced/ac_livingroom.yaml +++ b/examples/advanced/ac_livingroom.yaml @@ -6,7 +6,8 @@ #=================================================================================== substitutions: - devicename: livingroom_ac + devicename: livingroom-ac + low_devicename: livingroom_ac upper_devicename: Livingroom AC # use different wifi_ip and wifi_ota_ip in case of esp ip-address change @@ -14,4 +15,4 @@ substitutions: wifi_ip: !secret wifi_ip_livingroom wifi_ota_ip: !secret wifi_ota_ip_livingroom -<<: !include ac_common.yaml \ No newline at end of file +<<: !include ac-energolux-bern.yaml From 33018e906b85b885d453abd304a33137e9efdd1b Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:48:05 +0300 Subject: [PATCH 06/11] Delete ac_common.yaml --- examples/advanced/ac_common.yaml | 122 ------------------------------- 1 file changed, 122 deletions(-) delete mode 100644 examples/advanced/ac_common.yaml diff --git a/examples/advanced/ac_common.yaml b/examples/advanced/ac_common.yaml deleted file mode 100644 index e012151..0000000 --- a/examples/advanced/ac_common.yaml +++ /dev/null @@ -1,122 +0,0 @@ -# DON'T COMPILE THIS FILE -# This file contains common settings for all air conditioners of your house -external_components: - - source: github://GrKoR/esphome_aux_ac_component - components: [ aux_ac ] - refresh: 0s - -esphome: - name: $devicename - platform: ESP8266 - board: esp12e - -wifi: - ssid: !secret wifi_ssid - password: !secret wifi_pass - manual_ip: - static_ip: ${wifi_ip} - gateway: !secret wifi_gateway - subnet: !secret wifi_subnet - ap: - ssid: ${upper_devicename} Hotspot - password: !secret wifi_ap_pass - use_address: ${wifi_ota_ip} - -captive_portal: -debug: - -logger: - level: DEBUG - baud_rate: 0 - # set hardware_uart to UART1 and comment out baud_rate above in case of boot crashes - # it is suitable if you need hardware loggin - # hardware_uart: UART1 - -api: - password: !secret api_pass - -ota: - password: !secret ota_pass - -web_server: - port: 80 - auth: - username: !secret web_server_user - password: !secret web_server_password - -# UART0 configuration for AUX air conditioner communication -uart: - id: ac_uart_bus - tx_pin: GPIO1 - rx_pin: GPIO3 - baud_rate: 4800 - data_bits: 8 - parity: EVEN - stop_bits: 1 - - - -climate: - - platform: aux_ac - name: ${upper_devicename} - id: aux_id - uart_id: ac_uart_bus - period: 7s - show_action: true - display_inverted: true - indoor_temperature: - name: ${upper_devicename} Indoor Temperature - id: ${devicename}_indoor_temp - internal: false - display_state: - name: $upper_devicename Display State - id: ${devicename}_display_state - internal: false - visual: - min_temperature: 16 - max_temperature: 32 - temperature_step: 0.5 - supported_modes: - - HEAT_COOL - - COOL - - HEAT - - DRY - - FAN_ONLY - custom_fan_modes: - - MUTE - - TURBO - supported_presets: - - SLEEP - custom_presets: - - CLEAN - - FEEL - - HEALTH - - ANTIFUNGUS - supported_swing_modes: - - VERTICAL - - HORIZONTAL - - BOTH - - -sensor: - # just wifi signal strength for debug purpose only - - platform: wifi_signal - name: ${upper_devicename} WiFi Signal - update_interval: 30s - unit_of_measurement: "dBa" - accuracy_decimals: 0 - - -switch: - - platform: template - name: $upper_devicename Display - lambda: |- - if (id(${devicename}_display_state).state) { - return true; - } else { - return false; - } - turn_on_action: - - aux_ac.display_on: aux_id - turn_off_action: - - aux_ac.display_off: aux_id From ea0f4f68a9fb3d51918ac8745927d986fe0cd90f Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:48:38 +0300 Subject: [PATCH 07/11] Rename ac_kitchen.yaml to ac_kitchen_bern.yaml --- examples/advanced/{ac_kitchen.yaml => ac_kitchen_bern.yaml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename examples/advanced/{ac_kitchen.yaml => ac_kitchen_bern.yaml} (100%) diff --git a/examples/advanced/ac_kitchen.yaml b/examples/advanced/ac_kitchen_bern.yaml similarity index 100% rename from examples/advanced/ac_kitchen.yaml rename to examples/advanced/ac_kitchen_bern.yaml From 2e9f03437841e65fb309c4309f71ff7b4485f554 Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:49:02 +0300 Subject: [PATCH 08/11] Rename ac_livingroom.yaml to ac_livingroom_bern.yaml --- examples/advanced/{ac_livingroom.yaml => ac_livingroom_bern.yaml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename examples/advanced/{ac_livingroom.yaml => ac_livingroom_bern.yaml} (100%) diff --git a/examples/advanced/ac_livingroom.yaml b/examples/advanced/ac_livingroom_bern.yaml similarity index 100% rename from examples/advanced/ac_livingroom.yaml rename to examples/advanced/ac_livingroom_bern.yaml From c962aa11aaa1e7fd90bda71c88ed13feed62b677 Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:49:22 +0300 Subject: [PATCH 09/11] Rename ac_livingroom_bern.yaml to ac-livingroom-bern.yaml --- .../advanced/{ac_livingroom_bern.yaml => ac-livingroom-bern.yaml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename examples/advanced/{ac_livingroom_bern.yaml => ac-livingroom-bern.yaml} (100%) diff --git a/examples/advanced/ac_livingroom_bern.yaml b/examples/advanced/ac-livingroom-bern.yaml similarity index 100% rename from examples/advanced/ac_livingroom_bern.yaml rename to examples/advanced/ac-livingroom-bern.yaml From 5f3f9c69cf73bded2f82920224e7bda9fc300f69 Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 19:49:43 +0300 Subject: [PATCH 10/11] Rename ac_kitchen_bern.yaml to ac-kitchen-bern.yaml --- examples/advanced/{ac_kitchen_bern.yaml => ac-kitchen-bern.yaml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename examples/advanced/{ac_kitchen_bern.yaml => ac-kitchen-bern.yaml} (100%) diff --git a/examples/advanced/ac_kitchen_bern.yaml b/examples/advanced/ac-kitchen-bern.yaml similarity index 100% rename from examples/advanced/ac_kitchen_bern.yaml rename to examples/advanced/ac-kitchen-bern.yaml From 934f8ee256ce197a9422a47e40933e7186ed921d Mon Sep 17 00:00:00 2001 From: Brokly Date: Thu, 26 May 2022 20:16:13 +0300 Subject: [PATCH 11/11] Add files via upload --- components/aux_ac/automation.h | 3 +-- components/aux_ac/aux_ac.h | 24 +++++++++++++----------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/components/aux_ac/automation.h b/components/aux_ac/automation.h index ad540bc..a62fb27 100644 --- a/components/aux_ac/automation.h +++ b/components/aux_ac/automation.h @@ -19,7 +19,6 @@ namespace aux_ac { AirCon *ac_; }; - template class AirConDisplayOnAction : public Action { @@ -63,4 +62,4 @@ namespace aux_ac { }; } // namespace aux_ac -} // namespace esphome +} // namespace esphome \ No newline at end of file diff --git a/components/aux_ac/aux_ac.h b/components/aux_ac/aux_ac.h index c8a53c3..49768b4 100644 --- a/components/aux_ac/aux_ac.h +++ b/components/aux_ac/aux_ac.h @@ -19,7 +19,7 @@ #warning "Saving presets does not work with ESP8266" #endif -//#define HOLMS 19 // раскоментируй ключ для вывода лога под Эксель, значение ключа - размер пакетов которые будут видны +#define HOLMS 9 // раскоментируй ключ для вывода лога под Эксель, значение ключа - размер пакетов которые будут видны namespace esphome { namespace aux_ac { @@ -189,9 +189,8 @@ struct packet_big_info_body_t { // БАЙТ 3 bool power:1; bool sleep:1; - bool v_louver:1; - bool h_louver:1; - bool louvers_on:1; + bool louver_V:1; + uint8_t louver_H:2; // у шторок лево-право, почему то два бита uint8_t mode:3; // enum { AC_BIG_MODE_AUTO = 0, // AC_BIG_MODE_COOL = 1, // AC_BIG_MODE_DRY = 2, @@ -216,6 +215,8 @@ struct packet_big_info_body_t { // 0x41 1000001 - DRY // 0x21 100001 - COOL // 0x81 10000001 - HEAT + // 0x85 10000101 - HEAT+шторки верх-низ + // 0x99 10011001 - HEAT+шторки влево вправо // 0xC1 11000001 - FAN // 7 и 6 бит связаны // 0x80 10000000 - продувка после переключения из HEAT в OFF // 0xC5 11000101 - FAN+шторки верх-низ @@ -225,8 +226,8 @@ struct packet_big_info_body_t { // 0x39 111001 - COOL+шторки лево-право // Очевидно битовые, но связные, поля, предположительные зависимости // ВНИМАНИЕ : режимы номинальны, например в режиме АВТО нагрев или охлаждение не отображаются - // 7+6+5 4 3 2 1 0 - // MODE LouvON LouH LouV SLEEP ON/OFF + // 7+6+5 4+3 2 1 0 + // MODE Louv_L Louv_H SLEEP ON/OFF // // ФУНКЦМЯ CLEEN, HEALTH, ANTIFUNGUS на данный байт не влияют // @@ -235,11 +236,11 @@ struct packet_big_info_body_t { // AC_BIG_MODE_COOL = 0x20, // AC_BIG_MODE_HEAT = 0x80, // AC_BIG_MODE_FAN = 0xC0} + // #define AC_BIG_MASK_MODE b00011100 + // enum { AC_BIG_LOUVERS_H = 0x04, + // AC_BIG_LOUVERS_L = 0x18, + // AC_BIG_LOUVERS_BOTH = 0x1C} // #define AC_BIG_MASK_POWER b00000001 - // #define AC_BIG_MASK_LOUVERS_ON b00010000 - // #define AC_BIG_MASK_LOUVERS_H b00000100 - - // #define AC_BIG_MASK_LOUVERS_L b00001000 // #define AC_BIG_MASK_SLEEP b00000010 // #define AC_BIG_MASK_COOL b00100000 // @@ -411,6 +412,7 @@ struct packet_small_info_body_t { uint8_t fan_speed; // три старших бита - скорость вентилятора, остальные биты не известны // AUTO = 0xA0, LOW = 0x60, MEDIUM = 0x40, HIGH = 0x20 uint8_t fan_turbo_and_mute; // бит 7 = режим MUTE, бит 6 - режим TURBO; остальные не известны + // БФЙТ 7 uint8_t mode; // режим работы сплита: // AUTO : bits[7, 6, 5] = [0, 0, 0] // COOL : bits[7, 6, 5] = [0, 0, 1] @@ -529,7 +531,7 @@ enum ac_mildew : uint8_t { AC_MILDEW_OFF = 0x00, AC_MILDEW_ON = 0x08, AC_MILDEW_ // настройка усреднения фильтра температуры. Это значение - взнос нового измерения // в усредненные показания в процентах -#define OUTDOOR_FILTER_PESCENT 1 +#define OUTDOOR_FILTER_PESCENT 0.2 /** команда для кондиционера *