[Модуль] Xiaomi Home (xiaomihome)

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

Модератор: immortal

dengi.76
Сообщения: 222
Зарегистрирован: Вт фев 06, 2018 9:40 pm
Откуда: Пермь
Благодарил (а): 117 раз
Поблагодарили: 7 раз

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение dengi.76 » Чт янв 09, 2020 4:30 pm

Друзья, нужна помощь ! Установил второй ( по счёту ) Gateway 2, открыл порты ( точно открыл !), ключ и токен ввёл правильные, модуль xiaomihome и xiaomimiio гейт видят и получает данные..., но вот управления через MD НЕТ !!! Уже всю голову сломал - не могу понять в чём дело !?! Может кто сталкивался ??? MD на Win10 alpha версия. Спасибо.
P.S. Конкретно - подключил выключатели, привязал все метрики ( не в первый раз всё это делаю ), а вот управления нет ( хотя когда нажимаешь на физические кнопки статусы в MD меняются ). В то же время через первый ( по счёту ) гейт всё управляется нормально !
dengi.76
Сообщения: 222
Зарегистрирован: Вт фев 06, 2018 9:40 pm
Откуда: Пермь
Благодарил (а): 117 раз
Поблагодарили: 7 раз

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение dengi.76 » Чт янв 09, 2020 6:45 pm

И ещё один вопрос , что это за ошибка в метриках выключателя ( данный выключатель как раз подключён к гейту с которого нет управления )
Вложения
Ashampoo_Snap_9 января 2020 г._20h34m18s_001_.jpg
Ashampoo_Snap_9 января 2020 г._20h34m18s_001_.jpg (169.86 КБ) 3351 просмотр
bartwell
Сообщения: 61
Зарегистрирован: Пн апр 23, 2018 11:10 am
Благодарил (а): 16 раз
Поблагодарили: 29 раз

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение bartwell » Чт янв 09, 2020 7:08 pm

VladPTZ писал(а):
Ср окт 24, 2018 7:48 pm

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

19:36:42 0.86632500 {"cmd":"report","model":"sensor_motion.aq2","sid":"158d0001e5xx","short_id":58010,"data":"{\"no_motion\":\"180\"}"}
19:35:55 0.96455500 {"cmd":"report","model":"sensor_motion.aq2","sid":"158d0001e5xxx","short_id":58010,"data":"{\"no_motion\":\"120\"}"}
19:33:44 0.91403800 {"cmd":"report","model":"sensor_motion.aq2","sid":"158d0001e5bxxx","short_id":58010,"data":"{\"lux\":\"0\"}"}
19:30:56 0.07406800 {"cmd":"report","model":"sensor_motion.aq2","sid":"158d0001e5xxxd","short_id":58010,"data":"{\"no_motion\":\"1800\"}"}
19:21:02 0.83795400 {"cmd":"report","model":"sensor_motion.aq2","sid":"158d0001e5xxx","short_id":58010,"data":"{\"no_motion\":\"1200\"}"}
Вот пример не сработки датчика движение, явление это не редкое.
Почему не пришло сообщение

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

19:00:54 0.93020900 {"cmd":"report","model":"sensor_motion.aq2","sid":"158d0001e5xxx","short_id":58010,"data":"{\"status\":\"motion\"}"} ?
У меня такая же проблема. По сути она заключается в том, что если приходят подряд и быстро два мультикаст-пакета, то второй пакет теряется. То есть, происходит движение, шлюз шлет сразу lux и motion, lux проходит, motion теряется. Происходит это где-то на уровне системы. Проверяется легко, если запустить tcpdump dst port 9898 -X в SSH, параллельно мониторя пакеты с помощью приложения на Android.

Еще интересный момент, что в статистике большое число в графе IgnoredMulti:

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

# watch -d "cat /proc/net/snmp | grep -w Udp"

Every 2,0s: cat /proc/net/snmp | grep -w Udp                                                                                                                                                                                         BArtWell-Server: Tue Jan  7 15:36:38 2020

Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors InCsumErrors IgnoredMulti
Udp: 252376 567 385 163222 0 0 385 9288
Решения пока не нашел. Debian на Samsung NC10 с 1 GB оперативки.
bartwell
Сообщения: 61
Зарегистрирован: Пн апр 23, 2018 11:10 am
Благодарил (а): 16 раз
Поблагодарили: 29 раз

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение bartwell » Чт янв 09, 2020 7:48 pm

