Main

Радио-управление nooLite

НОВОЕ: USB-приёмник nooLight
НОВОЕ: Модуль управления RGB-лентами nooLight Если вы находитесь в России, купить модули
системы Noolite можно в магазине Thinking-Home.ru.
Это наши знакомые и, если Вы укажете в комментарии к заказу
ключевое слово majordomo вам сделают скидку 10%.

Разработка белорусской компании "Ноотехника". Представляет собой беспроводной комплекс, состоящих из исполнительных модулей управления освещением (различной мощности, с возможностью диммирования и без), радио-пультов, а так же, с некоторых пор, USB-контроллером и программным обеспечением, позволяющим управлять исполнительными модулями с помощью компьютера.

ПО поддерживает работу из командной строки, что позволяет интегрировать данный комплекс в систему MajorDoMo.

Пример интеграции (windows)

(Update: Информацию по подключению в Linux можно получить здесь)

Имеем в наличии:

USB-контроллер

Радио-модуль (300Вт регулируемый, т.е. с поддержкой диммирования)

(я его подключил в промежуточную розетку, хотя при желании можно встроить и в светильник)

Радио-модуль (300Вт нерегулироуемый)

(выглядит точно так же как тот, что на картинке выше)

Радио-пульт

Для начала подключаем радио-модули к нагрузкам. Нерегулируемый я использовал для подключения 12В трансформатора для свето-диодного освещения, а регулируемы для ночного светильника с обычной лампой накаливания на 40Вт.

Для проверки работы я привязал радио-пульт к одному из радио-модулей (процедура привязки описана в инструкции) -- всё заработало, могу выключать и включать освещение с пульта.

Далее, вставляем USB-контроллер в компьютер (система Windows XP), он определяется как HID-устройство и не требует установки дополнительных драйверов.

С диска от производителя устанавливаем ПО для управления радио-модулями.

В самом ПО так же необходимо сделать привязку радио-модуля к одному из каналов управления (их там 8). Я привязал два канала -- один работает только на включение/выключение, второй поддерживает регулировку. Всё заработало без особых проблем. После этого программу можно закрывать -- нам она будет нужна только для добавления новых модулей в систему.

Программа поддерживает запуск из командной строки в таком виде: включить радио-модуль на канале 1:

"c:\Program Files\nooLite\noolite.exe" -api -on_ch1

установить яркость 50% радио-модуля на канале 2:

"c:\Program Files\nooLite\noolite.exe" -api -set_ch2 -50

Теперь дело техники управлять этим из меню интерфейса MajorDoMo.

Создаём два сценария. Один для нерегулируемого модуля (канал 1) и второй для регулируемого (канал 2)

Сценарий 1 (zal_neon_switch)

if ($params['VALUE']) {
 safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -on_ch1');
} else {
 safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -off_ch1');
}

Сценарий 2 (zal_bra_change)

safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -set_ch2 -'.$params['VALUE']);

Добавляем элемент управления меню для канала 1:

Добавляем элемент управления меню для канала 2:

Получаем в результате такие пункты меню:

Вот и всё. Управляем нагрузкой из меню либо вызываем сценарии по каким-то условиям из других сценариев.

Плюсы: очень простой монтаж, аккуратный дизайн пультов, надёжное срабатывание, бюджетное решение (цена пока не озвучена, но производитель заверяет, что будет самое бюджетное предложение на рынке)

Минусы: отсутствие обратной связи в радио-модулях (пока других не обнаружил, но тестирование продолжается)

P.S. Производитель заявляет, что планирует и дальше развивать тему домашней автоматики и разрабатывать новые устройства, в том числе беспроводные датчики. Так что можно сказать, что продукт весьма перспективный и сможет занять достойное место в нише бюджетной автоматики.

P.P.S: Хороший обзор системы Noolite можно почитать здесь.

 
 

Обсуждение

 

sergejey: Обсуждение страницы Радио-управление nooLight

Duran: МММ как интересно... Вот по обратной связи жалко что нет.. т.е например : Я переключил с MajorDoMo нерегулируемый и свет загорелся и элемент "выключатель" загорелся как ON ... далее нажал на пульте OFF, в MajorDoMo то ведь так и останется гореть ON ? далее в MajorDoMo снова нажал выключатель он перевелся в OFF и свет не включлся.. так? .. т.е. придется два раза счелкать?

ser009: :idea: А есть возможность регулирования нагрузки из меню при помощи слайдера :idea: Даже при 10-ти ступенчатом регулировании выглядеть будет эффектно 8-)

sergejey: МММ как интересно... Вот по обратной связи жалко что нет.. т.е например : Я переключил с MajorDoMo нерегулируемый и свет загорелся и элемент "выключатель" загорелся как ON ... далее нажал на пульте OFF, в MajorDoMo то ведь так и останется гореть ON ? далее в MajorDoMo снова нажал выключатель он перевелся в OFF и свет не включлся.. так? .. т.е. придется два раза счелкать? Да, всё верно... есть такая незадача. Либо делать две кнопки -- одна всегда включение, вторая выключение. Но это не так удобно как один выключатель.

sergejey: :idea: А есть возможность регулирования нагрузки из меню при помощи слайдера :idea: Даже при 10-ти ступенчатом регулировании выглядеть будет эффектно 8-) Именно так в примере и описано -- одна нагрузка выключателем, вторая слайдером )

ser009: Нравится девайс НАДО СРОЧНО БРАТЬ Цена приемлемая :) Зашёл на сайт дилера в Москве нашёл в продаже Пульты-радиопередатчики и Выключатели радиоуправляемые а USB-контролера в прайс листе нет??? Он как бонус к модулям идёт или его нужно отдельно докупать???

sergejey: Нравится девайс НАДО СРОЧНО БРАТЬ:) Зашёл на сайт дилера в Москве нашёл в продаже Пульты-радиопередатчики и Выключатели радиоуправляемые а USB-контролера в прайс листе нет??? Он как бонус к идёт или его нужно отдельно докупать??? Сомневаюсь, что он продаётся уже :) Это эксклюзив )) А если серьёзно, то это только опытный образец, который планируется выпустить в серию, так что советую заходить на сайт производителя и писать им настойчивую просьбу о продаже со ссылкой на статью ) Чем больше обращений, тем у них будет больше запала его поскорее выпустить :)

ser009: Да проблема в том что я в России Другой вопрос когда ты ножками пришёл

Duran: А нет ли случаем у софта который управляет функции не вкл и выкл.. а изменить состояние? не c:\Program Files\nooLite\noolite.exe -api -on_ch1 c:\Program Files\nooLite\noolite.exe -api -off_ch1 а например c:\Program Files\nooLite\noolite.exe -api -change_ch1 :-D тогда достаточно добавить элемент кнопка ... и вызывать этот метод? который просто будет менять текущее на другое :-D

sergejey: Кстати, есть и такое http://clip2net.com/clip/m1/1354630207-clip-47kb.png

Duran: Вот )) это уже намного интереснее... осталось дождатся в прожае.. и увеличение каналов, а то 8мь то уж как то маловато

Vit: Вот )) это уже намного интереснее... осталось дождатся в прожае.. и увеличение каналов, а то 8мь то уж как то маловато смотря как будет бить радиоканал...а то возьмешь на большее количество а этажем ниже не будет добивать...))

Duran: У меня с этим немного проще ))) у меня "умная квартира" :-D

romankit: написал им письмо - Очень заинтересовала статья - http://smartliving.ru/Main.Noolight - Радио-управление nooLight. Когда можно будет купить указанное оборудование? получил ответ - Уже все выпускаеся и продается. Звоните в отдел сбыта.

Vit: написал им письмо - Очень заинтересовала статья - http://smartliving.ru/Main.Noolight - Радио-управление nooLight. Когда можно будет купить указанное оборудование? получил ответ - Уже все выпускаеся и продается. Звоните в отдел сбыта. В прайс листе на сайте нету для заказа

tammat: Сергей, а под Linux возможно управление? Приобрел бы с удовольствием

sergejey: Пока под Linux у них нет драйвера. Планируют или нет, я так и не понял... Где-то в планах есть сделать "железяку" для работы через serial-интерфейс, чтобы можно было к тому же Arduino подключать, но как скоро это будет мне не известно. Всё-таки коммерческая контора, им, я думаю, интересно в первую очередь наладить продажу для широкой аудитории, а у нас это всё-таки больше windows.

Satgate_M: Ура! Данный девайс начали производить серийно! Стоит 50 у.е на сайте производителя. http://www.noo.com.by/adapter-dlya-pk-pc118.html По заверениям разработчика будет доступен для доставки начиная с 15.01.13!

sergejey: Ну чё, $50 адекватная цена вполне. Силовые блоки $20-$40 и пульты около $20. В целом вполне нормально.

Satgate_M: Жду ответа от поставщика, закажу как получу отпишусь как оно в действии!

doctor64: Кстати, о радиоуправлении выключателями - я вот думаю о http://imall.iteadstudio.com/smart-home ... 18019.html Обещают тот же радиоканал на 433 мгц с обратной связью

sergejey: Жду ответа от поставщика, закажу как получу отпишусь как оно в действии! Я эту штуку у себя использую, но напрягает всё же отсутствие обратной связи, т.е. нельзя узнать в каком положении сейчас модуль -- включено или выключено. Хотя, решается тем, что при подаче команды с компьютера, я состояние на компьютере запоминаю, а устройство само по себе восстанавливает последнее состояние, если вдруг электричество пропадало, так что в целом терпимо.

Satgate_M: Жду ответа от поставщика, закажу как получу отпишусь как оно в действии! Я эту штуку у себя использую, но напрягает всё же отсутствие обратной связи, т.е. нельзя узнать в каком положении сейчас модуль -- включено или выключено. Хотя, решается тем, что при подаче команды с компьютера, я состояние на компьютере запоминаю, а устройство само по себе восстанавливает последнее состояние, если вдруг электричество пропадало, так что в целом терпимо. Я тоже уже думал над данной проблемкой, т.к. все равно с ней столкнусь. Есть идея (тк сервер находится рядом с вводным щитом) поставить преобразователи тока (самые простые, российские) на каждую фазу идущую на потребитель (благо на все проложена отдельная проводка) и потом подцепить их к чему-то типа Ардуины. Логика проста если ток есть значит что-то работает, нет значит выключено. Только будет нужна помощь к коду для дуины сам думаю не осилю.

anemcov: очень приятные цены и красивое оборудование. Ждем драйверов для Линукса - и сразу беру на всю квартиру

tammat: Вот что пишет поддержка: А планируется разработка драйверов по Linux Там не нужен специальный драйвер, это HID. Просто управляющая программа. Под Linux не планируем, в силу нехватки ресурсов и узости рынка. Хотя, вот вы спросили, может еще кто спросит, так и придется. Опять же, повторюсь, что HID в Linux определится, а программа, возможно, заработает под Wine. Есть ли какие мысли по этому поводу? Можно ли будет управлять через php без подробного технического описания?

anemcov: Вот что пишет поддержка: . Есть ли какие мысли по этому поводу? Можно ли будет управлять через php без подробного технического описания? как-то так http://symmetrica.net/usb/usb2.htm :D А вообще конечно нужно понимать протокол работы этого устройства. Какие команды отправлять надо, как удаленные устройства идентифицировать и т.п.

zhum: Кстати... http://www.noo.com.by/assets/files/soft ... ID_API.pdf Я бы даже сам попилил драйверы, но, увы, железок у меня пока нету, только планирую ремонт и замену. Очень хочется наладить автоматизацию дома, уже долго присматриваюсь к MajorDoMo на линуксе и беспроводным датчикам-контроллерам. Кстати, не в тему вопрос - а доступны ли (в Москве) беспроводные датчики движения, чтобы их подключить к MajorDoMo?

anemcov: Кстати... http://www.noo.com.by/assets/files/soft ... ID_API.pdf Я бы даже сам попилил драйверы, но, увы, железок у меня пока нету, только планирую ремонт и замену. Очень хочется наладить автоматизацию дома, уже долго присматриваюсь к MajorDoMo на линуксе и беспроводным датчикам-контроллерам. Кстати, не в тему вопрос - а доступны ли (в Москве) беспроводные датчики движения, чтобы их подключить к MajorDoMo? я уже заказал. Должны прийти со дня на день 2 пульта, флэшка и диммер. Собирался как раз заняться реверс-инжинирингом :) Но если кто-то сможет сделать хотя бы небольшую обертку для отправки команд из приведенного документа - буду очень рад.

anemcov: Получил сегодня диммер, 2 пульта и флэшку nooLite. Готов драйвер для Linux https://github.com/pythonchik/nooLite Там есть инструкция по установке драйвера. Пишу и сюда 1. Скачиваем noolite.c wget https://github.com/pythonchik/nooLite/archive/master.tar.gz 2. Устанавливаем библиотеку libusb (нужна для работы с HID-устройством) apt-get install libusb-1.0-0 libusb-1.0-0-dev 3. компилируем cd nooLite-master/ gcc nooLite.c -o noolite -lusb-1.0 4. Копируем в /usr/local/bin cp noolite /usr/local/bin/noolite 5. Устанавливаем владельца и права доступа chown root /usr/local/bin/noolite && chmod a+s /usr/local/bin/noolite 6. Пользуемся /usr/local/bin/noolite -help Using /usr/local/bin/noolite -api -<command> <channel> <command> may be: -on_ch - Включить канал -off_ch - Выключить канал -sw_ch - Переключить (вкл/выкл) канал -set_ch - Установить уровень канала -bind_ch - Привязка канала -unbind_ch - Отвязка канала -preset - Вызов сценария <channel> - номер канала <level> - уровень - используется только в команде -set_ch Пример вызова /usr/local/bin/noolite -api -set_ch 1 33 эта команда устанавливает на 1-м канале уровень в 33% PS. Пока не проверял, как работает привязка из-под Линукса, так как первоначально все тестировал и привязывал в Винде. Завтра проверю и напишу инструкцию по привязке в Линуксе

tammat: Спасибо за дрова по linux, но не совсем адекватно работает установка яркости. то на 10% горит в полный рост, то не меняется вообще. Лампу поставил обычную.модель ставил ST и SN Имхо у одного сгорел семистор. Лампа все время горит, хотя блок воспринимает команды. И вопрос BT138 на BT139 можно заменить? Ну и конечно не хватает обратной связи. Если выставляешь через выключатель, то невозможно увидеть состояние выключателя на сайте.

anemcov: Не знаю, что и сказать. У меня полет нормальный - все выставляется адекватно.

bobr_ne: Добрый день, тоже хочу испробовать эту систему, но есть пару вопросов: 1. куда предлагается монтировать силовой модуль (к которому подключается нагрузка)? я думал ставить их в дырки в стенах предназначенные для выключателей, но куда девать антенну (как я понял ее даже сгибать не рекомендуется...) (можно ли эту антенну забетонировать слегка?.. в люстру такой модуль тоже особо не запихнуть.. 2. я правильно понимаю, что получится управлять этими модулями с помощью датчиков движения \ освещенности подключенных к MajorDoMo например через 1-wire?

anemcov: Сгибать антенну можно, точнее изгибать. Я силовые модули спрятал под декоративными накладками люстр. Также модули прекрасно ловят сингал за гипсокартоном. Думаю, что 2-3 см бетона их не испугают. Управлять можно, обрабатывая на сервере данные с датчиков 1-wire, но будьте готовы к задерже в 1-2 сек.

bobr_ne: спасибо за ответ, по 2-му вопросу: можете ли что нибудь посоветовать как уменьшить время реагирования? или может это в повседневной жизни не будет сильно мешать?

anemcov: Факторов быстродействия много: сам сервер, периодичность опроса 1-wire, загруженность другими процессами. Плюс сам нооЛайт не мнгновенно срабатывает. Я боюсь, что только эксперимент спасет. Либо датчик движения ставить на подходах к освещаемой территории и на самой территории

Beer100: А можно ли управлять одной и той же нагрузкой с двух пультов? Или с одного пульта и с USB? И еще, ни кто не задумывался над тем, что бы распотрошить настенные пульты для пересадки внутренностей в выключатели с обычными клавишами? Точнее с клавишами без фиксации.

sergejey: > А можно ли управлять одной и той же нагрузкой с двух пультов? Или с одного пульта и с USB? Да, это легко -- делается соответствующая привязка и всё. Единственная проблема при управлении с пульта и с USB (по-крайней мере у меня), так это то, что я на компьютере могу выключить свет и система будет считать, что он выключен, даже если я с пульта его потом включу.

Vadymkyr: я тоже думал взять Пульт-брелок PN313-1 и засунуть в выключатель без фиксации. Вопрос только один. Можно ли включать\выключать и регулировать яркость одной кнопкой? И если пульт работает на 433 можно ли купить на ebay например, аналогичный пульт только дешевле?:)

Beer100: > А можно ли управлять одной и той же нагрузкой с двух пультов? Или с одного пульта и с USB? Да, это легко -- делается соответствующая привязка и всё. А наоборот, один USB пульт может управлять разными нагрузками?

Beer100: я тоже думал взять Пульт-брелок PN313-1 и засунуть в выключатель без фиксации. Вопрос только один. Можно ли включать\выключать и регулировать яркость одной кнопкой? И если пульт работает на 433 можно ли купить на ebay например, аналогичный пульт только дешевле?:) А почему одной? Разве нельзя найти клавишные выключатели с нажатием в две стороны (типа качелей). Ну, или использовать двухклавишные? Надо порыться, что выпускает мировая промышленность в этом направлении...

Vadymkyr: с одной гораздо удобнее. Нажал - включилось\выключилось, держишь - яркость меняется. С двумя клавишами без фиксации используются для управления штор или жалюзи

Beer100: с одной гораздо удобнее. Нажал - включилось\выключилось, держишь - яркость меняется. С двумя клавишами без фиксации используются для управления штор или жалюзи Зато с двумя получается зашита от повторного нажатия при задержках включения.

bobr_ne: видел что подключают arduino по usb к роутеру dir320... а никто не пробовал подключить радио-usb модуль noolite к маршрутизатору...?

anemcov: видел что подключают arduino по usb к роутеру dir320... а никто не пробовал подключить радио-usb модуль noolite к маршрутизатору...? В принципе, если на маршрутизаторе Линукс стоит - можно и подключить. Модуль распознается как HID-устройство. Я думаю, что и драйвер, который я писал, откомпилируется на маршрутизаторе (здесь уже разницы никакой нет - марштутизатор роль железа будет выполнять, а ОС есть ОС).

bobr_ne: поставин на Dir 320 прошивку от олега, попробую вечером подключить по аналогии с arduino сделать...

Alter: На каких частотах работают устройства noolight? Если выключателями "сапфир" можно управлять любым бытовым пультом, то можно их интегрировать в общую систему с помощью IR передатчиков и приемников. Что думаете по этому поводу комрады? http://dvrobot.ru/shop/i109.datchik_priema_ik.htm http://dvrobot.ru/shop/i178.ik-_peredatchik.htm

anemcov: Если выключателями "сапфир" можно управлять любым бытовым пультом, то можно их интегрировать в общую систему с помощью IR передатчиков и приемников. Так зачем изобретать, если можно выключатели из серии nooLite использовать и USB-устройство для управления ими? Благо драйвер есть. Или у вас уже "Сапфиры" установлены?

Alter: Так зачем изобретать, если можно выключатели из серии nooLite использовать и USB-устройство для управления ими? Благо драйвер есть. Или у вас уже "Сапфиры" установлены? А обратная связь? Я собираюсь использовать IR-передатчики и приемники для управления мультимедиа аппаратурой, кондиционером, гаражными воротами и всем что управляется с пульта. А IR-приемник будет фиксировать сигнал в систему, вне зависимости от куда он отправлен с пульта, компьютера или планшета. Какова дальнобойность адаптера? Сколько их надо, если я внедряю систему в двух-этажный дом общей площадью 160 кв.м.?

anemcov: А обратная связь? Я собираюсь использовать IR-передатчики и приемники для управления мультимедиа аппаратурой, кондиционером, гаражными воротами и всем что управляется с пульта. А IR-приемник будет фиксировать сигнал в систему, вне зависимости от куда он отправлен с пульта, компьютера или планшета. Какова дальнобойность адаптера? Сколько их надо, если я внедряю систему в двух-этажный дом общей площадью 160 кв.м.? Согласен, при таких условиях применение nooLite нецелесообразно - USB-свисток всего 8 каналов управления поддерживает, а на 2-х свистках одновременно работу не тестировал. Дальность тоже не проверял, но в пределах квартиры работает. При ваших условиях - только тестирование. Что касается обратной связи - с "Сапфирами" вы ее тоже не получите. Да и для IR-управления в любом случае для получения обратной связи нужно будет устанавливать на каждом устройстве приемник и передатчик.

sergejey: У них USB-свистки есть и с бОльшим количеством каналов. Не знаю правда продают ли они их уже, но софт поддерживает (так написано на сайте у них). На одном компьютере два свистка врятли поставишь -- у софта нет настройки выбора адаптера. На разных компьютерах наверное без проблем.

