tuya_thermostat_zrd

Tuya Thermostat for Floor Heating Zigbee with custom firmware

Custom firmware for Tuya thermostat models

  1. Model r01
  2. Model r02
  3. Model r03
  4. Model r04
  5. Model r05
  6. Model r06
  7. Model r07

Автор не несет никакой отвественности, если вы, воспользовавшись этим проектом, превратите свой умный термостат в полоумный.

Проверялись только термостаты перечисленные выше. Если у вас другая сигнатура, лучше не заливать, не проверив на совпадение датапоинтов.

Теоретически прошивку можно адаптировать для любого термостата у которого IEEE начинается на

A4 C1 38

Если начало IEEE отличается от указанного, то в термостате применен другой чип в Zigbee модуле, и про обновление можно забыть.

Проверялся только в zigbee2mqtt.

Зачем.

Чтобы не спамил в сеть. Первый экземпляр (см. выше) посылал 25 пакетов каждые 8 секунд.

Что получилось.

About

Exposes

Reporting

Как обновить.

Сначала подключаем к z2m два внешних конвертора tuya_thermostat_orig.js и tuya_thermostat.js. Первый активирует OTA в z2m для термостата с прошивкой от Tuya. Второй нужен для термостата с уже обновленной (кастомной) прошивкой. В конверторах менять ничего не надо, все должно подхватиться автоматом.

Далее нужно добавить локальное хранилище обновлений.

Создаем директорию images в директории z2m и кладем туда файл 1141-d3a3-1111114b-tuya_thermostat_zrd.zigbee.

Копируем в директорию z2m файл local_ota_index.json

Если у вас версия z2m ниже 2.0, то добавляем это все в конфиг z2m (configuration.yaml). Должно получиться что-то в этом роде.

external_converters:
  - tuya_thermostat_orig.js
  - tuya_thermostat.js
ota:
  zigbee_ota_override_index_location: local_ota_index.json

Если же версия 2.0 и выше, то в конфиг z2m (configuration.yaml) добавляем только локальное хранилище

ota:
  zigbee_ota_override_index_location: local_ota_index.json

А два конвертора кладем в директорию external_converters, которую нужно создать в корне z2m.

Далее перегружаем z2m. И видим у нас новое устройство (если термостат уже был в сети и виден в z2m).

Далее идем в раздел OTA. И видим там свое устройство. Жмем проверить обновления.

Жмем на красную кнопку. И обновляемся.

Если все не так, как описано, значит вы что-то сделали не по инструкции (не положили файл куда нужно, не перегрузили z2m) или сигнатуры вашего термостата нет в списке поддерживаемых устройств.

[!WARNING] Внимание!!! Если в процессе вы обнаружите на каких-то устройствах Туя, которые возможно у вас есть еще в системе, новое обновление, то обновлять ничего не нужно!!! Иначе вы зальете в это устройство прошивку от термостата и получите кирпич!!! Если же процесс обновления по ошибке уже начался, то просто обесточьте это устройство!!!

Далее ждем окончания. После этого мы в OTA видим наш термостат со старым именем, но уже с новыми Firmware build date и Firmware version.

Вот так выглядит лог при первом старте после обновления с прошивки Tuya на кастомную.

OTA mode enabled. MCU boot from address: 0x8000
Firmware version: v1.0.04
Tuya bootloader
Bootloader is overwritten. Reset
OTA mode enabled. MCU boot from address: 0x8000
Firmware version: v1.0.04
SDK bootloader
out_pkt <== 0x55AA02000101000003
inp_pkt ==> 0x55AA02000101001C7B2270223A2265646C38707A316B222C2276223A22312E302E30227D8D
Tuya signature found: "edl8pz1k"
Use modelId: Tuya_Thermostat_r02

Далее идем в радел Devices и жмем на нашем термостате справа символ “i” и подтверждаем. Таким образом мы заставляем устройство пройти интервью заново.

Далее опять справа жмем символ . Тем самым заставляя устройство пройти конфигурирование заново.

Все, термостат готов к работе.

[!WARNING] Внимание!!! Если после успешного обновления и всех выполненных указаний выше термостат остается со старым именем, то удалите его принудительно из сети, перегрузите z2m и сделайте сопряжение по-новой. Если в процессе сопряжения термостат моргает значком сети, но ничего не происходит, нужно снять питание с термостата (обесточить) и подать питание заново.

В Home Assistant это выглядит так

Как в уже обновленный термостат залить новую версию прошивки.

Берем последний файл local_ota_index.json, кладем его в директорию z2m, перегружаем z2m. Далее берем последний файл прошивки OTA с именем 6565-0391-xxxxxxxx-tuya_thermostat_zrd.zigbee и копируем его в директорию images, которая у вас должна уже быть в корне zigbee2mqtt. Проверяем обновление на нужном термостате и обновляемся.

Все.

P.S. В реальной работе не проверялось, требует всестороннего тестирования.

Более развернутое описание для самого первого термостата тут


Связаться со мной можно в Telegram.

Если захотите отблагодарить автора, то это можно сделать через ЮMoney


Спасибы :))

История версий

Наверх