• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

CGPR1 Qingping Motion & Light

pvvx

Активный участник сообщества

Чипсет на базе TLSR825x. OTA на смарте с помощью Chrome работает...

Мелкие подробности по UUID, лог рекламных пакетов по событиям тут.
(Логи сняты с помощью AdScanerTrg. Добавить в него управление "реле" по всевозможным условиям от CGPR1 - дело одного вечера...)

CGPR1 имеет примерно такой набор рекламных сообщений без регистрации в mijia:
  1. Каждую секунду передает значение освещения и батареи.
  2. По разным событиям производит передачу быстро-следующих повторяющихся рекламных пакетов.
Отслеживаемые события:
  • Включение света, с сопровождением флагом - резкое изменение освещенности в большую сторону.
  • Отключение света, с сопровождением флагом - резкое изменение освещенности в меньшую сторону.
  • Близкое движение. Сильное изменение на ИК датчике.
  • Дальнее движение. Слабое изменение на ИК датчике.
Возникшие вопросы и т.д по мере тусовки в данных темах:
Разыскиваю полный декодер BLE пакетов реклам для Qingping, т.к. пока в имеющихся "Вумных домах" поддержка всего до 10%.
Есть запросы на custom прошивку, но я не могу понять смысл её создания. Кто может описать зачем она нужна и какой ещё функционал необходим?
 

pvvx

Активный участник сообщества
Данный датчик имеет и такую особенность:

BLE advertising следуют каждую секунду (advertising interval = 1 сек).

При работе в режиме Qingping (в состоянии из коробки) – данные освещенности и заряда батареи передаются каждую секунду.
Но, после регистрации в Mi-Home трансляция BLE advertising в открытом формате Qingping отключается и датчик переходит в режим работы с форматами mija. В режиме mijia передача BLE advertising осуществляется в с шифрацией bindkey, для OTA так-же потребуются все ключи. Так-же, в режиме mijia, постоянная передача в BLE рекламе текущего значения освещенности и уровня батареи отключена и показания передается только при событиях – т.е. в покое датчик каждую секунду передает пустой пакет advertising с идентификацией mijia. Возможность переключить работу датчика в режим Qingping из mijia без плясок c бубном пока не найдена.
Среднее потребление датчиком при отсутствии событий от соединенных в параллель двух батареек CR2450 (3В) - 35 мкА.
 

pvvx

Активный участник сообщества
Похоже, что очень длительное нажатие на кнопку (когда перестанет мигать светодиодом), сбрасывает CGPR1 в начальный режим Qingping.
1636608502155.png
 

pvvx

Активный участник сообщества
Слепил новую программу для модулей с TLSR8266 (JDY-10, E104-BT05, ..) работающую с данным сенсором (без посредников).
Модуль работает на 3 выхода к реле:
  1. GPIO_TH - Включение по заданной температуре или влажности с гистерезисом. Поддерживаемые устройства: LYWSD03MMC, CGG1-M, MHO-C401, LYWSD02, ...
  2. GPIO_RS - Дублирование подключенного геркона в LYWSD03MMC.
  3. GPIO_LM - Выход включения света по датчику типа CGPR1. Датчик должен быть включен в режим Qingping.
Пример страницы настроек:

Задаются MAC внешних датчиков и значения для переключений.
Если гистерезис равен 0 - сравнение отключено, положительный - срабатывание при большем значении, отрицательный - при меньшем значении.
Если 'Motion Timer' равен 0 - включение по движению отключено, число с 1 до 65535 - время включения при обнаружении движения.
Установка 'Weak signal activation' переключает на срабатывание по слабому изменению от датчика движения.
При задании триггера по падению уровня освещения и таймера движения - будет включать свет если темно...
Т.к. работает напрямую, без посредников, то скорость срабатывания при обнаружении движения внешним BLE датчиком - максимальная.

Так-же устройство может выполнять функцию репитера рекламных пакетов от любых ближайших датчиков...
 

Lstt

Member
Слепил новую программу для модулей с TLSR8266 (JDY-10, E104-BT05, ..) работающую с данным сенсором (без посредников).
Добрый день! А точно нет багов в последней версии? Есть пара этих ДД, в режиме Qinping, просто в браузерах видятся, а через сканер - нет.
 

Вложения

pvvx

Активный участник сообщества
Добрый день! А точно нет багов в последней версии? Есть пара этих ДД, в режиме Qinping, просто в браузерах видятся, а через сканер - нет.
Точнее опишите на какой модуль поставили. У разных модулей с TLSR8266 разные кварцы и надо менять в исходниках.
Уже прилепил и вариант для TLSR825x, уже понимает устройства с bindkey.
1639492942517.png
 

pvvx

Активный участник сообщества
Добрый день! А точно нет багов в последней версии? Есть пара этих ДД, в режиме Qinping, просто в браузерах видятся, а через сканер - нет.
Сканер работает с устройствами на DIY модулях c TLSR82xx чипами, прошитыми программами из указанных в гит.
 

Lstt

Member
Если 'Motion Timer' равен 0 - включение по движению отключено, число с 1 до 65535 - время включения при обнаружении движения.
А есть шанс как-то записать значение таймера отключения сработки события (например, 5,10 и т.д. секунд) в сам датчик, но при этом продолжать использовать режим Qingping, не активируя есть в режим MiHohe?
 

pvvx

Активный участник сообщества
А есть шанс как-то записать значение таймера отключения сработки события (например, 5,10 и т.д. секунд) в сам датчик, но при этом продолжать использовать режим Qingping, не активируя есть в режим MiHohe?
Наверняка. Но мне пока этого не требовалось. Думаю, что в скором посмотрю какой UUID и какая там команда управляет этим...
По умолчанию (из коробки) он и так шустрый.
 

pvvx

Активный участник сообщества
По умолчанию (из коробки) он видимо установлен на 5 сек.
Вообще датчик передает изменения освещения в режиме Qingping с шагом около 2 сек - за два цикла передачи рекламы. Одна реклама идет с пустым сообщением в формате mijia (с флагом нет регистрации), следующая, на следующей секунде - в формате Qingping с данными яркости.
 

Lstt

Member
Спасибо, просто думал, возможно ли в принципе, программно менять показатель задержки флага PIR=true
 

pvvx

Активный участник сообщества
Спасибо, просто думал, возможно ли в принципе, программно менять показатель задержки флага PIR=true
Что это за флаг такой?

Время таймера устанавливается в мс:

Service Name: 22210000-554a-4546-5542-46534450464d
Characteristic Name: 1 - Characteristic Short UUID: 0x0001 - Value:
Characteristic Name: 2 - Characteristic Short UUID: 0x0002 - Value: 04-FF-00-02-00
Characteristic Name: 23 - Characteristic Short UUID: 0x0017 - Value: запись туда 01-13 выводит в Chs[0x0018] 05-13-xx-xx-xx-xx
Characteristic Name: 24 - Characteristic Short UUID: 0x0018 - Value: 05-13-88-B8-00-00 // 0xB888 = 35000 = 35 сек
Characteristic Name: 256 - Characteristic Short UUID: 0x0100 - Value: 05-03-00-5C-14-00 // это 5212 lux, 00 - motion timer on?
 
Сверху Снизу