PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Дополнительные устройства (http://pccar.ru/forumdisplay.php?f=177)
-   -   Виджет для Remote steering wheel control (http://pccar.ru/showthread.php?t=21272)

Serg-Zmuh 23.12.2014 16:24

Цитата:

Сообщение от murano (Сообщение 315378)
Через какую программу подключаешься? Сопряжение устройств делал? Светодиод на ВТ модуле мигает и после подключения зажигается? Через ардуиновский терминал по USB выводится? Пины Rx-Tx правильно подключил (Rx->Tx и Tx->Rx)? На модуль питание 3.3 В?

Все норм соединяется .как ты и пишешь.
только вот последнее не понял
.. rx k tx ? Я зацепил rx k rx и tx k tx,вот бы сроду не подумал что
все наоборот :blink2:

murano 23.12.2014 16:42

По твоей ссылке написано: вывод Arduino TX - к 2 пину модуля RX
вывод Arduino RX - к 1 пину модуля TX

Serg-Zmuh 24.12.2014 03:46

Цитата:

Сообщение от murano (Сообщение 315392)
По твоей ссылке написано: вывод Arduino TX - к 2 пину модуля RX
вывод Arduino RX - к 1 пину модуля TX

У мня то Леонардо , хотя я так и сяк попробовал - не работает :shok:
пробовал просто проверить отклик в терминале замкнув Rx-
Tx - работает ,получается с Леонардо нет вывода инфы ....
попробую на UNO еще ,она у мня в машине .... ,щаз морозы лезть туда ломы :(
короче х.з. что делать - прям невезуха какая-то :dntknw:

xxoma 24.12.2014 18:37

Цитата:

Сообщение от Serg-Zmuh (Сообщение 315434)
У мня то Леонардо , хотя я так и сяк попробовал - не работает :shok:
пробовал просто проверить отклик в терминале замкнув Rx-
Tx - работает ,получается с Леонардо нет вывода инфы ....
попробую на UNO еще ,она у мня в машине .... ,щаз морозы лезть туда ломы :(
короче х.з. что делать - прям невезуха какая-то :dntknw:

Модуль может 3.3В уровни имеет.

lti1 24.12.2014 21:55

Serg-Zmuh, попробуйте на вывод RX HC-05 поставить делитель напряжения на двух резисторах, для согласования уровня с 5 до 3.3 вольт. Ардуино логический уровень 3.3 вольта воспринимает адекватно.
http://pccar.ru/attachment.php?attac...1377380852.jpg

Serg-Zmuh 25.12.2014 09:15

lti1
попробовал - нифига :( Поправка ,у мня НС-06 )
все сходится к тому что с Леонарды нет сигналов ... странно как-то
скетчи и все остальное на ней работает ...
не мог же я спалить выходы на Леонардо просто перепутав Rx с Tx , бред какой-то
пичаль :(

murano 25.12.2014 10:15

Попробуй через SoftwareSerial.
Для проверки можно попробовать использовать переходник RxTx->USB. Себе сделал из старого компьютерного адаптера для телефона. Также продаются отдельные такие переходники в инет-магазинах.

d3890666 25.12.2014 11:18

Цитата:

Сообщение от Serg-Zmuh (Сообщение 315537)
lti1
попробовал - нифига :( Поправка ,у мня НС-06 )
все сходится к тому что с Леонарды нет сигналов ... странно как-то
скетчи и все остальное на ней работает ...
не мог же я спалить выходы на Леонардо просто перепутав Rx с Tx , бред какой-то
пичаль :(

В Arduino Leonardo и Micro, основной класс Serial ассоциирован с драйвером виртуального последовательного порта для соединения с компьютером через USB. Физически он не соединен с выводами 0 и 1, как это сделано на платах Arduino Uno и в более старых версиях. Для обращения к аппаратному последовательному порту (выводам 0 и 1, RX и TX) используйте класс Serial1. (Для получения дополнительной информации см. справку по классу Serial).

Насколько я понимаю, из мануала на сайте ардины, у леонардо нужно обращаться по Сериал1 для получения инфы Rx Tx.

Serg-Zmuh 25.12.2014 11:49

Во блин .... ,это уже интересно :)
седня попробую к УНО зацепить - и все станет ясно :)

Serg-Zmuh 25.12.2014 15:06

Подключил к uno - все работает ! И при отключениях не
сбрасывает .
вывод- надо разбираться с Леонардой,
скетч надо наверно другой ...

murano 25.12.2014 15:48

Так попробуй через Serial1, а не просто Serial

Serg-Zmuh 26.12.2014 03:19

Цитата:

Сообщение от murano (Сообщение 315571)
Так попробуй через Serial1, а не просто Serial

Благодарю за помощь и подсказки :wink:
позже попробую с Леонардой ,я так понял там везде вместо serial изменить
на Serial1 , отпишусь позже ...,

Serg-Zmuh 06.02.2015 11:07

Цитата:

Сообщение от xxoma (Сообщение 309207)
Запилил виджет для Remote steering wheel control(http://forum.xda-developers.com/show....php?t=2635159)
Позволяет выводить на виджет любые данные с ардуины.
Для начала ставим прогу по ссылке выше, там читаем описание что как и куда.
После чего ставим мою прогу, при создании виджета указываем название параметра который он будет отображать(например temp), с ардуины соответственно отсылаем его же, например Serial.print(""). В названии параметра, насколько я заметил, нельзя использовать цифры, если кому критично пишите автору Remote steering wheel control.
Тестил на 4.4.4, кому нужно для версий пониже пишите - скомпилю.

https://lh4.googleusercontent.com/-o...4-13-37-12.png
https://lh6.googleusercontent.com/-A...4-13-37-45.png

Привет !!!
вопрос - случаем не собираешься виджет свой доработать ? :blush:
размер шрифта изменять , форму окна ., ну т.д.
или забросил тему ... :acute:

xxoma 07.02.2015 16:19

Привет. Собираюсь да вот никак не соберусь)
Если будет время на след. неделе то добавлю смену размера шрифта. А форму окна зачем менять? Размеры растягиваются лаучером.

murano 08.02.2015 14:30

Виджет, представленный здесь не имеет таких широких настроек как ,например, Zooper. Поэтому используя последний в связке с Remote steering wheel control и Tasker можно получить больше возможности.
Для получения данных с ардуино создаем профиль Событие - Система - Intent Recived. В действие пишем org.kangaroo.rim.action.ACTION_DATA_RECEIVE. Профиль будет отрабатывать при каждом приеме данных из ардуино.
На профиль вешаем задачу, в которой читаем переменную %org_kangaroo_rim_device_extra_args. Ну а далее используем эту переменную или в таскере для вывода на сцену, или через Zooper, в котором создаем любой виджет и отображаем данные. Из ардуино несколько данных можно передавать, например, в виде . Здесь x1, x2,x3 - передаваемые данные, # - разделитель (используется для расчленения переменной).
Как использовать Zooper в Tasker расписано при его настройке.

xxoma 08.02.2015 18:01

Ну если есть более удобное решение то не буду заново изобретать велосипед. Можно скрин как это выглядит?

murano 08.02.2015 18:53

[IMG]http://s017.radikal.ru/i403/1502/cf/56b60140fb9c.png[/IMG]

В правом квадрате температура от датчика подключенного к ардуино
Переменной temp присваиваем данные от ардуино (вида "var1#var2#...). Разбираем temp на составляющие (temp1, temp2, ....).
Присваиваем переменной temp из zooper значение temp1. Выводим виджет zooper через оверлей.

Serg-Zmuh 20.02.2015 04:09

у мня ни фига не получается :(
я в таскере не силен....
если можно разжевать по полочкам - буду благодарен
у мня выводится две тепмературы из ардуино ,tempa и tempb
все что я сделал - это поставил виджет и таскер :blush:
на большее тямы не хватает ....

murano 20.02.2015 09:31

1. В ардуино отправляешь данные вида:
Serial.print(" Serial.print (tempa);
Serial.print("#");
Serial.print(tempb);
Serial.println(">");
Можно отправлять данные как у автора RemoteInputsMgr по отдельности, но так, как мне кажется, немного сложнее в их отлавливании таскером. Но в некоторых случаях только такой вариант реализации возможен, например, для передачи данных температуры и реализации резистивных кнопок чтобы отсеивать информацию с кнопок.
2. На планшете в RemoteInputsMgr выбираем USB соединение и устанавливаем скорость обмена как в ардуино.
3. В таскере создаем профиль-событие-система-Intent Received. В поле действие пишем org.kangaroo.rim.action.ACTION_DATA_RECEIVE. Идем назад на вопрос - выбираем или создаем новую задачу, например, arduino.
4. В задаче:
4.1 Нажимаем плюс-переменная-установить переменную:
Имя: %имя (любое имя)
До: %org_kangaroo_rim_device_extra_args
4.2 Плюс-переменная-расчленить переменную:
Имя: имя из п.4.1
Разделитель: разделитель из строки посылаемой ардуино. В нашем случае - #
4.3 Ecли данные из ардуино посылаем по отдельности, то в задаче нужно отслеживать переменную %org_kangaroo_rim_device_extra_command. Аналогично п.4.1 читаем ее. Например, переменной %Com присваиваем ее значение и сравниваем, например, с "tempa". Если %Com=tempa, то выполняем какие-то действия с данными %org_kangaroo_rim_device_extra_args.

Как писал ранее, пофиль будет отрабатывать при каждом приеме данных из ардуино.

5. Открываем Overlas-плюс-название профиля-add-виджет-zooper-виджет нужного размера-назад и нажать на имени созданного виджета, чтобы OFF поменялось на ON. Выходим из программы. На экране тапаем по виджету, открывается редактор. Создаем что нужно. В поле дополнительные параметры выбираем таскер и пишем #Txxx#, Ok. XXX - имя переменной. Выходим из редактора. В overlays отключаем виджет. При необходимости там же в настройках отключаем возможность реакции при нажатии на него.
6. В таскере в ранее созданной задаче.
Плюс-плагин-zooper-конфигурация(карандаш):
ZW переменная: переменная из редактора zooper (XXX)
ZW текст: имя из п.4.1 Если данные из ардуино посылаются все сразу, то к имени нужно дописать порядковый номер передаваемых данных (1,2,...). Их можно посмотреть во вкладке VARS.
Сохранить.
7. Создаем новую задачу, например Overlays on.
Плюс-плагин-overlays-конфигурация(карандаш)-созданный виджет-вкл.
8. Запускаем задачу Overlays on и в виджете должна отображаться информация.

Serg-Zmuh 21.02.2015 07:02

вот пятый пункт не понял ...
5. Открываем Overlas-плюс-название профиля-add-виджет-zooper-виджет нужного размера-назад и нажать на имени созданного виджета, чтобы OFF поменялось на ON
это где открывать ?

lti1 21.02.2015 10:22

Overlays - Float Everywhere

Kisel39 23.05.2015 01:38

Кто нибудь выводил на нексус 2013 года русские символы?
Виджет не поддерживает выводятся непонятные знаки, usb serial monitor выводит нормально, а если через таскер создать сцену как с русскими буквами? Кодировка win1251.
Я отсканировал морду jvc x-310bte хочу вывести на планшет, английский нормально а вот с русским беда. В таскере можно размер шрифта менять?
Вот пока как: https://yadi.sk/i/nDapvjiDgmFJP

Kisel39 25.05.2015 18:28

Совместными усилиями с lti1 всё получилось как надо, теперь русские символы как в виджете так и в таскере
https://yadi.sk/i/s7HPhTOMgrgUs
https://yadi.sk/i/eM9iYWBegrgVE

Disgraced 28.05.2015 19:24

Подскажите, может ли данная программа дать ардуине команду на выполнение определённого действия? К примеру жму кнопку на планшете, программа передаёт команду ардуине, а ардуина замыкает контакты и включается/выключается свет в салоне или ещё что?
Или работает только в обратную сторону? Т.е. ардуина считала информацию и переслала в планшет.

Kisel39 28.05.2015 23:28

Цитата:

Сообщение от Disgraced (Сообщение 329247)
Подскажите, может ли данная программа дать ардуине команду на выполнение определённого действия? К примеру жму кнопку на планшете, программа передаёт команду ардуине, а ардуина замыкает контакты и включается/выключается свет в салоне или ещё что?
Или работает только в обратную сторону? Т.е. ардуина считала информацию и переслала в планшет.

Может но с помощью стороних прог типа таскера, по ссылке из первого поста зайди там же написано:
added support recive data from external apps for sending to device
action: org.kangaroo.rim.action.ACTION_DATA_SEND
exrta: org.kangaroo.rim.device.EXTRA_COMMAND, org.kangaroo.rim.device.EXTRA_ARGS
data format that will be sent to device ""

GRAFLEKX 21.06.2015 14:54

Добрый день, друзья.

Прошу подсказать или дать наводку.
Если подобное решение под Android-2.3x?
Необходимо взять данные с Arduino через USB и вывести их на экран.
Данные - температура с двух датчиков DS18B20.

Заранее благодарен за любую подсказку.

murano 02.09.2015 16:20

Цитата:

Сообщение от GRAFLEKX (Сообщение 331063)
Заранее благодарен за любую подсказку.

http://pccar.ru/showpost.php?p=321209&postcount=99

lti1 02.09.2015 16:57

Цитата:

Сообщение от murano (Сообщение 337119)

Для этого решения все равно необходимо устанавливать Remote steering wheel control, а он не работает на Android-2.3x.

Ajlewka 03.09.2015 03:52

Цитата:

Сообщение от GRAFLEKX (Сообщение 331063)
Добрый день, друзья.

Прошу подсказать или дать наводку.
Если подобное решение под Android-2.3x?
Необходимо взять данные с Arduino через USB и вывести их на экран.
Данные - температура с двух датчиков DS18B20.

Заранее благодарен за любую подсказку.

Я ставил вот эту программу https://play.google.com/store/apps/d...uino_Bluetooth и таскером уже формировал данные

maxymike 08.09.2015 18:45

Направьте на путь истинный:у меня вот такой девайс https://duino.ru/arduino-nano-v7--ca...nano-duo-.html. Поставил скетч lti1 c 3-ей страницы, изменив номер аналогового порта на свой-в приложении на планшете выставил usb,устройство определяется, но от кнопок тишина. В сериал порт Arduino IDE ничего, только иногда пролетает hold без нажатия кнопки. С другими скетчами сериал порт работает, кнопки прозваниваются четко. В чем может быть беда?

murano 08.09.2015 18:54

Цитата:

Сообщение от maxymike (Сообщение 337584)
Направьте на путь истинный: ... В чем может быть беда?

Нужно Arduino Leonardo или Arduino Pro Micro.

lti1 08.09.2015 19:17

Цитата:

Сообщение от maxymike (Сообщение 337584)
Направьте на путь истинный:у меня вот такой девайс https://duino.ru/arduino-nano-v7--ca...nano-duo-.html. Поставил скетч lti1 c 3-ей страницы, изменив номер аналогового порта на свой-в приложении на планшете выставил usb,устройство определяется, но от кнопок тишина. В сериал порт Arduino IDE ничего, только иногда пролетает hold без нажатия кнопки. С другими скетчами сериал порт работает, кнопки прозваниваются четко. В чем может быть беда?

Все должно работать, выложите свой скетч и схему подключения.
Цитата:

Сообщение от murano (Сообщение 337587)

Неправда, Nano тоже работает.

maxymike 08.09.2015 19:22

Земля от кнопок руля к Gnd подключена,фаза к А7, без резисторов, так как на arduino он уже на А7 стоит на 3,3кОм
Скетч от же, только в начале вместо А0 стоит А7

maxymike 08.09.2015 19:25

int analogPin=A7

maxymike 08.09.2015 19:29

PHP код:

int analogPin=A7;  
int data;  
int data1 0;  
int flag 0;  
unsigned long eventTime 0;  

void setup()  
{  
Serial.begin(9600);  
digitalWrite(analogPinHIGH);  
}  

void loop()  
{  
data=analogRead(analogPin);  

if(
data>=950 && data1 != && flag <= 1)  
 {  
  
Serial.print("<release:");  
  
Serial.print(data1);  
  
Serial.print(">");  
  
data1 0;  
  
flag 0;  
  
delay(10);  
 }  

if(
data>=950)  
 {  
 
eventTime millis();  
 }  

if(
data<=949 && flag != && millis()-eventTime>=50 && millis()-eventTime<=800)  
 {  
  
flag 2;  
  if(
millis()-eventTime <= 60data1 data;  
 }  

if(
data>=950 && flag == 2)  
 {  
  
Serial.print("<click:");  
  
Serial.print(data1);  
  
Serial.print(">");  
  
flag 0;  
  
delay(10);  
 }  

if(
data<=949 && flag == && millis()-eventTime>800)  
 {  
  
Serial.print("<hold:");  
  
Serial.print(data);   
  
Serial.print(">");  
  
data1 data;  
  
flag 1;  
  
delay(10);  
 }  



maxymike 08.09.2015 19:54

В приложении при замыкании двух проводов ардуины иногда пишет 549 hold, но не всегда. Может, сопротивления надо больше?

lti1 08.09.2015 20:41

Цитата:

Сообщение от maxymike (Сообщение 337592)
Земля от кнопок руля к Gnd подключена,фаза к А7, без резисторов, так как на carduino он уже на А7 стоит на 3,3кОм
Скетч от же, только в начале вместо А0 стоит А7

Попробуйте подключить к другому аналоговому входу без дополнительных резисторов, в скетче предусмотрена программная подтяжка к +5 digitalWrite(analogPin, HIGH);, для проверки можете просто замкнуть новый аналоговый вход на -.

maxymike 09.09.2015 14:24

Цитата:

Сообщение от lti1 (Сообщение 337604)
Попробуйте подключить к другому аналоговому входу без дополнительных резисторов, в скетче предусмотрена программная подтяжка к +5 digitalWrite(analogPin, HIGH);, для проверки можете просто замкнуть новый аналоговый вход на -.

Кинул на A0. То же самое. Планшет молчит. В сериал порте при замыкании проводов проскакивают hold 15, release 15, click 15. При подключении кнопок постоянно hold 108,реакции кнопок нет. Прям беда какая-то

lti1 09.09.2015 16:04

Цитата:

Сообщение от maxymike (Сообщение 337684)
Кинул на A0. То же самое. Планшет молчит. В сериал порте при замыкании проводов проскакивают hold 15, release 15, click 15. При подключении кнопок постоянно hold 108,реакции кнопок нет. Прям беда какая-то

Так и должно быть, при коротковременном (менее 0,8 секунды) замыкании в сериал приходит , при длительном замыкании (более 0,8 секунды) , если после этого разомкнуть контакты, должно прилететь , естественно вместо 15 может быть другое значение. Изучайте схему Ваших кнопок, она не соответсвует схеме указанной в моем посте на 3 странице, по этому и не работает.

maxymike 09.09.2015 17:42

У меня chery tiggo fl, там стоит матрица из 6 резисторов от 0 до 2ком, на выход 2 провода. Они нормально опрашиваются сериал портом на стандартном скетче с дребезгом в 1-2 единицы.


Часовой пояс GMT +4, время: 08:53.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot