Альтернативные версии на различные датчики Zigbee можно еще посмотреть у pvvx.
- TS0201 _TZ3000_xr3htd96
- TS0201 _TZ3000_fllyghyj
- TS0201 _TZ3000_0s1izerx
Прошивка для этих датчиков имеет в имени число 0x15
- TS0201 _TZ3000_dowj6gyi
Прошивка для этих датчиков имеет в имени число 0x21
- TS0201 Zbeacon
Прошивка для этих датчиков имеет в имени число 0x22
- ZG-227Z HOBEIAN
Прошивка для этих датчиков имеет в имени число 0x23
- TH01 Zbeacon
Прошивка для этих датчиков имеет в имени число 0x24
- Z-WXD _TZ3000_stw9kdvl
Прошивка для этих датчиков имеет в имени число 0x28
Автор не несет никакой ответственности, если вы, воспользовавшись этим проектом, превратите свой умный датчик в полоумный.
Если у вас другая сигнатура, лучше не заливать, не проверив на совпадение сенсора и GPIO.
Проверялся в zigbee2mqtt и HomEd.
Понадобился датчик температуры и влажности, который умел бы отдавать свои значения не только координатору, а еще и напрямую другому устройству, например монитору с экраном. Ну а так, как прошивку все равно делать с нуля, то заодно сделать управление другим устройством через OnOff напрямую, например, при достижении определенной температуры, включить кондиционер, или, при достижении определенной влажности, включить вытяжку. Ну и выключить потом соответственно :))
Ну и еще. Оригинальная прошивка не умеет показывать температуру, ниже -20 градусов. А сам сенсор CHT8305 умеет до -40.
А потом в зоне внимания стали появляться другие датчики и проект несколько раздулся :))
About
Exposes
Reporting
Раскрыть
В таблице приведены файлы и метод обновления для каждого датчика
| Custom Zigbee Model | Original Zigbee Model | Z2M Model | Original Zigbee Manufacturer | Update method |
|---|---|---|---|---|
| TS0201-z-SlD TS0201-z15-SlD |
TS0201 | WSD500A | _TZ3000_xr3htd96 _TZ3000_fllyghyj _TZ3000_0s1izerx |
OTA file |
| TS0201-z21-SlD | TS0201 | IH-K009 | _TZ3000_dowj6gyi | OTA file |
| TS0201-z22-SlD | TS0201 | ZY-ZTH02 | Zbeacon | OTA file |
| TS0201-z23-SlD | TS0201 | ZG-227Z | HOBEIAN | BIN file |
| TS0201-z24-SlD | TH01 | TH01 | Zbeacon | OTA file |
| TS0201-z28-SlD | TS0201 | TS0201 | _TZ3000_stw9kdvl | OTA file |
zigbee2mqtt нужно переключиться в новый интерфейс - zigbee2mqtt-windfront.
Итак, скачиваем из репозитория нужный файл обновления (какой именно смотрите в таблице вверху). Заходим в устройство. И справа видим в Firmware version значок облака. Нам сюда.
Далее выбираем Custom firmware из вываливающегося списка.
После этого выбираем файл.
Далее нажимаем кнопку на датчике, т.е. будим его и жмем обновить.
Чтобы понять, пошло обновление или нет, возвращаемся в пункт Devices и смотрим на изображение датчика, там должен появиться вращающийся кружок со стрелками.
Ну и еще это все будет фиксироваться в логе.
После завершения обновления датчик готов к спариванию, нужно только разрешить это в zigbee2mqtt. Старую версию датчика просто удаляем.
Как залить прошивку можно почитать тут.
Зайдите на страницу USBCOMFlashTx.html. Назначьте порт - Open. Нажмите на кнопку на датчике, светодиод должен моргнуть. Далее нажмите Erase All Flash. Когда в логе отразится, что очистка завершена, снова нажмите на кнопку. Светодиод не должен моргать. Если он моргнет, значит вы ничего не стерли - проверьте подключение. Если не моргает, значит все хорошо. Выберите файл, например ts0201_tz3000_0x23_zed_last_version.bin для датчика с номером 23. И нажмите Write to Flash.
- Battery - емкость батарейки в %.
- Voltage - напряжение батарейки в mV.
- Temperature - диапозон от -40 до +125 °C.
- Humidity - диапазон от 0 до 100 %.
- Temperature offset - калибровка температуры от -5 до +5 °C с шагом 0,1.
- Humidity offset - калибровка влажности от -10 до + 10 % с шагом 1.
- Read interval - интервал чтения сенсора. От 5 до 600 секунд с шагом 1. По умолчанию этот период задан в 10 секунд. Используется, если репортинг температуры или влажности установлен более 600 секунд. Эти параметры также влияют на то время, которое модуль "спит", т.е. находится в режиме экономии батареи. Время считывания сенсора берется из настроек репортинга, если он не превышает 600 секунд. Если превышает, то из
Read interval. - Enabling repeat command - активирование повторения команд при активации
Enabling temperature controlи (или)Enabling humidity control. - Enabling temperature control - активирование управления удаленным устройством по температуре.
- High temperature - высокая граница температуры - при переходе этой границы в большую сторону будет послана команда на включение удаленного устройства.
- Low temperature - низкая граница температуры - при переходе этой границы в меньшую сторону будет послана команда на выключение удаленного устройства.
- Enabling humidity control - активирование управления удаленным устройством по влажности.
- High humidity - высокая граница влажности - при переходе этой границы в большую сторону будет послана команда на включение удаленного устройства.
- Low humidity - низкая граница влажности - при переходе этой границы в меньшую сторону будет послана команда на выключение удаленного устройства.
- Temperature actions - настраивает, какую именно команду мы шлем при управлении удаленным устройством по температуре. Если этот параметр установлен в
heat, то при увеличении и достиженииHigh temperatureтемпературы высылается командаoff, а при уменьшении и достиженииLow temperatureтемпературы высылается командаon. Таким образом мы получаем режим работы нагревателя. Если же параметрTemperature actionsустановлен вcool, то команды меняются местами. Таким образом мы получаем режим работы охладителя. - Humidity actions - настраивает, какую именно команду мы шлем при управлении удаленным устройством по влажности. Если этот параметр установлен в
wet, то при увеличении и достиженииHigh humidityвлажности высылается командаoff, а при уменьшении и достиженииLow humidityвлажности высылается командаon. Таким образом мы получаем режим работы осушителя. Если же параметрHumidity actionsустановлен вdry, то команды меняются местами. Таким образом мы получаем режим работы увлажнителя.
Для управление внешним устройством напрямую нужно сперва настроить биндинг. Это делается во вкладке Bind в zigbee2mqtt. Выбираем Эндпоинт 1 для температуры, затем выбираем устройство, которым хотим управлять, отмечаем кластер OnOff. Затем нажимаем кнопку на самом датчике, чтобы его разбудить и после жмем Bind в интерфейсе zigbee2mqtt. Система оповестит об успешном соединении или об ошибке.
Далее выбираем Эндпоинт 2 для влажности и повторяем процедуру.
Датчик можно настроить на управление одним или несколькими внешними устройствами только от температуры, только от влажности или от обоих значений одновременно. Управление внешними устройствами можно настроить, как отдельно каждым, например по температуре управляет одно устройство, а по влажности другое. Так и совместить управление от двух параметров одним устройством. Так же можно настроить управление от одного канала, например по температуре, несколькими устройствами.
Warning
Внимание!!! Если биндинг настроен на группы. Если температура и влажность забинжены на разные группы, но в этих группах есть одно и тоже устройство, могут быть сюрпризы по зацикливанию включения и выключения! В этом случае рекомендуется не включать повтор команд Enabling repeat command.
При настройке по умолчанию Read interval 10 секунд двух батареек ААА должно хватить минимум на 2 года.
При настройке Read interval 60 секунд двух батареек ААА должно хватить лет на 8 (не забываем менять MinInterval в отчетах температуры и влажности на такое же значение).
Связаться со мной можно в Telegram.
Если захотите отблагодарить автора, то это можно сделать через ЮMoney
P.S. Датчик покупался по ссылке вот из этого проекта в октябре 2024, но сейчас продавец в Россию не отправляет. И спасибо Виктору за предоставленную информацию по этому датчику. Второй датчик покупался вот тут (за это отдельное спасибо Олегу).
- 1.0.01
- Начало.
- 1.0.02
- Выявлены и устранены баги с передачей влажности и высокой температуры.
- 1.0.03
- Откорректирована принудительная передача репортов при нажатии на кнопку.
- Устранены баги с отчетами (SDK не идеальна).
- Добавлены в
Output Cluster Listкластеры температуры, влажности и батарейки.
- 1.0.04
- Добавлены репорты ВСЕХ значений по нажатию кнопки.
- Изменена структура прошивки, теперь не нужно обновлять оригинальное устройство два раза.
- Добавлены раздельные каналы управления сторонними устройствами. Отдельно по температуре, отдельно по влажности.
- Добавлено повторение команды на сторонние устройства, если температура или влажность не изменяются.
- 1.0.05
- Добавлена дополнительная проверка при включении контроля по температуре и(или) влажности. И команда
OnилиOffотправляется сразу, в зависимости от значения этих параметров.
- Добавлена дополнительная проверка при включении контроля по температуре и(или) влажности. И команда
- 1.0.06
- Добавлен датчик
TS0201 _TZ3000_dowj6gyi. - Включен
watch dog.
- Добавлен датчик
- 1.0.07
- Добавлен датчик
TS0201 Zbeacon. - Добавлен датчик
ZG-227Z HOBEIAN.
- Добавлен датчик
- 1.0.08
- Добавлена проверка биндинга. Сделано для правильной работы команд
OnOff, когда оба параметра (и влажность, и температура), забинжены на одно исполнительное устройство. - Добавлена возможность включать и отключать повтор команд.
- Изменен выбор периода чтения сенсора.
- Добавлен датчик
TH01 Zbeacon.
- Добавлена проверка биндинга. Сделано для правильной работы команд
- 1.0.09
- Добавлен датчик
TS0201 _TZ3000_stw9kdvl- #20. - Изменен период проверки обновлений на 6 часов.
- Добавлен датчик
- 1.0.10
- Проверен датчик `ZG-227Z HOBEIAN в другом исполнении.
- Исправлены константы проверки диапазона влажности для OnOff, когда ее из сети задают.
- Исправлены типы переменных для температуры.
- Исправлена проверка на запущенный таймер findbindTimerEvt.