А может ли быть такое из-за малого количества оперативки? Есть ли у кого опыт с Debian и датчиками движения от Xiaomi? На каком количестве оперативки у вас все нормально работает и пакеты не теряются?
Аватара пользователя
ipc2002
Сообщения: 125
Зарегистрирован: Пн май 15, 2017 8:13 pm
Откуда: Москва
Благодарил (а): 102 раза
Поблагодарили: 14 раз
Контактная информация:

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение ipc2002 » Пт янв 10, 2020 12:50 am

dengi.76 писал(а):
Чт янв 09, 2020 4:30 pm
Друзья, нужна помощь ! Установил второй ( по счёту ) Gateway 2, открыл порты ( точно открыл !), ключ и токен ввёл правильные, модуль xiaomihome и xiaomimiio гейт видят и получает данные..., но вот управления через MD НЕТ !!! Уже всю голову сломал - не могу понять в чём дело !?! Может кто сталкивался ??? MD на Win10 alpha версия. Спасибо.
P.S. Конкретно - подключил выключатели, привязал все метрики ( не в первый раз всё это делаю ), а вот управления нет ( хотя когда нажимаешь на физические кнопки статусы в MD меняются ). В то же время через первый ( по счёту ) гейт всё управляется нормально !
Не претендую на истинность, но мне кажется, что модуль на работу с одним гейтвеем рассчитан...
Аватара пользователя
ipc2002
Сообщения: 125
Зарегистрирован: Пн май 15, 2017 8:13 pm
Откуда: Москва
Благодарил (а): 102 раза
Поблагодарили: 14 раз
Контактная информация:

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение ipc2002 » Пт янв 10, 2020 12:54 am

ILGAS писал(а):
Вт янв 07, 2020 10:19 am
На конец дошли руки и открыл порты через uart. Но данные приходя по датчикам температуры и влажности очень редко, приблизительно 1 раз в 1 час, Это нормально? Можно ли чаще получать и как?

Отправлено с моего Redmi Note 7 через Tapatalk
Они вроде бы либо по факту изменения отправляют данные, либо раз в час. Т.ч. никак иначе...
Аватара пользователя
ipc2002
Сообщения: 125
Зарегистрирован: Пн май 15, 2017 8:13 pm
Откуда: Москва
Благодарил (а): 102 раза
Поблагодарили: 14 раз
Контактная информация:

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение ipc2002 » Пт янв 10, 2020 1:31 am

skyrider писал(а):
Чт янв 09, 2020 2:35 pm

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

$ugol=getGlobal('dd.ugol_h');
А какие значения может принимать эта переменная? Целочисленные положительные/отрицательные, только: "0, 1, -1"?
AndySot
Сообщения: 24
Зарегистрирован: Пт окт 11, 2019 9:44 pm
Благодарил (а): 1 раз
Поблагодарили: 7 раз

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение AndySot » Пт янв 10, 2020 2:31 am

skyrider писал(а):
Чт янв 09, 2020 2:35 pm
Всем добрый день и с прошедшим Н.Г. и Рождеством!!! Вопрос.
Подключил Xiaomi Aqara Magic Cube через модуль мажордомо XiaomiHome, работает. Решил на вращение куба влево и вправо повесить регулировку громкости сервера мажордомо по этой статье:
https://connect.smartliving.ru/profile/ ... og205.html
Громкость регулируется, но если крутить кубик значение ThisComputer.volumeLevel может уходить далеко за 100 (150, 200, 300 и т.д.), и также в минус(-10, -30, -100 и т.д.)
Как можно ограничить диапазон значения ThisComputer.volumeLevel от 0 до 100 в коде ниже:

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

$ugol=getGlobal('dd.ugol_h');
$volumeLevel=getGlobal('ThisComputer.volumeLevel');
$corrective=1.8;//подстройка под себя насколько чуствительно будет

$volumeNew = (int)($volumeLevel + round($ugol/$corrective));
if ($volumeNew == 0) {
 if ($ugol < 0 ) $volumeNew = -1;
 else $volumeNew = 1;
}

if($volumeNew < 100 && $volumeNew > 0 ) {
setGlobal('ThisComputer.volumeLevel',$volumeNew);
} 

else if ($volumeNew < 0){
 setGlobal('ThisComputer.volumeLevel',0);
}

