external_components: - source: github://GrKoR/esphome_aux_ac_component@dev components: [ aux_ac ] refresh: 0s esphome: name: test_aux_ac_ext platform: ESP8266 board: esp12e wifi: ssid: !secret wifi_ssid password: !secret wifi_pass manual_ip: static_ip: !secret wifi_ip gateway: !secret wifi_gateway subnet: !secret wifi_subnet dns1: 8.8.8.8 dns2: 1.1.1.1 reboot_timeout: 0s ap: ssid: Test AUX Fallback Hotspot password: !secret wifi_ap_pass logger: level: DEBUG baud_rate: 0 api: password: !secret api_pass reboot_timeout: 0s services: # этот сервис можно вызвать из Home Assistant или Python. Он отправляет полученные байты в кондиционер - service: send_data variables: data_buf: int[] then: # ВАЖНО! Только для инженеров! # Вызывайте метод aux_ac.send_packet только если понимаете, что делаете! Он не проверяет данные, а передаёт # кондиционеру всё как есть. Какой эффект получится от передачи кондиционеру рандомных байт, никто не знает. # Вы действуете на свой страх и риск. - aux_ac.send_packet: id: aux_id data: !lambda |- std::vector data{}; for (int n : data_buf) { data.push_back( (uint8_t) n ); } return data; ota: password: !secret ota_pass web_server: port: 80 uart: id: ac_uart_bus tx_pin: GPIO1 rx_pin: GPIO3 baud_rate: 4800 data_bits: 8 parity: EVEN stop_bits: 1 sensor: - platform: uptime name: Uptime Sensor climate: - platform: aux_ac name: "AC Name" id: aux_id uart_id: ac_uart_bus period: 7s # период опроса состояния сплита, по дефолту 7 сек show_action: true # надо ли показывать текущий режим работы: при HEAT_COOL mode сплит может греть (HEAT), охлаждать (COOL) или бездействовать (IDLE) display_inverted: true # как отрабатывать вкл/выкл дисплея: у Rovex "1" выключает дисплей, у многих других "1" дисплей включает indoor_temperature: # сенсор, показывающий температуру воздуха на внутреннем блоке кондиционера; имеет все те же параметры, как и любой сенсор ESPHome name: AC Indoor Temperature id: ac_indoor_temp internal: false # сенсор установлен как внутренний по дефолту (не попадёт в Home Assistant) display_state: name: AC Display State id: ac_display_state internal: false # сенсор установлен как внутренний по дефолту (не попадёт в Home Assistant) visual: min_temperature: 16 max_temperature: 32 temperature_step: 0.5 supported_modes: - HEAT_COOL # не AUTO, так как только нагревает и остужает. В доках на ESPHome говорится, что AUTO - это если у устройства есть календарь и какие-то установки по расписанию. - 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 switch: - platform: template name: AC Display lambda: |- if (id(ac_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