Внешний компонент кондиционеров TCL и аналогов для Home Assistant, используя ESPHome. Поддерживаются кондиционеры типа TAC-07CHSA и подобные. Увы, предположить точно получится подключить кондиционер или нет практически невозможно из-за огромного разбега в комплектациях: даже одна и та же модель, буквально буква-в-букву может, например, не иметь родного модуля WiFI, не иметь провода с USB разъемом или вовсе на плате управления может не быть впаян разъем UART. Однако, в целом, с пайкой или без, проверены следующие кондиционеры: - Axioma ASX09H1/ASB09H1 - Daichi AIR20AVQ1/AIR20FV1 - Daichi AIR25AVQS1R-1/AIR25FVS1R-1 - Daichi AIR35AVQS1R-1/AIR35FVS1R-1 - Daichi DA35EVQ1-1/DF35EV1-1 - Dantex RK-12SATI/RK-12SATIE - TCL TAC-07CHSA/TPG-W - TCL TAC-09CHSA/TPG - TCL TAC-09CHSA/DSEI-W - TCL TAC-12CHSA/TPG Компоненту требуется HomeAsistant и ESPHome версии не ниже 2023.3.0 ! ____ Это все для работы ИСКЛЮЧИТЕЛЬНО с HomeAsistant и ESPHome. Если Вас интересует другие варианты или возможность подключить кондиционер как-то иначе к каким-то другим системам, то мне есть что предложить: [Вариант для подключения через MQTT](https://github.com/pavel211/TCL-TAC-07-WiFi) ____ Статья по проекту находится [в моем канале на Дзене](https://dzen.ru/a/ZmdoyUNswXWnulhg) Все работает, даже стабильно. Какие глюки видел- устранил, какие желания были- реализовал. Конечно, не все, хотелось бы еще спорткар.. Используя компонент прямо сейчас Вы уже не рискуете душевным здоровьем, но внезапные глюки вполне могут напасть. Если вдруг такое случиться именно с Вами- прошу сообщить мне на Дзене, приму меры. Подробное описание будет постепенно появляться [в моем канале на Дзене](https://dzen.ru/a/ZmdoyUNswXWnulhg) , сюда буду выкладывать самое важное по мере сил. ____ Образец для конфигурации ESPHome в файле TCL-Conditioner.yaml , упрощенный вариант конфигурации- Sample_conf.yaml . Скачайте к себе и используйте в ESPHome, или просто скопируйте из него всю конфигурацию и вставьте вместо своей, однако, не забыв отредактировать все поля. В файле есть подсказки по каждому полю. Вопрос может возникнуть с 2 моментами: платформа (чип или модуль) и подгружаемые файлы. Попробую объяснить. ## Настройка платформы Платформа настраивается точно так же, как ей и полагается настраиваться в ESPHome. Например, так выглядит кусок кода для ESP-01S: ```yaml esp8266: board: esp01_1m ``` А вот так выглядит кусок кода для модуля Hommyn HDN/WFN-02-01 из первой статьи про кондиционер: ```yaml esp32: board: esp32-c3-devkitm-1 framework: type: arduino ``` Можно подключать платформу и через основной конфиг. Вот, предложенный [испытателем альфа-версии](https://github.com/kai-zer-ru), пример для Esp32 WROOM32: ```yaml esphome: platform: ESP32 board: nodemcu-32s ``` А это уже пример для wemos D1 Mini nodemcu esp12f: ```yaml esphome: platform: ESP8266 board: esp12e ``` В общем- все то же самое, как и обычно, вариант под свою платформу легко ищется в интернете. **!Важно не забыть закомментировать или удалить строки других платформ!** ## Настройка подгружаемых файлов Для добавления или удаления определенных частей конфига я решил использовать подгружаемые файлы- они загружаются ESPHome автоматически, если у сервера с Home Assistant есть доступ в интернет. Такой подход позволяет редактировать и обновлять не весь конфиг куском, а частями, не трогая то, что работает. Еще один плюс- не нужно километровые куски кода комментировать или раскомментировать, не нужно знать разметку, нет необходимости считать проклятые пробелы и прочее. Все делается добавлением или удалением ссылок на файлы. Итак, вот так выглядит блок подгружаемых файлов: ```yaml packages: remote_package: url: https://github.com/I-am-nightingale/tclac.git ref: master files: # v - равнение строк с опциями вот по этой позиции, иначе глючить будет - packages/core.yaml # Ядро всего сущего # - packages/leds.yaml refresh: 30s ``` Все подгружаемые файлы указываются в секции **files:**. Для работы необходимо, чтобы был хотя-бы ```yaml - packages/core.yaml # Ядро всего сущего ``` Все остальные модули по желанию (их описание в том же файле чуть выше). **Важно**, чтобы все строки с файлами были выровнены по импровизированной метке, которую я специально указал, иначе у ESPHome возникнет много вопросов к Вам. Например, **должно быть так:** ```yaml packages: remote_package: url: https://github.com/I-am-nightingale/tclac.git ref: master files: # v - равнение строк с опциями вот по этой позиции, иначе глючить будет - packages/core.yaml # Ядро всего сущего - packages/leds.yaml refresh: 30s ``` А вот так уже **не правильно:** ```yaml packages: remote_package: url: https://github.com/I-am-nightingale/tclac.git ref: master files: # v - равнение строк с опциями вот по этой позиции, иначе глючить будет - packages/core.yaml # Ядро всего сущего - packages/leds.yaml refresh: 30s ```