Страница 11 из 217

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Чт мар 30, 2017 3:33 pm
nooze
Rad81 писал(а):
Это все что требуется или может я что-то упустил и зря жду чуда?
Лично на моей системе все работает без кода.
Заработало!
Надо было обратить внимание на "error:invalid_key" - почему-то старый ключ который работал нормально перестал приниматься шлюзом (причина мне не понятна) и в приложении Mi home я сделал новый ключ, обновил его в majordomo и все заработало!

Что касается кода - ваша правда, он не нужен для работы подсветки. Но зато я знаю теперь как менять подсветку шлюза без выборщика цвета )

Теперь приступлю к реализации своей первой задумки - цвет шлюза в зависимости от показаний датчика температуры на улице )
Спасибо за помощь!

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Чт мар 30, 2017 3:59 pm
Rad81
Потом поделитесь задумка хорошая.

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Чт мар 30, 2017 11:18 pm
nooze
Rad81 писал(а):Потом поделитесь задумка хорошая.
Обязательно! В принципе я уже все реализовал, подбираю цвета и донастраиваю

Тем временем забрал с почты еще 2 xiaomi девайса серии Aqara

Изображение

1 (слева) - беспроводной переключатель на две кнопки. С ним все хорошо, определился готовый к "простым устройствам"

Изображение

А вот со вторым (на фото справа) - проводным выключателем тоже на две клавиши, только тем который страивается в стену повезло уже не так сильно

Изображение

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

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Пт мар 31, 2017 12:16 am
nooze
Вот еще наковырял такой момент

В общем классе модуля по устройства xiaomi есть такой отрывок

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

if ($command=='report' && isset($message_data['data']['rgb']) && $message_data['model']=='gateway') {
                    $command='rgb';
                    $value=substr(dechex($message_data['data']['rgb']),-6);
                } 
В этот момент скрипт как раз выхватывает из данных полученных от шлюза код RGB цвета
Вот только в процессе он из полученного значения (типа 4bff00f9) забирает только последние 6 символов выкидывая остальное.
А как оказалось - очень зря )) Ведь именно в первой части до rgb цвета заложено значение яркости.
Оно десятеричное - от 2 (по крайней мере это минимум который дает выставить Mi Home, хоть и говорит что это 0) до 100

И чтобы получить его нужно дописать строку например

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

$brightness=hexdec(substr(dechex($message_data['data']['rgb']),0,-6)); 
(извиняюсь за корявый код, полу-сплю)
Что с этим дальше делать я честно говоря не знаю, т.к. беглым взглядом скрипт за раз берет только одно значение, а надо разбить его на два и я видел в других местах что это возможно, но я там пока не так глубоко ковырялся.

Ну и дальше во время отправки видимо чтобы код принимался просто в начало дописывается ff что обозначает полную яркость (даже более чем, ведь полная яркость 100 будет в hex = 64, но видимо хаб прощает такой выход за рамки)

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

if ($command['TITLE']=='rgb') {
            $value=preg_replace('/^#/','',$value);
            if (strlen($value)<8 && hexdec($value)>0) {
                $value='ff'.$value;
            }
            $sendvalue=hexdec($value);

А хотелось бы яркость посылать отдельно

Т.к. я не очень глубоко знаком с тем как тут происходит обновление модулей и всякие организацонно-технические штуки, скажите что делать дальше с этой полезной информацией :D

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Пт мар 31, 2017 12:31 am
Сердобольный

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Пт мар 31, 2017 10:58 am
sergejey
nooze писал(а):...
А вот со вторым (на фото справа) - проводным выключателем тоже на две клавиши, только тем который страивается в стену повезло уже не так сильно
...
Так как он одновременно И управляющий И принимающий команды - логика переменных у него отличается от обычных кнопок. Тут придется уже шаманить.
Попробуйте пожалуйста обновить модуль, я немного переделал работу с такими выключателями, чтобы была одна команда со статусом 1/0, а не отдельные команды на включение/выключение каждого канала.

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Пт мар 31, 2017 12:28 pm
nooze
sergejey писал(а):
nooze писал(а):...
А вот со вторым (на фото справа) - проводным выключателем тоже на две клавиши, только тем который страивается в стену повезло уже не так сильно
...
Так как он одновременно И управляющий И принимающий команды - логика переменных у него отличается от обычных кнопок. Тут придется уже шаманить.
Попробуйте пожалуйста обновить модуль, я немного переделал работу с такими выключателями, чтобы была одна команда со статусом 1/0, а не отдельные команды на включение/выключение каждого канала.
Спасибо, теперь вот так.

Изображение

При авто-привязке предлагает тип устройства "Датчик открытия/закрытия". Управлять пока не пробовал - не дома.

Что касается дублирующего беспроводного выключателя - я немного поторопился сказав что он сразу заработал - на самом деле у него еще есть третье действие (кроме нажатия левой и правой клавиш) - это одновременное нажатие обоих.

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

report    {"dual_channel":"both_click"}      

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Пт мар 31, 2017 12:37 pm
sergejey
nooze писал(а):Что касается дублирующего беспроводного выключателя - я немного поторопился сказав что он сразу заработал - на самом деле у него еще есть третье действие (кроме нажатия левой и правой клавиш) - это одновременное нажатие обоих.

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

report    {"dual_channel":"both_click"}
Прикольно, не знал. Добавил поддержку команды both_click.

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Пт мар 31, 2017 12:55 pm
nooze
sergejey писал(а):
nooze писал(а):Что касается дублирующего беспроводного выключателя - я немного поторопился сказав что он сразу заработал - на самом деле у него еще есть третье действие (кроме нажатия левой и правой клавиш) - это одновременное нажатие обоих.

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

report    {"dual_channel":"both_click"} 
Прикольно, не знал. Добавил поддержку команды both_click.
Спасибо!

А что скажете насчет управлению яркостью подсветки хаба через свойство rgb?

Re: Модуль поддержки Xiaomi Smart Home

Добавлено: Пт мар 31, 2017 1:26 pm
sergejey
nooze писал(а):А что скажете насчет управлению яркостью подсветки хаба через свойство rgb?
Честно говоря, это было "быстрым" решением и его доработать пока не дошли руки. Я помечу себе, что есть необходимость в регулировании яркости и надо добавить команду для этого.