mysensors

AlexeyKr
Сообщения: 28
Зарегистрирован: Сб мар 30, 2013 7:34 am
Благодарил (а): 3 раза
Поблагодарили: 4 раза

Re: mysensors

Сообщение AlexeyKr » Сб ноя 22, 2014 1:29 am

Попробовал SOFT SPI для nRF24, без изменений. от гейта к MD сообщения проходят, от MD управление не распознается.
binladin
Сообщения: 143
Зарегистрирован: Чт фев 06, 2014 9:32 pm
Благодарил (а): 0
Поблагодарили: 5 раз

Re: mysensors

Сообщение binladin » Сб ноя 22, 2014 9:24 am

AlexeyKr писал(а):Попробовал SOFT SPI для nRF24, без изменений. от гейта к MD сообщения проходят, от MD управление не распознается.
Пардоньте за глупый вопрос, но mqtt_daemon.php у Вас запущен ? Вы уверены?
У меня так было - первый раз все ок, а на следующий день, я 2 часа поратил, чтобы понять, что надо запустить скрипт.
AlexeyKr
Сообщения: 28
Зарегистрирован: Сб мар 30, 2013 7:34 am
Благодарил (а): 3 раза
Поблагодарили: 4 раза

Re: mysensors

Сообщение AlexeyKr » Сб ноя 22, 2014 9:54 am

mqtt_daemon.php - для приема сообщений от брокера. Это работает, и сообщения в MD появляются.
Не работает другое - брокер с W5100: управление от MD через брокер в ноду, управление светом, не проходит, а с enc28j60 - проходит.
На логах видно...
это с enc28j60 - с ним работает

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

<<10 23 00 06 4D 51 49 73 64 70 03 02 00 0A 00 15 4D 61 6A 6F 72 44 6F 4D 6F 20 4D 51 54 54 20 43 6C 69 65 6E 74 
>>20 02 00 00 
<<30 16 00 13 4D 79 4D 51 54 54 2F 32 30 2F 35 2F 56 5F 4C 49 47 48 54 31 E0 00 
0;0;3;0;9;send: 0-0-20-20 s=5,c=1,t=2,pt=0,l=2,st=ok:1а
а это с w5100: - реакции на входящий пакет << нет

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

<<10 23 
>>20 02 00 00 
<<00 06 4D 51 49 73 64 70 03 02 00 0A 00 15 4D 61 6A 6F 72 44 6F 4D 6F 20 4D 51 54 54 20 43 6C 69 65 6E 74 30 16 00 13 4D 79 4D 51 54 54 2F 32 30 2F 35 2F 56 5F 4C 49 47 48 54 30 E0 00
это с W5100, андроид приложение отправляет пакет короче, только топик и значение, и управление проходит:

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

<<30 16 00 13 4D 79 4D 51 54 54 2F 32 30 2F 35 2F 56 5F 4C 49 47 48 54 30 
0;0;3;0;9;send: 0-0-20-20 s=5,c=1,t=2,pt=0,l=1,st=ok:0
binladin
Сообщения: 143
Зарегистрирован: Чт фев 06, 2014 9:32 pm
Благодарил (а): 0
Поблагодарили: 5 раз

Re: mysensors

Сообщение binladin » Сб ноя 22, 2014 12:04 pm

Освобожусь, зацеплю релюху на ноду и попробую управлять.
Ivan
Сообщения: 1473
Зарегистрирован: Сб окт 12, 2013 11:03 pm
Благодарил (а): 49 раз
Поблагодарили: 327 раз

Re: mysensors

Сообщение Ivan » Пн ноя 24, 2014 4:33 pm

Дошли руки до попытки передачи. И тут всё стало.

Оказывается mySensors/MQTTGateway поддерживает только одно соединение
А MajorDomo занимает это соединение скриптом просушки событий.

То есть при передачи значения из MD идёт попытка сделать соединение на MQTTGateway

Как быть в этой ситуации?

Как вариант поставить промежуточную службу mosquitto. Но вот с настройками у меня как то нелады. Сама служба запускается. А как настроить Bridges на MQTTGateway 192.168.1.66 ??

-----
также копался с библиотекой команда request не обрабатывается в MQTTGateway.
Да и в самой mqtt не совсем понятно как это сделать (только публикацией свойства и последующей публикацией обратно в клиент)
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
binladin
Сообщения: 143
Зарегистрирован: Чт фев 06, 2014 9:32 pm
Благодарил (а): 0
Поблагодарили: 5 раз

Re: mysensors

Сообщение binladin » Пн ноя 24, 2014 5:26 pm

Ivan писал(а):Дошли руки до попытки передачи. И тут всё стало.

Оказывается mySensors/MQTTGateway поддерживает только одно соединение
А MajorDomo занимает это соединение скриптом просушки событий.
А где это посмотреть ?
То есть при передачи значения из MD идёт попытка сделать соединение на MQTTGateway

Как быть в этой ситуации?

Как вариант поставить промежуточную службу mosquitto. Но вот с настройками у меня как то нелады. Сама служба запускается. А как настроить Bridges на MQTTGateway 192.168.1.66 ??
Зачем Вам Бридж ? Воспользуйтесь на шлюзе скетчем MQTTClientGateway (он есть на форуме).
также копался с библиотекой команда request не обрабатывается в MQTTGateway.
Да и в самой mqtt не совсем понятно как это сделать (только публикацией свойства и последующей публикацией обратно в клиент)
Функциональность запрос/ответ можно организовать, соответствующим образом видоизменив структуру топиков MQTT. Т.е. запросчик должен публиковать свой запрос в топик вида "MyMQTT/20/0/V_LIGHT/REQUEST", и получать ответ от ноды в топике "MyMQTT/20/0/V_LIGHT/RESPONSE".
Например в Гаджеткипере функционал RPC реализован так:
Communication Protocols: MQTT RPC Protocol: JSON-RPC 2.0

