Найти тему
HASSStas: Рецепты HomeAssistant

Human Presence Detector - ZY-M100

Мой путь от дешёвых Wi-Fi PIR датчиков на батарейках к нормальным решениям продолжается. Сейчас единственное решение, которым я полностью доволен, является Aqara FP-1. Устройтсво дорогое, но работает отлично. Сейчас оно трудится на кухне, где самая большая проходимость. И даже странно, что до сих пор нет поста про этот датчик присутствия.

Но тем не менее, уже понятно, что нормальный датчик присутствия лучше двух датчиков движения, но FP-1 по-прежнему дорогой. Поэтому смотрим другие решения. В спальне, например, трудится тандем датчиков QingPing (на движение в комнате) и SNZB-03 (на вход-выход).

Но всё же хочется нормальных решений и вот взгляд упал на туевский датчик присутствия, питаемый от USB. Маркировка устройства ZY-M100, выпускается много кем в таком же формфакторе и под протоколом Tuya.

Естественно, под туей/смартлайфом использовать это я не собирался и перед заказом уточнил совместимость с Deconz: https://dresden-elektronik.github.io/deconz-rest-doc/devices/. Совместимость заявлена, можно брать.

Спустя некоторое время мятая коробочка с большой надписью LOGINOVO лежит на почте, а затем у меня на столе:

Не спрашивайте, почему Loginovo, я не знаю.
Не спрашивайте, почему Loginovo, я не знаю.

И первая же попытка подключить устройство в Phoscon с тресокм провалилась. Потому что поддержка устройства заявлена, но пока в экспериментальном режиме. Чтобы запустить устройство, нужно руками прописать DDF в Deconz. Но ничего, в общем-то, сложного не оказалось, всё расписано в теме по устройству: https://github.com/dresden-elektronik/deconz-rest-plugin/issues/6517.

Итак, первое и хотелось бы чтобы единственное что нам нужно - это скачать DDF, применить к устройству и ребутнуть deconz.

Поскольку HA с некоторых пор живёт в контейнерах, то и рабочая папка Deconz у нас в контейнере: /usr/share/hassio/addons/data/core_deconz/.local/share/dresden-elektronik/deCONZ/. В этой папке есть папка с конфигурациями (DDF-файлами) устройствами. Но у меня нет ни одной конфигурации, я пока вручную ничего не добавлял, поэтому в папке devives у меня пусто. Надо это исправить. Поскольку устройство - Tuya, то надо создать папку tuya в папке devives и скачать туда последнюю версию DDF для датчика:

cd devices
mkdir tuya
cd tuya
wget
https://raw.githubusercontent.com/dresden-elektronik/deconz-rest-plugin/master/devices/tuya/ZY-M100_human_breathing_presence.json

Затем открываем панель управления Deconz и видим там наше устройство, которое не определяется в Phoscon:

-2

Выбираем его и идём в Edit - Edit DDF. Там File - Open и выбираем наш json из той папки, куда мы скачали готовый DDF. После этого достаточно сделать Hot reload из меню File, но я для надёжности перезагрузил целиком устройство.

После этого появилось устройство в Phoscon, которое стало определять присутствие. Увы, но освещённость у меня "из коробки" не взлетела.

Обновление прошивки не меняет ситуацию с освещённостью. Поиск по теме устройства на гитхабе ничего не дал, поэтому пришлось ковыряться самому. Скачать в папку generic файл конвертации люксов в освещённость lux_to_lightlevel.js тоже ни к чему не привело. Чтобы починить освещённость - пришлось формулу из lux_to_lightlevel вписать напрямую в свойства lightlevel устройства:

-3
  • Parse: tuya
  • Datapoint: 104
  • Expression: Item.val - Math.round(10000 * Math.log10(Attr.val) +1);

Hot reload и вот наконец-то нормальное значение освещённости:

-4

На гитхабе говорят, что так, на самом деле, делать не надо а надо делать как надо. Возможно я что-то недокурил в той теме, но у меня работает так, как я описал, а так как написано в теме - не заработало.

Чтобы корректно определялась версия, нужно подрузить tuya_swversion.js в devices/tuya, где лежит сам наш файл DDF:

wget https://raw.githubusercontent.com/dresden-elektronik/deconz-rest-plugin/master/devices/tuya/tuya_swversion.js

Ну вот, в принципе, и всё. Датчик более-менее заработал. Надо его применить по назначению. На пробу датчик поставлен в детскую на ночь. Расстояние от датчика до кровати, на которой спит дочь - метра три с половиной. Определение присутствия ночью:

-5

А вот датчик поставлен в спальню, прямо над кроватью, в которой всю ночь спали два человека и кот:

-6

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

Спустя несколько недель...

Ну что же. Устройство трудится в спальне в качестве единственного датчика движения. Работает - прекрасно. Иногда свет гаснет, если лежать на кровати и втыкать в телефон, но достаточно лёгкого движения ногой, чтобы вернуть свет в комнату. На животных - реагирует. Настройки в текущем режиме в HA доступны, кроме настроек чувствительности (которые есть у акаровского):

-7

Ждём официальную поддержку, заявленную в следующей версии deconz, но в целом - и сейчасс вполне достойное решение, которое можно использовать. На голову, а то и две, лучше любого PIR-решения. Хотя до Aqara FP-1 ещё есть поле для роста. С учётом цены и формфактора, а так же того факта, что в качестве питания можно взять провод USB-miniUSB любой длины - вполне себе конкурент.

Пожалуй, закажу себе ещё такой, в детскую.