anemcov: У них USB-свистки есть и с бОльшим количеством каналов. Не знаю правда продают ли они их уже, но софт поддерживает (так написано на сайте у них). На одном компьютере два свистка врятли поставишь -- у софта нет настройки выбора адаптера. На разных компьютерах наверное без проблем. Я в своем линуксовом драйвере уже придумал, как работать с двумя свистками. Но пока это на этапе задумок - нет необходимости реализации. Все больше в сторону Z-Wave поглядываю.

Alter: Что касается обратной связи - с "Сапфирами" вы ее тоже не получите. Да и для IR-управления в любом случае для получения обратной связи нужно будет устанавливать на каждом устройстве приемник и передатчик. Почему на каждое устройство? На каждую комнату, согласен, главное чтобы попадал в зону приема сигнала совместно с выключателем или силовым устройством. А может ну ее, эту обратную связь))) Ну будет за место триггера, две кнопки "вкл" и "выкл", я думаю не критично. Хотя, если хочу управлять бытовыми приборами IR передатчик все равно нужен. Я уже заказал их по 1 шт и ардуину - потестирую. Интересно, а можно будет многоканальным адаптером-свистком управлять бытовыми приборами.

Alter: Все больше в сторону Z-Wave поглядываю. И цена бОльшая относительно noolight в 3-4 раза не смущает? Я все же сторонник комбинирования проводных и беспроводных систем. Считаю, что контроль инженерных, охранных систем должен быть проводным, к тому же это значительно дешевле всяких беспроводных аналогов. А освещение можно сделать на основе приборов noolight - влом мне тянуть в/из каждой комнаты кучу проводов, к тому же в них присутствует такая приятная опция как диммирование и цена адекватная.

Alex: Мой подход немножко другой. На этапе капремонта/строительства не ленимся и тянем провода куда только можно и ещё с двукратным или трёхкратным запасом. А потом, когда уже ничего протянуть нельзя, используем беспроводные технологии (по необходимости) и в как можно меньшем объёме.

sergejey: Между делом -- вчера звонил мне директор Ноотехники (которая noolite производит), говорил, что хотят снова как-то себя порекламировать в технических кругах и предложили парочку информационных поводов. Во-первых, они разрабатывают "usb-свисток" приёмника, который будет иметь возможность настраивать реакцию системы на нажатие кнопок пультов (а в будущем и датчиков). Т.е. нажимаешь кнопку на пульте -- свет мгновенно загорается (даже минуя компьютер) и компьютер получает так же сигнал об этом и может соответственно установить внутренние переменные, что свет включен. Во-вторых, у них будет беспроводной RGB-контроллер для светодиодных лент. Вот такой такое вот краткое описание будущих новинок :)

anemcov: вот бы от них еще и датчики получить типа герконов на двери и датчиков движения/присутствия - тогда будет классная конкуренция Z-Wave

bobr_ne: добрый день, В принципе, если на маршрутизаторе Линукс стоит - можно и подключить. Модуль распознается как HID-устройство. Я думаю, что и драйвер, который я писал, откомпилируется на маршрутизаторе (здесь уже разницы никакой нет - марштутизатор роль железа будет выполнять, а ОС есть ОС). наконец попробовал подключить, пока безуспешно(( при попытке выполнения apt-get install libusb-1.0-0 libusb-1.0-0-dev через telnet, пишет что apt-get not found это значит что в прошивке не предусмотрен установщик пакетов и мне ничего не поможет))) или прямые руки спасут ситуацию))?

anemcov: Да, без этого пакета работать не будет. Может он уже установлен? Попробуйте откомпилить драйвер.

bobr_ne: проверил... cd nooLite-master/ говорит can't cd to nooLite-master/ ,а ls выводит "nooLite-master.tar.gz" и все.. ну и gcc nooLite.c -o noolite -lusb-1.0 говорит gcc: not found

anemcov: После скачивания архив надо распаковать tar -fvxz nooLite-master.tar.gz

bobr_ne: на tar -fvxz nooLite-master.tar.gz отвечает [admin@(none) root]$ tar -fvxz nooLite-master.tar.gz BusyBox v1.1.3 (2009.02.22-14:37+0000) multi-call binary Usage: tar -[czxtvO] [-f TARFILE] [-C DIR] [FILE(s)] ... попробовал tar -xzf nooLite-master.tar.gz в р-те: tar: pax is not tar

anemcov: Вот так я ставил у себя на Debian и на RapberryPi apt-get install libusb-1.0-0 libusb-1.0-0-dev wget https://github.com/pythonchik/nooLite/archive/master.tar.gz tar xvfz master.tar.gz cd nooLite-master/ gcc nooLite.c -o noolite -lusb-1.0 cp noolite /usr/local/bin/noolite chown root /usr/local/bin/noolite chmod a+s /usr/local/bin/noolite Тестируем /usr/local/bin/noolite -api -set_ch 1 10 /usr/local/bin/noolite -api -off_ch 1

bobr_ne: поставил Debian и все получилось)) спасибо за помощь

Alter: Приборы nooLight работают на частоте 433,9 МГц. Sergejey, возможно ли управлять силовыми блоками с помощью контроллера беспроводных датчиков http://smartliving.ru/Main/ArduinoSecurity?

sergejey: Приборы nooLight работают на частоте 433,9 МГц. Sergejey, возможно ли управлять силовыми блоками с помощью контроллера беспроводных датчиков http://smartliving.ru/Main/ArduinoSecurity? Нет, т.к. контроллер беспроводных датчиков работает только на приём. Если иметь передатчик на этой же частоте и запрограммировать его на протокол nooLight, то возможно, но думаю, что врятли производитель расскажет детали протокола. Да и смысл, ведь их USB-модуль стоит совсем недорого. Ну и всегда есть возможность через свой передатчик управлять китайскими розетками на радио-управлении -- в интернете, да и тут на форуме обсуждали библиотеку Arduino для этих целей.

Sicness: Выкладываю свои 5 копеек: Мой модуль работы с noolite usb stick https://github.com/Sicness/pyNooLite ИМХО, самый развитый вариант для Linux. В комплекте есть пример, который сразу можно использовать для управления с командной стоки. Так же можно установить через pip: sudo pip install noolite Если нужна поддержка, я доступен по почте.

Alter: Нет, т.к. контроллер беспроводных датчиков работает только на приём. Если иметь передатчик на этой же частоте и запрограммировать его на протокол nooLight, то возможно, но думаю, что врятли производитель расскажет детали протокола. Да и смысл, ведь их USB-модуль стоит совсем недорого. Ну и всегда есть возможность через свой передатчик управлять китайскими розетками на радио-управлении -- в интернете, да и тут на форуме обсуждали библиотеку Arduino для этих целей. Только зачем покупать передатчик за 50$ и иметь более ограниченный функционал, если можно его купить за 1,6$ http://www.ebay.com/itm/1pcs-433Mhz-RF- ... 3cc7431824 По поводу протокола... Я думаю ничего хитрого здесь нет. Достаточно узнать коды с передающих устройств(выключатель, пульт). Я нашел подтверждение своим догадкам в этом ролике http://www.youtube.com/watch?v=27q8SthmBsI Где автор управляет с помощью ардуины и трансмиттера беспроводными розетками, предварительно считав коды с пультов с помощью приемника. Сомневаюсь, что у устройств nooLight какой то особый протокол. Все эти устройства работают на 315 и 433 частоте. В магазиных полно также беспроводных релюх на выбор и даже выключатели сенсорные беспроводные есть. Чем мне нравятся силовые блоки nooLight, тем что они диммируемые. Эта их изюминка, дает им преимущество перед релюхами и у них, вроде как, должны отсутствовать щелчки.

Panchez: Только зачем покупать передатчик за 50$ и иметь более ограниченный функционал, если можно его купить за 1,6$ http://www.ebay.com/itm/1pcs-433Mhz-RF- ... 3cc7431824 По поводу протокола... Я думаю ничего хитрого здесь нет. Достаточно узнать коды с передающих устройств(выключатель, пульт). Я нашел подтверждение своим догадкам в этом ролике http://www.youtube.com/watch?v=27q8SthmBsI Где автор управляет с помощью ардуины и трансмиттера беспроводными розетками, предварительно считав коды с пультов с помощью приемника. Сомневаюсь, что у устройств nooLight какой то особый протокол. Все эти устройства работают на 315 и 433 частоте. В магазиных полно также беспроводных релюх на выбор и даже выключатели сенсорные беспроводные есть. Чем мне нравятся силовые блоки nooLight, тем что они диммируемые. Эта их изюминка, дает им преимущество перед релюхами и у них, вроде как, должны отсутствовать щелчки. Недостаток этих модулей - надежность! Сразу бросается в глаза сверхрегенеративный приемник, у него очень большая чувствительность и к примеру обратная связь автосигнализации или удлинитель пульта итд. заглушит его. Самый надежный вариант трансиверы MRF49, CC1101 и подобные, уйти с 433 на 868 Мгц, тут конечно протокол посложнее, но надежность и обратная связь - это главное. Такие системы уже есть и мною опробованы, по сути Ардуино+трансивер, думаю открою здесь ветку с подробностями.

Sicness: Я бы не перечислял к их недостаткам надежность. Пользуюсь ими и проблем нет, да и от других о проблемах не слышал. И не называл бы относительно предложения собрать на коленке при помощи Arduino. По поводу протокола: отослал вопрос в support. Если есть приемник для Arduino, почему бы не попробовать перехватить команды?

sergejey: Ребята из Noolight подарили опытные образцы их новых разработок: * USB-приёмник сигналов от пультов (можно свои действия назначать на получаемые команды) * Беспроводной контроллер RGB-ленты Так что в ближайшее время напишу ещё статью :) Ну а сами приборы, на сколько я понимаю, вот-вот уходят в серию.

anemcov: Жду про приемник. Готов поработать над драйвером для Линукс

sergejey: Описал работу с приёмником на этой странице: http://smartliving.ru/Main/NoolightReceiver

Sicness: Все-таки это только подтверждает что стоит пробовать работать через модули за 2$, которые на той же частоте. Спасибо за обзор!

sergejey: Минутка рекламы :) Купить радио-модули nooLight со скидкой в 10% можно в магазине Thinking-Home.ru, указав в комментариях к заказу ключевое слово majordomo

DiArt: Вот это очень хорошо! А приёмники уже поступили в продажу, никто не знает? И как они маркируются. И получается нужно будет покупать один приёмник и один передатчик? или достаточно будет только передатчика?

Sicness: И получается нужно будет покупать один приёмник и один передатчик? или достаточно будет только передатчика? Логично что все зависит от Вашей цели. На сколько я понимаю, каждой устройство передает только в одном направлении.

sergejey: Вот это очень хорошо! А приёмники уже поступили в продажу, никто не знает? И как они маркируются. И получается нужно будет покупать один приёмник и один передатчик? или достаточно будет только передатчика? Приёмники пока не поступили в продажу, но опытный образец, с которым я работал, вполне себе надёжен, так что, думаю, скоро будет и серийный выпуск. Передатчика достаточно для управления с компьютера, но минус в том, что если вы включаете свет с пульта, то компьютер об этом ничего не узнает. С приёмником можно организовать всё так, что при нажатии кнопки на пульте компьютер уже решает, что с этим делать -- включить свет или выполнить какую-то другую команду.

DiArt: С приёмником можно организовать всё так, что при нажатии кнопки на пульте компьютер уже решает, что с этим делать -- включить свет или выполнить какую-то другую команду. То есть получается достаточно одного приёмника? Хотя нет. Приёмник он принимает сигнал и обрабатывает на компьютере. А передатчик он даёт команды NooLight. Я правильно мыслю? Или же приёмник с двусторонней связью?

sergejey: С приёмником можно организовать всё так, что при нажатии кнопки на пульте компьютер уже решает, что с этим делать -- включить свет или выполнить какую-то другую команду. То есть получается достаточно одного приёмника? Хотя нет. Приёмник он принимает сигнал и обрабатывает на компьютере. А передатчик он даёт команды NooLight. Я правильно мыслю? Или же приёмник с двусторонней связью? Нет, у них приёмник это только приёмник со своим софтом, позволяющий настроить реакцию (в виде запуска файла) на нажатие кнопок на пульте. А передатчик это только передатчик, с помощью которого можно что-то включить/выключить с помощью той же командной строки. Если есть только приёмник, то можно использовать их пульты для приёма команд, а включать свет уже другим оборудованием (arduino, netping и прочее) Если есть только передатчик, то надо использовать свой интерфейс управления (свои пульты, кнопки, смартфон и т.п.), а включать свет уже используя силовые блоки noolight. Если есть и то и другое, то соответственно можно совместить. Но это разные USB-устройства.

DiArt: Всё понятно. Спасибо за разъяснение

Sicness: Пришли мне такие штуки: http://www.ebay.com/itm/261041100836?ss ... 1439.l2649 Пока не могу ими поймать сигнал от noolilte :(

sergejey: Совсем небольшая заметка об одном из их новых модулей для управления RGB-лентами: http://smartliving.ru/Main/NoolightRGB Работает :) У себя сделал такой интерфейсик: http://clip2net.com/clip/m1/1375264585-clip-20kb.png Но вручную менять не интересно, скорее всего задействую в каком-нибудь из сценариев, чтобы цвет отражал что-то полезное.

Urbas81: О я весной такой-же интерфейс делал, только управлял этим Ethernet контроллер MegaD, там как раз 3 шима нашлось.

Snark: Поставил у себя такой как ночную подсветку коридора. Вечером включается на приятно-теплый цвет, потом постепенно темнеет до полуночи, затем - на маленькой яркости каждый час меняет цвет на заданный. Ночью если случайно проснулся - глянул одним глазом - ага, зеленый! - значит время между 3 и 4 ночи :)

sergejey: Поставил у себя такой как ночную подсветку коридора. Вечером включается на приятно-теплый цвет, потом постепенно темнеет до полуночи, затем - на маленькой яркости каждый час меняет цвет на заданный. Ночью если случайно проснулся - глянул одним глазом - ага, зеленый! - значит время между 3 и 4 ночи :) Интересная идея :)

ErmolenkoM: есть приятная новость о NooLite: USB-адаптер nooLite RX1164 (приемник) доступен для заказа! http://thinking-home.ru/news/18.aspx Есть правда и ложка дегтя - драйверов под linux пока к нему нет. Так что либо придется писать самому, либо ждать. А вообще, идея автономного света, с возможностью управления MajorDoMo мне кажется очень правильной - что бы не случилось с сервером, свет будет работать. Надежность такой схемы высокая - при выходе их строя любого элемента, система максимум лишится одного исполнителя.

Wave: а чем приемник отличается? только количеством групп? теперь их 64?

sergejey: а чем приемник отличается? только количеством групп? теперь их 64? Приёмник это именно приёмник, т.е. с его помощью можно организовать реакцию системы на нажатие кнопок беспроводных пультов. А там хочешь свет включай, хочешь ворота открывай, хочешь музыку ставь :)

anemcov: В принципе это HID-устройство - можно на каком-нить Питоне программку написать, чтобы через web-запросы дергало MDM по событиям

Wave: а розетки nooLite не имеют обратной связи? нельзя при помощи этого приемника получать статус розеток? или приемник позволяет принимать сигналы только с пультов? ------------------------ P.S. А вообще, я считаю, что NooLite и 3Д принтер - самые перспективные аппаратные разработки для системы умного дома. MajorDoMo - самая мощная и перспективная программная разработка. NooLight - недорогая и перспективная отечественная разработка, которая позволяет интегрировать систему умного дома постепенно, без резких и дорогих изменений в домашней экосистеме. 3D принтер - это современная и перспективная разработка, которая позволяет создавать любую механику для систем умного дома. Можно сэкономить деньги и вместо того чтобы купить дорогущие механизмы (метеостанции, электрозамки, системы ролетови т.д.) просто распечатать их. Было бы здорово чтобы на форуме появился раздел, где бы выкладывались STL модели полезных механизмов. Эта идея хорошо бы вписывалась в идеологию данного проекта. Бесплатный обмен моделями для печати. Создал полезную вещь, выложил STL файл и дал остальным возможность повторить успех или улучшить твою модель. Таким образом любой, кто решил купить 3Д принтер может легко присоединиться к комьюнити и расширить возможности умного дома. А даже если у кого-то нет своего принтера, он бы мог просто заказать в ближайшем магазине печать 3Д модели за копейки и дело в шляпе. На этом сайте выкладывают код скриптов, схематику плат и электронных систем. Почему не выкладывать модели для 3Д печати?

