Лучший термостат для теплого пола
Прямая интеграция в Home Assistant и HomeKit без облаков.
Еще до того, как всех нас посадили по домам, я решил заказать термостат от Tuya — BHT-002 Moes / BHT-6000. Наверное, это самый упоминаемый термостат для теплого пола на Aliexpress.
Увидел несколько положительных отзывов о том, что все прекрасно интегрируется в Home Assistant и вообще это Tuya — все дела. Оказалось всё не так радужно…
Сразу обращу внимание, что у производителя есть несколько версий — нас интересует та, что контролирует теплый пол и имеет Wi-Fi на борту — BHT-002-GBLW.
Подключение
На самом деле сам по себе термостат замечательно устанавливается на место старого и интуитивно подключается к электричеству и датчику температуры пола (китайцы кстати пишут, что в комплекте нет — но у меня был).
После чего мы следуем стандартной инструкции подключения термостата — с помощью приложения TuyaSmart находим (с трудом — потому что выбор устройств внутри приложения достаточно немаленький) термостат и подключаем термостат к Wi-fi (для этого необходимо держать кнопку уменьшения температуры (правая крайняя) в выключенном состоянии в течение 8-10 секунд, пока термостат не заморгает).
Термостат появляется в приложении и вы уже можете его контролировать по Wi-fi — ничего нового.
Сразу отмечу, что у термостата из коробки есть странная особенность — температура, которую вы задаете, будет пытаться поддерживать температуру воздуха, а не пола. Что странно. В моем случае термостат находится в другой комнате (как бы на входе в санузел). Да и вообще зачем мне контролировать температуру воздуха нагревом пола? Благо этот вопрос в итоге был решен по ходу дела.
Дальше начинается интересное.
Интеграция в умный дом
А вот этот процесс оказался не так дружелюбен, как мог бы показаться — спойлер: у этой истории очень даже счастливый конец.
Путь первый — удручающий.
Если вы захотите интегрировать его в Home Assistant стандартными средствами, то для этого вы сможете воспользоваться встроенной интеграцией Tuya:
После чего термостат сразу же появится среди ваших устройств, но вы получите несколько НО:
- я так и не научился нормально управлять включением/выключением — т.е. кнопка включения внутри HA просто управляет включением/выключением подсветки, а не работы термостата — БРАВО.
- отображаемая температура задваивается (вместо 25 градусов вы будете видеть 50 + по итогу если вы хотите поменять температуру с 25 на 26, то вам нужно будет спускаться с 50 градусов до 26)
- вы опять же будете управлять температурой воздуха О_о
- управление происходит через облако — мне лично тут как-то все равно, но на вкус и цвет
- причем по всем эти вопросам уже давно люди общаются на форумах, а воз и ныне там.
Путь второй — безуспешный.
С первым случаем разобрались. Также на просторах интернета можно натолкнуться на способ локального управления с помощью кастомного компонента localtuya (подробнее почитать тут), который построен на базе tuyaAPI.
В данном случае меня ждал двойной провал. Суть данного решения в том, что мы должны перехватить credentials для управления термостатом локально и используя библиотеку localtuya управлять им без обращения к облаку.
Первый провал меня ждал тогда, когда я все-таки смог пройти не по очень простой инструкции получения токена и id, и даже получил эти credentials, но сам компонент не захотел запускаться в Home Assistant с указанными параметрами.
Второй провал меня ждал, когда через пару дней я решил снова получить токен и пройти путь заново, где в итоге меня ждала многократная ошибка невозможности спарить устройство по таймауту. Опять же в инструкции указаны все возможные варианты, как этого избежать, но увы.
В итоге по данному пути у меня не получилось запустить данный термостат в Home Assistant. Если вам лень читать дальше, то можете остановиться здесь и попробовать — все ссылки на инструкции выше даны.
Третий путь — извращенный, но успешный.
Я долго пытался избежать того, чтобы пойти по данному пути — потому что здесь предполагалось паять и ковыряться с перепрошивкой. Но в один прекрасный вечер я решил все-таки прочитать инструкцию до конца и обнаружил вариант перепрошивки по воздуху — о чудо!
- данный путь заключается в полной перепрошивки устройства
- всё происходит по воздуху без отключения термостата от сети
- вам понадобится лишь смартфон, ноутбук и Raspberry 3 (или выше)
- еще понадобится немного храбрости — все-таки это перепрошивка
По итогу вы получаете термостат:
- с полной интеграцией в Home Assistant
- без зависимости от облаков
- термостат будет работать по привычному MQTT
- вы будете управлять температурой пола, а не воздуха — о боги!
- вам будет доступно управление расписанием прямо из веб-интерфейса
- и вообще всё будет красиво автоматически пробрасываться в HomeKit (стандартным компонентом homekit: )
Опишу кратко основные шаги и нюансы:
- в первую очередь обращаемся к данной инструкции и спускаемся в самый низ — нам нужен способ №2 — Tuya-convert
- идем сюда и начинаем
- сначала скачиваем tuya-convert и устанавливаем его (на всякий случай советую устанавливать под sudo)
- скачиваем прошивку: здесь момент — первоначальная прошивка разработчика klausahrenberg предусматривает интеграцию термостата в Mozilla IoT, а не в Home Assistant — я узнал об этом уже после прошивки, поэтому сначала я установил прошивку Клауса, а потом «накатил» на нее прямо с помощью веб-интерфейса прошивку для Home Assistant. У меня не было никаких проблем с этим, но здесь вы можете попробовать сразу устанавливать прошивку под HA.
- в общем вам необходимо скачать файл прошивки (у Клауса он лежит прямо в корне репозитория WThermostat_1.08.bin , а у второго автора тут) и положить его внутрь папки Tuya-convert в папку files (там уже будут лежать пару стоковых прошивок) — tuya-convert/files — для этого как обычно воспользуйтесь чем-нибудь типа Filezilla или так:
- теперь вытираем наши потные ручки и запускаем процесс прошивки (на самом деле автор утверждает, что в процессе можно легко откатиться на сток — поэтому не переживайте)
- после этого проходимся по процессу установки прошивки везде нажимая Y, пока не доходим до этого момента:
- Здесь нам понадобится наш смартфон; здесь владельцы iPhone должны немного пострадать, потому что мы знаем как iPhone не любит подключаться к Wi-Fi, в которой нет выхода в интернет — из-за чего тыкаясь туда-сюда, подключаясь, переподключаясь, я только с попытки 3-ьей смог добиться того, что данный процесс прошел успешно
- Вот так выглядит провал:
- Вот так выглядит успех:
- После чего выбираем нашу прошивку (в данном случае под пунктом 3)… 8 секунд ожидания и всё готово.
- Дальше у вас появится wi-fi сеть с названием термостата и вам необходимо будет проследовать простой инструкции финальной конфигурации.
Дальше поговорим про Home Assistant:
- если вы установили базовую прошивку, то теперь через веб-интерфейс вы можете перейти во вкладку Update Firmware и просто накатить поверх прошивку для Home Assistant — в общем всё прошло гладко, но по итогу установки прошивки экран не перезагрузился, через минуты 3 я просто открыл страницу заново, а там была уже новая прошивка
- далее вам необходимо подключить ваш термостат к MQTT серверу во вкладке «Configure Network» — в моем случае нужно было просто заполнить IP на котором поднят Mosquitto (IP малинки)
- а в Home Assistant добавить auto-discovery
Если вы отправляете свое добро из Home Assistant в Homekit с помощью стандартного компонента, то при перезагрузке у вас появится новое устройство с термостатом, в котором вы сможете полноценно контролировать температуру и даже переключаться между режимами.
Если вам понравилось, то просто купите его по нашей ссылочке — плюс вам в карму за это 🙂
Обзор и подключение термостата Xiaomi (EigenStone/Aqara)
Нудное вступление
Но устройство так и не поступило в открытую продажу, и, насколько я понял, даже в Китае его не так просто достать. Я даже отправлял людей в оффлайн магазин Aqara, чтобы попытаться его купить.
В какой-то момент он появился на Али, но продавец, вместо термостата, прислал мне анализатор CO2. А пока посылка ехала, товар уже везде пропал. Лишь спустя три месяца, он появился снова и лишь у одного продавца.
Управление
- В Mihome термостат можно привязать только к шлюзу Mijia.
- В приложении Aqara Home будет коннектиться и к Aqara Hub (но без homekit).
На главном экране можно задать температуру, скорость вращения вентиляторов и режимы охлаждения/обогрева:
Действия в автоматизациях
Подключение
Разница лишь в том, что:
- первый термостат управлял вентилями лишь подавая/отключая питание;
- а в этом есть два разъема — для открытия и закрытия вентилей (питание всегда подается либо на один, либо на другой контакт).
Контактов для подключения проводного датчика температуры нет — так что я не очень понимаю, как его возможно использовать для теплого пола, хотя в инструкции предлагают следующую схему.
Моя задача
- ноль(N)
- 3-я скорость вентилятора
- 2-я скорость вентилятора
- 1-я скорость вентилятора
- 2-й вентиль закрыть
- 2-й вентиль открыть
- 1-й вентиль закрыть
- 1-й вентиль открыть
- фаза (L)
В инструкции описана куча настроек (в конце статьи будет ссылка), в том числе, связанная с питанием. Но в реальности, меню в термостате почему-то совсем иначе устроено, и пока я лишь рандомно пытаюсь что-то менять. Возможно, у парня с 4pda была какая-то другая модель конвектора — не знаю, и к сожалению, на связь через личку человек не вышел.
Выводы
Буду продолжать ковыряться с настройками, может что-то полезное смогу найти и тогда выпущу продолжение статьи. А если кому-то из Москвы захочется поизучать его — пишите, у меня их 5 (уже 4) штук, могу дать поиграться.
Ссылки
Все новости мира умных домов — t.me/SprutAI_News или Instagram
Остались вопросы? Мы в Telegram — @SprutAI
Актуально к началу отопительного сезона. Ждем продолжения с опытом использования!
Имею такой девайс. Напишу модель KTWKQ03ES чтобы эту статью находил Google.
Печатная документация на китайском местами устарела и сильно не полная.
В теории можно подключить удаленный датчик температуры/влажности (очевидно ZizBee), о такой возможности сказано на стр. 6 в пункте 5, и в подменю 06/03 значение 01 означает использовать внешний датчик. Также можно настроить дисплей на отображение влажности с этого датчика.
Когда стал задавать продавцу вопросы например как подключить удаленный датчик температуры/влажности и пр. продавец просто снял эту штуку с продажи!
Терморезистор отпаял и засунул в пол в металлопластиковой трубе. Пришлось использовать очень качественный экранированный кабель от автомобильной антенны, иначе были наводки и показания температуры скакали +-3 градуса.
При включении выдаёт CA Err 03 и потом нормально работает, что это значит — загадка.
Не нашёл как сбросить к заводским настройкам. Половина параметров в меню не описана или не соответствует документации.
В меню сконфигурировал только нагрев, отключил кнопки mode и fan.
Настроил чтобы на экране отображалась одновременно температура пола и желаемая.
Так как тут всего 2А, использовал 5-й (справа, по схеме сверху) выход, подключил на один из входов 2-канального реле Aqara для управления электрическим тёплым полом.
Заодно можно отслеживать потребление.
Шлюз MIJIA в девелоперском режиме рапортует что этот девайс не поддерживается, дескать обновите прошивку (в HomeAssistant его соответственно не видно).
MiHome при этом нормально отображается.
К новому шлюзу Aqara (который с HomeKit) не подключается.
Пытаюсь подружить это чудо с HomeAssistant через zigbee2mqtt. Добавил его в devices.js, включил логи.
Power OFF:
debug 2020-04-30 18:59:03: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65281":<"3":30,"5":58,"7":"0x0000000000000000","8":13332,"9":2816,"100":305140579,"105":0,"106":0,"108":1,"110":65534,"111":0,"155":0>>’ . debug 2020-04-30 18:59:06: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,0]>>’ debug 2020-04-30 18:59:06: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,96,19,48,2]>>’ debug 2020-04-30 18:59:06: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘
Power ON:
debug 2020-04-30 18:59:24: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,0]>>’ debug 2020-04-30 18:59:24: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,99,19,32,17]>>’ debug 2020-04-30 18:59:24: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘ . debug 2020-04-30 18:59:29: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,99,19,48,18]>>’ debug 2020-04-30 18:59:29: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘
Изменение заданной температуры с 19C на 20C (температура пола с датчика при этом 24C):
debug 2020-04-30 18:59:40: No converter available for ‘KTWKQ03ES’ with cluster ‘genTime’ and type ‘read’ and data ‘[«time»]’ debug 2020-04-30 18:59:40: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,2]>>’ debug 2020-04-30 18:59:41: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,2]>>’ debug 2020-04-30 18:59:45: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,99,20,48,18]>>’ debug 2020-04-30 18:59:45: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘
В этих логах видно где 19 меняется на 20, но все остальные параметры покрыты мраком.
Видимо поддержки в HomeAssistant в обозримом будущем не будет.