else if ($volumeNew > 100){
 setGlobal('ThisComputer.volumeLevel',100);
}
Вот так работает.... 'Cube.rotate' - заменить на своё свойство.

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

$ugol=getGlobal('Cube.rotate');
$volumeLevel=getGlobal('ThisComputer.volumeLevel');
$corrective=1.8;//подстройка под себя насколько чувствительно будет

$volumeNew = (int)($volumeLevel + round($ugol/$corrective));

if($volumeNew < 100 && $volumeNew > 1 ) {
setGlobal('ThisComputer.volumeLevel',$volumeNew);
} 

else if ($volumeNew < 1){
 setGlobal('ThisComputer.volumeLevel',0);
}

else if ($volumeNew > 100){
 setGlobal('ThisComputer.volumeLevel',100);
}

$matches=getGlobal('ThisComputer.volumeLevel');

cm('ThisComputer.VolumeLevelChanged',array('VALUE'=>$matches));
За это сообщение автора AndySot поблагодарили (всего 2):
antpino (Пт янв 10, 2020 7:46 am) • skyrider (Пт янв 10, 2020 10:10 pm)
Рейтинг: 2.33%
klv666
Сообщения: 175
Зарегистрирован: Вс янв 20, 2019 10:48 am
Благодарил (а): 64 раза
Поблагодарили: 19 раз

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение klv666 » Пт янв 10, 2020 6:34 am

skyrider писал(а):
Чт янв 09, 2020 2:35 pm
Всем добрый день и с прошедшим Н.Г. и Рождеством!!! Вопрос.
Подключил Xiaomi Aqara Magic Cube через модуль мажордомо XiaomiHome, работает. Решил на вращение куба влево и вправо повесить регулировку громкости сервера мажордомо по этой статье:
https://connect.smartliving.ru/profile/ ... og205.html
Громкость регулируется, но если крутить кубик значение ThisComputer.volumeLevel может уходить далеко за 100 (150, 200, 300 и т.д.), и также в минус(-10, -30, -100 и т.д.)
Как можно ограничить диапазон значения ThisComputer.volumeLevel от 0 до 100 в коде ниже:

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

$ugol=getGlobal('dd.ugol_h');
$volumeLevel=getGlobal('ThisComputer.volumeLevel');
$corrective=1.8;//подстройка под себя насколько чуствительно будет

$volumeNew = (int)($volumeLevel + round($ugol/$corrective));
if ($volumeNew == 0) {
 if ($ugol < 0 ) $volumeNew = -1;
 else $volumeNew = 1;
}

if($volumeNew < 100 && $volumeNew > 0 ) {
setGlobal('ThisComputer.volumeLevel',$volumeNew);
} 

else if ($volumeNew < 0){
 setGlobal('ThisComputer.volumeLevel',0);
}

else if ($volumeNew > 100){
 setGlobal('ThisComputer.volumeLevel',100);
}
Здесь самое главное корректно метод вызвать, если использовать callMethod('ThisComputer.VolumeLevelChanged',array('VALUE'=>$volumeNew)); то будут вылеты, можно исправить если добавить назначение переменной $volumeNew в условиях else if ($volumeNew < 0){ и else if ($volumeNew > 100){
либо использовать стандартный вызов метода callMethod('ThisComputer.VolumeLevelChanged',array('VALUE'=>$matches));
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Xiaomi Home (xiaomihome)

Сообщение nick7zmail » Пт янв 10, 2020 3:26 pm

Zenden писал(а):
Чт янв 09, 2020 3:55 pm
Появилось реле.
Стоит Михом от Vevs, регион Россия.
Переключился на Китай. Прицепил шлюз. Обновилась прошивка.
Да, естественно появились они после обновления прошивки)) Не просто же так =D
directman66 писал(а):
Ср янв 08, 2020 7:31 pm

Покажи скриншоты метрик.
Метрики, как у 2хканального выключателя, ничего интересного...интерлок у меня с моими реле в принципе не захотел работать даже в mihome...его пробуешь включить - реле отваливалось.
directman66 писал(а):
Чт янв 09, 2020 2:01 pm
Может и лампочки появились? Какая версия прошивки?
Версия прошивки 1.4.1_175.0158...хотя ща зашел - ещё одна появилась)) 175.0220
Может и лампочки появились)) у меня нет совместимых к сожалению...не могу протестить.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Ответить