Адаптер nooLite RX2164 предназначен для получения устройством умного дома информации о злодействах, проводимых пультами управления над силовыми блоками.
Умный дом, хоть с палатой мозгов, не может быть полноценным, если не знает, чем бесконтрольно занимаются его жители. А жители могут нажимать на кнопочки, в результате чего свет будет либо светить, либо не светить.
Для исправления созданной nooLite ситуации (ни одно USB/UART устройство не может как отдавать команды, так и принимать их), сама nooLite произвела указанный здесь адаптер, не забыв изготовить для него дрова под единственную на свете оболочку Windows.
У нас с юмором туго — мы применяем Raspberry Pi. Поиски решения, как обеспечить близость, среди прочих, привели на страницу симпатичного человека, Олега Артамонова. Именно его кодом мы воспользуемся, для интеграции адаптера в наш проект. Кстати, в этой заметке Олег великолепно рассказал о тонкостях установки изделий nooLite.
Что же, вставим адаптер в Малину, и за работу.
Проверим, виден ли «свисток»:
lsusb -vd 16c0:05dc | grep iProduct
Среди буковок, полученных в ответ, должно проскочить iProduct 2 RX2164. Если этого не произошло… Значит вы вставили свисток не в то отверстие. Пересмотрите свое поведение.
Далее поступим как здесь, а именно:
wget http://sourceforge.net/projects/libusb/files/libusb-1.0/libusb-1.0.9/libusb-1.0.9.tar.bz2
tar xjf libusb-1.0.9.tar.bz2
cd libusb-1.0.9
./configure
make
sudo make install
sudo apt-get install libusb-1.0-0-dev
sudo gem install libusb
А затем, как здесь. То есть вставляем команды и наблюдаем:
sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev
wget https://github.com/olegart/noolite/archive/master.zip
unzip master.zip
cd noolite-master
./configure && make && make install
А теперь настало время получить такое видео:
Как мы его будем добывать?
Перейдем по адресу…
cd /куда_вы_там_распаковали_архив_master.zip/noolite-master/src
и выполним команду
./nooliterxcfg
в результате чего узнаем много интересного, а именно, что она есть и к ней надо присоединить что-то, отделенное от названия двумя тире и законченное циферкой.
Нас будет интересовать такая комбинация:
./nooliterxcfg --bind 1
Интересовать, а не выполнять ее! Выполнили? Тогда полминуты перекур. Или наберите другую команду, какую — смотрите сами в черном экране терминала.
Итак, мы должны забиндить наш свисток с передатчиком, прежде чем он начнет снабжать нас информацией на тему нежности касания кнопок домочадцами. Однако, кнопок у меня нет вообще, а есть лишь МТ1132, что вполне достаточно. (Вообще то, если нет кнопок, то и присутствие свистка RX2164 теряет весь смысл. Что мы будем отправлять через UART — и так нам известно. Но… кнопки у меня тоже обязательно появятся. А порядок действий один — что биндим UART-модуль, что — кнопку (пульт управления.))
Открываем новое окно терминала и вспоминаем все, что написано в этой заметке.
Итак, у нас открыто два терминала: один используем для подачи команды UART модулю, а второй — для приема RX2164.
Или у вас терминал RX2164 и любой пульт управления.
В терминале RX2164 выполняем указанную выше команду:
./nooliterxcfg --bind 1
где «—bind» значит связать устройства, а «1» — номер ячейки RX2164, в котором будет храниться информация об этой связи.
Если у вас пульт управления — вводим его в режим установления связи, согласно инструкции. Если же у вас открыто окно терминала MT1132 — выполняем команду
python /home/pi/noolite.py 0 15
где «0» — это номер канала передачи МТ1132 (принимает значения от 0 до 31 включительно), а «15» — команда на установление связи.
После этого… ничего не происходит. Но в глубинах сознания RX2164 возникает устойчивая связь с пультом.
Теперь — один шаг до нашего видео. В терминале приемника выполняем команду:
./nooliterx
В терминале МТ1132 отправляем команды силовому блоку, либо нажимаем на кнопки пульта. В терминале RX2164 должна возникать картина цифровой любовной связи, обеспечить которую мы так стремились.
В следующей заметке попробуем все это интегрировать в OpenHab.