Предисловие (можно не читать)
Давным-давно в далёкой-далёкой галактике я установил кондиционер Roda RS-AL09F. Хорошая сплит-система с охлаждением, обогревом, осушением, вентиляцией и кучей других функций. Не было лишь WiFi, но в то время мне это было не особо нужно.
Прошли годы и стало понятно, что управлять кондиционером с телефона и автоматизировать климат в доме - это то, чего очень не хватает. Была куплена "шайба" Xiaomi IR Remote и я даже написал компонент к Home Assistant для управления кондиционерами через IR.
Всё работало хорошо, однако напрягало отсутствие обратной связи. Нет, конечно, состояния вида "включен/выключен" я понимал по изменению энергопотребления в розетке, но хотелось бы видеть и выбранный режим, и температуру, если их изменили с пульта.
Эпизод I: Новая надежда
Летом я решил почистить фильтры кондиционера и на обратной стороне крышки заметил интересную схему.
На ней присутствовал WiFi модуль.
Однако, поиски нужного модуля не увенчались успехом. Фирма Roda в ассортименте не имеет WiFi модулей для своих кондиционеров, более того, в продуктовой линейке нет ни одного кондиционера с WiFi.
Эпизод II: Империя наносит ответный удар
Недолго думая, я разобрал кондиционер в поисках заветных контактов для подключения модуля. Пришлось изрядно повозиться, чтобы добраться до основной платы, но оно того стоило.
Вот они, заветные контакты с подписью WIFI.
Паяльник уже греется. Припаиваю пины, накидываю провода, подключаю USB-TTL, запускаю терминал.
Я надеялся подключить ESP8266 и разобрать протокол кондиционера, чтобы прикинуться родным WiFi модулем.
В интернете есть несколько аналогичных проектов, но ни один из них с моим кондиционером не заработал.
Кондиционер отправляет пакет данных каждые 5 секунд, но ни от температуры, ни от состояния эти данные не зависят. Очевидно, это опрос WiFi модуля, но что ему отвечать - неизвестно.
Эпизод III: Возвращение джедая
Отрицательный результат - тоже результат. Раз контакты есть и кондиционер в них что-то отправляет, значит искомый WiFi модуль в природе существует и осталось его только найти.
Маркировок на кондиционере и плате особо нет и всё, что у меня было - это маркировка пульта - YKR H/102E.
Оказалось, что с таким пультом выпускаются кондиционеры самых различных марок: Roda, Abion, Vertex, Aukia, Shivaki, Energolux.
А еще, оказалось, это все кондиционеры с одного завода Aux. Это большая фабрика, которая производит OEM кондиционеры, а также выпускает их под своей маркой.
Эпизод IV: Месть ситхов
На просторах сети была найдена инструкция от какого-то другого производителя по подключению WiFi модуля и приложение для управления AC Freedom.
И оно заработало!
Но как же теперь добавить кондиционер в Home Assistant?
Я уже было расчехлил сканер пакетов, чтобы поснифать трафик между кондиционером и телефоном, но моё внимание привлекло название пакета андроид приложения - com.broadlink.acfreedom. А причём тут вообще broadlink?
Недолгий поиск вывел меня на проект с незамысловатым названием Broadlink Air Conditioners to mqtt. Это сервис, который подключается к кондиционеру и транслирует команды в MQTT. В нем уже есть интеграция с Home Assistant и другими системами. И он заработал с моим WiFi модулем.
Заключение
Конечно, это не конец моей битвы с кондиционером. Я нашел несколько багов в Broadlink AC2MQTT и отправил несколько пулл реквестов с исправлениями. Теперь он работает как надо (ну почти).
Выводы для ЛЛ: Даже если ваш кондиционер не имеет нативного WiFi модуля, производитель кондиционера не выпускает WiFi модули и вообще надежды нет - возможно, это не конец, а нужно лишь немного поискать. И немного попаять, да.
Спасибо, разрушил у себя так же с кондеем idea, приложение ac freedom крайне конечное)
Ссылочку на модуль для покупки на Али то не завезут? У меня точно такой же пульт для кондея, только бренд другой
По ссылке каталог, в каталоге есть ссылка на Али.
Супер. Полез с отверткой в свой старый Gree :) Не понял один момент: каким образом wifi модуль стал слать морзянку в mqtt? Вы его перепрошили?
С помощью сервиса Broadlink AC2Mqtt
Прикольно, у меня кондей Hyundai и пульт 1 в 1 и даже маркировка пульта совпадает!
Добрый день! Не подскажите новичку, как установить
https://github.com/liaan/broadlink_ac_mqtt">broadlink_ac_mqtt, пробовал по инструкции, выдал ошибку Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-req-build-246m921s/
Там есть ссылка на докер
Все нашел! Спасибо
Подскажите новичку, как установить докер? Имеется Portainer или командной строкой
Добрый вечер, а никто не рассматривал вариант установки
https://github.com/liaan/broadlink_ac_mqtt">broadlink_ac_mqtt на Rasperry Pi Zero??? Там ошибка при установке докера из-за архитектуры процессора (ARMv6)
Установите без докера, нужен только питон.
Или соберите свой контейнер, докерфайл есть в гитхабе.
У меня танцы вокруг https://github.com/liaan/broadlink_ac_mqtt">broadlink_ac_mqtt пока что не дают результата.
Поставил в докер, сконфигурировал девайс, запускаю monitor.py и получаю отлуп
[Errno -2] Name does not resolve
Запускаю monitor.py -S, девайс обнаруживается, ip/mac корректно видны, а вот имя пустое
devices:
- ip: xxx
mac: xxx
name: ''
Да, в описании вижу, "Some devices (confirmed on AUX conditioner) return device name in chineese, like '奥克斯空调'.
Device renaming in 'AC Freedom' app does not affect. You can see empty name in '-S' option output or any artifacts." — и как с этим бороться не понимаю. Ни получить имя, ни вписать в конфиг его не могу.
Есть идеи?
Для тех у кого не НА а HASSIO я так полагаю это не вариант...
Или я ошибаюсь?