sergejey: а розетки nooLite не имеют обратной связи? нельзя при помощи этого приемника получать статус розеток? или приемник позволяет принимать сигналы только с пультов? К сожалению, розетки работают только на приём -- услышат свой сигнал и выполнят действие. Не услышат, не выполнят и никому ничего не скажут ( Приёмник сейчас принимает только команды с пультов, но ребята из Ноотехники говорят, что планируют расширять спектр передатчиков -- сделают передатчик для использования в стандартных выключателях, детектор движения и, возможно, датчик температуры. Это, так сказать, в планах. Когда и что на самом деле будет, пока точно не известно.

tammat: Возможен ли прием данных от передатчиков noolight на arduino через RF 433?

ErmolenkoM: Сегодня доделал драйвера для USB-адаптера nooLite RX1164 (приемник) под linux. Вроде работает. Потестю, причешу - выложу. Но если кому горит - отдам как есть. Все работает, но всплыл один косяк - моя малина стала подтормаживать. Буду думать как оптимизировать, или придется мигрировать на бук.

ErmolenkoM: Драйвера NooLite под Linux https://github.com/ermolenkom/noolite Выложил драйвера для приемника и передатчика. Инструкция внутри. Из отличий: добавил поддержку RGB контроллера в передатчик. Приемник работает как демон: то есть запускаем его кроном, он сидит и слушает USB приемник. При нажатии кнопки пульта делает GET запрос к МЖДМ. Примеры объектов смотреть здесь : http://connect.smartliving.ru/profile/57 Принимаю баги, предложения и замечания. Отвечаю на вопросы. ;-) ЗЫ. NooLite является, на мой взгляд, идеальной системой управления светом и электричеством для умного дома. Так как в случае отказа ЛЮБОГО компонента системы - свет работает. В прошлый раз, когда у меня упала Алиса (кот постарался) свет продолжал работать.

Ivan: Нужно попробовать. У меня пару модулей ZWave но по цене они сильно проигрывают NooLite. Одно останавливает нет обратной связи

Scoot: Нужно попробовать. У меня пару модулей ZWave но по цене они сильно проигрывают NooLite. Одно останавливает нет обратной связи То есть нету ? Ну то есть не совсем то что хотелось бы, но всё таки. (от выключателя как на лампочку, так и на комп можно отправить) http://thinking-home.ru/product/34.aspx Конечно бы было интереснее если бы именно статус устройства можно было посмотреть, но и так будет норм работать.

Ivan: Наверное откажусь от ZWave в пользу NooLite по свету. Модуль ZWave Switch стоит 3000р, аналог NooLite - силовой модуль 600 р + модуль пульта 600р = 1200р По цене выходит дешем а управлять батареями всё равно придется через ZWave Подскажите если в каждую комнату поставить вот эти модули: http://thinking-home.ru/product/27.aspx http://thinking-home.ru/product/39.aspx Будет ли их видеть. http://thinking-home.ru/product/34.aspx И ещё написано http://thinking-home.ru/product/39.aspx питается от батарейки. А от сети не может? И возникает проблема куда ставить эти модули. Силовой в потолок, а выключатель на стенку? У меня все равно уже брошены провода. Было бы хорошо если был бы совмещённый модуль. Выключатель с силовым. А управлять через USB - http://thinking-home.ru/product/34.aspx

ErmolenkoM: NooLite - силовой модуль 600 р + модуль пульта 600р = 1200р + 2 USB донгла - читать, передавать Подскажите если в каждую комнату поставить вот эти модули: http://thinking-home.ru/product/27.aspx http://thinking-home.ru/product/39.aspx Будет ли их видеть. http://thinking-home.ru/product/34.aspx Все не так. 27 - это приемник 39 - передатчик. Соответственно 34 видит только 39, что бы управлять 27 нужно 29. А так - да. Все приемники слышат все передатчики. И ещё написано http://thinking-home.ru/product/39.aspx питается от батарейки. А от сети не может? Там батарейка 3 вольта. Если запитать - то сможет. И возникает проблема куда ставить эти модули. Силовой в потолок, а выключатель на стенку? У меня так. Есть еще вариант с распредкоробкой. Было бы хорошо если был бы совмещённый модуль. Выключатель с силовым. Хорошо бы, но нету. Кстати - спасибо за наводку на PK314, не видел их раньше, надо будет взять на пробу. Сенсорные выключатели не особо удобны, жена ругается :-)

Ivan: Спасибо, уже разобрался буду заказывать пробный комплект. Надеюсь малина скушает это все

Ivan: При заказе понял что силовых модуля нужно 2. По цене получилось в 2 раза дешевле. А вот с размещением будет засада. 3 модуля в подрозетник е влезут :(

ErmolenkoM: Надеюсь малина скушает это все RX1164 нагружает малинку, я посмотрел на тормоза вебинтерфейса и перебрался на бук (дешевенький за 5 тыр, Атом 570-й) - все летает. На счет компановки в подрозетник - у меня такая же проблема. Но сами коробочки красивые и светятся, так что возможно оставлю на виду - хайтек типа

ErmolenkoM: Микро отчет. Установил дома 11 выключателей, 12 пультов, USB Приемник (RX1164), USB Передатчик (PC1132) Интеграцию в систему МЖДМ (скрипты, объекты,...) смотреть здесь http://connect.smartliving.ru/profile/57 Несколько замечаний и выводов. 1. Все передатчики (сенсорные и USB) дают помехи на колонки. Писк в динамиках. Как бороться еще не придумал. Наводится только если близко и колонки дешевые. Решил пока так: купил USB удлинитель и вынес PC1132 на 2 метра в сторону - стало потише. 2. Выключатели сенсорные НЕ УДОБНЫЕ. Это круто, стильно, модно - НО НЕ УДОБНО. Особенно сердится жена. Варианта два: первый - полная автоматика на датчиках движения, то есть когда свет зажигается и тухнет сам по себе (планирую себе такой вариат). Второй это http://www.noo.com.by/pult-pk314.html и обычные выключатели. Единственный недостаток - при выключении с компа выключатель останется в положении включено, и придется 2 раза щелкать. Кроме того там батарейка, которую надо будет менять раз в год. Все сказанное не относится к пультам для запуска сценариев, на которые жмешь осмысленно (врубить везде свет, вместо того что бы погасить оставшийся - не приятно). там сенсоры в самый раз. 3. Регулировать яркость НЕ УДОБНО. Крутилка диммера значительно лучше кнопок (долго, и промахиваюсь то есть хотел убавить, а он потух совсем). То есть совет такой: больше настроенных сценариев - вот это удобно (читаю, смотрю кино, полный свет,...) Это совет при подборе выключателей. И еще совет от моей жены: желательно программировать кнопки единообразно: например верхняя включает, нижняя выключает. И подбирать пульты так же. У меня полное разнообразие, она пока путается. Может еще привыкнет? 4. Димеры и энергосберегайки. Хочется поэкономить, и яркость порегулировать. Оказывается есть энергосберегайки для диммеров. Они работают с выключателями "Силовые блоки серии ST". Я покупаю (это не реклама) Ecola http://www.ecola.ru/catalogue31.html. Есть и другие. По ошибке включил обычные сберегайки на неполную яркость - узо(или автомат - они рядом не понял кто именно) стал дико трещать. Так что осторожнее. 5. RGB контроллер. Делал первый раз, наделал кучу ошибок, но штука классная. Выключатель - можно не брать, с него переключать беспонтово. Устанавливаем нужные яркости и цвет с компа и записываем на сценарные кнопки обычных - так юзабельность значительно лучше. Себе сделал верхний свет в коридоре. 2 по 5 метров святят очень ярко и заменяют обычную лампу. Так же на ее основе сделал "световые часы" (идея украдена на этом форуме) цвет меняется каждый час. Подсказку (циферблат раскрашенный цветными карандашами) на стену. Очень нравится определять время! Пока поглядываю на наручные, проверяю :-) Еще лента меняет цвет что бы сообщить о чем-то. Например если нажата кнопка "мы уходим" она мигнет зеленым если замечаний нет, или красным, если открыты окна или горит газ. 6. Распределенная система очень надежна: во время миграции Алисы на другое железо, сервер пару дней лежал. Свет работал в ручном режиме, то есть от выключателей. 7. Подключать блоки, да и работать с проводами мне понравилось с помощью клемм Wago. Удобно. 8. В ванной блоки смонтировал снаружи, в распредкоробке. 9. В ванной разместил выключатель, где на сценарную кнопку повесил скрипт "say('Человек в ванной зовет на помощь!',1);" Теперь не надо орать на весь дом что мыло кончилось, и т.п. 10. Теплый пол. При монтаже выбрал самый простой выключатель. Он умел только поддерживать заданную температуру. Подключил через "Силовой блок SN111-500". Теперь Алиса рулит полом - выключает если никого нет дома, прибавляет, если холодно. Пульт не привязывал. Все с компа. 11. Вытяжка и вентиляция. Вытяжка над плитой подключена через диммируемый блок и включена на полную. Теперь скоростью вращения рулит Алиса. Так же и вентиляция. Раньше жена ее не включала, так как она сильно шумела. Теперь можно включать на малые обороты и на большие сценариями. 12. Сценарии. Пока не много, но постоянно появляются новые. Сейчас есть: SOS в ванной, все ушли(переключение режимов), все уснули(переключение режимов), собираюсь спать (выключить верхний свет, включить дежурный свет ярко, через 2 минуты выключить дежурный свет), пришли гости(переключение режимов). Сценарии устроены следующим образом. К сценарному каналу может быть привязаны блоки, тогда они переходят в заданный режим миную Алису. Алиса делает дополнительную работу: включает блоки по условиям (светло/ темно, жарко/ холодно,..), переключает режимы. Некоторые сценарии не привязаны к блокам. Их обрабатывает чисто Алиса. У них можно использовать длинное нажатие (код 8). 13. Надежность. За все время пока выло только 3 проблемы. Первая - неустойчивая связь с блоком: решилось выпрямлением антенны. Вторая - не четкая работа пульта: решилось подклеиванием термоклеем (отошел он и пластинка сдвинулась). И третья - блок перестал отвечать на команду привязки (работает, входит в режим привязки, но не реагирует на пульты. При этом с ранее привязанными пультами нормально работает.) - отправлен в коробку, позже может поразбираюсь что с ним. Вместо заключения. На все потрачено чуть меньше $1к (включая лампы, ленты, клеммы, БП). Результатом я доволен. Есть планы по расширению системы.

sergejey: msh555, отличный отчёт и полезные замечания!

Ivan: Почему то на русском сайте есть другое описание пультов: http://thinking-home.ru/product/38.aspx http://thinking-home.ru/product/37.aspx http://thinking-home.ru/product/36.aspx С возвратными клавишами. Собираюсь поставить везде не зависимо от того выберу NooLite или ZWave (Ещё думаю). Купил двойные возвратные - Fibaro Dimer Юзает их отлично http://thinking-home.ru/product/39.aspx - С обычными клавишами Может у них описание неправильное - уточните пожалуйста Можете сказать 3 блока в подрозетник влезут? Почему они не сделали совмещённый: 2 исполнительных и 2 внешние кнопки или 2 димера и внешние кнопки - Для нашего проекта было бы самый раз

anemcov: общался с NooLite по поводу использования механических выключателей. Идея такая - купить выключатель для жалюзи: у него 2 кнопки с нефиксируемым положением. Эти кнопки запараллелить с сенсорными на выключателе от NooLite. "В лоб" у меня это сделать не получилось, но технари из NooLite порекомендовали последовательно с механической кнопокой воткнуть конденсатор на 10 пФ (пикофарад). Пока до тестов руки не добрались.

ErmolenkoM: последовательно с механической кнопокой воткнуть конденсатор на 10 пФ (пикофарад). Тоже думал бросить параллельно обычным. Даже догадался про конденсатор. У меня немного другая задача была - датчик движения прикрутить. Но с появлением специализированных выключателей - думаю лучше оставить сенсорные пульты для управления (звук, и прочее), а для мех выключателей поставить специализированные.

MaksMS82: http://habrahabr.ru/company/boxowerview/blog/201606/

sergejey: Ребята, может кто устанавливал Linux-драйвер под OpenWrt? Хотел бы попробовать использовать роутер в качестве гейта для Noolite.

ignat99: Я списывался с ними по поводу покупки модулей. Ответили деньги принимают только через Яндекс-кошелёк (!) это они сказали иностранной компании. Я собираюсь собрать их код под OpenWRT, но у меня место кончилось на ноутбуке. Надо ждать пока сервер купят. :-) Из хороших новостей, на выбранную прошивку для TP-Link можно поставить пакет москито с MQTT (http://mosquitto.org/) сервером. А больше вроде не чего и не надо. :-)

I_I_Imonder: а можно получить код Световых часов, как Вы это сделали? откуда время берет?

ignat99: а можно получить код Световых часов, как Вы это сделали? откуда время берет? http://connect.smartliving.ru/profile/57 Объекты системы->OperationalModes->Объекты класса->NobodyHomeMode->Методы объекта->modeChanged //Включим световой будильник callMethod("NooLite_RGB_1.check"); Объекты системы->systemStates->Объекты класса->Communication ->Методы объекта->checkState Объекты системы->Timer->Объекты класса->ClockChime ->Методы объекта->onNewHour // Световые часы callMethod("NooLite_RGB_1.check"); А вот и сам код часов: Объекты системы->Класс NooLiteDimm >NooLiteRGB->Объекты класса->NooLite_RGB_1 ->Методы объекта->check

ErmolenkoM: а можно получить код Световых часов, как Вы это сделали? откуда время берет? мой профиль. http://connect.smartliving.ru/profile/57 Timer onNewHour // Световые часы callMethod("NooLite_RGB_1.check"); NooLite_RGB_1 - Разноцветный свет в коридоре check //Только если дома кто-то есть включим цветовые часы if (!getGlobal("NobodyHomeMode.active")){ if (timeBetween("00:00", "01:00")||timeBetween("12:00", "13:00")){ // красный $this->callMethod('setColor',array("VALUE"=>'001100000000')); }elseif (timeBetween("01:00", "02:00")||timeBetween("13:00", "14:00")){ // желтый $this->callMethod('setColor',array("VALUE"=>'001100050000')); }elseif (timeBetween("02:00", "03:00")||timeBetween("14:00", "15:00")){ // морская волна $this->callMethod('setColor',array("VALUE"=>'001000100100')); }elseif (timeBetween("03:00", "04:00")||timeBetween("15:00", "16:00")){ // красный $this->callMethod('setColor',array("VALUE"=>'001100000010')); }elseif (timeBetween("04:00", "05:00")||timeBetween("16:00", "17:00")){ // зелный $this->callMethod('setColor',array("VALUE"=>'001000100000')); }elseif (timeBetween("05:00", "06:00")||timeBetween("17:00", "18:00")){ // голубой $this->callMethod('setColor',array("VALUE"=>'001000100050')); }elseif (timeBetween("06:00", "07:00")||timeBetween("18:00", "19:00")){ // малиновый $this->callMethod('setColor',array("VALUE"=>'001100000050')); }elseif (timeBetween("07:00", "08:00")||timeBetween("19:00", "20:00")){ // светло-зеленый $this->callMethod('setColor',array("VALUE"=>'001050100000')); }elseif (timeBetween("08:00", "09:00")||timeBetween("20:00", "21:00")){ // синий $this->callMethod('setColor',array("VALUE"=>'001000050100')); }elseif (timeBetween("09:00", "10:00")||timeBetween("21:00", "22:00")){ // красный $this->callMethod('setColor',array("VALUE"=>'001100010000')); }elseif (timeBetween("10:00", "11:00")||timeBetween("22:00", "23:00")){ // салатовый $this->callMethod('setColor',array("VALUE"=>'001100100000')); }elseif (timeBetween("11:00", "12:00")||timeBetween("23:00", "00:00")){ // фиолетовый $this->callMethod('setColor',array("VALUE"=>'001000000100')); }else{ //неизвестное время суток $this->callMethod('setColor',array("VALUE"=>'001100100100')); } }else{ $this->callMethod('turnOff'); } Время берется естественно с сервера МЖД, непосредственно функцией timeBetween.

I_I_Imonder: спасибо большое)буду ковырять

I_I_Imonder: вот засада) у меня же на винде все стоит) а каким параметром время брать в винде? (не силен в программировании, прогуливал)

ignat99: вот засада) у меня же на винде все стоит) а каким параметром время брать в винде? (не силен в программировании, прогуливал) Но MJD же PHP на Apache. Я не работал c Windows, но по идее всё то же самое должно рабоать.

I_I_Imonder: можете подробнее объяснить что делает вот этот код? если время на сервере 00:00 то красный а что вот эта строка делает? как ноолайт понимает какой ему цвет включить $this->callMethod('setColor',array("VALUE"=>'001100000000'));

ErmolenkoM: можете подробнее объяснить что делает вот этот код? если время на сервере 00:00 то красный а что вот эта строка делает? как ноолайт понимает какой ему цвет включить $this->callMethod('setColor',array("VALUE"=>'001100000000')); setColor - Устанавливает яркость и цвет $value = $params['VALUE']; if ($value){ $brightness=substr($value,0,3); $R=substr($value,3,3); $G=substr($value,6,3); $B=substr($value,9,3); }else{ $brightness=$params['brightness']; $R=$params['R']; $G=$params['G']; $B=$params['B']; } $this->setProperty('brightness',$brightness); $this->setProperty('R',$R); $this->setProperty('G',$G); $this->setProperty('B',$B); $this->callMethod('refresh'); refresh $brightness=$this->getProperty("brightness"); $r=$this->getProperty("R"); $g=$this->getProperty("G"); $b=$this->getProperty("B"); /* $sum=$r+$g+$b; if ($sum==0) { $sum=1; } */ $sum=100; // не понял я задумку, но так занчения [0..100] приводятся к [0..255] $r_value=round((255*$r/$sum)*$brightness/100); $g_value=round((255*$g/$sum)*$brightness/100); $b_value=round((255*$b/$sum)*$brightness/100); if ($this->getProperty("rolling")) { $this->callMethod("sendCommand",array('command'=>'-roll_color_ch '.$this->getProperty("channel"))); } else { $this->callMethod("sendCommand",array('command'=>'-set_color_ch '.$this->getProperty("channel").' '.$r_value.' '.$g_value.' '.$b_value)); } if ($brightness>0) { $this->setProperty('status',1); } else { $this->setProperty('status',0); } sendCommand - Отправка команды устройству Noolite $cmdline='sleep 0.5; /usr/local/bin/noolitepc -api '.$params['command']; safe_exec($cmdline);

I_I_Imonder: спасибо!

ILGAS: всем привет. хотел спросить приёмник nooLight (RX1164) - он работает только как приемник? только слушает. и получается нужно два покупать приемник (RX1164) и передатчика (PC118) чтобы работала с двухсторонней связью?

ignat99: Да именно так, последние 2 цифры в названии это количество поддерживаемых каналов. Но активные управляющие эелемнты в NooLight не возвращают своего состояния. Обещают в новых версиях устройств добавить эту опцию. Получается что приёмник нужен для перехвата состояния во время переключения устройств по радиоканалу. Но он не нужен для минимальной работоспособной конфигурации NooLight системы.

I_I_Imonder: что то не получается у меня с этими часами) вот что пишет Parse error: syntax error, unexpected T_VARIABLE in C:\_majordomo\htdocs/cached/b4372514d744cd317192de0b13da6bb2.php on line 19 Наверно придется за книгу браться)

I_I_Imonder: как можно сделать команду выключить все? safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -off_ch1'); safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -off_ch2'); safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -off_ch3'); и чтобы статус кнопки менялся в меню управления светом

sergejey: Из новостей от "Ноотехники" -- передали мне инженерный образец такой штуки: http://c2n.me/6NywIL.jpg это радио-модуль (только передатчик) с подключением по UART, так что его по идее можно прикрутить к Arduino и использовать в своих целях подробное описание: http://www.noo.com.by/assets/files/PDF/MT1132.pdf в общем, попробую подключить, поиграться, по результату отпишусь. про стоимость и дату выхода в тираж пока ничего не знаю.

ErmolenkoM: передали мне инженерный образец такой штуки MT1132 тоже получил такую платку. Первые впечатления - толково сделано. Буду подключать, смотреть, что как. Планирую следующее использование: будет вспомогательный узел управления выключателями и отправки команд на МЖД. То есть плату в ардуино, на ноги ардуино датчики и потенциометры для настройки. Будут 5-6 герконов, 3 PIR, и возможно еще что-нибудь. Алгоритм планируется следующий: PIR видит движение, ардуино дает команду включить свет, PIR видит отсутствие движения, ардуино дает команду отправить МЖД сообщение что движения нет, МЖД исходя из сложных условий и внутреннего состояния дает команду выключить свет. Таким образом свет включается мгновенно, выключается умно.

Ivan: Жаль нет. Приёмника. Так и придётся 2 свистка покупать :( Кстати они не планируют приёмник и передатчик в 1 свисток засунуть? Кстати купил Димер и пульт. Очень удивило стабильность дальность и температура контролера - уже жалею что с ZWave связался (Подглючивает и греется - но возможно с глюками виноват я). Одно не нравится - светодиод на димере (Вроде и нужен с начало, но потом светит в темноте сильно)

ErmolenkoM: Жаль нет. Приёмника. Так и придётся 2 свистка покупать :( Кстати они не планируют приёмник и передатчик в 1 свисток засунуть? Не слышал о таких планах, да и смысл? Есть 2 отдельных устройства... А так -да, для наших целей было бы удобно. Одно не нравится - светодиод на димере (Вроде и нужен с начало, но потом светит в темноте сильно) Кстати -да в спальне слепит очень сильно. В некоторых местах у меня даже стильно получилось - эдакая подсветка в темноте. Другие коробочки я попрятал - одну в цоколь люстры, еще три в навесной щиток для автоматов. Есть вариант монтировать не к лампе, а в разводочную коробку в стене (круглая такая) и закрывать крышкой.

Ivan: Тоже думал в коробку. Но уже обои поклеены. Насчёт этого ZWave переключатели проще. Они монтируются в подрозетник выключателя. И питаются как я понял пропуская слабый ток через лампу (Думаю от этого потребление растёт). То есть не нужно ломать ничего, вынимаешь выключатель монтируешь под него модуль и закрываешь. Нужно с ехать открутил всё, получились обычные выключатели.

sergejey: Завелось :) Ниже готовый скетч, если кому понадобится в качестве примера работы. Скетч позволяет через com-порт отправлять следующие команды на Arduino: pairN; -- передача своего ID для запись в памят приёмника (в режиме привязки) onN; -- включение канала offN; -- выключение вместо N номер канала. остальные команды уже можно будет по аналогии сделать. передатчик подключен через VCC,GND и RX/TX организован на пинах 10 и 11. в общем, поставлю теперь этот блок в свой сетевой контроллер и попробую в других сценариях. #include <SoftwareSerial.h> #define PIN_RX (10) // RX PIN (connect to TX on noolite controller) #define PIN_TX (11) // TX PIN (connect to RX on noolite controller) #define PIN_LED (13) #define NOO_BUF_LEN (12) SoftwareSerial mySerial(PIN_RX, PIN_TX); // RX, TX String inData; void setup() { pinMode(PIN_LED,OUTPUT); Serial.begin(9600); // set the data rate for the SoftwareSerial port pinMode(PIN_RX, INPUT); pinMode(PIN_TX, OUTPUT); mySerial.begin(9600); } void nooSend(byte channel, byte buf[NOO_BUF_LEN]) { buf[0]=85; buf[1]=B01010000; // buf[4]=0; buf[5]=channel; buf[9]=0; int checkSum; for(byte i=0;i<(NOO_BUF_LEN-2);i++) { checkSum+=buf[i]; } buf[10]=lowByte(checkSum); buf[11]=170; Serial.print("Sending: "); for(byte i=0;i<(NOO_BUF_LEN);i++) { Serial.print(buf[i]); if (i!=(NOO_BUF_LEN-1)) { Serial.print('-'); } } Serial.println(""); for(byte i=0;i<(NOO_BUF_LEN);i++) { mySerial.write(buf[i]); } } void noolitePair(byte channel) { byte buf[NOO_BUF_LEN]; for(byte i=0;i<(NOO_BUF_LEN);i++) { buf[i]=0; } buf[2]=15; buf[3]=0; nooSend(channel,buf); } void nooliteTurnOn(byte channel) { byte buf[NOO_BUF_LEN]; for(byte i=0;i<(NOO_BUF_LEN);i++) { buf[i]=0; } buf[2]=2; buf[3]=0; nooSend(channel,buf); } void nooliteTurnOff(byte channel) { byte buf[NOO_BUF_LEN]; for(byte i=0;i<(NOO_BUF_LEN);i++) { buf[i]=0; } buf[2]=0; buf[3]=0; nooSend(channel,buf); } void loop() // run over and over { if (Serial.available()) { char c=Serial.read(); if (c == '\n' || c == ';') { Serial.println(inData); int commandProcessed=0; if (inData.startsWith("p")) { commandProcessed=1; inData.replace("pair",""); noolitePair(inData.toInt()); } if (inData.startsWith("on")) { commandProcessed=1; inData.replace("on",""); nooliteTurnOn(inData.toInt()); } if (inData.startsWith("off")) { commandProcessed=1; inData.replace("off",""); nooliteTurnOff(inData.toInt()); } if (commandProcessed==0) { Serial.print("Unknown command: "); Serial.println(inData); } inData=""; Serial.flush(); } else { inData += (c); } } if (mySerial.available()) Serial.write(mySerial.read()); }

tammat: Добрый день, всем! Совсем отупел... Пытаюсь на новом железе подключить noolite согласно инструкции. switch.PNG Сценарий switch.PNG Объект Object.PNG Меню menu.PNG Не работает. через ссылку также не работает http://xxx.xxx.xxx.xxx:80/objects/?scri ... _light_bed Файл switch.php отрабатывает на отлично (ниже) <? exec('noolitepc -api -sw_ch 3'); if ($params['VALUE']) { exec('noolitepc -api -sw_ch 3'); } else { exec('noolitepc -api -sw_ch 3'); } ?> Help me! Thanks

handy76: Добрый день. Могу ошибаться, но по моему в первом exec (на первом скриншоте) много кавычек....

tammat: Это уже вариативность ставил и двойные кавычки и одинарные и те и другие результат один...

tammat: Добрый вечер всем!!! Help me pls У кого linux тыкните носом плз!!! Сколько какие кавычки ставить, что еще у меня не так??? Просто switch.php работает, пытаюсь через MJ не работает, хотя на другом железе работало. ЧТо я упустил??? Заранее спасибо

ErmolenkoM: Добрый вечер всем!!! Help me pls У кого linux тыкните носом плз!!! Сколько какие кавычки ставить, что еще у меня не так??? Просто switch.php работает, пытаюсь через MJ не работает, хотя на другом железе работало. ЧТо я упустил??? Заранее спасибо Честно - честно, 2 раза прочитал твой пост со скринами - не понял в чем проблема, и что надо. У меня в конекте вот так: sendCommand - Отправка команды стику управления RX11 $cmdline='/usr/local/bin/nooliterx1 -api '.$params; safe_exec($cmdline); refresh $value=$this->getProperty("brightness"); $this->callMethod("sendCommand",array('command'=>'-set_ch '.$this->getProperty("channel").' '.$value)); То есть вызов refresh у обьекта приведет к включению света. Это как понимаю у тебя работает. У слайдера заполнено так: Связанный объект.Свойство: NooLite_Dim1.brightness Запускать Объект.Метод: NooLite_Dim1.refresh то есть ползунок заполняет свойство и вызывает метод. Метод читает свойство и отправляет команду диммеру НооЛайт. Еще совет. Пользуйся ОТЛАДКОЙ!!! Есть встроенные механизмы (X-Ray, DebLog), я иногда просто Say() нужных значений делаю - смотрю что куда передается и какие значения принимает. Удачи! Если не получится - пиши подробно, что делаешь и что ожидаешь. И ссылку в коннект.

tammat: Разобрался... Накосячил с правами... Правда не вспомню когда libusb:error libusb couldn't open USB device /dev/bus/usb/001/007: Permission denied. libusb:error libusb requires write access to USB device nodes. Поставил на папку /dev/bus/usb/001 777 и все заработало. Однако при перезагрузке все права слетают...

I_I_Imonder: ребята помогите с яркостью у меня есть 3 слайдера яркости каждого цвета (они пишутся в свойства типа gg("RGB.R")." -".gg("RGB.G")." -".gg("RGB.B") sg("RGB.B",$params); safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -set_color_ch2 -'.gg("RGB.R")." -".gg("RGB.G")." -".gg("RGB.B")); и есть еще слайдер который делает общую яркость ленты (safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -set_ch2 -'.$params);), но вот проблема, после того как выбрал цвет и хочу поменять яркость всей ленты, яркость уменьшается, но с цветом который был включен последним с пульта. как можно это победить?

