code device
Re: code device
Продолжу тему на предмет Code Devices. Создал я виртуальное реле типа SwitchBinary и привязал её к GPIO24 на Raspberry. Для включения реле прописал команду:
Для выключения:
Всё прекрасно работает, но не пойму, как заставить Z-Way отслеживать состояние этого реле. Пишу в запросе состояния:
Возвращает:
Что надо подправить?
Где прочитать про этот Code Device? Про system узнал не из доков, а где-то в тырнете...
Code: Select all
system('echo "1" > /sys/class/gpio/gpio24/value');
Code: Select all
system('echo "0" > /sys/class/gpio/gpio24/value');
Code: Select all
system('if [[ $(cat /sys/class/gpio/gpio24/value) == "1" ]]; then echo "on"; else echo "off"; fi')
Хотя скрипт в баше отрабатывает правильно: возвращает ON или OFF в зависимости от состояния.0, off
Что надо подправить?
Где прочитать про этот Code Device? Про system узнал не из доков, а где-то в тырнете...
Re: code device
Прочитать нужно про system(). Он возвращает код выполнения команды первым параметром, а вывод вторым.
Потому ответ:
system('if [[ $(cat /sys/class/gpio/gpio24/value) == "1" ]]; then echo "on"; else echo "off"; fi')[1]
но лучше сделать так:
system('cat /sys/class/gpio/gpio24/value')[1] == "1" ? "on" : "off"
Потому ответ:
system('if [[ $(cat /sys/class/gpio/gpio24/value) == "1" ]]; then echo "on"; else echo "off"; fi')[1]
но лучше сделать так:
system('cat /sys/class/gpio/gpio24/value')[1] == "1" ? "on" : "off"
Re: code device
Разобрался уже ))
Но всё равно спасибо, мил человек)))
Ещё вопрос про denied by policy. Изначально в файл .syscommands ничего не писал и все команды работали. Потом что-то глюкнуло (включил SPI интерфейс)))), в общем параметры порта ttyAMA0 слетели. Не долго думая, заинсталлировал ещё раз я-way. После этого команды cat и echo возвращали Error: This command is denied by policy. Записал их в файл /opt/../.syscommands и они стали выполняться как и раньше. Отчего такое происходит? К слову, второй экземпляр z-way заинсталился в папку рядом с первым экземпляром + дописал в названии папки текущую дату, но выполняется из папки первого экземпляра.
Но всё равно спасибо, мил человек)))
Ещё вопрос про denied by policy. Изначально в файл .syscommands ничего не писал и все команды работали. Потом что-то глюкнуло (включил SPI интерфейс)))), в общем параметры порта ttyAMA0 слетели. Не долго думая, заинсталлировал ещё раз я-way. После этого команды cat и echo возвращали Error: This command is denied by policy. Записал их в файл /opt/../.syscommands и они стали выполняться как и раньше. Отчего такое происходит? К слову, второй экземпляр z-way заинсталился в папку рядом с первым экземпляром + дописал в названии папки текущую дату, но выполняется из папки первого экземпляра.
Re: code device
В папке с датой старая версия. Новая в /opt/z-way-server/
Думаю, и ранее были эти строки в .syscommands. Так было с самого начала, видимо забыли, что писали. Или была супер старая версия (хотя, кажется, так с первого дня system()).
Думаю, и ранее были эти строки в .syscommands. Так было с самого начала, видимо забыли, что писали. Или была супер старая версия (хотя, кажется, так с первого дня system()).
Re: code device
Привет
Может мне кто ответит тоже тут?
Вроде и задача простая, а неееет
https://forum.z-wave.me/viewtopic.php?f=3419&t=23722
Спасибо!
Может мне кто ответит тоже тут?
Вроде и задача простая, а неееет
https://forum.z-wave.me/viewtopic.php?f=3419&t=23722
Спасибо!
Re: code device
Я сейчас попробовал с Dummy Device вместо Code Device и оно работает. Состояние переключается если в бровзере набираю10der wrote:Привет
Может мне кто ответит тоже тут?
Вроде и задача простая, а неееет
https://forum.z-wave.me/viewtopic.php?f=3419&t=23722
Спасибо!
Code: Select all
http://127.0.0.1:8083/ZAutomation/api/v1/devices/DummyDevice_41/command/on
Re: code device
я в курсе про дамми девайс. но я хотел девайс _без_ регуляторов и переключаторов - r/o
ну что придется сделать копию dummy dev и добавить самому что я хочу.
печаль.
ну что придется сделать копию dummy dev и добавить самому что я хочу.
печаль.
Re: code device
то-есть сенсор? Как тогда обновлятиь статус? Через HTTP не получится же. Самому интересно. По мне так и Дамми Дейвас подошел бы. Просто не переключать через гуи.10der wrote:я в курсе про дамми девайс. но я хотел девайс _без_ регуляторов и переключаторов - r/o
ну что придется сделать копию dummy dev и добавить самому что я хочу.
печаль.
Re: code device
ща по русски еще раз объясню. =)
есть rpi стоящий в комнате (к zway отношения не имеет. просто rpi + pioneer600, я прикрутил часы на дисплей + кучу датчиков насувал....) так вот я хочу по событию на этой rPi отсылать инфу разную на zway. в частости инфу о датчике движения в этой комнате - т.е. не что бы zway постоянно "поллил" бедную rpi, а моя rpi сама сообщила котролеру что датчик сработал. Ну и в качестве бонуса еще кое какие мелочи хочу сообщать на контроллер - дотчик звука я научил отсылать кол-во хлопков - хлопнул 2 раза - rpi у меня отсылает на контролер на рид-онли мультисенсор - 2, хлопнул 3 раза - отсылает 3... ну и соотв. можно повесится на это событие...
т.е. мне банально нужны readonly dummy устростройства, которые я смогу обновлять через http api
как то так...
есть rpi стоящий в комнате (к zway отношения не имеет. просто rpi + pioneer600, я прикрутил часы на дисплей + кучу датчиков насувал....) так вот я хочу по событию на этой rPi отсылать инфу разную на zway. в частости инфу о датчике движения в этой комнате - т.е. не что бы zway постоянно "поллил" бедную rpi, а моя rpi сама сообщила котролеру что датчик сработал. Ну и в качестве бонуса еще кое какие мелочи хочу сообщать на контроллер - дотчик звука я научил отсылать кол-во хлопков - хлопнул 2 раза - rpi у меня отсылает на контролер на рид-онли мультисенсор - 2, хлопнул 3 раза - отсылает 3... ну и соотв. можно повесится на это событие...
т.е. мне банально нужны readonly dummy устростройства, которые я смогу обновлять через http api
как то так...