[Модуль] Broadlink (dev_broadlink)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Broadlink

Сообщение nick7zmail » Ср дек 06, 2017 8:45 pm

Всем привет.
Грянуло очередное обновление всем на голову =D.
Изменена логика запроса всех устройств.
Статусы всех устройств помимо S1 теперь передаются постоянно. S1 передаёт постоянно только "единички" при срабатываниях датчиков движения.
И нет, это не просто взбрело мне в голову...это решает целых 2 проблемы...
1) Работа простых устройств...ранее запрос менял статус только при изменении значения. При этом в простых устройствах есть свойство alive, которое, как бы, показывает живо устройство или нет. И соответственно если статус менялся давно (а у меня порой месяцами на некоторых устройствах не меняются статусы)), то система как бы думает что устройство "сдохло", что ни есть хорошо. Засылая постоянно статусы - исправляем проблему.
2) Почему на s1 подругому? Там, к примеру, при срабатывании датчика движения запускается метод ответственный за движения, и он будет запускаться постоянно, даже если будут лететь "нули", чего нам, вроде как, не надо. А единички посылаются постоянно, что опять же даёт ещё 1 плюс...Ранее, если при движении включался какой-либо прибор, а через определенный промежуток он должен был отключится - запускался таймер...и т.к. от устройства не приходили постоянно "единички" - таймер не сбрасывался. Сбрасывался, только когда скинется на 0 (движения не будет некоторое время), а потом снова появится - и только тогда он сбрасывался. Это приводило к тому, что включили устройство по движению - сделали логику, что если 45 сек нет движения - устройство вырубается - движение по факту есть, таймер не сбрасывается - устройство благополучно вырубается через 45 сек. Сейчас таймеры привязанные сбрасывается постоянно, пока есть движение, и включенные приборы выключаться будут только по окончанию движения.

Добавлены свойства tamper и batterylow (наверное не совсем, как вы ожидали...можете покритиковать =D ) Если одно из них срабатывает - под датчиком появляются соответствующие надписи.
Чтобы система могла как-то реагировать на данные события - они выставляются в выбранный объект для конкретного датчика, в одноименные свойства (tamper и batterylow). Если хотите какой-либо реакции на них - просто привяжите метод к данным свойствам. Из метода можно передавать значения, к примеру, в те же отдельные простые устройства, если вы того пожелаете)) Хотя отдельное простое устройство создавать для состояния батарейки - как то бредово =). Ну да ладно, дело ваше...

Как и другие обновы, касающиеся S1 - ничего, к сожалению, не проверено, за неимением самого устройства.
За это сообщение автора nick7zmail поблагодарили (всего 7):
Logrus (Ср дек 06, 2017 8:57 pm) • VooDooN (Ср дек 06, 2017 9:19 pm) • dr.pavlov.alex (Ср дек 06, 2017 9:40 pm) • kawkay (Чт дек 07, 2017 3:43 pm) • ipc2002 (Пт дек 08, 2017 12:28 am) • Denis_k (Сб дек 09, 2017 12:55 pm) • TrDA (Чт фев 08, 2018 10:00 pm)
Рейтинг: 8.14%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Logrus
Сообщения: 2084
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: [Модуль] Broadlink

Сообщение Logrus » Ср дек 06, 2017 8:57 pm

нихрена не понял, но плюсану на всякий случай )))
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
dr.pavlov.alex
Сообщения: 103
Зарегистрирован: Вс апр 23, 2017 7:09 pm
Благодарил (а): 38 раз
Поблагодарили: 1 раз

Re: [Модуль] Broadlink

Сообщение dr.pavlov.alex » Ср дек 06, 2017 9:37 pm

Устройства перестали обновляться по заданному времени, только вручную по кнопке обновить.
Что касается S1 то в простых устройствах показания передавались в свойство Status и то, что вы описываете про таймеры и так работало. Не совсем понял в чем суть. MS1 перестала реагировать на нажатия кнопок в модуле.
Последний раз редактировалось dr.pavlov.alex Ср дек 06, 2017 9:42 pm, всего редактировалось 1 раз.
Aopen de7000 на Ubuntu 16.04.4 LTS+Broadlink
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Broadlink

Сообщение nick7zmail » Ср дек 06, 2017 9:42 pm

Проверьте цикл. Возможно перезапустить надо после обновления.
Они передавались в свойство статус, но только при изменении....и если их долго "не трогать" - не менять статус - свойство alive менялось на 0 (система как бы считала, что устройство отвалилось).
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
Maxmudjon
Сообщения: 25
Зарегистрирован: Ср авг 16, 2017 1:34 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: [Модуль] Broadlink

Сообщение Maxmudjon » Чт дек 07, 2017 1:32 am

