Reverse engineering
Gadgets
Smart House
IOT
DIY

Кондиционер айтишника. Часть I

Пенни, все становится лучше, когда есть bluetooth © Шелдон, TBBT

Домик хотя и "тестовый", но все старались делать максимально правильно — хорошее утепление, приличные стеклопакеты и т.п.

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

Мы предвидели такой вариант развития событий и заранее подготовились к установке кондиционера: проложили все необходимые магистрали на этапе стройки.

К вопросу об окнах
Вообще, конечно, стоило бы поставить стеклопакеты с МФ- и И-стеклами, но тут «палка о двух концах» (впрочем, как и всегда) — недополучали бы зимой бесплатное тепло от солнца.

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

Но такой анализ никто не сделал, поэтому имеем то, что имеем.

Кстати, ни строители, ни оконщики не порекомендовали, какие стеклопакеты было бы лучше использовать в нашем случае. Во всем приходится разбираться самостоятельно (в т.ч. оплачивая ошибки).

Один из важных критериев выбора кондиционера для моего «тестового домика» — возможность его интеграции в систему "умный дом".

Интеграция "дешево и сердито"
Конечно, самая простая интеграция практически любого кондиционера — использование команд ИК-пульта. Но мне этот вариант не подходит по идеологическим соображениям: нет информации о текущем состоянии прибора.

Поэтому, этот вариант сразу отметаем и идем дальше.

Муки выбора


Естественно, остальные параметры тоже очень важны (из главных приоритетов: максимально тихая работа, класс энергопотребления не ниже «А», цена).

Выбор пал на инверторный Electrolux (серия Atrium). Производитель в явном виде указывает, что кондиционером можно управлять через WiFi (требуется только докупить опциональный WiFi-модуль).

Цена — относительно гуманная (другие инверторные модели с WiFi — примерно на 30% дороже, что уже как-то слишком для гостевого домика).

Тревожный "звоночек"
Поставщик почему-то как-то неуверенно говорит о WiFi-модуле и всячески увиливает от его поставки под разными предлогами. Сейчас понимаю, что это «звоночек», но едем дальше.

Google в помощь, мануалы и другая информация — (вроде как) требуется модуль Electrolux ECH/WF-01 Smart Wi-Fi. И совсем не дефицит (еще этот модуль используется для водонагревателей и электрических конвекторов этого же производителя) и цена более чем доступная — менее тысячи рублей (вообще тоже должно было бы слегка насторожить). Приложение для управления — одно на все эти типы приборов, что выглядит вполне разумным: производитель хочет, чтобы формировалась «экосистема».

Еще немного изысканий (подсмотрели код штатного андроид-приложения) и выясняется, что приложение коммуницирует с облаком по адресу: dongle.rusklimat.ru/api — ага, становится еще интереснее и сразу появляются мысли, каким образом нужно будет обеспечивать интеграцию с системой умного дома (УД).

"Звоночек" номер два
На одном из сайтов попался отзыв покупателя, где он рассказывал, что облако часто «валяется» и первоначально он около двух месяцев ждал и мучал техподдержку, прежде чем система заработала как было заявлено. Отзыв довольно старый — я подумал, что уже устранили проблемы и все будет хорошо.

Сплит-система заказана, назначен день монтажа — тут все четко: пару часов и приятная прохлада обеспечена.



Теперь пришло время заказывать опциональный модуль.

Грабли


Приехал Smart WiFi-модуль — из себя ничего особенного не представляет: грубоватая «флешка» с единственной кнопкой и светодиодом, который тускло светится через корпус (конечно, при подключении к питанию).



Воткнул его сначала в ноутбук (надо же глянуть, чем «прикидывается» модуль)… но в системе ни одного нового устройства не появилось (был удивлен, но почему-то не очень сильно).

Ладно, попробуем использовать его штатным образом: модуль занял соответствущий разъем во внутреннем блоке кондиционера.



Обратная сторона платы индикации


Установил программу и прошел по инструкции: зажал кнопочку на модуле на пяток секунд — он начал моргать желтым светодиодом (режим Smartlink), в появившемся диалоговом окне указал название wifi-сети и пароль к ней… светик на модуле моргнул и загорелся синим (по инструкции — нормальный режим).

Хотя все было сделано по инструкции, устройство в программе не появилось (начинают оправдываться различные опасения).

Ну да ладно, двигаемся дальше и пытаемся понять, с чем же имеем дело — смотрим в веб-интерфейс роутера. Роутер — показал, что новое wifi-устройство подключилось и работает (ура, маленькая победа и кое-что все-таки работает).

При этом роутер сдал этот модуль как стеклотару: имя нового хоста — «HF-LPT220».

Беглый поиск показал, что это SoC UART-WiFi (около 5 долларов в розницу за штуку и 60-80 центов при оптовых закупках).

Вскрытие показало, что пациент скончался от вскрытия