ErmolenkoM: Привет! Смотри как реализовано у меня или у Сергея в коннекте. Кратко: изменение яркости надо производить командой установки цвета, но с уменьшенными значениями цветов. например тусклый белый: safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -set_color_ch2 -1 -1 -1); тусклый красный safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -set_color_ch2 -1 -0 -0); или так: safe_exec('"c:\Program Files\nooLite\noolite.exe" -api -set_color_ch2 -100 -0 -0); На будущее: команды ты приводишь, это хорошо, но лучше те команды которые РЕАЛЬНО уходят на прибор. Получить их можно заменив safe_exec на say, или посмотреть в devlog. И ссылку на свой коннект тоже неплохо бы.

I_I_Imonder: спасибо, разобрался. а как в конекте сам код или сценарий посмотреть?

YanTotal: Все привет! Захотел у себя в квартире поставить систему и начать с самого просто ( как мне кажется) и важного - освещения. Сейчас выбираю между малиной и cubieboard. Подскажите, к cubieboard кто-то уже подключал нолайт? И что вообще лучше, малина или cubieboard? Для машины просто есть много туториалов, а cubieboard плата новая и плата не очень популярная.

Ivan: Думаю проблем не должно быть. Если на cubieboard ставить из ветки дебиана (т.к на малине именно он). Самого интересует вопрос т.к жду BeagleBoneBlack http://www.elinux.org/Beagleboard:BeagleBoneBlack из Германии. Сейчас правда с ними затык, т.к. спрос большой. Понравился тем что новая разработка в отличии от малины и cubieboard и стоит всего 45 Euro. У него большая производительности и малое потребление. Ну а в остальном очень похож на cubieboard Буду пытаться туда зарядить Noolite, RaZberry (ZWave)

bazooker: Думаю проблем не должно быть. Если на cubieboard ставить из ветки дебиана (т.к на малине именно он). Самого интересует вопрос т.к жду BeagleBoneBlack http://www.elinux.org/Beagleboard:BeagleBoneBlack из Германии. Сейчас правда с ними затык, т.к. спрос большой. Понравился тем что новая разработка в отличии от малины и cubieboard и стоит всего 45 Euro. У него большая производительности и малое потребление. Ну а в остальном очень похож на cubieboard Буду пытаться туда зарядить Noolite, RaZberry (ZWave) по той ветке на кьюбитрак ставится без проблем)

azh122: проблем есть. в какой то из соседних квартир шибко веселый перец завелся - играется нашим светом (в квартире ближайшей родственницы). под подозрением куча квартир - право-лево, верх-низ, да еще по диагонали как минимум... есть идеи как вычислить хотя бы направление и (извините) морду набить?

ignat99: viewtopic.php?f=8&t=1380 Можно зарегистрировать момент передачи и силу сигнала этим сканером. http://habrahabr.ru/post/149698/ http://habrahabr.ru/post/149702/ Впрочем, возможно и стандартным приёмником получиться. https://github.com/Ignat99/noolite-micr ... /ripple.js https://github.com/Ignat99/noolite

azh122: ёклмн... а по проще никак?

azh122: родственица позвонила. В истерике. Опять этот крендель развлекается. Пошла вырубила себе свет на лестничной клетке (хорошо что розетки отдельно - настольную лампу хоть можно включить). Легла спать. В выходные поедем к ней... бум думать что по быстрому придумать

ignat99: http://habrahabr.ru/company/contactless/blog/216023/ В протоколе полностью отсутствует какая-либо защита. В данном случае, вполне можно было бы использовать код типа KeeLoq — это код, который, грубо говоря, основан на синхронизации счётчиков в передатчике и приёмнике, используется в автомобильных брелоках. Реализовать что-то подобное можно даже на железе, которое сейчас используется в NooLite https://en.wikipedia.org/wiki/KeeLoq По большому счёту надо менять прошивку каждого диммера.

azh122: ну да, вот к чему популярность ведет - обязательно хакер найдется. Не думал что так близко. Самое фиговое что сам рекомендовал.... ((((

ErmolenkoM: Добрый день! У меня дома больше десятка диммеров НоваЛайт. Иногда действительно глюки бывают, но скорее не срабатывает выключатель - сигнал уходит и не доходит. Пару мыслей по поводу взлома снаружи. Проводился ли анализ какие диммеры включает/выключает хакер? Как вариант - поменять местами и перепривязать к выключателям. Но значительно проще решить проблему социально - постучаться к соседке, рассказать про творящееся безобразие. Наверняка в радиусе 15 метров живет не более одного школьника-кул-хацкера.

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

ignat99: Как в песочнице, всегда найдутся те, кто ломает куличики :-) А noolite надо доработать оборудование, чтобы можно было пременять не только в частных домах. Требуется вставить 3 строчки кода в приёмник и 3 в передатчик и переодически делать синхронизацию устройств.

azh122: я наверное что то пропустил, но можно попросить пальцем ткнуть в эти три строчки?

ignat99: я наверное что то пропустил, но можно попросить пальцем ткнуть в эти три строчки? https://ru.wikipedia.org/wiki/KeeLoq#%D ... 0D0%B8 Шифрование:

# define KeeLoq_NLF        0x3A5C742E
# define bit(x,n)        (((x)>>(n))&1)
# define g5(x,a,b,c,d,e)    (bit(x,a)+bit(x,b)*2+bit(x,c)*4+bit(x,d)*8+bit(x,e)*16)
 
u32 KeeLoq_Encrypt (const u32 data, const u64 key){
    
u32    x datar;
    for (
0528r++)
        
= (x>>1)^((bit(x,0)^bit(x,16)^(u32)bit(key,r&63)^bit(KeeLoq_NLF,g5(x,1,9,20,26,31)))<<31);
    return 
x;
}

Расшифровка:

u32 KeeLoq_Decrypt (const u32 data, const u64 key){
    
u32    x datar;
    for (
0528r++)
        
= (x<<1)^bit(x,31)^bit(x,15)^(u32)bit(key,(15-r)&63)^bit(KeeLoq_NLF,g5(x,0,8,19,25,30));
    return 
x;

nick7zmail: Заметил глюк, пока не знаю у чего, у софта или на этапе связи....короче суть такая - в програмке ноолайт выставляю диммером например 50%, выключаю, включаю - он на 50% и остается....в MDM так же диммером выставляю те же 50%, выключаю, включаю - на 100 % яркость перескакивает. Подскажите что не так, и как бороться?

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

ignat99: А разработчикам не пробовали писать, может что посоветуют, и на будущее учтут ? проблем есть. в какой то из соседних квартир шибко веселый перец завелся - играется нашим светом (в квартире ближайшей родственницы). под подозрением куча квартир - право-лево, верх-низ, да еще по диагонали как минимум... есть идеи как вычислить хотя бы направление и (извините) морду набить? А вопросы безопасности (шифрования управления в радиоэфире) решены уже? Или сосед по прежнему может спокойно включать и выключать чужие приборы? Здравствуйте, ignat. Или сосед по прежнему может спокойно включать и выключать чужие приборы? - если сосед обычный - то нет, т.к. в оборудовании nooLite мы гарантируем, что идентификаторы пультов, которые мы выпускаем, не будут совпадать. Т.е. если у 2 соседей nooLite то все будет нормально. Если же сосед взломщик, то тогда даже WiFi можно взломать, вопрос времени. А вопросы безопасности (шифрования управления в радиоэфире) решены уже? - пока что система без шифрования, оно будет уже во второй серии системы вместе с обратной связью от силовых блоков. С уважением, Мигаль Дмитрий Инженер-конструктор УП НООТЕХНИКА 8029-9286105

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

Vit: Сканер кодов чего? Они разные)

azh122: не знаю как называется эта штучка правильно. что за фирмА, что может делать его штучка - понятия не имею. Просто видел у него в руках - простой брелок. Типа того которой видел на алиэкспрессе - называется дупликатором и стоил баксов 10 (пошалить с nooLight я так понимаю этого достаточно). Я так понял что все что умеет так это - так это на 433мгц поймать/запомнить/повторить команду. Токо у него на этом брелке махонький жк экранчик был .

andreyt: А подскажите SN ST не подходят для "Светодиодные лампы, светильники" "Люминесцентные и энергосберегающие лампы" они с ними вообще работать не будут, или включать выключать будут, просто димирование не будет работать ? хочу везде поставить с возможностью димирования. что бы потом не покупать другие блоки.

us_capone: А китайские беспроводные звонки тоже работают на этой частоте. Где-то видел статью по сборке "глушилки" из кнопки китайского звонка. С помехами от таких звонков никто не сталкивался?

ignat99: А китайские беспроводные звонки тоже работают на этой частоте. Где-то видел статью по сборке "глушилки" из кнопки китайского звонка. С помехами от таких звонков никто не сталкивался? Частота 433. МГц, но код цифровой. Вероятно с коррекцией ошибок через повторение. ● http://habrahabr.ru/company/contactless/blog/229469/http://habrahabr.ru/company/contactless/blog/216023/http://habrahabr.ru/post/222663/ Можно сделать глушилку даже на несколько полос частот или широкополосную. Поэтому для систем с повышенной опастностью лучше использовать Hack RF для передачи тревожного радио сигнала на произвольной частоте в случае вторжения. https://www.kickstarter.com/projects/mo ... r-platform Для сканирования попыток радио вторжения по периметру объекта можно установить на периферийных роутерах или любых линукс боксах. RTL-SDR and GNU Radio with Realtek RTL2832U [Elonics E4000/Raphael Micro R820T] software defined radio receiver for $9. Такое решение даст вам шанс. Плюс не стоит покупать для оборудования таких важных объектов текущее поколение NooLite, лучше дождаться следующего с обратной связью. IMHO

ignat99: А подскажите SN ST не подходят для "Светодиодные лампы, светильники" "Люминесцентные и энергосберегающие лампы" они с ними вообще работать не будут, или включать выключать будут, просто димирование не будет работать ? хочу везде поставить с возможностью димирования. что бы потом не покупать другие блоки. SN - для ламп накаливания, точечных и линейных галогенных ламп на 220 В и галогенных ламп на 12 В, подключенных через ферромагнитный трансформатор, с регулировкой яркости. ST - для галогенных ламп на 12 В, питающихся через электронный трансформатор, с регулировкой яркости. (ST - для высокочастотного электронного трансформатора - дешёвого китайского за 200 руб как в переходнике 220 - USB, а так же для обычного трансформатора и обычных лам с регулировкой яркости - заменитель SN. ) SL - для люминесцентных и энергосберегающих ламп, газоразрядных ламп, светодиодных ламп с электронными драйверами и любых других нагрузок, без регулировки яркости. (SL работает со всеми вышеперечисленными, но не меняет яркость.) SD - для светодиодных лент и ламп на 12 В постоянного тока, с регулировкой яркости.

andreyt: У всех этих блоков по идее на выходе 220 вольт и по сути они должны работать с любым оборудованием, если не использовать димер, но я могу ошибаться, поэтому и спрашиваю что будет если на ST подключить оборудование от SL? Тоесть если я подключу на ST люстру где у меня энергосберегайка, китайская лампа светодиодная без димирования, и обычная лампа накаливания, параллельно , будет ли этот салат работать на ST ? А подскажите SN ST не подходят для "Светодиодные лампы, светильники" "Люминесцентные и энергосберегающие лампы" они с ними вообще работать не будут, или включать выключать будут, просто димирование не будет работать ? хочу везде поставить с возможностью димирования. что бы потом не покупать другие блоки. SN - для ламп накаливания, точечных и линейных галогенных ламп на 220 В и галогенных ламп на 12 В, подключенных через ферромагнитный трансформатор, с регулировкой яркости. ST - для галогенных ламп на 12 В, питающихся через электронный трансформатор, с регулировкой яркости. (ST - для высокочастотного электронного трансформатора - дешёвого китайского за 200 руб как в переходнике 220 - USB, а так же для обычного трансформатора и обычных лам с регулировкой яркости - заменитель SN. ) SL - для люминесцентных и энергосберегающих ламп, газоразрядных ламп, светодиодных ламп с электронными драйверами и любых других нагрузок, без регулировки яркости. (SL работает со всеми вышеперечисленными, но не меняет яркость.) SD - для светодиодных лент и ламп на 12 В постоянного тока, с регулировкой яркости.

sergejey: А китайские беспроводные звонки тоже работают на этой частоте. Где-то видел статью по сборке "глушилки" из кнопки китайского звонка. С помехами от таких звонков никто не сталкивался? Система ноолайт помехам вполне себе подвержена, так что если есть что-то работающее на частоте 433Mhz длительное время, то могут быть проблемы с прохождением команд. Протокол без обратной связи и соответсвенно без коррекции ошибок. По-умолчанию модули шлют два пакета и обычно хватает. Модуль, подключаемый к Arduino, может слать больше пакетов для гарантированной доставки. Кстати, сегодня узнал, что ребята работают над второй версией протокола, когда в каждом модуле будет трансивер для подтверждения доставки или запроса состояния. С текущими модулями эти преимущества, конечно, не появятся.

ignat99: А китайские беспроводные звонки тоже работают на этой частоте. Где-то видел статью по сборке "глушилки" из кнопки китайского звонка. С помехами от таких звонков никто не сталкивался? Система ноолайт помехам вполне себе подвержена, так что если есть что-то работающее на частоте 433Mhz длительное время, то могут быть проблемы с прохождением команд. Протокол без обратной связи и соответсвенно без коррекции ошибок. По-умолчанию модули шлют два пакета и обычно хватает. Модуль, подключаемый к Arduino, может слать больше пакетов для гарантированной доставки. Кстати, сегодня узнал, что ребята работают над второй версией протокола, когда в каждом модуле будет трансивер для подтверждения доставки или запроса состояния. С текущими модулями эти преимущества, конечно, не появятся. О новой версии я написал выше. viewtopic.php?f=8&t=389&start=150#p13418

ignat99: У всех этих блоков по идее на выходе 220 вольт и по сути они должны работать с любым оборудованием, если не использовать димер, но я могу ошибаться, поэтому и спрашиваю что будет если на ST подключить оборудование от SL? Тоесть если я подключу на ST люстру где у меня энергосберегайка, китайская лампа светодиодная без димирования, и обычная лампа накаливания, параллельно , будет ли этот салат работать на ST ? А подскажите SN ST не подходят для "Светодиодные лампы, светильники" "Люминесцентные и энергосберегающие лампы" они с ними вообще работать не будут, или включать выключать будут, просто димирование не будет работать ? хочу везде поставить с возможностью димирования. что бы потом не покупать другие блоки. SN - для ламп накаливания, точечных и линейных галогенных ламп на 220 В и галогенных ламп на 12 В, подключенных через ферромагнитный трансформатор, с регулировкой яркости. ST - для галогенных ламп на 12 В, питающихся через электронный трансформатор, с регулировкой яркости. (ST - для высокочастотного электронного трансформатора - дешёвого китайского за 200 руб как в переходнике 220 - USB, а так же для обычного трансформатора и обычных лам с регулировкой яркости - заменитель SN. ) SL - для люминесцентных и энергосберегающих ламп, газоразрядных ламп, светодиодных ламп с электронными драйверами и любых других нагрузок, без регулировки яркости. (SL работает со всеми вышеперечисленными, но не меняет яркость.) SD - для светодиодных лент и ламп на 12 В постоянного тока, с регулировкой яркости. SD - для 12 вольт. SL - совместим со всеми типами ламп, кроме 12 вольт. Попробуйте перечитать то что я написал, скачайте офицальную PDF и посмотрите картинку в PDF. Или таблицу: http://thinking-home.ru/category/noolit ... -selection

azh122: А китайские беспроводные звонки тоже работают на этой частоте. Где-то видел статью по сборке "глушилки" из кнопки китайского звонка. С помехами от таких звонков никто не сталкивался? Просто (славо богу) никому особо не нужно помех разводить. Это все равно что в дверной звонок позвонил и сбежал. Как ребенок, чесс слово. Мы попали на "умника" случайно. Чел по центру мск работает на авто. Там все платно. либо шлагбаумы. Приличная часть из которых легко вскрывается дупликатором (подкараулил машинку - считал/записал/воспроизвел код - проехал сам). Ну и лежа на диване и играясь этим дупликатором он заодно и нашим нулайтом типа случайно поигрался ))) я товарища пытался поймать RF чипом с директ мод + дуина. (на всем этом легко делается хоть умная глушилка, хоть дупликатор, хоть фигня которая коды перебирает). Поймал в основном беспроводные датчики от соседских сигналок (в многоэтажке - чуть ли не через каждые 3-4 этажа таки есть!) Еще прикольно в котежном поселке соседскими воротами поиграться ))) Но это один-два раза интересно. Тем более не безопасно - можно рулить только ближайшими воротами - до дальних не добивает. Т.е. видно кто тут хулиганить может

Satgate_M: Добрый день. Хочу интегрировать адаптер PC118 (уже приобрел) и блоки управления нагрузкой (тоже купил). В МжД все работает. Но сейчас надо интегрировать его в систему умного дома, соотв. уже нет возможности локально (из под Windows) запускать api команды. Контрллер дома может отправлять get запросы через http. Подскажите, пожалуйста, какие варианты существуют для управления через api удаленно (можно через http) или как-то еще, но нужны именно команды, а не веб интерфейс. Может этот свисток PC118 можно на прошитый рутер поставить и получить ethernet шлюз которым можно будет управлять get запросами? Может кто уже сталкивался с таким? Спасибо.

