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

Go Back   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Дополнительные устройства
Register FAQ Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread
Old 02-06-2015, 03:59   #431
tto4ka
Пользователь
 
Join Date: Nov 2011
Age: 45
Город: Москва
Регион: 77, 97, 99, 177
Машина: Lexus RX300
Posts: 87
tto4ka is on a distinguished road
Default

Quote:
Originally Posted by Rage2 View Post
По юсб никак не видится, только зарядка.
По BT видится как колавиатура, профиль HID

Еще нем есть переключатель сбоку...режим Game\Key

Относительно горизонтальной ориентации брелка.
режим Game
Стик (4-е направления)
ВВЕРХ KEYCODE_DPAD_UP
ВНИЗ KEYCODE_DPAD_DOWN
ЛЕВО KEYCODE_DPAD_LEFT
ПРАВО KEYCODE_DPAD_RIGHT

Кнопки
X- KEYCODE_BUTTON_A
A- KEYCODE_BUTTON_B
iOS- KEYCODE_BUTTON_X
треугольник - KEYCODE_BUTTON_Y
start -KEYCODE_BUTTON_START

режим Key
Стик (4-е направления)
ВВЕРХ KEYCODE_MEDIA_NEXT
ВНИЗ KEYCODE_MEDIA_PREVIOS
ЛЕВО KEYCODE_MEDIA_FAST_FORWARD
ПРАВО KEYCODE_MEDIA_REWIND

Кнопки
X- KEYCODE_VOLUME_DOWN
A- KEYCODE_ENTER
iOS- KEYCODE_VOLUME_UP
треугольник - KEYCODE_BACK
start -KEYCODE_MEDIA_PLAY_PAUSE
Самый главный вопрос забыл спросить, в машине вообще юзабельно? Удобно в смысле?
tto4ka is offline   Reply With Quote
Old 02-06-2015, 10:53   #432
Rage2
Banned
 
Join Date: Nov 2009
Age: 39
Город: Nizhniy Novgorod
Регион: 52
Машина: Ford Focus III
Posts: 1,776
Rage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant futureRage2 has a brilliant future
Default

Quote:
Originally Posted by tto4ka View Post
Самый главный вопрос забыл спросить, в машине вообще юзабельно? Удобно в смысле?
В том виде какой он есть, я думаю что не особо.
Rage2 is offline   Reply With Quote
Old 02-06-2015, 15:23   #433
tto4ka
Пользователь
 
Join Date: Nov 2011
Age: 45
Город: Москва
Регион: 77, 97, 99, 177
Машина: Lexus RX300
Posts: 87
tto4ka is on a distinguished road
Default

Все вопрос решен Напшел iDrive )))
Небольшое зондирование почвы на тему iDrive принесло следующие результаты, есть 2 пути:
1. Вскрыть джойстик и припаять Arduino к узлам джойстика (метод Chubaka885)
2. Джойстик работает по CAN поэтому можно сделать обвязку на двух микросхемах MCP2515 и TJA1055 причем обе микросхемы не дорогие порядка 50-100р за штуку и дальше уже в Arduino Micro, есть даже схема шилда, причем через CAN в принципе наверно правильнее так как сразу весь функционал и подсветка , только вот производственных мощностей нету чтобы плату вытравить....

Last edited by tto4ka; 03-06-2015 at 01:43..
tto4ka is offline   Reply With Quote
Old 07-06-2015, 17:07   #434
Bormental
Пользователь
 
Join Date: Nov 2013
Age: 53
Город: москва
Регион: 77, 97, 99, 177
Машина: KIA Sorento XM
Posts: 33
Bormental is on a distinguished road
Default

Всем добра. Подскажите в скетче Iti выдает ошибку
Remote.increase(); - желтым выделяет и пишет
remote as not declared in this scope
чего делать??
Bormental is offline   Reply With Quote
Old 07-06-2015, 19:10   #435
Chubaka885
Старший Пользователь
 
Join Date: Oct 2013
Age: 43
Регион: 56
Машина: Toyota Corolla e150
Posts: 325
Chubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the rough
Default

Quote:
Originally Posted by Bormental View Post
Всем добра. Подскажите в скетче Iti выдает ошибку
Remote.increase(); - желтым выделяет и пишет
remote as not declared in this scope
чего делать??
Библиотеку надо заменить. Всё же написано.

Quote:
Для начала меняем в папке \arduino-1.0.5\hardware\arduino\cores\arduino два файла USBAPI.h, HID.cpp на те, что во вложении этого сообщения, при этом версия ПО Arduino Software IDE должна быть 1.0.5, скачать setup exe, скачать zip.
__________________
Nexus 7 2012 (grouper), Cyanogenmod 11 - M10
фото установки Nexus 7 2012 & Toyota Corolla
Chubaka885 is offline   Reply With Quote
Old 07-06-2015, 21:42   #436
Bormental
Пользователь
 
