README.md

Подключение к системе умного дома Home Assistant используя ESPHome кондиционеров типа:

  • TCL TAC-07CHSA/TPG / TAC-09CHSA/TPG / TAC-12CHSA/TPG
  • Daichi AIR20AVQ1/AIR20FV1


    Статья по проекту находится в моем канале на Дзене


    Оригинальный модуль управления работает в закрытой системе TCL Home, используя облако, что обеспечивает как несуразные задержки в передаче коменд, так и просто невозможность использовать сторонее ПО для управления кондиционером. В настоящее время никому так и не удалось перехватить управление оригинальной системой и включиться в процесс, как это было с более ранним вариантом TCLAC.

Очевидный, в данной ситуации, способ управления кондиционером сторонним ПО- напрямую посылать команды в кондиционер, используя последовательную шину, заменив родной WiFi модуль на свой.

Родной модуль устанавливается под верхней крышкой внутреннего блока кондиционера, рядом с датчиком температуры. Подключается модуль через разъем USB Type A, хотя и не имеет интерфеса USB. Вместо него используется последовательная шина с очень специфическим напряжением подтяжки- 4 вольта на передачу и 3 вольта на прием (стандарт либо 5 вольт, либо 3.3 вольта). Впрочем, это решается использованием цепей на 3.3 вольта, толерантных к 5 вольтам. Кроме особенностей напряжения подтяжки сигналов, питание к модулю подается на контакты, не соответствующие стандарту USB, что чревато для устройств, придерживающихся стандарта. Полагаю, такой ход сделан умышленно.

Сам USB Type A разъем подключен через кабель к разъему CN16 на одной из плат внутреннего блока кондиционера. Около разъема промаркирована последовательность контактов и соответствие сигналов- весьма удобно.

Интерес так же представляет и протокол связи между WiFi модулем и кондиционером- не смотря на некоторую общность с другими моделями кондиционеров TCL, он заметно отличается. Попытки оседлать протокол были сделаны, например, htmltiger, а на основе его работы уже xaxexa. Увы, обе работы демонстрируют неполноценность, в частности, управление кондиционером проходит, в целом, верно, однако не работает управление горизонтальными шторками, которые при любой команде просто уходят до упора влево, отсутствуют полезные функции и т.п.

Особо печально, что в целом, хорошие программисты не смогли правильно разобрать протокол связи и, видимо, забросили работу над проектами. Впрочем, возможно, для иных кондиционеров их имплементация протокола подходящая, не могу сбрасывать это со счетов.

Я- не программист, потому, разобрав протокол в области интересующих меня моментов, я написал/переписал текст конфигурационного файла для ESPHome и кода на этом вашем Си как сумел, однако, реализовав недостающие, на мой взгляд, функции.

Итак, функционал:

  •  Режимы работы кондиционера
  •  Режимы работы вентилятора внутреннего блока
  •  Задание уставки температуры и отображение температуры с внутреннего датчика
  •  Качание вертикальной, горизонтальной и обеих шторок сразу
  •  Выведение вертикальной, горизонтальной или обеих сразу шторок в заданную позицию
  •  Включение/отключение подтверждающего звукового сигнала
  •  Включение/отключение индикатора уставки температуры на внутреннем блоке кондиционера
  •  Включение/отключение светодиодной индикации на модуле связи обмена данными с кондиционером

И эдак, известные косяки:

  •  При отключении индикатора уставки кондиционер уходит в автоматический режим без возможности смены. Все прочее продолжает работать (вероятно, не является косяком как таковым, а, скорее, особенностью работы самого кондиционера, надо глубже разбираться)
  •  Не считывается состояние индикатора и пищалки, состояние переписывается принудительно при подачи команд из Home Assistant (вытекает отчасти из предыдущего пункта)
  •  Не считывается состояние заслонок- выбранные режимы качания и фиксации.
Описание

Подключение кондиционеров TCL типа TCL-TAC07CHSA к системе умного дома Home Assistant используя ESPHome

Конвейеры
0 успешных
0 с ошибкой