nick7zmail писал(а):Всем привет.
Грянуло очередное обновление всем на голову =D.
Изменена логика запроса всех устройств.
Статусы всех устройств помимо S1 теперь передаются постоянно. S1 передаёт постоянно только "единички" при срабатываниях датчиков движения.
И нет, это не просто взбрело мне в голову...это решает целых 2 проблемы...
1) Работа простых устройств...ранее запрос менял статус только при изменении значения. При этом в простых устройствах есть свойство alive, которое, как бы, показывает живо устройство или нет. И соответственно если статус менялся давно (а у меня порой месяцами на некоторых устройствах не меняются статусы)), то система как бы думает что устройство "сдохло", что ни есть хорошо. Засылая постоянно статусы - исправляем проблему.
2) Почему на s1 подругому? Там, к примеру, при срабатывании датчика движения запускается метод ответственный за движения, и он будет запускаться постоянно, даже если будут лететь "нули", чего нам, вроде как, не надо. А единички посылаются постоянно, что опять же даёт ещё 1 плюс...Ранее, если при движении включался какой-либо прибор, а через определенный промежуток он должен был отключится - запускался таймер...и т.к. от устройства не приходили постоянно "единички" - таймер не сбрасывался. Сбрасывался, только когда скинется на 0 (движения не будет некоторое время), а потом снова появится - и только тогда он сбрасывался. Это приводило к тому, что включили устройство по движению - сделали логику, что если 45 сек нет движения - устройство вырубается - движение по факту есть, таймер не сбрасывается - устройство благополучно вырубается через 45 сек. Сейчас таймеры привязанные сбрасывается постоянно, пока есть движение, и включенные приборы выключаться будут только по окончанию движения.

Добавлены свойства tamper и batterylow (наверное не совсем, как вы ожидали...можете покритиковать =D ) Если одно из них срабатывает - под датчиком появляются соответствующие надписи.
Чтобы система могла как-то реагировать на данные события - они выставляются в выбранный объект для конкретного датчика, в одноименные свойства (tamper и batterylow). Если хотите какой-либо реакции на них - просто привяжите метод к данным свойствам. Из метода можно передавать значения, к примеру, в те же отдельные простые устройства, если вы того пожелаете)) Хотя отдельное простое устройство создавать для состояния батарейки - как то бредово =). Ну да ладно, дело ваше...

Как и другие обновы, касающиеся S1 - ничего, к сожалению, не проверено, за неимением самого устройства.
Привет карнизы Dooya не обнаруживается что делать ?
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Broadlink

Сообщение nick7zmail » Чт дек 07, 2017 7:39 am

Хм...проверю обязательно...но кроме s1 вроде как ничего не трогал. Надо смотреть.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
vitt76
Сообщения: 372
Зарегистрирован: Вс апр 09, 2017 2:36 pm
Благодарил (а): 101 раз
Поблагодарили: 51 раз

Re: [Модуль] Broadlink

Сообщение vitt76 » Чт дек 07, 2017 8:49 pm

nick7zmail, по-моему не очень хорошая идея, я когда-то просил как раз не передавать промежуточные одинаковые значения статусов :(
они как минимум забивают лог
а сейчас датчики моих S1 и S2 постоянно обновляются и время срабатывания все время сбрасывается на "только что - 10 секунд", хотя никто двери не открывает и не ходит.
И постоянно прыгает активность

Код: Выделить всё

Кто-то есть. Активность: Квартира, Первый этаж. 
Давайте вернем как было, пожалуйста!
Broadlink + Orange Pi PC ARMBIAN 5.31
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Broadlink

Сообщение nick7zmail » Чт дек 07, 2017 8:57 pm

Тут вопрос как обнаружение активности задано...
Промежуточные статусы не передаются, только когда они равны 0. А единички передаются постоянно. Я считаю - это правильное решение, иначе просто невозможно было пользоваться к примеру датчиками движения для включения света, и последующего его выключения по таймеру, ибо таймер не сбрасывался при движении, а сбрасывался только после его прекращения, и нового движения, что в корне не правильно.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
vitt76
Сообщения: 372
Зарегистрирован: Вс апр 09, 2017 2:36 pm
Благодарил (а): 101 раз
Поблагодарили: 51 раз

Re: [Модуль] Broadlink

Сообщение vitt76 » Чт дек 07, 2017 9:03 pm

nick7zmail, у меня свет по датчику движения прекрасно работал, а теперь на всех датчиках постоянно сбрасывается время обновления, что делать-то?
Broadlink + Orange Pi PC ARMBIAN 5.31
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Broadlink

Сообщение nick7zmail » Чт дек 07, 2017 9:06 pm

А вы ставили таймер на выключение к примеру? На датчиках время обновления должно сбрасываться только когда есть движение, или дверь открыта...иначе должно, как и раньше работать.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Ответить