kylich: вы имеете в виду что-то типо этого? value="50" obj="Zal1" wget -q -O /dev/null "www.yourdomen.ru/objects/?object="$obj"&op=m&m=dim&value="$value > /dev/null здесь у объекта Zal1 устанавливается яркость в 50%

Satgate_M: вы имеете в виду что-то типо этого? value="50" obj="Zal1" wget -q -O /dev/null "www.yourdomen.ru/objects/?object="$obj"&op=m&m=dim&value="$value > /dev/null здесь у объекта Zal1 устанавливается яркость в 50% Да как это работает с MjD разобрался. Теперь пытаюсь как-то реализовать этот адаптер чтобы он работал без MjD, т.е. чтобы MjD обращалась на него напрямую.

kylich: вы имеете в виду удаленный вызов программы? В случае с linux это можно сделать через ssh . Но зачем? лучше когда центральная система управляет железом а вы посылаете команде уже этой системе. Или может я вас не правильно понял. Вы хотите из под другой ОС работать с адаптером? Для linux есть несколько решений. они на сайте noolite указаны http://www.noo.com.by/adapter-dlya-pk-pc1132.html. Не знаю в каком они сейчас состоянии, но в 2013 мне пришлось немного подпиливать исходники. Основа моей программы для работы с адаптером https://github.com/pythonchik/nooLite. Там все довольно просто. И по идее компильнуть ее вы сможете под любую ОС(с небольшими изменениями). А если хотите чтобы система напрямую работала с usb, ну тогда описание HID устройства тоже есть на сайте noolite.

Satgate_M: вы имеете в виду удаленный вызов программы? В случае с linux это можно сделать через ssh . Но зачем? лучше когда центральная система управляет железом а вы посылаете команде уже этой системе. Или может я вас не правильно понял. Вы хотите из под другой ОС работать с адаптером? Для linux есть несколько решений. они на сайте noolite указаны http://www.noo.com.by/adapter-dlya-pk-pc1132.html. Не знаю в каком они сейчас состоянии, но в 2013 мне пришлось немного подпиливать исходники. Основа моей программы для работы с адаптером https://github.com/pythonchik/nooLite. Там все довольно просто. И по идее компильнуть ее вы сможете под любую ОС(с небольшими изменениями). А если хотите чтобы система напрямую работала с usb, ну тогда описание HID устройства тоже есть на сайте noolite. Идея такая, чтобы вынести "железные" вещи в отдельные устройства. Те в MjD вся логика, а устройства все управляются по езернет. Например ПК с MJD завис или сломался, но все исполнительные устройства можно вкл.вкл и с мобильного путем отправки на них команд. В итоге для повышения надежности. (это в основном для освещения касается).

ErmolenkoM: Идея такая, чтобы вынести "железные" вещи в отдельные устройства. Те в MjD вся логика, а устройства все управляются по езернет. Например ПК с MJD завис или сломался, но все исполнительные устройства можно вкл.вкл и с мобильного путем отправки на них команд. В итоге для повышения надежности. (это в основном для освещения касается). Плохая идея. НооЛайт достаточно автономен, что бы функционировать без МЖД - выключатели вполне себе самостоятельно работают с диммирами. Временная остановка МЖД скажется на автоматизации освещения (да и то не в полной мере, если пользовать сценарии НооЛайт). Управление светом со смартфона мною за год использовалось дважды: показать жене и друзьям как это круто. Все. В вашем случае поставьте НооЛайт-Шлюз и управляйте со смарта, но как по мне - это лишние сущности и деньги.

kylich: Идея такая, чтобы вынести "железные" вещи в отдельные устройства. Те в MjD вся логика, а устройства все управляются по езернет. Например ПК с MJD завис или сломался, но все исполнительные устройства можно вкл.вкл и с мобильного путем отправки на них команд. В итоге для повышения надежности. (это в основном для освещения касается). брелок ноолайта установлен на каком железе, какой ОС? Как я сказал, под ubuntu можете слать команду с помощью ssh. но по мне это как-то не так.Если ПК с MJD сломался, то ПК с usb брелком так же может сломаться.

slavAlex: Привет всем. Открыл для себя недавно Mojordomo - интересная гибкая система, широкие возможности. Разбираюсь вот с Ноолайт. Возникли затруднения. У объекта Noolite выставляю Свойство channel=3, в Меню к Выключателю добавляю Объект, Свойство, Метод. Захожу в Меню, щелкаю по выключателю - включается 1 канал Ноолайт. Сколько раз не пробовал - не сохраняется номер канала в Свойстве Объекта. Также делал на Сцене элементы управления - также, срабатывает 1 канал и всё тут. Если делаю Выключатель через сценарий (http://smartliving.ru/Main/Noolight) - вроде работает нормально, но кстати с заметной задержкой где-то 0,5сек. Подскажите, что не так. Или я нарыл баг :?: WinXP SP3, MojorDomo 0.9.

ignat99: Либо надо запрограммировать нужный каналл, для этого на димере надо нажать кнопку и этим самым переключить в режим настройки, подать команду смены канала. Нажать ещё раз для переключения в режим работы. Либо драйвера для Ноолайт кривые (одну из версий этих драйверов (линукс программы управления NooLite) я сам затупил на хакатоне) надо было быстро сделать, поэтому урезал возможности в драйверах до одной команы и одного канала).

sergejey: Привет всем. Открыл для себя недавно Mojordomo - интересная гибкая система, широкие возможности. Разбираюсь вот с Ноолайт. Возникли затруднения. У объекта Noolite выставляю Свойство channel=3, в Меню к Выключателю добавляю Объект, Свойство, Метод. Захожу в Меню, щелкаю по выключателю - включается 1 канал Ноолайт. Сколько раз не пробовал - не сохраняется номер канала в Свойстве Объекта. Также делал на Сцене элементы управления - также, срабатывает 1 канал и всё тут. Если делаю Выключатель через сценарий (http://smartliving.ru/Main/Noolight) - вроде работает нормально, но кстати с заметной задержкой где-то 0,5сек. Подскажите, что не так. Или я нарыл баг :?: WinXP SP3, MojorDomo 0.9. Если не сохраняется номер канала в свойстве, то это какая-то ошибка. Т.е. устанавливаете номер канала в 2, сохраняете, а он всё равно остаётся 1? Или как-то по-другому? А другие свойства нормально сохраняются?

slavAlex: Раньше ответить не получилось. В общем такая интересная особенность. Номер канала в свойстве оказывается сохраняется. Но когда я щелкаю выключателем в МЕНЮ, управляя объектом Ноолайт, тогда управляется только первый канал (хотя в свойстве объекта сохранен, например, третий). Захожу в панель управления, проверяю номер канала в свойстве этого объекта (после управления из меню) - а там 1. (Дополнительно к этому при управлении Ноолайтами из меню наблюдаются периодические зависания MajorDoMo, какую-либо закономерность пока выявить не удалось). Когда же используешь в качестве управления Ноолайтами элементы сцены расставляя их по сцене, тогда номер канала не сбрасывается и управляются нужные каналы.

sergejey: Раньше ответить не получилось. В общем такая интересная особенность. Номер канала в свойстве оказывается сохраняется. Но когда я щелкаю выключателем в МЕНЮ, управляя объектом Ноолайт, тогда управляется только первый канал (хотя в свойстве объекта сохранен, например, третий). Захожу в панель управления, проверяю номер канала в свойстве этого объекта (после управления из меню) - а там 1. (Дополнительно к этому при управлении Ноолайтами из меню наблюдаются периодические зависания MajorDoMo, какую-либо закономерность пока выявить не удалось). Когда же используешь в качестве управления Ноолайтами элементы сцены расставляя их по сцене, тогда номер канала не сбрасывается и управляются нужные каналы. Может быть в меню где-то есть привязка к номеру канала? т.е. переключатель меняет свойство номера канала, а не статуса.

triada13: slavAlex посмотрите у меня в коннекте, я использую и сцены и выключатели в меню, с номерами каналов проблем не было.

slavAlex: Может быть в меню где-то есть привязка к номеру канала? т.е. переключатель меняет свойство номера канала, а не статуса. Ага, есть такое. Почему-то мне думалось, что в Меню в Свойстве и должен быть channel :? Исправил на status. Но периодические зависания при вкл-выкл Выключателей остаются, лечится перезапуском, но иногда не с первого раза. Вероятно, что-то не правильно делаю: 1. Создаю объект класса Relays-Noolight, задаю ему название(Свет в зале), местоположение, номер канала. 2. В меню делаю новый раздел, в нем дочерними делаю Выключатели, у которых задаю название, приоритет, выбираю связанный объект(Свет в зале), Свойство - status, Метод - switch. Больше ничего не делаю. Что не так, блин ё-моё. :(

Enic: MT1132 с поддержкой под Windows и Linux без ПО от NooLite: viewtopic.php?f=14&p=14820#p23065

sergejey: Так, ребята, нужна помощь с ноолайт под линуксом (raspbian). Ставлю пакет отсюда: https://github.com/olegart/noolite Пытаюсь скомпилировать, configure проходит вроде ок, но make выдаёт ошибку: pi@raspberrypi ~/noolite-master make
make  all
-recursive
make
[1]: Entering directory '/home/pi/noolite-master'
Making all in src
make
[2]: Entering directory '/home/pi/noolite-master/src'
gcc -O2 ---O1 -lusb-1.0  -o nooliterx nooliterx.o
/usr/bin/ldnooliterx.oundefined reference to symbol 'clock_gettime@@GLIBC_2.4'
//lib/arm-linux-gnueabihf/librt.so.1: error adding symbols: DSO missing from command line
collect2ld returned 1 exit status
Makefile
:245recipe for target 'nooliterx' failed
make
[2]: *** [nooliterxError 1
make
[2]: Leaving directory '/home/pi/noolite-master/src'
Makefile:251recipe for target 'all-recursive' failed
make
[1]: *** [all-recursiveError 1
make
[1]: Leaving directory '/home/pi/noolite-master'
Makefile:189recipe for target 'all' failed
make
: *** [allError 2 Кто сталкивался?

Dark_Veter: а библиотека libusb у вас установлена?

sergejey: а библиотека libusb у вас установлена? Да, всё, разобрались :) Автор вышеупомянутого пакета чуть подправил исходники и всё заработало.

graffiti: сегодня получил на пробу Адаптер RX2164 и Датчик температуры PT112. задача - под линуксом считывать показания, кот. шлют датчики температуры (номер канала, температура) + активация режима привязки на адаптере. (всю логику и управление другая железка отрабатывает, мне нужны только показания температуры) В планах было читать перловым скриптом (не спрашивайте, почему именно перл - так сложилось исторически) прямо с HID устройства. Но вылезли грабли - Никак не могу поставить perl-овый модуль Device::USB (ни на ubuntu ни на centos). Пока выкрутился поставив свисток на виндовую машину и шлю http запросы на свой сервер, который всем отоплением рулит. В связи со всем этим вопрос: упоминаемые здесь библиотеки (https://github.com/pythonchik/nooLite и пр.) могут работать только с передатчиками, или 2164 тоже поддерживают? Повторяю, мне нужно только послать на адаптер команду перевода в режим привязки и считать с него все подряд, что датчики понапередавали. Как общаться из-под linux-а с RX 2164?

sergejey: Можно взять это приложение: https://github.com/olegart/noolite Поддерживает как приёмники так и передатчики. Можно в качестве реакции на приём данных указать собственный скрипт.

graffiti: Можно взять это приложение: https://github.com/olegart/noolite Поддерживает как приёмники так и передатчики. Можно в качестве реакции на приём данных указать собственный скрипт. Нет, не собирается: [root@dlna-server noolite-master]# make
make  all-recursive
make
[1]: Entering directory `/root/noolite-master'
Making all in src
make[2]: Entering directory 
`/root/noolite-master/src'
gcc -DHAVE_CONFIG_H -I. -I..    -O1 -I -g -O1 -MT noolitepc.o -MD -MP -MF .deps/noolitepc.Tp  o -c -o noolitepc.o noolitepc.c
mv -f .deps/noolitepc.Tpo .deps/noolitepc.Po
gcc -O1 -I -g -O1 -lusb-1.0 -lrt  -o noolitepc noolitepc.o
gcc -DHAVE_CONFIG_H -I. -I..    -O1 -I -g -O1 -MT nooliterx.o -MD -MP -MF .deps/nooliterx.Tp  o -c -o nooliterx.o nooliterx.c
nooliterx.c: В функции ‘main’:
nooliterx.c:230: ошибка: ‘for’ loop initial declarations are only allowed in C99 mode
nooliterx.c:230: замечание: use option -std=c99 or -std=gnu99 to compile your code
make[2]: *** [nooliterx.o] Ошибка 1
make[2]: Leaving directory `/root/noolite-master/src'
make[1]: *** [all-recursive] Ошибка 1
make
[1]: Leaving directory `/root/noolite-master'
make: *** [all] Ошибка 2
[root@dlna-server noolite-master]#

graffiti: Можно взять это приложение: https://github.com/olegart/noolite Поддерживает как приёмники так и передатчики. Можно в качестве реакции на приём данных указать собственный скрипт. Нет, не собирается: [root@dlna-server noolite-master]# make
make  all-recursive
make
[1]: Entering directory `/root/noolite-master'
Making all in src
make[2]: Entering directory 
`/root/noolite-master/src'
gcc -DHAVE_CONFIG_H -I. -I..    -O1 -I -g -O1 -MT noolitepc.o -MD -MP -MF .deps/noolitepc.Tp  o -c -o noolitepc.o noolitepc.c
mv -f .deps/noolitepc.Tpo .deps/noolitepc.Po
gcc -O1 -I -g -O1 -lusb-1.0 -lrt  -o noolitepc noolitepc.o
gcc -DHAVE_CONFIG_H -I. -I..    -O1 -I -g -O1 -MT nooliterx.o -MD -MP -MF .deps/nooliterx.Tp  o -c -o nooliterx.o nooliterx.c
nooliterx.c: В функции ‘main’:
nooliterx.c:230: ошибка: ‘for’ loop initial declarations are only allowed in C99 mode
nooliterx.c:230: замечание: use option -std=c99 or -std=gnu99 to compile your code
make[2]: *** [nooliterx.o] Ошибка 1
make[2]: Leaving directory `/root/noolite-master/src'
make[1]: *** [all-recursive] Ошибка 1
make
[1]: Leaving directory `/root/noolite-master'
make: *** [all] Ошибка 2
[root@dlna-server noolite-master]#
разобрался в файле nooliterx.c поправил
for 
(int k=0; k<8; k++)
{
 int incr = 0;
 if (== 1)
           incr = 1; // compatibility fix
 str_replace(repstr, cmd, searchfor[k], int_to_str(buf[k] + incr));
 strcpy(cmd, repstr);
}
на:
int k
;
for (k=0; k<8; k++)
{
 int incr = 0;
 if (== 1)
           incr = 1; // compatibility fix
 str_replace(repstr, cmd, searchfor[k], int_to_str(buf[k] + incr));
 strcpy(cmd, repstr);
}
После этого собралось

Urgen: Ребята, помогите новичку!! Установил MajorDoMo на windows7 .подключил rx 2164 и pc1132 пульт pu313-1 силовой блок su 200 (3 шт) что делать дальше не понимаю ? требуется управлять тремя блоками силовыми одной кнопкой пульта(по кольцу) только через MajorDoMo

nick7zmail: Ребята, помогите новичку!! Установил MajorDoMo на windows7 .подключил rx 2164 и pc1132 пульт pu313-1 силовой блок su 200 (3 шт) что делать дальше не понимаю ? требуется управлять тремя блоками силовыми одной кнопкой пульта(по кольцу) только через MajorDoMo C RX не работал, по-этому могу накидать только алгоритм. PU313 это где 2 кнопки вкл/выкл/димм, и одна сценария. Соответственно чтобы управлять по-кругу достаточно будет кнопки сценария и 1 кнопки вкл/выкл/димм. Есть habrahabr.ru/company/boxowerview/blog/168039/ полно мануалов как настраивать объекты. -Для твоего случая создаем 1 объект (например "noo") -Помимо описанных свойств добавляем свойство noo.src -Добавляем метод noo.sw. В коде пишем что то типа if (gg('noo.stat') == 1) {
  sg('noo.stat') == 2;
  exit;
}
 
if 
(gg('noo.stat') == 2) {
  sg('noo.stat') == 3;
  exit;
}
if (gg('noo.stat') == 3) {
  sg('noo.stat') == 1;
  exit;
порядок настраиваешь какой нужен. -В методе включения (выключения) заменяем канал на переменную. Как то так   ...nooLite\noolite.exe" -api -on_ch'.gg('noo.src')); Теперь по аппаратной части. -Блоки привязываешь к каналам 1,2,3 на передатчике. -На сценарий ставишь метод noo.sw (таким образом сценарий будет переключать источники). -На канал вкл/выкл ставишь выполнение соответственно метода включения/выключения. Как то так. PS: с функцией exit не уверен, возможно что то другое надо.

igorek4649: Ребята приобрел модули RX и TX, с силовыми блоками разобрался, есть вопрос как вывести в мажордомо температуру с датчика нолайт?

utia38: привет . сам долго мучился но спасибо Сергею разобрался viewtopic.php?f=4&t=1772&hilit=B4B08287B8BA+82B5BCBFB580B08283808B+pt111

chip: Пытаюсь установить под ubuntu 14/04 пакет https://github.com/olegart/noolite Адаптер 1132 ./configure проходит без ошибок но на этапе make вываливается: make all-recursive make: Вход в каталог `/home/chip/noolite/noolite-master' Making all in src make: Вход в каталог `/home/chip/noolite/noolite-master/src' gcc -O1 -I -g -O1 -lusb-1.0 -lrt -o noolitepc noolitepc.o noolitepc.o: In function `main': noolitepc.c:(.text+0x42a): undefined reference to `libusb_exit' noolitepc.c:(.text+0x43c): undefined reference to `libusb_get_device' noolitepc.c:(.text+0x449): undefined reference to `libusb_get_device_descriptor' noolitepc.c:(.text+0x460): undefined reference to `libusb_get_string_descriptor_ascii' noolitepc.c:(.text+0x4ca): undefined reference to `libusb_kernel_driver_active' noolitepc.c:(.text+0x4db): undefined reference to `libusb_detach_kernel_driver' noolitepc.c:(.text+0x4e8): undefined reference to `libusb_set_configuration' noolitepc.c:(.text+0x50a): undefined reference to `libusb_close' noolitepc.c:(.text+0x514): undefined reference to `libusb_exit' noolitepc.c:(.text+0x52b): undefined reference to `libusb_claim_interface' noolitepc.c:(.text+0x541): undefined reference to `libusb_close' noolitepc.c:(.text+0x54b): undefined reference to `libusb_exit' noolitepc.c:(.text+0x584): undefined reference to `libusb_control_transfer' noolitepc.c:(.text+0x5ab): undefined reference to `libusb_attach_kernel_driver' noolitepc.c:(.text+0x5b3): undefined reference to `libusb_close' noolitepc.c:(.text+0x5bd): undefined reference to `libusb_exit' noolitepc.c:(.text+0x5fc): undefined reference to `libusb_init' noolitepc.c:(.text+0x60b): undefined reference to `libusb_set_debug' noolitepc.c:(.text+0x61f): undefined reference to `libusb_open_device_with_vid_pid' collect2: error: ld returned 1 exit status make: *** Ошибка 1 make: Выход из каталога `/home/chip/noolite/noolite-master/src' make: *** Ошибка 1 make: Выход из каталога `/home/chip/noolite/noolite-master' make: *** Ошибка 2 sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev - установлены Если вас не затруднит, можете подсказать куда копать? Спасибо

chip: И ещё такой вопрос на будущее, как выключить все устройства одной кнопкой (по принципу сценариев на пультах)? safe_exec('/usr/bin/noolitepc -api -off_ch 1'); safe_exec('/usr/bin/noolitepc -api -off_ch 2'); safe_exec('/usr/bin/noolitepc -api -off_ch 3'); safe_exec('/usr/bin/noolitepc -api -off_ch 4'); safe_exec('/usr/bin/noolitepc -api -off_ch 5'); safe_exec('/usr/bin/noolitepc -api -off_ch 6'); отрабатывает только частично, можно ли как-то записать сценарий на все каналы разом, а не для каждого отдельно, как это делает -save_preset_ch

ErmolenkoM: отрабатывает только частично, можно ли как-то записать сценарий на все каналы разом, а не для каждого отдельно, как это делает -save_preset_ch по первому вопросу: добавьте до или после полусекундное ожидание, надежность передачи возрастет. у меня так:
$cmdline
='sleep 0.5; /usr/bin/noolitepc -api '.$params['command'];
safe_exec($cmdline);
 
по второму вопросу: в теории возможность вроде есть, но в драйвере не реализовано. Если есть желание и возможность - милости прошу: https://github.com/ermolenkom/noolite

chip: Спасибо, создал объекты прописал свойства, сделал выключатели, всё работает статус объекта меняется. Теперь вопрос, как сделать выключатель "Выключить всё" что бы он изменял свойства всех объектов, я нашёл как связать только с 1-м.

zelevova: выключатель "Выключить всё" что бы он изменял свойства всех объектов Лучше сделать не выключатель а кнопку. Когда частично включено и частично выключено какое положение выключатель "Выключить все" показывать? Делай кнопку. Из нее либо скрипт вызывай который обходит все объекты и меняет им свойства, либо прямо в коде кнопки эти действия пиши. Скрипт удобнее, его потом можно вызывать еще например при переходе в режим "никого нет дома".

chip: А можно пример скрипта "который обходит несколько объектов" и кроме вкл/выкл ещё и свойство объекта меняет.

zelevova: $objects=getObjectsByClass("Lights");
foreach(
$objects as $obj) {
 $light=$obj['TITLE'];
 $a = GetGlobal($light.".status"); // Читаем свойство статус в переменную a
 SetGlobal($light.".status", $a); // Пишем свойство статус из переменной a
 callMethod($light.".statusChanged")); // Выполняем метод при изменении статуса
}   Если классов несколько пишем эту структуру для каждого класса. Или заносим названия классов в массив и сверху этой структуры добавляем цикл перебирающий элементы массива.

chip: Создал сценарий под свои настройки, но что-то не работает $objects=getObjectsByClass("Relays"); foreach($objects as $obj) { $light=$obj; $a = GetGlobal($light.".status"); // Читаем свойство статус в переменную a SetGlobal($light.".status", $a); // Пишем свойство статус из переменной a callMethod($light.".turnOff")); // Выполняем метод при изменении статуса } В классе Relays следующие объекты: NooLite_hall_lamp NooLite_bathroom_lamp NooLite_bedroom_lamp NooLite_dressing_room_lamp NooLite_hallway_lamp NooLite_kitchen_lamp у каждого методы turnOff turnOn в которых прописаны непосредственно команды. так и не понял где он изменяет статус, если он только его считывает и записывает обратно

zelevova: Ну это был пример как можно работать со свойствами. Так сказать набор основного функционала. Я так понимаю нужно статус установить 0 и вызвать метод turnOff. Тогда так: $objects=getObjectsByClass("Relays");
foreach(
$objects as $obj) {
 
$light=$obj['TITLE'];
 
SetGlobal($light.".status"0);
 
callMethod($light.".turnOff"));
}   
А вообще логика может быть разной. Например метод turnOff может устанавливать статус в 0 и отправлять запрос к железяке на выключение нагрузки. Тогда в данном случае потребуется только вызывать метод turnOff для каждого объекта.

chip: странно не отрабатывает.... А TITLE так и должен быть? Не понимаю его задачи.

chip: статус меняется, судя по всему не отрабатывает callMethod($light.".turnOff"); UPD Странно через раз отрабатывает после добавления ДВУХ слипов( и то как-то странно иногда 1-у лампу выключает, иногда 2, иногда 0 $objects=getObjectsByClass("Noolite"); foreach($objects as $obj) { sleep(1); $light=$obj; SetGlobal($light.".status", 0); callMethod($light.".turnOff"); sleep(1); } UPD 3 Sleep не отрабатывает значения менее 1 и воспринимает их как 0, при пользовании usleep(500000) - всё заработало, но так и не понял почему необходимо ставить слипы и в начале и в конце... иначе отрабатывает не все лампы и в хаотичном порядке. $objects=getObjectsByClass("Noolite"); foreach($objects as $obj) { usleep(500000); $light=$obj; SetGlobal($light.".status", 0); callMethod($light.".turnOff"); usleep(500000); }

zelevova: TITLE - это имя объекта в системе, для обращения к нему при переборе в цикле. Т.е. вместо "$obj" подставляется "NooLite_hall_lamp", "NooLite_bathroom_lamp"... и т.д. На счет слипов я думаю что здесь контролер не NooLite не способен выдержать такую дос-атаку и некоторые команды не успевает обработать. Можно поставить слип только после строки "callMethod($light.".turnOff");" с соответствующим временем.

Satgate_M: А кому-нибудь удалось установить адаптер noolite PC118 на что-то типа dir-300/320 чтобы можно было через API им управлять?

Alex: На всякий случай --------------------- Добавил поддержку беспроводного оборудования nooLite (движок). Можно управлять из интерфейса или автоматически. Культурная привязка/отвязка. Всё это будет в 0.14 версии. --------------------- viewtopic.php?f=4&t=2347&p=28154#p28154

Satgate_M: Все еще не покинула меня идея установить адаптер Noolite Pc118 на Dir-620. Рутер прошил под ДД WRT. Но вот никак не получается прицепить к нему этот usb адаптер. Идея такая адаптер в рутер вставить и потом по средствам get или api запросов управлять освещением через этот Noolite свисток. Может кто с этим сталкивался и уже есть готовое решение или хоть направление. Спасибо.

sergejey: Все еще не покинула меня идея установить адаптер Noolite Pc118 на Dir-620. Рутер прошил под ДД WRT. Но вот никак не получается прицепить к нему этот usb адаптер. Идея такая адаптер в рутер вставить и потом по средствам get или api запросов управлять освещением через этот Noolite свисток. Может кто с этим сталкивался и уже есть готовое решение или хоть направление. Спасибо. Вы можете попробовать использовать ПО для ноолайт под linux https://github.com/olegart/noolite/ -- я использовал его под raspberry,но автор, если я правильно понимаю, его использовал под openwrt.

Satgate_M: Все еще не покинула меня идея установить адаптер Noolite Pc118 на Dir-620. Рутер прошил под ДД WRT. Но вот никак не получается прицепить к нему этот usb адаптер. Идея такая адаптер в рутер вставить и потом по средствам get или api запросов управлять освещением через этот Noolite свисток. Может кто с этим сталкивался и уже есть готовое решение или хоть направление. Спасибо. Вы можете попробовать использовать ПО для ноолайт под linux https://github.com/olegart/noolite/ -- я использовал его под raspberry,но автор, если я правильно понимаю, его использовал под openwrt. Осталось понять как под open wrt его вставить, что-то рутер ругается. Скорее руки кривые))

Satgate_M: Все еще не покинула меня идея установить адаптер Noolite Pc118 на Dir-620. Рутер прошил под ДД WRT. Но вот никак не получается прицепить к нему этот usb адаптер. Идея такая адаптер в рутер вставить и потом по средствам get или api запросов управлять освещением через этот Noolite свисток. Может кто с этим сталкивался и уже есть готовое решение или хоть направление. Спасибо. Вы можете попробовать использовать ПО для ноолайт под linux https://github.com/olegart/noolite/ -- я использовал его под raspberry,но автор, если я правильно понимаю, его использовал под openwrt. К сожалению не заработало) Рутер уже перешил под OpenWRT. Внешнее хранилище сделал (теперь ограничений по количеству и объему пакетов нет). Но не устанавливается, тк необходимо компилировать. А пакет GCC под openwrt не ставится, ПК где это сделать тоже нет. а надо как-то эти директорию скомпилировать на роутере. Может есть какие-то идеи или примеры. по WinCSP есть доступ к содержимому рутера (может надо где то все это сделать, а потом по папкам раскидать?. Нашел собранную прошивку (с расширением .bin) где уже интегрирована поддержка, но он а под ТП линз 3220. Может есть какие-то способы открыть ее чем-то. Но опять жрет нет ПК по linux чтобы собрать прошивку самостоятельно. Заранее спасибо за ответ.

sergejey: Я бы рекомендовал обратиться к Олегу лично, может быть у него будет готовое решение (скомпилированный бинарник).

Satgate_M: Я бы рекомендовал обратиться к Олегу лично, может быть у него будет готовое решение (скомпилированный бинарник). Сергей, а как к нему обратиться, если не секрет? форум, может почта есть? Спасибо.

sergejey: В моём ответе ссылка на https://github.com/olegart -- там нет данных никаких?

Satgate_M: В моём ответе ссылка на https://github.com/olegart -- там нет данных никаких? О, спасибо! не заметил.

Satgate_M: Если кому понадобится, то при помощи Сергея, заставил работать адаптер c118 (но работает и с другими) с openwrt! Работает быстро, а главное можно управлять по средствам отправки запросов get! Теперь другая проблема) Кто-то может сталкивался , как php скриптом взять значение датчика температуры и отправить его как http запрос на сторонний сервер!?

sergejey: Если кому понадобится, то при помощи Сергея, заставил работать адаптер c118 (но работает и с другими) с openwrt! Работает быстро, а главное можно управлять по средствам отправки запросов get! Если не сложно, то выложите бинарники и инструкцию по установке -- чтобы другим было проще с запуском. Теперь другая проблема) Кто-то может сталкивался , как php скриптом взять значение датчика температуры и отправить его как http запрос на сторонний сервер!?/quote] Примерно таким кодом можно передавать значение свойства на другой сервер: getURL('http://server/script?temp='.getGlobal('Livingroom.Temperature'),0); 

Дмитрий Иванов: Добрый день! Периодически в этом форуме встречается ситуация с ошибкой при установки пакетов с https://github.com/olegart/noolite, но решения так и нет... Да, всё, разобрались :) Автор вышеупомянутого пакета чуть подправил исходники и всё заработало. Но правки, видимо на GitHub так и не выложили :( Купил сегодня приемник и не могу прикрутить к Raspberry :( Подскажите, плз, решение! nooliterx.c: In function ‘main’:
nooliterx.c:230:6: error: ‘for’ loop initial declarations are only allowed in C99 mode
nooliterx
.c:230:6: note: use option -std=c99 or -std=gnu99 to compile your code
Makefile
:263: recipe for target 'nooliterx.o' failed
make
[2]: *** [nooliterx.o] Error 1
make
[2]: Leaving directory '/home/pi/noolite-master/src'
Makefile:251: recipe for target 'all-recursive' failed
make
[1]: *** [all-recursive] Error 1
make
[1]: Leaving directory '/home/pi/noolite-master'
Makefile:189: recipe for target 'all' failed
make
: *** [all] Error 2
Спасибо!

Dark_Veter: Попробуйте сделать, как написано тут.

sergejey: Добрый день! Периодически в этом форуме встречается ситуация с ошибкой при установки пакетов с https://github.com/olegart/noolite, но решения так и нет... Да, всё, разобрались :) Автор вышеупомянутого пакета чуть подправил исходники и всё заработало. Но правки, видимо на GitHub так и не выложили :( Купил сегодня приемник и не могу прикрутить к Raspberry :( Подскажите, плз, решение! nooliterx.c: In function ‘main’:
nooliterx.c:230:6: error: ‘for’ loop initial declarations are only allowed in C99 mode
nooliterx
.c:230:6: note: use option -std=c99 or -std=gnu99 to compile your code
Makefile
:263: recipe for target 'nooliterx.o' failed
make
[2]: *** [nooliterx.o] Error 1
make
[2]: Leaving directory '/home/pi/noolite-master/src'
Makefile:251: recipe for target 'all-recursive' failed
make
[1]: *** [all-recursive] Error 1
make
[1]: Leaving directory '/home/pi/noolite-master'
Makefile:189: recipe for target 'all' failed
make
: *** [all] Error 2
Спасибо! Делюсь рецептом компиляции этих исходников ) 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 получаем: nooliterx.c: In function 'main': nooliterx.c:230:6: error: 'for' loop initial declarations are only allowed in C99 mode nooliterx.c:230:6: note: use option -std=c99 or -std=gnu99 to compile your code Откройте src/Makefile и поменяйте там строчки: CC = gcc на CC = gcc -std=gnu99
CPP 
= gcc -E на CPP = gcc -stc=gnu99 -E ./configure -- НЕ ДЕЛАТЬ, сразу make, make install

Дмитрий Иванов: sergejey Сергей, огромной спасибо! Помогло, все собралось. Запускаю nooliterx вижу реакцию на нажатие привязанных пультов. ...Теперь бы разобраться с дальнейшим алгоритмом. Из задач, это перехват нажатий пультов и поддержание в актуальном состоянии объектов, а так же просто управление системой с пультов и отслеживание показаний датчиков. ...и как запускать nooliterx в автомате... (вот нашел, как в фоне запускать, с ключем -d) Спасибо! (как сам разберусь, обещаю сделать пошаговую инструкцию по использованию всего оборудования nooLite)

sergejey: Дмитрий, если вы программу установили, то дальше всё просто: 1. Создаёте файл /etc/init.d/nooliterx сделующего содержания: #!/bin/sh
### BEGIN INIT INFO
# Provides:          skeleton
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Example initscript
# Description:       This file should be used to construct scripts to be
#                    placed in /etc/init.d.
### END INIT INFO
#
# nooliterx     Starts and stops the NooLite RX1164 receiver daemon
#
# chkconfig: 2345 55 25
# description: NooLite RX1164 smart home wireless receiver daemon
#
# Source function library.
#. /etc/rc.d/init.d/functions

nooliterx="/usr/local/bin/nooliterx"
prog=$(basename $nooliterx)

lockfile="/var/lock/nooliterx"
pid_file="/var/run/${prog}.pid"

stdout_log="/var/log/$prog.log"
stderr_log="/var/log/$prog.err"


get_pid() {
    cat "$pid_file"
}

is_running() {
    [ -"$pid_file" ] && ps `get_pid` > /dev/null 2>&1
}

do_start() {
    [ -x $nooliterx ] || exit 5
    echo 
-$"Starting $prog: "
    sudo $nooliterx ->> "$stdout_log" 2>> "$stderr_log" &
    echo $! > "$pid_file"
        if ! is_running; then
            echo 
"Unable to start, see $stdout_log and $stderr_log"
            exit 1
        fi
    retval
=$?
    echo
    
[ $retval -eq 0 ] && touch $lockfile
    return $retval
}

do_stop() {
    echo -$"Stopping $prog: "
    kill `get_pid`
    sudo pkill -f noolite
    retval
=$?
    echo
    
[ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

case "$1" in
  start
|"")
        do_start
        
;;
  restart|reload|force-reload)
        echo "Error: argument '$1' not supported" >&2
        exit 3
        
;;
  stop)
        do_stop
        
;;
  *)
        echo "Usage: mountall.sh [start|stop]" >&2
        exit 3
        
