В списке Module type нет WBE2S-R-433MHZ


#21

Подскажите, пожалуйста, каким образом передать радиопакеты ? какой командой ? не нашел информации про это…
Антенна подключена.


#22

С какого-либо устройства передать, я хотел сказать: нажать на радиовыключатель, например, или любой пульт 433 MHz, в городе что-то обычно само прилетает через некоторое время.


#23

Вот что выдает сразу:
root@wirenboard-A7NAXHXU:~# /usr/bin/python /usr/bin/wb-homa-rcd 0 75 -1
close failed in file object destructor:
IOError: [Errno 16] Device or resource busy
0x6c
0x7a
0xe1
ModeReady
Traceback (most recent call last):
File “/usr/bin/wb-homa-rcd”, line 425, in
mqtt_handler = MQTTHandler()
File “/usr/bin/wb-homa-rcd”, line 95, in init
serial_parts = [int(x,16) for x in self.serial.split(’:’)[-2:]]
ValueError: invalid literal for int() with base 16: ‘’

сервис wb-homa-ism-radio остановлен


#24

Так понятнее! Покажите, пожалуйста, что у вас в файле /mnt/data/var/lib/wirenboard/serial.conf ?


#25

Он пустой


#26

Что-то с обновлениями разъехалось. Я бы попробовал перепрошить контроллер заново к заводским настройкам.
Но, возможно, будет достаточно команды:
ip link show eth0 | grep ether | tr -s ' ' |cut -f 3 -d ' ' > /mnt/data/var/lib/wirenboard/serial.conf
Выполните команду и запустите для проверки еще раз
/usr/bin/python /usr/bin/wb-homa-rcd 0 75 -1


#27

Попробовал пару раз. Вот результаты.

  1. root@wirenboard-A7NAXHXU:~# /usr/bin/python /usr/bin/wb-homa-rcd 0 75 -1
    close failed in file object destructor:
    IOError: [Errno 16] Device or resource busy
    0x6c
    0x7a
    0xe1
    ModeReady
    absent val noolite_remotes_custom
    absent val noolite_remotes
    absent val room
    absent val rssi_threshold
    ^CTraceback (most recent call last):
    File “/usr/bin/wb-homa-rcd”, line 431, in
    data = radio.getDataBlocking()
    File “/usr/lib/wb-homa-ism-radio/rfm69.py”, line 251, in getDataBlocking
    self.data_event.wait(timeout)
    File “/usr/lib/python2.7/threading.py”, line 614, in wait
    self.__cond.wait(timeout)
    File “/usr/lib/python2.7/threading.py”, line 359, in wait
    _sleep(delay)
    KeyboardInterrupt
    Exception in thread Thread-3 (most likely raised during interpreter shutdown):
    Traceback (most recent call last):
    File “/usr/lib/python2.7/threading.py”, line 801, in __bootstrap_inner
    File “/usr/lib/python2.7/threading.py”, line 754, in run
    File “/usr/lib/python2.7/dist-packages/mosquitto.py”, line 2051, in _thread_main
    File “/usr/lib/python2.7/dist-packages/mosquitto.py”, line 1174, in loop_forever
    File “/usr/lib/python2.7/dist-packages/mosquitto.py”, line 729, in loop
    File “/usr/lib/python2.7/dist-packages/mosquitto.py”, line 1010, in loop_misc
    <type ‘exceptions.AttributeError’>: ‘NoneType’ object has no attribute ‘time’

  2. root@wirenboard-A7NAXHXU:~# /usr/bin/python /usr/bin/wb-homa-rcd 0 75 -1
    close failed in file object destructor:
    IOError: [Errno 16] Device or resource busy
    0x6c
    0x7a
    0xe1
    ModeReady
    ^CTraceback (most recent call last):
    File “/usr/bin/wb-homa-rcd”, line 431, in
    data = radio.getDataBlocking()
    File “/usr/lib/wb-homa-ism-radio/rfm69.py”, line 251, in getDataBlocking
    self.data_event.wait(timeout)
    File “/usr/lib/python2.7/threading.py”, line 614, in wait
    self.__cond.wait(timeout)
    File “/usr/lib/python2.7/threading.py”, line 359, in wait
    _sleep(delay)
    KeyboardInterrupt


#28

Последний запуск, похоже, успешный. Вы не пробовали передавать что-то на 433 Mhz с любого устройства? Появились ли виртуальные устройства для noolite ?


#29

Появились вот такие устройства в веб-интерфейсе:
Noolite TX 0x304
Noolite TX 0x305
Noolite TX 0x306
Noolite TX 0x307
Позже попробуем передать что-нибудь на 433 Mhz


#30

Через MQTT теперь можно будет управлять устройствами Noolite ?


#31

Да, можно, всеми noolite-овскими устройствами, которые работают на старом протоколе.


#32

Правильно ли я понял, что “Noolite TX 0x304” - это виртуальный пульт ?
Есть ли инструкция по управлению устройствами Noolite через MQTT ?


#33

Да, совершенно верно, Noolite TX 0xXXX – это виртуальные пульты.

Смотрите, берем например модуль “Силовой блок SLF-1-300” (это, правда, старая модель, сейчас они не выпускают такие. Модели с шифрованием и обратной связью (nooLite-F), несовместимы с контроллером, выбирайте те, которые поддерживают просто nooLite, без “-F”. Есть модели, которые поддерживают и тот, и другой протоколы связи, SLF-1-300 входит в их число).

Подключаем модуль в сеть и к нагрузке, нажимаем кнопку привязки, заморгает светодиод на модуле. После этого на любом из пультов (для примера 0xb61) нажимаем кнопку Bind, светодиод заморгает часто, значит, модуль готов привязаться. Еще раз нажимаем кнопку, светодиод станет мигать относительно редко — значит, модуль привязан к виртуальному пульту.

В случае модуля SLF-1-300 управлять им можно с виртуального пульта переключателем state (включать или выключать) и кнопкой switch (изменять состояние включено-выключено-включено-…):

В MQTT этим органам управления соответствуют топики
/devices/noolite_tx_0xb61/controls/state и /devices/noolite_tx_0xb61/controls/switch

Попробуем в командной строке управлять нагрузкой:
команда
mosquitto_pub -t "/devices/noolite_tx_0xb61/controls/state/on" -m 1
включит нагрузку, а команда
mosquitto_pub -t "/devices/noolite_tx_0xb61/controls/state/on" -m 0
— выключит.
Команда
mosquitto_pub -t "/devices/noolite_tx_0xb61/controls/switch/on" -m 0
будет изменять состояние (в топик можно публиковать любое значение)

Поскольку обратной связи нет, переключатель “state” в веб-интерфейсе не отражает текущее состояние реле!

В движке правил управлять реле можно следующим образом:

//включить реле
dev["noolite_tx_0xb61"]["state"]=true;

//выключить реле
dev["noolite_tx_0xb61"]["state"]=false;

//изменить состояние реле (= true или =false)
dev["noolite_tx_0xb61"]["switch"]=true;

Дополню документацию.


#34

Большое спасибо, теперь работает!


#35

Замечательно! Успехов вам!