Отключаем модуль от кондиционера и вскрываем корпус этого свистка (открывается легко и легко закрывается).



На фото выше видно, что роутер рассказал чистую правду: «трехкопеечный» модуль с минимальной обвязкой (стабилизатор питания, светодиод (двухцветный), кнопка, преобразователь уровней) — тут уже стало понятно, что даже запрошенная цена за этот модуль — явно завышена (ладно, будем считать, что туда заложили еще оплату труда программистов, которые должны были написать прошивку, которая бы обеспечивала необходимый функционал).

Обратите внимание на подписанные контакты usb-разъема (от usb — только корпус разъема и такое же расположение выводов питания) — поэтому совершенно не удивительно, что модуль никак не определился компьютером.



Таким образом, автоматизацию управления этим кондиционером — можно сделать на чем угодно (хоть на Arduino) — нужно только знать, какие команды ожидает получить система.

А вот этой информации о командах у нас как раз и нет.

Векторы мысли


Собственно, раз все составляющие на руках и появилась некоторая дополнительная информация о том, что же на самом деле мы имеем, логичными кажутся следующие варианты:

  1. Анализ сетевого обмена — была мысль реализовать «прокси-сервер», на который переправить исходный обмен между кондиционером и «облаком» (средствами роутера), а с этого «прокси» — организовать взаимодействие с «облаком». Потом этот сервер интегрировать в систему умного дома — при этом можно было бы добиться работы как через штатное приложение для кондиционера, так и управление через УД (автоматические сценарии и т.п.).
  2. Подключиться компьютером через модуль USB-UART к внутреннему блоку системы, подобрать скорость обмена и «послушать», что же сообщает модулю кондиционер (хочется верить в то, что обмен идет вне зависимости от того, подключен ли штатный модуль или нет). Надежда на то, что после получения команд от ИК-пульта, кондиционер их исполняет и отправляет соответствующее сообщение через WiFi-модуль в «облако» для отображения актуального состояния. И надеяться на то, что разработчики — ленивые и эти сообщения идентичны командам, получаемых от WiFi-модуля.
  3. Подключиться компьютером через модуль USB-UART к WiFi-модулю и попробовать через штатное приложение «порулить» кондиционером и при этом получить команды от WiFi-модуля для сплит-системы. Вариант очень перспективный для анализа, но, к сожалению, мой кондиционер в штатном приложении так и не появился (на текущий момент) — поэтому отправить команды с телефона не представляется возможным.

Попытки


Поскольку с WiFi-модулем штатное приложение не завелось, начал с самого простого — пошел по варианту 2: взял USB-UART и подключился к внутреннему блоку кондиционера.

К сожалению, вариант не принес результат — сплит-система «молчит» на всех скоростях обмена и никак не реагирует на внешние раздражители. Видимо, встроена «защита от взлома»: вероятно, оригинальный WiFi-модуль отправляет какие-то данные, по которым основной блок признает в нем «своего» и ведет обмен.

Пока разбирался со своей гипотезой — написал несколько писем: в Electrolux и разработчикам мобильного софта.

Electrolux


Реально все климатическое оборудование под маркой Electrolux официально поставляется компанией Русклимат (мое первое знакомство с этой компанией было около 10 лет назад и оно было далеко не приятным, но это другая история). Поэтому я не очень удивился, когда в ответ на запрос на сайте Electrolux пришел от технического специалиста компании Русклимат.

Ну и ответ был с таким смыслом, что тот модуль, что я приобрел — не подходит к кондиционерам, но «подходящего» пока нет и только ожидается в середине июля 2019.

Разработчики мобильного софта


Разработчиком софта для Русклимата является компания ООО «Ипол». Разработчики ответили, что в текущей версии кондиционеры вообще не поддерживаются и на просьбу «поделиться протоколом обмена», конечно, ответили, что такую информацию они не разглашают.

Конец?


Нет, конечно! Теперь остается только дождаться, когда же производитель все-таки выпустит «совместимый» WiFi-модуль и повторить все векторы реверс-инжиниринга, но уже с «правильным» модулем.

А пока возвращаюсь к варианту автоматизации «дешево и сердито» (придется контролировать работу кондиционера с помощью камеры видеонаблюдения — внутренний блок как раз в кадр попадает).

Если вдруг кто-то придумает, как можно все-таки сделать «правильно» — буду рад подсказке. А уж если кто-то уже «прошел этот путь» и поделится протоколом обмена — я буду просто счастлив ;)

Кстати, в недрах внутреннего блока обнаружилась очень интересная информационная табличка, которая дает еще пару новых «векторов»:



P.S. «Часть II» с подробным описанием решения «дешево и сердито» будет позже (надо только время найти).

P.P.S. «Часть III» c «правильным» решением, надеюсь, появится после приобретения совместимого модуля (осталось дождаться его появления в продаже).
+41
27.8k 82
Support the author
Comments 124