;;
esac

:
2. Ставите ему атрибут запуска chmod 0755 /etc/init.d/nooliterx 3. Делаете ему авто-запуск командой /etc/init.d/nooliterx 4. Создаёте файл /etc/noolite.conf следующего содержания: command = wget -qO- http://localhost/ajax/noolite.html?channel=%ch\&command=%cm\&d0=%d0\&d1=%d1\&d2=%d2\&d3=%d3 $
timeout = 250 5. Устанавливаете из маркета модуль Noolite и в нём в настройках выбираете типа подключения Linux Собственно всё. Осталось только перезагрузиться либо запустить сервис приёмника командой /etc/init.d/nooliterx start С помощью модуля уже можно настраивать связь с объектами, получать данные и управлять силовыми блоками.

kwlsoft: Пытаюсь установить под ubuntu 14/04 пакет https://github.com/olegart/noolite Адаптер 1132 ./configure проходит без ошибок но на этапе make вываливается: make all-recursive make: Вход в каталог `/home/chip/noolite/noolite-master' Making all in src make: Вход в каталог `/home/chip/noolite/noolite-master/src' gcc -O1 -I -g -O1 -lusb-1.0 -lrt -o noolitepc noolitepc.o noolitepc.o: In function `main': noolitepc.c:(.text+0x42a): undefined reference to `libusb_exit' noolitepc.c:(.text+0x43c): undefined reference to `libusb_get_device' noolitepc.c:(.text+0x449): undefined reference to `libusb_get_device_descriptor' noolitepc.c:(.text+0x460): undefined reference to `libusb_get_string_descriptor_ascii' noolitepc.c:(.text+0x4ca): undefined reference to `libusb_kernel_driver_active' noolitepc.c:(.text+0x4db): undefined reference to `libusb_detach_kernel_driver' noolitepc.c:(.text+0x4e8): undefined reference to `libusb_set_configuration' noolitepc.c:(.text+0x50a): undefined reference to `libusb_close' noolitepc.c:(.text+0x514): undefined reference to `libusb_exit' noolitepc.c:(.text+0x52b): undefined reference to `libusb_claim_interface' noolitepc.c:(.text+0x541): undefined reference to `libusb_close' noolitepc.c:(.text+0x54b): undefined reference to `libusb_exit' noolitepc.c:(.text+0x584): undefined reference to `libusb_control_transfer' noolitepc.c:(.text+0x5ab): undefined reference to `libusb_attach_kernel_driver' noolitepc.c:(.text+0x5b3): undefined reference to `libusb_close' noolitepc.c:(.text+0x5bd): undefined reference to `libusb_exit' noolitepc.c:(.text+0x5fc): undefined reference to `libusb_init' noolitepc.c:(.text+0x60b): undefined reference to `libusb_set_debug' noolitepc.c:(.text+0x61f): undefined reference to `libusb_open_device_with_vid_pid' collect2: error: ld returned 1 exit status make: *** Ошибка 1 make: Выход из каталога `/home/chip/noolite/noolite-master/src' make: *** Ошибка 1 make: Выход из каталога `/home/chip/noolite/noolite-master' make: *** Ошибка 2 sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev - установлены Если вас не затруднит, можете подсказать куда копать? Спасибо chip, подскажите, пожалуйста, как решили проблему?

Дмитрий Иванов: Сергей, спасибо! Теперь понятно как это должно работать! Но есть ошибки: 3. Делаете ему авто-запуск командой Код: /etc/init.d/nooliterx получаю: $Starting nooliterx: Unable to start, see /var/log/nooliterx.log and /var/log/nooliterx.err в логах пусто...на команду "/etc/init.d/nooliterx start" реакция аналогичная... что я не учел? (для чистоты эксперимента заново раскатал последний образ на microSD, обновил raspbian и MajorDoMo) Если вручную запускать nooliterx, то все работает...

sergejey: Сергей, спасибо! Теперь понятно как это должно работать! Но есть ошибки: 3. Делаете ему авто-запуск командой Код: /etc/init.d/nooliterx получаю: $Starting nooliterx: Unable to start, see /var/log/nooliterx.log and /var/log/nooliterx.err в логах пусто...на команду "/etc/init.d/nooliterx start" реакция аналогичная... что я не учел? (для чистоты эксперимента заново раскатал последний образ на microSD, обновил raspbian и MajorDoMo) Если вручную запускать nooliterx, то все работает... Не обращайте внимания, оно запускается, хоть и пишет ошибку. После запуска можете запустить top и посмотреть есть ли оно в процессах -- должно висеть.