How it works: (GadgetKeeper sends request, device responds)

Device (Thing) subscribes to a request topic on MQTT message broker
GadgetKeeper subscribes to the response topic on MQTT message broker
GadgetKeeper sends (publishes) a command to the request topic
Device receives command from the request topic
Device sends (publishes) a response to the response topic
GadgetKeeper receives the response
GadgetKeeper disconnects from MQTT message broker

(Device sends request, GadgetKeeper responds)

GadgetKeeper subscribes to a request topic on MQTT message broker
Device (Thing) subscribes to the response topic on MQTT message broker
Device sends (publishes) a command to the request topic
GadgetKeeper receives command from the request topic
GadgetKeeper sends (publishes) a response to the response topic
Device receives the response
GadgetKeeper disconnects from MQTT message broker
Либо искать вариант прикрутить WAMP, я так понимаю он умеет и RPC и Routed RPC.
По ссылке ниже можно посмотреть реализацию клиента Autobahn на JS: https://github.com/tavendo/AutobahnJS

Вот гляньте на картинку и сразу поймёте, чего нам не хватает для счастья - http://wamp.ws/static/img/gen/unified_r ... mp_iot.svg

А вот либа клиента и роутера на php - https://github.com/voryx/Thruway, есть ещё Ratchet.
AlexeyKr
Сообщения: 28
Зарегистрирован: Сб мар 30, 2013 7:34 am
Благодарил (а): 3 раза
Поблагодарили: 4 раза

Re: mysensors

Сообщение AlexeyKr » Пн ноя 24, 2014 8:44 pm

Оказывается mySensors/MQTTGateway поддерживает только одно соединение
А MajorDomo занимает это соединение скриптом просушки событий.
Эта проблема решается редактированием конфига UIPEthernet.
Libraries\UIPEthernet\utility\uipethernet-conf.h изменить значение параметра
#define UIP_CONF_MAX_CONNECTIONS 2 (в оригинальной библиотеке было 4, от mysensors поставили 1)

это позволит и слушать подписку и публиковать сообщения в топик.
Если не будет получаться из MD, рекомендую попробовать андроид приложение MyMQTT, чтобы убедиться, что mqtt-gate работает.
Ivan
Сообщения: 1473
Зарегистрирован: Сб окт 12, 2013 11:03 pm
Благодарил (а): 49 раз
Поблагодарили: 327 раз

Re: mysensors

Сообщение Ivan » Пн ноя 24, 2014 9:20 pm

UIPEthernet
Спасибо!!! Заработало. (Нужно все глюки куда то описывать)
MQTTClientGateway
Мне не нужен. т.к. сервер (мастер) должен быть MajorDomo

Попробую сделать REQ\RES
Только нельзя их так делать как вы предложили. Библиотека поддерживает пути только [MQTT_BROKER_PREFIX]/[NodeID]/[SensorID]/V_[SensorType]

Нужно делать как то так:
MyMQTT/20/1/V_VAR1 - (send) Запрос на сервер
MyMQTT/20/1/V_VAR2 - (incomingMessage) Ответ сервера
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
binladin
Сообщения: 143
Зарегистрирован: Чт фев 06, 2014 9:32 pm
Благодарил (а): 0
Поблагодарили: 5 раз

Re: mysensors

Сообщение binladin » Пн ноя 24, 2014 9:40 pm

MQTTClientGateway
Мне не нужен. т.к. сервер (мастер) должен быть MajorDomo
А причём тут это ? Клиент на шлюзе нужен, если у вас используется отдельный полноценный mqtt-брокер, например mosquitto.
Попробую сделать REQ\RES
Только нельзя их так делать как вы предложили. Библиотека поддерживает пути только [MQTT_BROKER_PREFIX]/[NodeID]/[SensorID]/V_[SensorType]
Ну почему нельзя, разработчики mysensors обидятся ? :) Моё предложение было только для иллюстрации принципа.
Нужно делать как то так:
MyMQTT/20/1/V_VAR1 - (send) Запрос на сервер
MyMQTT/20/1/V_VAR2 - (incomingMessage) Ответ сервера
Если получится - будет замечательно иметь рабочий пример.

PS: А WAMP всё таки очень вкусная штука.
Ivan
Сообщения: 1473
Зарегистрирован: Сб окт 12, 2013 11:03 pm
Благодарил (а): 49 раз
Поблагодарили: 327 раз

Re: mysensors

Сообщение Ivan » Пт ноя 28, 2014 2:36 pm

Продолжаю изучать библиотеку

Сделал и протестировал ещё одно устройство DHT
СпойлерПоказать
DSCN9728.jpg
DSCN9728.jpg (657.06 КБ) 17137 просмотров
Arduino Pro Mini. На картинке справа
RF24 - Рядом с ардуинкой в термоусадке
DHT21 - пока болтается на проводах. В дальнейшем приклею к коробке
PowerBank - Коробка + зарядник, слева
Аккумулятор - LR123A 2000мА - по серединке

работает в спящем режиме. Потребляет 0.002 мА в спящемрежиме. То есть должно хватит года на 2

Всё помещается в маленькую коробочку
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Ответить