Join Date: Nov 2013
Age: 53
Город: москва
Регион: 77, 97, 99, 177
Машина: KIA Sorento XM
Posts: 33
Bormental is on a distinguished road
Default

Я конечно же поменял все библиотеки, поэтому и написал сюда, что выскакивает такая строка
Bormental is offline   Reply With Quote
Old 08-06-2015, 07:11   #437
Chubaka885
Старший Пользователь
 
Join Date: Oct 2013
Age: 43
Регион: 56
Машина: Toyota Corolla e150
Posts: 325
Chubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the roughChubaka885 is a jewel in the rough
Default

Quote:
Originally Posted by Bormental View Post
Я конечно же поменял все библиотеки, поэтому и написал сюда, что выскакивает такая строка
Версия ПО?
__________________
Nexus 7 2012 (grouper), Cyanogenmod 11 - M10
фото установки Nexus 7 2012 & Toyota Corolla
Chubaka885 is offline   Reply With Quote
Old 13-06-2015, 01:49   #438
komers
Пользователь
 
Join Date: Apr 2013
Age: 39
Регион: 78, 98
Posts: 26
komers is on a distinguished road
Default

Quote:
Originally Posted by tto4ka View Post
Все вопрос решен Напшел iDrive )))
Если не секрет, за сколько вы его приобрели?
komers is offline   Reply With Quote
Old 13-06-2015, 16:52   #439
Ajlewka
Пользователь
 
Join Date: Dec 2013
Age: 34
Регион: 25
Posts: 94
Ajlewka is on a distinguished road
Default

Вопрос по теме - на столе все работает, только переношу в машину, начинается очень большой разброс по значениям. Если на столе 1-3, то в машине доходит до 80-100. Питается от НСД. я так понял это в ней дело. Вообще, есть разница в подтяжке? у меня сейчас сделано в состоянии покоя подтяжка на 5в. Что изменится если переделать на землю?
Ajlewka is offline   Reply With Quote
Old 13-06-2015, 19:51   #440
armlive
Старший Пользователь
 
Join Date: Dec 2013
Age: 44
Город: Армавир
Регион: 23, 93
Машина: Nissan Qashqai
Posts: 510
armlive is a glorious beacon of lightarmlive is a glorious beacon of lightarmlive is a glorious beacon of lightarmlive is a glorious beacon of lightarmlive is a glorious beacon of light
Default На 2 пина

Может кому пригодится, кашкаводам точно!
Бывает такое, что кнопки сидят не в одной группе, а в несколько. Вот и на кашкае шесть кнопок, но две группы и естественно два провода, да ещё и сопротивления одинаковые. Раньше соединял их резистором и сводил в один.... работает. Но все же дребезг, разница в значениях иногда приводила к непредсказуемым действиям.
И вот моя наконец дошло)))
Надеюсь многим поможет, работает теперь просто идеально работает.
Немного переделанный код с поста lti1

Для двух проводных кнопок!

Code:
//****************** Здесь необходимо указать свои значения *************** 

int analogPin=0; // пин для подключения кнопок A0 
int analogPin1=1; // пин для подключения кнопок A1

int release_button = 1023; // значение при отпущенных кнопках 
int button_release_range = 20; // диапазон значения + - при отпущенных кнопках 
int button_range = 10; // диапазон значения нажатых кнопок + - 
int time_holding = 500; // время для удержания кнопок в миллисекундах 
int time_tinkling = 10; // время исключающее дребезг контактов в миллисекундах 
int vol_up = 345; // значение кнопки увеличить громкость 
int vol_down = 165; // значение кнопки уменьшить громкость data1
int alt_tab = 0; // значение кнопки которая будет работать как Alt + Tab 
int next = 100; // значение кнопки которая будет работать как Next при коротком нажатии и Fast Forward при удержании 
int previous = 30; // значение кнопки которая будет работать как Previous при коротком нажатии и Rewind при удержании data1
int play_pause = 0; // значение кнопки которая будет работать как Play/Pause при коротком нажатии и Mute при удержании data1

//************************************************************************** 

int data;  
int data1; 
unsigned long flag = 0;  
unsigned long eventTime = 0;  
unsigned long pauseMillis = 0; 

void setup()  
{  
Keyboard.begin();  
}  