Дмитрий Иванов: Не обращайте внимания, оно запускается, хоть и пишет ошибку. После запуска можете запустить top и посмотреть есть ли оно в процессах -- должно висеть. Да, все верно! В процессах висит, модуль nooLite работает. С этим модулем вообще все оказалось очень просто, даже в методах on/off у объектов не надо прописывать команды, типа safe_exec('/usr/local/bin/noolite -api....)...

chip: Подскажите, пожалуйста, а с этим драйвером/модулем сигнал от датчика движения приходит? Если да, то как быстро после срабатывания датчика? И ещё вопрос, можно ли параллельно подключить к кнопке пульта и силовой блок (вкл./выкл.) и ячейку на приёмнике (что б при нажатии пульта, информация о состоянии отображалась в majordomo)? Спасибо

chip: chip, подскажите, пожалуйста, как решили проблему? Установкой другого, этот так и не собрался(

sergejey: Подскажите, пожалуйста, а с этим драйвером/модулем сигнал от датчика движения приходит? Если да, то как быстро после срабатывания датчика? Да, приходит сразу как датчик движения отправляет сигнал. Он, кстати, делает это не всегда прямо сразу -- возможно, стоит какая-то задержка. И ещё вопрос, можно ли параллельно подключить к кнопке пульта и силовой блок (вкл./выкл.) и ячейку на приёмнике (что б при нажатии пульта, информация о состоянии отображалась в majordomo)?Спасибо Можно. Но так состояние всё равно будет не стабильно отслеживаться -- если какой-то из приёмников (адаптер или силовой блок) не словит сигнал от пульта, то состояние в системе и реальное будет отличаться.

chip: Подскажите, пожалуйста, а с этим драйвером/модулем сигнал от датчика движения приходит? Если да, то как быстро после срабатывания датчика? Да, приходит сразу как датчик движения отправляет сигнал. Он, кстати, делает это не всегда прямо сразу -- возможно, стоит какая-то задержка. Я имел в виду получение сигнала с датчика движения и обработка его в majordomo. Нет ли информации сколько датчиков можно привязать к RX2164?

sergejey: Я имел в виду получение сигнала с датчика движения и обработка его в majordomo. Нет ли информации сколько датчиков можно привязать к RX2164? Есть :) Ровно 64.

smart: chip, подскажите, пожалуйста, как решили проблему? Установкой другого, этот так и не собрался( Какого другого, ссылку можно? И с чем все-таки связаны эти ошибки?

chip: chip, подскажите, пожалуйста, как решили проблему? Установкой другого, этот так и не собрался( Какого другого, ссылку можно? И с чем все-таки связаны эти ошибки? c чем связано не разобрался (давно не лез туда, все руки не доходят сделать через новый модуль и так работает) но судя по мануалу от sergejey, уже всё пофиксили, если не получилось на предыдущих страницах указывали что какие строки поправить после make. Ставил - (вроде, не помню точно) https://github.com/ermolenkom/noolite

utia38: добрый день. постепенно перебираюсь на линукс. подскажите - как привязывать силовые блоки нулайт в линуксе. поставил модуль из приложений нулайт, делаю по инструкции установку дров на приемник и передатчик (вроде что-то получается) но вот как блоки привязывать к каналам - ума не приложу? ps. вроде кто-то изъвлял желание инсрукцию написать для линукса и нулайта ;) думаю многие будут благодарны

nick7zmail: В модуле же для мд теперь есть привязка/отвязка Отправлено с моего Xperia Z через Tapatalk

TiNNauR: Драйвера NooLite под Linux https://github.com/ermolenkom/noolite Выложил драйвера для приемника и передатчика. Инструкция внутри. Добрый день! Хочу поблагодарить за проделанную работу, просто рэспект и уважение за такой труд. Потому как сам только пользователь линукс но в написании ПО вообще не рулю. И, хочу вот что сказать.По этой ссылке две инструкции, одна в вики, другая в CODE -readme. ни по одной ни по другой не скачивается архив(wget https://github.com/ermolenkom/noolite/a ... master.zip - один, wget https://github.com/ermolenkom/noolite/a ... epc.tar.gz - второй). я скачал мануально. и с двух инструкций, методом проб установил дрова. Я просто о том, что может ктото и не смог стянуть и установить, не все могут разобраться с командами линукс. Может можно подправить и инструкцию и соответственно команды для одноразовой установки. Еще раз благодарю!))

Amarok: Я ставил так: sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev
wget https
://github.com/ermolenkom/noolite/archive/master.zip
unzip master.zip
cd noolite
-master
make clean 
&& make
sudo cp noolitepc 
/usr/bin && sudo cp nooliterx /usr/bin && sudo cp nooliterxcfg /usr/bin
sudo chown root 
/usr/bin/noolitepc && chmod a+/usr/bin/noolitepc
sudo chown root 
/usr/bin/nooliterx && chmod a+/usr/bin/nooliterx
sudo chown root 
/usr/bin/nooliterxcfg && chmod a+/usr/bin/nooliterxcfg

*** Сообщение запрещено. Сообщение похоже на спам. ***

Amarok: Я ставил так: sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev
wget https
://github.com/ermolenkom/noolite/archive/master.zip
unzip master.zip
cd noolite
-master
make clean 
&& make
sudo cp noolitepc 
/usr/bin && sudo cp nooliterx /usr/bin && sudo cp nooliterxcfg /usr/bin
sudo chown root 
/usr/bin/noolitepc && sudo chmod a+/usr/bin/noolitepc
sudo chown root 
/usr/bin/nooliterx && sudo chmod a+/usr/bin/nooliterx
sudo chown root 
/usr/bin/nooliterxcfg && sudo chmod a+/usr/bin/nooliterxcfg

*** Сообщение запрещено. Сообщение похоже на спам. ***

utia38: все получилось с привязкой силовых блоков от noolite под линукс. теперь встал вопрос - а как настроить датчик движения и температуры? в настройках выбираю sensor - делаю привязку - и не появляется поле объекта в настройках, вообщем никакой реакции на движение. помогите советом пожалуста :oops:

utia38: форумчане! помогите настроить датчик движения и температуры. все привязалось в модуле, адаптер мигает при срабатывании датчика движения, но в закладке ДАННЫЕ не выходит поле для объекта, соответственно не считывается температура и движение. может что-то не доделываю? хотя для блоков все выбирается :oops:

utia38: с датчиками разобрался (оказывается они автоматически появляются в модуле при отправке сигнала). Но вот встал вопрос - как поставить в автозапуск nooliterx? действуя по инструкции 3. Делаете ему авто-запуск командой Код: /etc/init.d/nooliterx все запускается и работает, но после перезагрузки "малины" nooliterx почму-то автоматически не грузится и в top нет процесса. Устанавливается только вручную - так и должно быть? заранее спасибо за ответ

Flar: Долго игрался с https://github.com/olegart/noolite Не собирался, линковщик выпенрдивался. После общения с хозяином репозитория (За что ему отдельное спасибо!), сделали следующее: всё можно собрать вручную за минуту: gcc noolitepc.c -lusb-1.0 -std=gnu99 -o noolitepc gcc nooliterx.c -lusb-1.0 -std=gnu99 -o nooliterx gcc nooliterxcfg.c -lusb-1.0 -std=gnu99 -o nooliterxcfg gcc noolitepcd.c -lusb-1.0 -std=gnu99 -o noolitepcd Выполнять в /noolite-master/src добытом из распакованного архива. ПОлучившиеся файлы noolitepc nooliterx nooliterxcfg noolitepcd закинуть в /usr/bin/ с корректными правами для пользователя, который будет их "пинать". Документация по использованию: https://github.com/olegart/noolite/tree/master/doc Сам пока тестирую noolitepc noolitepcd - передатчик, приёмник не ставил пока. Если надо, могу более развёрнуто-последовательно написать. И вопрос возник. Никто не пробовал собрать под *nix рабочий контейнер\связку контейнеров с мажордомо? Ведь насколько легче разворачивать же было бы. Если никто не занимался, то как закончу свою разбивку на микросервисы, залью в регистри, и сделаю ман по установке.

sergejey: Уже был рецепт компиляции на 22-й странице :) viewtopic.php?f=21&t=389&p=31830&hilit=gnu99#p31830 Именно контейнер не делался, так что если у вас получится, то будет здорово :) Из готового есть образ для RPi2 -- там всё запускается сразу после заливки на карточку (по-моему там даже вышеобозначенные бинарники уже есть).

Flar: Понял, спасибо за наводку. Уже был рецепт компиляции на 22-й странице :) viewtopic.php?f=21&t=389&p=31830&hilit=gnu99#p31830 не мой случай, у меня сошел с ума линковщик - не находил библиотеку работы с usb девайсами ни при каких условиях. ubuntu 14.04 lts. Особой проблемы не вижу, запихнуть в .sh отдельными строками - пис оф кейк. По-свободному времени постараюсь вкрутить всё в докер композер. Сам использую сейчас "Rancher", но есть ряд косяков, думаю, из-за кривых ручек. Как я вижу схему, в целом: фронт-контейнер с веб-серваком. Залинкован со всеми остальными. контейнер с пхп. ДБ-контейнер. Пресистент вольюм + авторипейр. Пока хочу "пересесть" на форк mysql "Percona" Контейнер собственно с порталом. тоже, линковка.В него проброс юсб-девайсов (того же передатчика ноолайт), и аудио-устройств. Контейнер с софтварной мультирум-системой. контейнер с пакетом Motion - видеонаблюдение с usb\ip камер. В качестве мультирум-системы использую logitech squeeze box и приложения на андроид-планшетах. Приложение стоит около 5$, поидее если подклчюить планшеты к одному и тому же гугл-аккаунту, можно будет ставить "источник звука" на всех, купив один раз. Сейчас это вроде-бы работает, но откровенно много лишнего барахла и мусора с собой несёт, т.к. эксперименты :3 Когда смогу собрать из этого набор имеджей и докер-композер файл, попробую выложить на открытый регистри (ну или свой подыму, дело-то такое :), и пожалуй, залью в отдельный топик с мануалом. Что-то ещё имеет смысл туда включить? У меня из "железяк умных" пока только ноолайт, с остальным не разбирался, по железу понимаю не так много как хотелось бы. Если "отбросить" остальное барахло которое крутиться у меня на домашнем "серваке", от в качестве микро-сервисов всё это должно выглядеть очень даже интересно. Сейчас имею core2duo q8600, 4 gb ram, + много места на ХДД. Конкретно под мажордомо должно хватить двадцаточки с головой на кеши, дампы, презистент вольюм + место для файлов для сквизибокса и видеонаблюдалки. Думаю что недельки через две-три первые "шаблоны" залью. Что-то имеет смысл ЕЩЁ в это дело напихать по-умолчанию, может?

Flar: Пока-что имею большие проблемы со связкой из драйверов ноолайт и подключением их к МДМ. Подключил товарища повозиться с кодом, посмотрим, может сможем актуализироать дровишки немного. У кого-то есть сейчас варианты на свежесобранную убунту 14 или 16 подсказать рецепт компиляции дров\демона ноолайт? Чтоб МДМ подхватил его?

Rad81: Помогите решить проблему. У меня Адаптер для компьютера RX2164. Все вышеуказанные материалы прочитал и выполнил имееший все варианты. Но все равно адаптер на Raspberry pi2 не работает..

Rad81: Помогите решить проблему. Мастера умельцы

Flar: Устройство видит адаптер?

Rad81: Устройство видит адаптер? pi@raspberrypi ~ $ lsusb Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 014: ID 16c0:05dc VOTI shared ID for use with libusb Bus 001 Device 005: ID 062a:3270 Creative Labs Bus 001 Device 029: ID 1a40:0101 Terminus Technology Inc. 4-Port HUB Bus 001 Device 030: ID 04fa:2490 Dallas Semiconductor DS1490F 2-in-1 Fob, 1-Wire Bus 001 Device 014: ID 16c0:05dc VOTI shared ID for use with libusb вроде эта

Rad81: вытаскиваю адаптер pi@raspberrypi ~ $ lsusb Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 005: ID 062a:3270 Creative Labs Bus 001 Device 029: ID 1a40:0101 Terminus Technology Inc. 4-Port HUB Bus 001 Device 030: ID 04fa:2490 Dallas Semiconductor DS1490F 2-in-1 Fob, 1-Wire adapter

Rad81: Здравствуйте. Кто не быть поможет решить проблемы

TiNNauR: Доброе время суток всем участникам форума! Помогите разобраться в чем проблема. Свет НооЛайт. Пока есть два силовых блока. Один RGB-контроллер привязан на канал 1, и второй диммируемый привязан на канал 2. Если подавать команду pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -off_ch 2 pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -off_ch 1 все работает, а также через МД exec("noolitepc -api -on_ch 1"); при привязке этой строчки к кнопкам, а этой exec('noolitepc -api -set_ch 1 '.$params); к слайдеру все прекрасно работает Но, попробовал сделать разноцветный свет в коридоре, как упоминается в теме, и увы, не работает. Смотрел CONNECT(57)- msh555, и CONNECT(1)- SergeJey, скопировал все от туда, создал пока два объекта NooLite_Objects.PNG Свойства, методы, скопировал с выше указанных CONNECTов Завел еще в УСТРОЙСТВАх в Noolite следующее: Устройства%20NooLite.PNG Данные такие: NooLite_RGB_Данные.PNG NooLite_Perimetr_Данные.PNG Может я не совсем прав, но, я не понимаю как отправляется команда? Какому силовому блоку? В строчке exec("noolitepc -api -on_ch 1"); все понятно, блоку(каналу) №1, а вот если этой строчки нет, то….. не совсем понятно. Или объясните логику, где я делаю не так, или где еще нужно что-то добавить, ( свойства, объекты, и т.д.) Заранее спасибо!

ErmolenkoM: я не понимаю как отправляется команда? Какому силовому блоку? В строчке exec("noolitepc -api -on_ch 1"); все понятно, блоку(каналу) №1, а вот если этой строчки нет, то….. не совсем понятно. Или объясните логику, где я делаю не так, или где еще нужно что-то добавить, ( свойства, объекты, и т.д.) Заранее спасибо! Приятно, когда кто-то смотрит твой коннект :-) Первое. Какие бы ни были объекты и методы, конец всегда один: exec("noolitepc -api -on_ch 1");, ну или подобная команда. Поэтому городить огород из свойств и методов - преждевременно. Сначала нужно убедиться что мы умеем устанавливать нужный цвет вручную из ПХП. Я (msh555) и SergeJey используем разные драйвера, так что могу говорить только про свой. У меня так:  
$cmdline
='sleep 0.5; /usr/bin/noolitepc -api '.'-set_color_ch '.$this->getProperty("channel").' '.$r_value.' '.$g_value.' '.$b_value;
safe_exec($cmdline);
 
И что бы было понятно откуда это взялось: setColor зовет refresh, он зовет sendCommand(у класса NooLite)

sergejey: У меня в коннекте довольно старый код -- постепенно перехожу на модуль Noolite, который доступен из маркета. В это модуле реализована поддержка как Windows, так и Linux-драйверов, плюс в нём не надо вызывать методы Refresh и вообще выделять отдельный класс под ноолайт-блоки. Для цвета там используется отдельная команда, совместимая по формату с селектором цвета для меню.

TiNNauR: Приятно, когда кто-то смотрит твой коннект :-) Ха, у людей, кто придумал и создал МД, кто написал сам дрова на приемник под линуха, ….. стОит чему то поучиться. По крайней мере, посмотреть что они уже сделали, и как?, а уж потом, если не понятно, то задать пару вопросов.) Но, так как сейчас я в контракте, и не всегда есть инет(до этого постарался скачать сайты http://majordomo.smartliving.ru и http://connect.smartliving.ru, на свой ноут, но скачалось не полностью, некоторые темы только на половину, так что не все могу прочитать ) то задать вопросы тоже не всегда получается. Спасибо за ответ, воспользуюсь ситуацией пока есть инет и сразу задам следующий вопрос. Сори. Вы пишите: конец всегда один: exec("noolitepc -api -on_ch 1"); Это то я понимаю, как я и писал, если эту строчку вбивать в код на кнопку, ну или в сценарий, а потом выполнить этот сценарий, то все работает. Но, к этому концу, видимо , моя система не приходит)))) и я вместе с ней)). В итоге, на выходе подстановок всех переменных должна получиться именно такая строчка. И вот вопрос: Если рассмотреть мою строчку pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -off_ch 1 и ту, что Вы прислали , как пример( она у меня тоже есть, это родительский метод всего класса NooLite, только она у меня такая: $cmdline='sleep 0.5; /usr/bin/noolitepc -api '.$params; safe_exec($cmdline); ) Если я правильно понял, то: скрипт1.PNG в строчку забиты переменные, они по очереди подставляются и в итоге получается, да, то, что Вы написали, но…по ходу, у меня получается, что все есть кроме указания канала( на рис. Какой именно канал). Вот где оно берется, от куда, как система подставляет это значение, или я его должен ей где-то указать? Сначала нужно убедиться что мы умеем устанавливать нужный цвет вручную из ПХП. Наверное, не умеем мы(((. И что бы было понятно откуда это взялось: setColor зовет refresh, он зовет sendCommand(у класса NooLite) От куда это взялось я то понял, поднимаясь вверх по методам к родительскому, а вот может нужно для RGB указать свой sendCommand?

ErmolenkoM: все есть кроме указания канала( на рис. Какой именно канал). Вот где оно берется, от куда, как система подставляет это значение, или я его должен ей где-то указать? Эта функция возвращает значение свойства объекта $this->getProperty("channel") читать здесь: http://majordomo.smartliving.ru/Main/ProgrammingFunctions

TiNNauR: Я извиняюсь, но, еще раз здравствуйте!))) Значится так, попробовал сделать такое : в меню управления сделал слайдер,настройки такие: Настройки слайдера.PNG на код слайдера вбил вот это, для проверки: safe_exec(' /usr/local/bin/noolitepc -api -set_ch 1 '.$params); результат – работает, меняет яркость. Поменял строчку на : safe_exec(' /usr/local/bin/noolitepc -api -set_ch' .$this->getProperty("channel")' '.$params); результат-не работает, игрался с кавычками и пробелами, никак. при этом в свойстве объекта указал канал 1 св-ва NooL_LivingRoom_RGB1.PNG Ну и ошибка 23:12:31 DEBUG : Error menu item code: safe_exec(' /usr/local/bin/noolitepc -api -set_ch' .$this->getProperty("channel")' '.$params); (at /var/www/lib/general.class.php:553) В какую сторону подскажите двигаться? Или я опять не правильно все понял? Если не работает вот это, то и остальное( цвет и т.д не будет работать). Заранее спасибо!

ErmolenkoM: в меню управления сделал слайдер,настройки такие: на код слайдера вбил вот это, для проверки: safe_exec(' /usr/local/bin/noolitepc -api -set_ch 1 '.$params); результат – работает, меняет яркость. Поменял строчку на : safe_exec(' /usr/local/bin/noolitepc -api -set_ch' .$this->getProperty("channel")' '.$params); $this->getProperty("channel") Эта штука работает только в коде методов объекта. Для вызова из меню нужно использовать gg('Имя_объекта.Имя_свойства'); 

TiNNauR: Приветствую всех участников форума. Опять обращаюсь за помощью. Наверное, уже надоел?))). Значит , так Код: $this->getProperty("channel") Эта штука работает только в коде методов объекта. Следовательно, для проверки: ставил команду say(); в каждом методе перед его кодом и потом в конце, чтоб убедиться в… И что бы было понятно откуда это взялось: setColor зовет refresh, он зовет sendCommand(у класса NooLite) …в этом. Все работает, вродь, как и должно. Всегда Алиса проговаривает фразу, и даже если строчка say(); в конце метода sendCommand. И, даже проговаривает каждый час( когда срабатывает скрипт проверки времени и изменения цвета). Но, цветовые часы как не работали, так и не работают. Посему, видимо я задаю не совсем корректно вопрос. Приведу пример( это как автомобиль – можно рассказывать часами о том, как тепловая энергия топлива преобразуется в механическую, дальше передается трансмиссией на колеса и дальше благодаря силе трения машина едет) это теория. Но, если не рассказать, что нужно открыть дверь, сесть за руль, вставить ключ зажигания, завести двигатель, проделать необходимые манипуляции с трансмиссией то, машина и дальше будет стоять на месте. Вот так и я стою на месте, теория есть, а что нужно сделать чтобы они заработали, не знаю, потому как пробую почти в слепую что-то делать. Там что-то менять, там что-то менять. И не знаю где правильно, потому что если бы знал что именно так, то уже б копался ПОЧЕМУ не работает. Почти уверен, что не работает именно эта строчка $this->getProperty("channel"). не подставляет значение канала в .....как Вы уже писали - в конце должно быть это...конец всегда один: exec("noolitepc -api -on_ch 1");, ну или подобная команда. по видимому, в конце этого не получается(( Если можно, пожалуйста, помогите разобраться, опишите как настроить: и свойства объекта( может там что-то я не добавил, а для Вас это очевидные вещи). Может еще где какие настройки. В общем куда смотреть и что и как должно быть, чтобы они работали ( ну и вообще НооЛайт) через методы. Типа: 1, должно быть в таких настройках такое. 2. Должно в св-вах быть это. 3. В объекте должны быть такие методы и свойства. 4. И т.д. И , потом, еще, как и где проверить что это или что-то еще не работает. Debug выдал следующее: 22:00:06 DEBUG : Executing: sleep 0.5; /usr/local/bin/noolitepc -api -set_color_ch 100 (at /var/www/lib/general.class.php:553) 22:00:02 DEBUG : Executing (exclusive): echo "включаю цветовые часы в коридоре" | RHVoice-test -p Anna+CLB (at /var/www/lib/general.class.php:553) Заранее, большое спасибо!

ErmolenkoM: Опять обращаюсь за помощью. ... Учитесь отлаживать программу. Это полезный навык, наряду с программированием. В общих чертах: делим код на логические блоки, проверяем, что каждый блок работает как задумывалось. При необходимости, на время отладки упрощаем блоки, добавляем отладочную информацию. Таким образом ВСЕГДА можно конкретизировать ошибку и обычно этого достаточно для того что бы понять как ее исправить. Добавление отладочной информации позволяет решить две задачи: узнать что и в каком порядке выполняется(иногда вызов пра-родительских методов неочевиден) и второе - увидеть какие значения параметров и переменных используются и передаются. Проще всего отладочную инфу выводить так:
say
('ИмяМетода_или_другие_понятные_слова а='.gg('блаблаобъект.а').' $peremennaya='.$peremennaya);
 
Ну и еще совет - старайтесь идти от простого к сложному. Сделайте ПРОСТО. Не нужны вам наследование и прочее. Создайте ОДИН класс. В нем один объект. Значения захардкодьте в метод. Когда заработает - будите вносить изменения. Это называется рефакторинг. А сейчас вы ленитесь пройти весь путь, и спрашиваете почему у вас не работает конечный результат. Мажордомо - это постоянный процесс кодинга, а не копирование к себе чужих скриптов. Ну и в заключение. Debug выдал следующее: 22:00:06 DEBUG : Executing: sleep 0.5; /usr/local/bin/noolitepc -api -set_color_ch 100 (at /var/www/lib/general.class.php:553) попробуйте в терминале выполнить /usr/local/bin/noolitepc -api -set_color_ch 100 скорее всего не заработает. Должно быть что-то типа /usr/local/bin/noolitepc -api -set_color_ch 1 100 100 100 разберитесь почему нет канала и где еще 2 цвета. Отладка вам в помощь. ну и попробуйте воспользоваться советом Сергея - используйте модуль.

TiNNauR: Всем доброе время суток! Опять вопрос ко всем участникам форума. Ну и еще совет - старайтесь идти от простого к сложному. Сделайте ПРОСТО. Не нужны вам наследование и прочее. Создайте ОДИН класс. В нем один объект. Значения захардкодьте в метод. Вот как раз если захардкодить значения, то все получается. Одним словом, по-простому все работает, вот хотелось бы сделать что-то не простое, зачем тогда все эти возможности( я смотрел CONNECTы других людей и видел, что у них может Алиса) если их не использовать. Учитесь отлаживать программу. Это полезный навык, наряду с программированием. Прошу меня извинить, но я инженер-механик, и, некоторые вещи, которые очевидны для других людей, для меня - первый раз вижу и слышу( информатика была только в школе). Посему поступаю как умею, копирую к себе код и настройки других людей у которых работает, и потом методом тыка и изменения некоторых величин и переменных( до этого пытаюсь разобраться методом логики хоть что это за величины ) смотрю что меняется в итоге, и на что же они все таки влияют. Может этот путь не легкий и не совсем правильный, но по другому я не умею, к сожалению. Вот и приходится задавать , может , глупые вопросы. Сейчас ситуация такая 01:00:05 DEBUG : Executing: sleep 0.5; /usr/local/bin/noolitepc -api -set_color_ch 1 (at /var/www/lib/general.class.php:553) Еще раз спасибо! Канал появился, а вот переменных значений цвета – нету. Заметил такое. Если в методе sendCommand добавить в начало такие строчки $r_value =$this->getProperty("R"); $g_value =$this->getProperty("G"); $b_value =$this->getProperty("B"); т.е. поставить их перед этой строчкой $cmdline='sleep 0.5; /usr/local/bin/noolitepc -api '.'-set_color_ch '.$this->getProperty("channel").' '.$r_value.' '.$g_value.' '.$b_value; safe_exec($cmdline); то в итоге ( значения R,G,B из свойства объекта присваиваются переменным $r_value, $g_value, $b_value ) выполняется команда и все работает. А если нет, то нет. Предполагаю, что , не знаю как точно выразиться, но: после последнего метода , в данном случае метода -refresh ( там эти переменные формируются таким путем $r_value=round((255*$r/$sum)*$brightness/100);) , значения переменных не держаться в памяти, и оно их ПРОСТО не подставляет, потому что в памяти нет значений переменных( может я не прав, может не совсем понимаю логику программирования и не правильно объяснил), но если в конце метода sendCommand написать следующее say($r_value,3); без принудительной подстановки переменных , то DEBUG пишет следующее: 01:00:10 DEBUG : Executing (exclusive): echo "" | RHVoice-test -p Anna+CLB (at /var/www/lib/general.class.php:553) пустые кавычки, нету ничего. А если принудительно присвоить переменным значения, то 20:27:01 DEBUG : Executing: sleep 0.5; /usr/local/bin/noolitepc -api -set_color_ch 1 000 050 100 (at /var/www/lib/general.class.php:553) 20:26:58 DEBUG : Executing (exclusive): echo "000" | RHVoice-test -p Anna+CLB (at /var/www/lib/general.class.php:553) .цвет меняется, часы работают, все проговаривает. Вот куда смотреть в этой уже ситуации, где копать? Заранее спасибо!). И еще вопрос по поводу цвета, можно же обойтись и без такой затейливой процедуры формирования цвета $r_value=round((255*$r/$sum)*$brightness/100);) Просто изначально задать цвет в формате 000 000 000( имея ввиду значения от 0до 255). Цвет выбрать, на пример, в ворде или екселе, там есть цветовая шкала, она пишет значения цвета, типа так, выбрал цвет, посмотрел в значения RGB и вставил в метод check. А если через слайдер смотреть, то в настройках слайдера выбрать мин.зн.0 а макс.зн. 255 color1.PNGcolor2.PNG

TiNNauR: Доброе время суток! Еще раз обращаюсь к участникам форума. Пожалуйста! Может все таки кто-то знает в чем может быть проблема и может мне ответить. Мое предыдущее сообщение. Заранее большое спасибо!

ErmolenkoM: Вот куда смотреть в этой уже ситуации, где копать? Заранее спасибо!) Это вызов с передачей параметров    
 
// морская волна
    $this->callMethod('setColor',array("VALUE"=>'001000100100'));
Вот код setColor
$value 
= $params['VALUE'];
if ($value){
  $brightness=substr($value,0,3);
  $R=substr($value,3,3);
  $G=substr($value,6,3);
  $B=substr($value,9,3);
}else{
  $brightness=$params['brightness'];
  $R=$params['R'];
  $G=$params['G'];
  $B=$params['B'];
}
$this->setProperty('brightness',$brightness);  
$this
->setProperty('R',$R);  
$this
->setProperty('G',$G);  
$this
->setProperty('B',$B);  
$this
->callMethod('refresh');
Ну и в refresh RGB зачитаваются
$brightness
=$this->getProperty("brightness");
$r=$this->getProperty("R");
$g=$this->getProperty("G");
$b=$this->getProperty("B");
Вот как-то так.

ErmolenkoM: удалено

ErmolenkoM: удалено

Vit: Доброе время суток! Еще раз обращаюсь к участникам форума. Пожалуйста! Может все таки кто-то знает в чем может быть проблема и может мне ответить. Мое предыдущее сообщение. Заранее большое спасибо! Здравствуйте...прочитал ваши сообщения и совсем запутался...так много всего и в итоге не понятно что именно не работает... Канал управления, ставится в ручную, что касается Noolite.... остальное толком не понял что не работает...

TiNNauR: Всем доброе время суток! Огромное спасибо, что откликнулись и ответили, особенно Михаилу за его выдержку :) . остальное толком не понял что не работает... Сейчас постараюсь объяснить. Как привел пример кода Михаил ( я сверил с тем, что у меня, может быть что-то упустил?) то, у меня так же и это все работает ( я может и не совсем разбираюсь в коде, но в этом я разобрался, это я понял, там понятно, что от куда берется и куда подставляется и как один метод вызывает другой и т.д. по цепочке) а не работает …..как раз метод sendCommand, ну, сам метод то работает, но с одним НО : - вот эта строчка $cmdline='sleep 0.5; /usr/local/bin/noolitepc -api '.'-set_color_ch '.$this->getProperty("channel").' '.$r_value.' '.$g_value.' '.$b_value; safe_exec($cmdline); подставляет все кроме переменных .$r_value.' '.$g_value.' '.$b_value; , которые формируются в предыдущем методе refresh, их просто нет: в памяти, или в этом цикле( ну, или я не совсем правильно изъяснился) . Так вот, если в методе sendCommand перед этой строчкой, т.е., в самом начале, их(эти переменные) еще раз присвоить , типа так $r_value =$this->getProperty("R"); $g_value =$this->getProperty("G"); $b_value =$this->getProperty("B"); То, метод полностью подставляет все значения и на выходе получается что-то типа 20:27:01 DEBUG : Executing: sleep 0.5; /usr/local/bin/noolitepc -api -set_color_ch 1 000 050 100 (at /var/www/lib/general.class.php:553) И канал есть и цвет. В итоге цветовые часы работают. А если не присваивать, а оставить код метода без изменений, то ничего не происходит. Типа так: 22:00:06 DEBUG : Executing: sleep 0.5; /usr/local/bin/noolitepc -api -set_color_ch 1 (at /var/www/lib/general.class.php:553) Только канал, установок цвета нету. Вот и вопрос, почему оно не держит в памяти переменные , которые присвоило в предыдущем методе refresh? Как я ни пытался изменять метод refresh, какие переменные не присваивал - $r_value =$this->getProperty("R"); или $r=$this->getProperty("R"); а потом, конечно, соответственно менял в sendCommand ( чтоб было одинаково) то это никак не отображалось на выходе, sendCommand не работал, и только если изменить его код, как я писал выше ( в самом начале кода еще раз присвоить переменные) только тогда все работало как нужно. Еще раз огромное всем спасибо!

ErmolenkoM: переменных .$r_value.' '.$g_value.' '.$b_value; , которые формируются в предыдущем методе refresh, их просто нет: в памяти, или в этом цикле( ну, или я не совсем правильно изъяснился) переменные в PHP начинаются с символа $ и не требуют объявления и типизации. Но и живут (область видимости их) только локально. То есть один метод не видит переменные другого, поэтому используется трюк с передачей значений через свойства объекта.

TiNNauR: Доброе время суток! Огромное спасибо за разъяснения! То есть один метод не видит переменные другого, поэтому используется трюк с передачей значений через свойства объекта Я так понял, что если нужно в каком-то методе оперировать с переменными данными, то их нужно просто вызвать в этом методе из свойства объекта, куда они заранее были занесены. Только как sendCommand работает у других людей, если у них в коде не присваиваются значения переменных? сдесь $cmdline='sleep 0.5; /usr/local/bin/noolitepc -api '.'-set_color_ch '.$this->getProperty("channel").' '.$r_value.' '.$g_value.' '.$b_value; safe_exec($cmdline); или сдесь - это с этого ErmolenkoM Заголовок сообщения: Re: Радио-управление nooLight Сообщение Добавлено: Пн янв 13, 2014 2:15 pm поста $cmdline='sleep 0.5; /usr/local/bin/noolitepc -api '.$params; safe_exec($cmdline); потому что у меня без заранее присвоения переменных в этом методе, увы, не работает. Еще раз спасибо!

ErmolenkoM: как sendCommand работает у других людей, если у них в коде не присваиваются значения переменных? здесь вызов метода sendCommand с передачей параматра command refresh
 $this
->callMethod("sendCommand",array('command'=>'-set_color_ch '.$this->getProperty("channel").' '.$r_value.' '.$g_value.' '.$b_value));
здесь $params содержит переданное значение при вызове. sendCommand
$cmdline
='sleep 0.5; /usr/bin/noolitepc -api '.$params['command'];
safe_exec($cmdline);

TiNNauR: Привет еще раз всем участникам. Появился инет, и я решил поблагодарить всех за помощь!! Спасибо большое, натолкнули на мысль))). Подумал, сделал, получилось. Сейчас работает. Дальше буду ковырять и смотреть. Еще раз огромное спасибо!!

TiNNauR: Привет всем участникам форума! Опять я с вопросом!))) Этот уже относительно РГБ контроллера. И так, если выполнить команду в консоли pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -roll_color_ch 1 то, включается режим смены цветов на контроллере и цвета меняются. А вопрос в том, как остановить изменение цветов нормальным способом? Сейчас поясню что именно имею ввиду. Если останавливать РОЛИНГ цветов этой командой pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -set_color_ch 1 250 250 250 то задается белый цвет с полной яркостью и вродь отлично, но, после этого если запустить еще раз команду на роллинг - pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -roll_color_ch 1 ( роллинг цветов), то ничего не происходит, цвета не меняются, яркость та же. И, если выключить канал а потом опять включить, то цвета начинают меняться, как будто режим был в памяти и после выключения/включения канала, просто активировался. Таким же образом контроллер реагирует на команду pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -sw_ch 1 ( выключается, потом опять включается уже с режимом роллинг). Это глюк моего контроллера, или такая его нормальная работа ?( типа по другому не умеет). Если так, то мой вопрос выше – Как остановить РОЛЛИНГ цветов нормальным способом, чтоб контроллер вернулся в нормальное состояние( какое было ДО получения команды РОЛЛИНГ). Ну или , как можно организовать в МДМ чтоб можно было и включать роллинг цветов, а потом также легко его выключить. Через команды пока никак. Сейчас останавливаю путем нажатия кнопки на пульте ПЕРЕКЛЮЧЕНИЕ ЦВЕТОВ (не роллинг), там их предустановленных 10штук . Тем самым контроллер возвращается в исходное состояние и команда pi@raspberrypi:~ $ /usr/local/bin/noolitepc -api -roll_color_ch 1 опять работает, но, …..опять не выключается.. Заранее всем большое спасибо!

*** Сообщение запрещено. Содержит контактную информацию. Сообщение похоже на спам. ***

VooDooN: Привет, ребята. Раздумываю о покупке девайсов от NooLite. Не могу найти ответ на вопрос. Спрошу у знатоков. Планирую сделать так: 1) Подключить RX2164 и РС1132 к RaspberryPi3 с MajorDoMo. 2) Устанавливить силовой блок (типа SU-1-200) в люстру. 3) Приклеить на стену пульт PB411. Можно ли из этого всего сделать так?: 1) Нажимаю на пульт -> загорается свет -> передается статус в MajorDoMo и тот показывает "Свет включен". 2) И самое главное: если выходит из строя RaspberryPi3, то продолжает ли функционировать связка "Нажимаю на пульт -> загорается свет"? Без перенастроек. Меня с толку сбил один сайт по продаже пультов, там написано: Два базовых варианта работы радиовыключателя PB411: 1) Работа в паре с одним или несколькими силовыми блоками (вызывать сценарии освещения), 2) Работа в системе Умный Дом Noolite - передача нажатия на приемник и применение в системе Умный Дом). Получается вопрос в том, что если я нажму на пульте кнопку, то сигнал с него примет одновременно и силовой блок, и RX2164? Или же сигнал примет только RX2164, а дальше через РС1132 сигнал отправится на включение в силовой блок? И еще вопрос: как часто бывают ложные самостоятельные включения/выключения силовых блоков или же наоборот не с первого раза сработают включение через нажатие на пульте? У меня был Broadlink TC2, так тот примерно раз в неделю сам выключал свет. Спасибо!

sergejey: Привет, ребята. Раздумываю о покупке девайсов от NooLite. Не могу найти ответ на вопрос. Спрошу у знатоков. Планирую сделать так: 1) Подключить RX2164 и РС1132 к RaspberryPi3 с MajorDoMo. 2) Устанавливить силовой блок (типа SU-1-200) в люстру. 3) Приклеить на стену пульт PB411. Можно ли из этого всего сделать так?: 1) Нажимаю на пульт -> загорается свет -> передается статус в MajorDoMo и тот показывает "Свет включен". 2) И самое главное: если выходит из строя RaspberryPi3, то продолжает ли функционировать связка "Нажимаю на пульт -> загорается свет"? Без перенастроек. Меня с толку сбил один сайт по продаже пультов, там написано: Два базовых варианта работы радиовыключателя PB411: 1) Работа в паре с одним или несколькими силовыми блоками (вызывать сценарии освещения), 2) Работа в системе Умный Дом Noolite - передача нажатия на приемник и применение в системе Умный Дом). Получается вопрос в том, что если я нажму на пульте кнопку, то сигнал с него примет одновременно и силовой блок, и RX2164? Или же сигнал примет только RX2164, а дальше через РС1132 сигнал отправится на включение в силовой блок? И еще вопрос: как часто бывают ложные самостоятельные включения/выключения силовых блоков или же наоборот не с первого раза сработают включение через нажатие на пульте? У меня был Broadlink TC2, так тот примерно раз в неделю сам выключал свет. Спасибо! Всё зависит от того, как вы привяжете PB411. Вы можете его привязать одновременно и к RX2164 и к силовому блоку, тогда пульт будет включать силовой блок независимо от MajorDoMo, но при этом MajorDoMo так же будет получать сигнал о том, что вы передали команду включения или выключения и сможет воспринимать её для установки внутреннего статуса, но при этом не задействовать PC1132. В этом случае всё будет работать, даже если MajorDoMo отключено. Из минусов разве что возможная рассинхронизация статусов, если сигнал не дошёл до RX2164 либо силового блока. Второй вариант, это привязывать пульт только к RX2164, чтобы MajorDoMo после получения сигнала задействовало PC1132 для отправки команды силовому блоку. Из минусов небольшая задержка из-за цепочки действий, а так же невозможность включить силовой блок, если MajorDoMo не работает. Из плюсов только гибкость настройки связей без перепривязки пультов и силовых блоков. С PB411 можно и тот и тот вариант использовать и даже наверное первый предпочтительнее, но с пультами где передаётся сигнал "переключения" (а не отдельно "включить" и "выключить") я первый вариант не использую -- слишком большой шанс получить неактуальный статус в системе. По поводу "случайностей" -- самопроизвольного переключения нагрузки не наблюдал ни разу, а вот "пропажу сигнала по дороге" время от времени наблюдаю -- расстояние, стены, помехи и прочее. Не так часто, чтобы сильно напрягало, но иногда случается -- издержки протокола без гарантированной доставки сообщения.

VooDooN: Всё зависит от того, как вы привяжете PB411. Вы можете его привязать одновременно и к RX2164 и к силовому блоку, тогда пульт будет включать силовой блок независимо от MajorDoMo, но при этом MajorDoMo так же будет получать сигнал о том, что вы передали команду включения или выключения и сможет воспринимать её для установки внутреннего статуса, но при этом не задействовать PC1132. В этом случае всё будет работать, даже если MajorDoMo отключено. Из минусов разве что возможная рассинхронизация статусов, если сигнал не дошёл до RX2164 либо силового блока. Второй вариант, это привязывать пульт только к RX2164, чтобы MajorDoMo после получения сигнала задействовало PC1132 для отправки команды силовому блоку. Из минусов небольшая задержка из-за цепочки действий, а так же невозможность включить силовой блок, если MajorDoMo не работает. Из плюсов только гибкость настройки связей без перепривязки пультов и силовых блоков. Спасибо, Сергей, за развернутый ответ! А можно ли комбинировать оба варианта так: Нажимаем кнопку на пульте -> 1) сигнал идет на силовой блок и тот включает свет; 2) одновременно идет сигнал в MajorDoMo и тот выставляет статус "включено" -> и сразу же MajorDoMo еще раз отправляет команду включения на тот же силовой блок (продублирует для гарантии, чтобы уменьшить вероятность рассинхронизации статусов)? Теоретически это реально, как я предполагаю. Есть ли подводные камни с таким способом?

sergejey: Да, так тоже можно. Особых подводных камней с этим нет, кроме разве что это не решит проблему, если MajorDoMo не услышит сигнала. Но хуже не должно быть.

max37online: Всё зависит от того, как вы привяжете PB411. Вы можете его привязать одновременно и к RX2164 и к силовому блоку, тогда пульт будет включать силовой блок независимо от MajorDoMo, но при этом MajorDoMo так же будет получать сигнал о том, что вы передали команду включения или выключения и сможет воспринимать её для установки внутреннего статуса, но при этом не задействовать PC1132. В этом случае всё будет работать, даже если MajorDoMo отключено. Из минусов разве что возможная рассинхронизация статусов, если сигнал не дошёл до RX2164 либо силового блока. Второй вариант, это привязывать пульт только к RX2164, чтобы MajorDoMo после получения сигнала задействовало PC1132 для отправки команды силовому блоку. Из минусов небольшая задержка из-за цепочки действий, а так же невозможность включить силовой блок, если MajorDoMo не работает. Из плюсов только гибкость настройки связей без перепривязки пультов и силовых блоков. Спасибо, Сергей, за развернутый ответ! А можно ли комбинировать оба варианта так: Нажимаем кнопку на пульте -> 1) сигнал идет на силовой блок и тот включает свет; 2) одновременно идет сигнал в MajorDoMo и тот выставляет статус "включено" -> и сразу же MajorDoMo еще раз отправляет команду включения на тот же силовой блок (продублирует для гарантии, чтобы уменьшить вероятность рассинхронизации статусов)? Теоретически это реально, как я предполагаю. Есть ли подводные камни с таким способом? У меня именно так и реализовано. Рассинхронизация (если и случается), лечится повторным включением выключателя. Т.е. нажимаешь - включить (на выключателе), свет зажигается и гаснет. Приходится еще раз нажимать. Что хотелось бы улучшить - уменьшить время отработки на RPi2. Проверял так: смотришь в интерфейс, и параллельно выключателем играешься. Оцениваешь, насколько быстро статус в системе обновляется. Конечно, задержка не более секунды, но хочется чтобы было мгновенно. Даже скажу ЗАЧЕМ. У меня есть китайская люстра, с переключением режимов работы включением/выключением. И когда приходится часто включать/выключать (не выжидая секунды), бывает что происходит рассинхронизация...

[ Обсудить на форуме ]

 

MajorDomo

Информация

Проекты

Партнёры

edit SideBar

 
 
 

 

Blix theme adapted by David Gilbert, powered by PmWiki