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

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Манипуляторы (http://pccar.ru/forumdisplay.php?f=163)
-   -   Навигационный джойстик Рено + Андроид + Ардуино (http://pccar.ru/showthread.php?t=29369)

mazay66 12.01.2020 23:38

Навигационный джойстик Рено + Андроид + Ардуино
 
Вложений: 3
Доброго здравия. Давно хотел встроить штатный навигационный джойстик Рено для управления планшетом
(см. фото 1)
Представляет из себя электронный модуль с процессором и контроллером, передающий данные о нажатии кнопок в can-шину автомобиля в виде кодов шестнадцатеричной системы счисления HEX. Ниже данные джойстика Рено, полученные с анализатора:
Для пробуждения необходима команда 58F 8 [ 80 01 BB BB BB BB BB BB ]
В ответ от джойстика можно получить такие коды:
63D 8 [ 88 F2 F2 F2 F2 F2 F2 F2 ] – длинное нажатие кнопки MAP
63D 8 [ 08 F2 F2 F2 F2 F2 F2 F2 ] - короткое нажатие кнопки MAP
63D 8 [ 83 F2 F2 F2 F2 F2 F2 F2 ] - длинное нажатие кнопки INFO
63D 8 [ 03 F2 F2 F2 F2 F2 F2 F2 ] - короткое нажатие кнопки INFO
Ввиду большого количества кнопок, полный список команд перечислять тут не буду. Если, кому-то понадобится, пишите в личку – вышлю.
Зачем мне нужен был джойстик? По двум причинам. В моем Рено Колеос, экран планшета находится на достаточно некомфортном расстоянии от водителя, чтобы каждый раз тянуться до него. Особенно в движении. Проще организовать запуск часто используемых приложений с навигационного джойстика. Это не будет отвлекать от управления автомобилем.
Вторая причина не менее важная. Организовав управление планшета с джойстика, можно отключить и не выводить на экран верхнюю, служебную строку уведомления и нижнюю строку состояния с кнопками управления андроида. Тем самым существенно увеличивается полезная площадь экрана для работающего приложения и пропадает (при взгляде на экран) ощущение использования андроида.
Поделюсь своим наработками, как «подружить» Нексус 7 со штатным навигационным джойстиком Рено.
За основу взял ардуино с процессором ATmega32u4 и can-модуль на MCP2515. Плата сделана в Dip Trace.Посмотреть можно тут.
С созданием платы и изготовлением устройства сложностей быть не должно. У меня получилось с первого раза: (см. фото 2 и 3)
А вот с написанием скетча возникли проблемы. Моих, базовых, знаний в написании такой программы недостаточно. Пришлось обращаться за помощью к специалисту по программированию, отдавать ему плату. С третьего раза, скетч заработал, так, как мне требовалось. Результат записал на видео. Встроенный в авто.

Явген 14.01.2020 18:48

Хорошо получилось!)

Вопрос. Как сделал по нажатию выход навитела в меню и разделение экрана на части?

mazay66 14.01.2020 19:33

Хорошая идея, подумаю.

Явген 14.01.2020 23:47

Цитата:

Сообщение от mazay66 (Сообщение 414773)
Хорошая идея, подумаю.

В смысле?) :huh2:

mazay66 15.01.2020 20:12

Выход навитела ( и любого другого приложения) в меню - это эмуляция кнопки "меню". Разделение экрана - это эмуляция длительного удержания кнопки вызова запущенных приложений.
p.s. Сначала не понял вопроса. Думал вы спрашиваете как одновременно запустить меню навигации и второй экран.

Явген 15.01.2020 20:16

Цитата:

Сообщение от mazay66 (Сообщение 414791)
Выход навитела ( и любого другого приложения) в меню - это эмуляция кнопки "меню". Разделение экрана - это эмуляция длительного удержания кнопки вызова запущенных приложений.
p.s. Сначала не понял вопроса. Думал вы спрашиваете как одновременно запустить меню навигации и второй экран.

Теперь понял)
А не пробовал найти возможность двигать карту в навителе?

YAM1966 15.01.2020 20:21

Цитата:

Сообщение от Явген (Сообщение 414792)
Теперь понял)
А не пробовал найти возможность двигать карту в навителе?

Ну так эмулировать движение мыши с нажатием :)

mazay66 15.01.2020 20:46

Да, именно так и пробовал, на предыдущей версии резистивного джойстика. Где-то на видео, в ролике, демонстрировал перемещение карты.
Вот, по ссылке: 3мин50сек - двигаю карту яндекс навигатора. Не навител, но разницы, думаю нет.

Явген 15.01.2020 21:26

Цитата:

Сообщение от YAM1966 (Сообщение 414793)
Ну так эмулировать движение мыши с нажатием :)

Что-то я не нашел такой функции в контроллере:dntknw:


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

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