void loop()  
{  
data=analogRead(analogPin); 
data1=analogRead(analogPin1);
if(data>=release_button - button_release_range && data<=release_button + button_release_range && flag == 0)  
{  
 eventTime=millis();  
}  

if(data1>=release_button - button_release_range && data1<=release_button + button_release_range && flag == 0)  
{  
eventTime=millis();  
}  

//********************** Громкость ************************************ 

if(millis()-time_tinkling && millis()-eventTime<time_holding-1 && data >= vol_up - button_range && data <= vol_up + button_range && flag == 0) 
{   
Remote.increase();  
flag = 5;  
delay(10);  
Remote.clear();  
}  

if(millis()-eventTime>time_holding && data >= vol_up - button_range && data <= vol_up + button_range && flag == 5 || data >= vol_up - button_range && data <= vol_up + button_range && flag && flag == 3)  
{   
Remote.increase(); 
flag = 3;  
Remote.clear();  
delay(100);  
}  

if(millis()-time_tinkling && millis()-eventTime<time_holding-1 && data1 >= vol_down - button_range && data1 <= vol_down + button_range && flag == 0)  
{   
Remote.decrease();  
flag = 6;  
delay(10);  
Remote.clear();  
}  

if(millis()-eventTime>time_holding && data1 >= vol_down - button_range && data1 <= vol_down + button_range && flag == 6 || data1 >= vol_down - button_range && data1 <= vol_down + button_range && flag == 3)  
{   
Remote.decrease();  
flag = 3;  
Remote.clear();  
delay(100);  
}  

//********************** AltTab + Ещё что то ************************************   

if(millis()-time_tinkling && millis()-eventTime<time_holding-1 && data >= alt_tab - button_range && data <= alt_tab + button_range)  
{   
flag = 1;  
}  

if(data>=release_button - button_release_range && data<=release_button + button_release_range && flag == 1 && pauseMillis == 0)  
{  
Keyboard.press(KEY_LEFT_ALT);  
Keyboard.press(KEY_TAB);  
Keyboard.release(KEY_TAB);  
Keyboard.press(KEY_TAB);  
Keyboard.release(KEY_TAB);  
flag = 0;  
pauseMillis = millis();  
}  

if(data>=release_button - button_release_range && data<=release_button + button_release_range && flag == 1 && pauseMillis != 0)  
{  
Keyboard.press(KEY_TAB);  
Keyboard.release(KEY_TAB);  
flag = 0;  
pauseMillis = millis();  
}  

if(pauseMillis && millis()-pauseMillis >= 1500 && data>=release_button - button_release_range && data<=release_button + button_release_range)  
{  
flag = 0;  
pauseMillis = 0;  
Keyboard.releaseAll();  
}  

if(millis()-eventTime>time_holding && data >= alt_tab - button_range && data <= alt_tab + button_range && flag == 1)  
{   
flag = 0;  
}  
//********************** Next и Fast Forward ************************************   

if(millis()-time_tinkling && millis()-eventTime<time_holding-1 && data >= next - button_range && data <= next + button_range)  
{   
flag = 2;  
}  

if(data>=release_button - button_release_range && data<=release_button + button_release_range && flag == 2)  
{  
Remote.next();  
flag = 0;  
delay(10);  
Remote.clear();  
}  

if(millis()-eventTime>time_holding && data >= next - button_range && data <= next + button_range && flag == 2 || data >= next - button_range && data <= next + button_range && flag == 3)  
{   
Remote.forward();  
flag = 3;  
Remote.clear();  
delay(100);  
}  
//********************** Previous и Rewind ************************************   

if(millis()-time_tinkling && millis()-eventTime<time_holding-1 && data1 >= previous - button_range && data1 <= previous + button_range)  
{   
flag = 4;  
}  

if(data1>=release_button - button_release_range && data1<=release_button + button_release_range && flag == 4)  
{  
Remote.previous();  
flag = 0;  
delay(10);  
Remote.clear();  
}  

if(millis()-eventTime>time_holding && data1 >= previous - button_range && data1 <= previous + button_range && flag == 4 || data1 >= previous - button_range && data1 <= previous + button_range && flag == 3)  
{   
Remote.rewind(); 
flag = 3;  
Remote.clear();  
delay(100);  
}  

//********************** Play/pause + Mute ************************************   

if(millis()-time_tinkling && millis()-eventTime<time_holding-1 && data1 >= play_pause - button_range && data1 <= play_pause + button_range)  
{   
flag = 7;  
}  

if(data1>=release_button - button_release_range && data1<=release_button + button_release_range && flag == 7)  
{  
Remote.play_pause();   
flag = 0;  
delay(10);  
Remote.clear();  
}  

if(millis()-eventTime>time_holding && data1 >= play_pause - button_range && data1 <= play_pause + button_range && flag == 7)  
{   
Remote.mute(); 
flag = 0; 
delay(10); 
Remote.clear();  
} 
if(data>=release_button - button_release_range && data<=release_button + button_release_range && flag == 3 || data>=release_button - button_release_range && data<=release_button + button_release_range && flag == 5 || data>=release_button - button_release_range && data<=release_button + button_release_range && flag == 6)  

if(data1>=release_button - button_release_range && data1<=release_button + button_release_range && flag == 3 || data1>=release_button - button_release_range && data1<=release_button + button_release_range && flag == 5 || data1>=release_button - button_release_range && data1<=release_button + button_release_range && flag == 6)  
{   
flag = 0;  
} 
}
Да и пора бы уже шапку для темы сделать
__________________
Nexus 7 (2013) Nissan Qashqai
armlive is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT +4. The time now is 10:38.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.