![]() |
подскажите...а кто нибудь пробывал резистивные кнопки на руле прикрутить с помощью этой проги?
|
Цитата:
|
Цитата:
http://pccar.ru/showpost.php?p=248366&postcount=72 но описанный вариант смущает тем что при подключенной арудине не будет работать экранная клава |
Цитата:
|
Az0m@, Экранная клавиатура будет скрываться если если Arduino будет настроено как HID клавиатура, при использовании Serial Manager это не нужно, просто закомментируйте или удалите строку Keyboard.begin(); в скетче.
|
С пылу с жару, прототип %)
Управление штатным климатом в лехусе. зы: иконки перепутал и пока только 2 кнопки, но это все дело техники и времени, главное, что все подружилось и заработало %) v4 контроллер от Юры + Serial Manager от DelleTenebre + таскер + оболочка от меня) Пока все собирается и тестируется на телефоне, для удобства, потом будет перенесено в андроид устройство, которое стоит в авто. |
Цитата:
|
Цитата:
|
DelleTenebre Привет! Яву начал изучать недавно.
Подскажи пожалуйста как отправить данные на Ваше приложение, пишу приложение под андроид которая будет работать в связке с SerialManager. Почему не срабатывают команды на включение и отключение светодиода на ардуино, из моего приложения, хотя с виджета всё работает. Походу чтото делаю не так. Обработчик кнопок работает проверял через Toast. PHP код:
С приемником kg.delletenebre.serial.NEW_DATA разобрался всё работает отлично. |
Сам разобрался, в поле:
PHP код:
Вот так. PHP код:
|
Цитата:
|
Цитата:
|
Что нужно до установить чтобы на нексусе работали команды из раздела эмуляция клавиатуры рут???
|
C лёгкого пинка ali_vlad, я начал эксперименты с GPIO. В версии 1.6.2 готов модуль считывания состояния 1 и 0. Под шумок добавил возможность "GPIO-кнопка" - можно получать данные не 1 и 0, а click и hold (удержание).
---- Обновлено 11.09.2016 Чтобы распознавать команды с GPIO нужно выбрать Тип команды GPIO, в появившееся поле Номер GPIO, как ни странно, номер GPIO (Скриншот). Например, у geekbox landingship есть пин с маркировкой GPIO3_A3 - не знаю стандартное это обозначение или нет, но необходимый номер высчитывается по формуле (тут можно ещё почитать): Код:
GPIO[X]_[Y][Z] = 32*[X] + 8*[Y] + [Z] (for Y: A=0, B=1, C=2, D=3) |
В правильном направлении движетесь товарищ!
Считаю это необходимо в нашем деле... |
mark949, спасибо.
В 1.6.3 добавил действие установки состояния GPIO: low, high, invert. Формат такой: gpioX:low, gpioX:high, gpioX:invert. Где X номер GPIO. Если GPIO уже был инициализирован и имеет режим IN, будет сообщение об ошибке (в целях безопасности). Команда invert, как следует из названия, инвертирует состояние, т.е. если было 0, то станет 1; если было 1 - станет 0; если порт не был настроен, то будет выбрано состояние 0. Немного исправил уведомления - теперь они должны исчезать как и положено. Приношу свои извинения всем кто активно пользовался виджетами приёма данных - они у вас немножко (почти полностью) сломаются. Но в качестве компенсации вы получаете возможность пользоваться математическими выражениями и функциями описанными по этой ссылке, а так же hex2dec(), dec2hex(), bin2dec(), dec2bin(), выводить значение ключа с помощью %key, а полученного от контроллеров значения через %value. Все эти плюшки работают и в уведомлениях. Например, чтобы перевести полученное значение в hex, в поле Текст пишем: dec2hex(%value) Для работы с мат. выражениями необходимо всю формулу обернуть в %{}. Например, от контроллера приходят данные о температуре в Фаренгейтах, а нам нужно перевести в градусы Цельсия: %{round((%value - 32) * (5 / 9), 1)} ºC По формуле выше, мы перевели градусы и округлили до десятых (до одного знака после запятой). Т.е. если от контроллера пришла цифра 89, то мы на выходе получим 31.7 ºC. При этом текст до и после %{} остаётся без изменений. |
Вопрос по GPIO.
Может я чего не так делаю Добавляю новое действие, категория GPIO, определять ключ/значение автоматически. Замыкаю ножку GPIO на землю и тишина. |
ali_vlad, для нового gpio автоматически не получится получить ключ и значение. Алгоритм я сделал такой: при добавлении новой команды, если ключ соответствует шаблону gpioX (где X цифра), то инициализируется пин gpio с указанным номером в состояние in. Только после этого SM начинает его "слушать" и можно получить ключ/значение автоматически (хотя ключ уже есть). При удалении команд проверяется - если такой же номер GPIO не встречается ни в одной из команд, то пин GPIO отключается (через /sys/class/gpio/unexport).
Насколько я понял из документаций к разным платам с GPIO, их может быть сколько угодно с почти любыми номерами и лучше заранее не "слушать" всё подряд, так как неизвестно какие из них и для чего мог настроить пользователь. |
Цитата:
|
Не, это не те номера. /sys/class/gpio/gpiochip насколько я понимаю просто номера контроллеров GPIO, и хранят информацию и том за какие пины отвечают.
Если у Вас Odroid-XU4/3, то исходя из этой первой таблицы, например для 13 пина: 13 XE.INT13 GPX1.5 (#21) прицепив провод на обозначенный на плате 13 пин, в SM надо писать gpio21. Как бы "логично" это не выглядело :) Я пока с этими номерами разобрался, плату чуть в окно не выкинул |
Немного разобрался
На мой взгляд, установка GPIO по умолчанию в 0 - не подходит для кнопок, ибо будет правильнее, если они будут замыкаться на массу. И первый глюк: Если после создания команды попытаться её отредактировать, то созданная /sys/class/gpio/gpio*** исчезает Иногда возникает оооочень долгая задержка, секунд так 30. Как повесить запуск приложения на изменение gpio так и не понял. |
Всем привет. Такая проблема. Подключил датчик ds18b20 по этому коду, через леонардо на тв боксе (свистке) mk908ii (rk3188), прошивка Finless 1.6 (4.2.2):
Код:
#include Из железа: контроллера тача на таком же леонардо (хаб1), звук c-media (хаб1) - хаб2 - леонардо(хаб2), мышь(хаб2), клава(хаб2). При рабочей системе - с большего всё ок. Стоят галки автоопределение и переподключение. Как только перезагружаю систему, всё наглухо виснет и не даёт загрузится (экран, бутлого, просто замирает, потом свисток отрубается, чёрный экран). По светодиодам видно что леонардо стартует и открывает порт где то в середине загрузки потом грузится пару фризов и всё - стоп) Ещё заметил если убрать и скетча delay(5000); данных видно становится многовато и всплывающее окно не исчезает. (в моём случаи Пробовал отключать всё кроме тача и леонардо с датчиком.. жутки тормоз и по итого не грузит. Да. каждый раз, при перезагрузках с 1 хабом устройства разные /dev/usb/001 ..2..3..6. и если убрать автоопределение и вручную указать /dev/usb/001 то при след. перезагрузке эта настройка не сохраниться, так как такого устройства уже не будет. Однако если зайти в терминал и набрать cat /dev/ttyACM0 леонардо будет висеть там постоянно и исправно показывать данные. может как то можно указать этот порт вручную? Или как то в скетч указать что бы контроллер прикидывался строго определенным образом.. |
Цитата:
То есть если у меня стоит виджет принимающий команду |
indevor, на данный момент у меня решения нет. Я пока что не знаю как более менее правильно считывать с /dev/ttyACM0.
Maniac82, виджеты останутся (должны по крайней мере) - сбросится их содержимое и будет нужно настроить вывод текста заново. Ключи сохранятся, только текст сбросится. |
Цитата:
Вы пишите: Цитата:
|
Цитата:
|
Отлично, спасибо! Буду ждать релиз.
|
В 1.6.4 добавил опции автозапуска.
|
Цитата:
И по-моему были проблемы когда в хаб вставлена флешка. видно как она перезагружатся несколько раз, но леонардо не открывает порт, хотя стояло автоопределение. Буду тестить, пробовал по разному поэтому сказать наверняка о багах не могу. |
Вообщем мистика, может что не то натыкал, все работает благодаря паузе со всеми устройствами и двумя хабами.
|
Мужики, у меня в последних версиях перестал реагировать на : "Эмуляция клавиатуры [Root]" -> "Эмуляция нажатия Alt+Tab" ,
"Эмуляция нажатия App_Switch" , "Эмуляция нажатия Tab" возможно и еще какие то, но этими я пользовался через iDrive а теперь на экран вывод Serial команды видит и выводит а реакции 0. Прошу проверить. Android 5.1.1+root СПС. |
mark949, проверил, работает. Возможно uinput каким-либо образом слетел или root-права.
В версию 1.6.5 добавлена возможность взаимодействия по WebSocket. В настройках можно указать порт и запускать ли сервер. Тестируем следующим образом: подключаем android с SM к одной сети с компьютером (к одному wifi-роутеру, например); заходим в SM, на главной странице, вверху видим строчки: WebServer: 192.168.1.77:5000 WebSocket: 192.168.1.77:5000/ws У вас IP-адрес будет другой и порт, какой указали в настройках (по-умолчанию 5000). Открываем на компьютере более-менее свежий браузер и переходим по адресу WebServer, в моём примере 192.168.1.77:5000. Если всё хорошо, то откроется страничка со следующим содержанием: ------------------------------------------------ SerialManager version: 1.6.5 WebSocket server address: 192.168.1.77:5000/ws WebSocket test ------------------------------------------------ Переходим по ссылке WebSocket test, нажимаем "Установить соединение". Оправляем команды и счастливым взглядом смотрим в лог. После изменения любых настроек SM (главных настроек), сервер делает рестарт и WebSocket (в браузере) нужно будет подключить заново. Описанное выше поведение нужно будет учитывать и при подключении Arduino, т.е. при ошибке соединения, необходимо будет написать алгоритм переподключения. У меня, на данный момент, нет ни WiFi, ни Ethernet-шилда к arduino, поэтому помочь не смогу. Изменения коснулись и Категория > Отправить команду, теперь вариантов 4:
в первом случае, КакаяЛибоКоманда будет отправлена через usb, bluetooth и websocket. в остальных случаях, Вы указываете куда нужно отправить КакаяЛибоКоманда. Это же правило действует в виджетах отправки, да и везде, где отправляем команды (через Tasker, например). |
а прием по вебсокету есть ?
Спасибо за проделанную работу! |
Конечно, работает и приём и передача.
|
Так и не понял, как из этой инструкции получить уровень яркости.
Может ещё какие поля надо заполнить? |
Цитата:
если можно пример скетча . |
Цитата:
|
Цитата:
|
Цитата:
И не однократно. |
Цитата:
|
Часовой пояс GMT +4, время: 19:00. |
Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot