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

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Проекты (http://pccar.ru/forumdisplay.php?f=21)
-   -   Ford Focus II AndroidCar (http://pccar.ru/showthread.php?t=19903)

Sangreal 14.11.2013 17:41

Ford Focus II AndroidCar
 
Вложений: 1
Начну создавать свой рабочий журнал.

Авто: Ford Focus II 2007 г.р. 1.8л 125л.с. механика.
http://cs403726.userapi.com/v4037261...6IIv5EXCqg.jpg
http://www.caraudio-service.ru/publi...FF2_eu_enl.jpg

Что хотелось получить: https://vk.com/images/emoji/2714.png https://vk.com/images/emoji/26A0.png http://vk.com/images/emoji/274C.png
https://vk.com/images/emoji/2714.png большой сенсорный экран 7-8"
https://vk.com/images/emoji/2714.png музыка с флешки
https://vk.com/images/emoji/2714.png камера заднего вида
https://vk.com/images/emoji/2714.png навигация GPS
https://vk.com/images/emoji/2714.png возможность установки Яндекс.Карт (удобное приложение, часто пользуюсь) - перешел на Яндекс.Навигатор - красивее, удобнее. +Navitel на дальние поездки. А также OpenStreetMap (OSM Android).
https://vk.com/images/emoji/2714.png сохранить управление кнопками на руле (!!)
https://vk.com/images/emoji/26A0.png громкая связь по телефону (через bluetooth)
https://vk.com/images/emoji/2714.png интернет через сотовую сеть (для загрузки пробок)
https://vk.com/images/emoji/2714.png бонусом: отображение параметров работы двигателя

Анализ доступных возможностей и окончательный выбор:
В общем-то, вариантов было не очень много:
1) Pioneer DEH-P80RS + Apple iPad Mini
Данный пионер имеет на борту bluetooth, очень неплохие настройки звука (в т.ч. процессор), поддерживает работу с Apple-устройствами (по своему протоколу, не в виде флешки) и нарульными кнопками. iPad Mini имеет на борту все необходимые средства коммуникации - Wi-Fi, 3G, GPS, куча приложений. Однако изображение с камеры малой кровью получить не удастся, придется ставить отдельный небольшой мониторчик над зеркалом заднего вида. Ну и цена на iPad все же кусается (~20т.р. с модулем 3G). Да и размер экрана у него - 7,9" - пришлось бы что-то выдумывать с рамкой. Отказался
2) Pioneer DEH-P80RS + Google Nexus 7
Очень похоже на первый вариант. Мне Андроид ближе по духу, нежели устройства от Apple, поэтому приложения из Гугл.Плей это плюс. Минусы - пионер не поддерживает работу с Андроидом, максимум будет видеть как флешку. А значит, для передачи звука придется использовать Line-In (линейный вход), что лишает нас возможности управления нарульными кнопками.
У вариантов 1 и 2 еще один общий минус - низкие температуры зимой. У нас достигают -40 градусов. Не ясно, как себя в таких условиях будут чувствовать аккумулятор и емкостной дисплей.
3) Parrot ASTEROID Smart
Головное устройство от малоизвестного производителя, с андроидом на борту. Имеет неплохие отзывы на Я.Маркете, оставляет впечатление продуманного устройства. Что остановило: Андроид версии 2.3, и для таких устройств вряд ли стоит ждать обновлений. Относительно низкая мощность железа: одноядерный процессор 800МГц, 512мб оперативной памяти. Невозможность установки приложений из Гугл Плей (однако с лихвой компенсируется Яндекс Store и установкой APK с флешки). относительно маленький экран - 6.2"
4) Pioneer SPH-DA100 + Android TV Box
Вариант, который показался мне наиболее приемлемым, и на котором я в итоге остановился. Плюсов масса: можно выбрать любой "свисток", по стоимости и мощности. GPS-координаты ловятся Пионером (внешняя антенна, прием очень хороший) и передаются от ГУ к свистку через Bluetooth. Громкая связь и камера заднего вида - ложится на плечи ГУ. Сохраняем возможность управления кнопками на руле, даже в андроиде (!).

Состав системы:
- Г.У. Pioneer SPH-DA100 (емкостной экран 7", GPS, Bluetooth, HDMI, радио). Умеет работать с iPhone и Android смартфонами, в том числе отображать полный дубль экрана
http://www.pioneer-rus.ru/images/pro...detailpage.jpg
- Android TV Box Tronsmart MK908 (он же "свисток") - Android 4.2 Jelly Bean, Cortex A9 Rk3188 Quad Core CPU, Quad Core Mali 400 GPU, 2GB DDR3 RAM, 8GB NAND FLASH ROM.
http://image1.geekbuying.com/make_pi...074q68e977.jpg
- беспроводная мини мышка/клавиатура Tronsmart TSM-01 с русскими символами
http://image1.geekbuying.com/make_pi...30and45bg7.JPG
- компактный OBD2 Bluetooth адаптер для считывания параметров работы двигателя
- камера заднего вида
- адаптер кнопок на руле Zexma MFD207UN-DIP - универсальный, подходит практически ко всем автомобилям и магнитолам
- дополнительно: переходник на панель для установки 2DIN магнитолы, переходник для радиоантенны, море разнообразных hdmi-переходников (заказывались "на вский случай"), внешний аккумулятор для питания свистка на постоянку - отказался.

Пояснения:
Головное устройство Pioneer SPH-DA100 умеет работать с устройствами Apple и телефонами/свистками на базе Android. Изначально ГУ "понимает" только те приложения, которые были одобрены компанией Pioneer и находятся в ихнем репозитории (можно устанавливать в телефон прямо с экрана устройства). Однако после установки на андроид-телефон некоторого софта (ARLiberator или ARU) можно получить полный дубль экрана смартфона. Как если бы в панель был встроен планшет на 7".

Соединение осуществляется через кабель: для айфона/айпада он уже идет в комплекте, для андроида - нужен кабель HDMI. Через кабель передается изображение и звук. Если использовать не "свисток" (у которого hdmi в базе), а телефон - то он обязательно должен поддерживать технологию hdmi/hdr. Координаты нажатия на экран передаются от ГУ к устройству через bluetooth, также как и координаты GPS (на устройстве должна быть включена опция эмулирования местоположения) и параметры двигателя от OBD2 адаптера. Интернет будем получать через Wi-Fi - от стационарной точки доступа или основного мобильного телефона, который тоже на андроиде и может раздавать свой интернет через Wi-Fi - т.е. фактически работать в режиме точки доступа.

На данный момент в автомобиль установлено ГУ, в Поднебесной заказан свисток, мышка-клавиатура, OBD2 адаптер - все должно приехать под новый год. После приезда пойдет процесс установки и настройки софта.

UPD. 26.11.2013 Забрал с почты свисток и мышку-клавиатуру. Очень быстро приехало, всего 2 недели. Почта России удивила.

Все установлено в машину и работает:

Вложение 34375

Вопросы, подлежащие решению:
- питание свистка
т.к. у устройства нет своего аккумулятора, придется что-то придумывать с питанием. На первое время - кабель зарядки по ACC, однако в этом случае получим долгое время загрузки (порядка полутора минут). В будущем - отдельный аккумулятор с контроллером (?) отключения питания через заданное время (например сутки), а также софтварное выключение свистка после пропадания коннекта с ГУ (например через 20 часов) - чтобы был запас между софтварным "корректным" отключением и жестким обрубанием питания.
- настройка софта и внешнего вида
делать это можно бесконечно, но уже вырисовалась определенная схема, которую пока менять не планируется.
- окончательно разобраться с мультипоинтом
Пионер не обладает интуитивно понятной схемой действий для установки Bluetooth соединения с несколькими устройствами. Будем пытаться победить.

Ссылки:
Обсуждение связки на pccar.ru
Интересный топик на 4pda.ru, в основном по MirrorLink, но и про нашу связку много чего написано.
Еще один интересный вариант комплектации - Google Nexus 7 + Pioneer DEH-X8500BT. Имеем отличный экран, тач без тормозов, передача звука с планшета на ГУ по Bluetooth через профиль A2DP (как следствие - перелистывание треков джойстиком ГУ и подрулевым), делегирование функции Hands-Free магнитоле (надеюсь с мультипоинтом проблем нет), большое комьюнити по планшету (4pda) и очень объемная ветка на этом форуме. Из минусов - придется лезть внутрь планшета, выпаивать батарею, подводить внешнее питание и т.д. Придется забыть о камере заднего вида. Нужно искать на панели доп. место 1din, в дополнение к 2din - куда станет планшет.

Sangreal 14.11.2013 17:46

Программная часть

Вчера потратил вечер на изучение форумов на предмет софта для спаривания пионера и андроида. Итак: для передачи данных есть две программы (родное AppRadio не считаем), для корректной работы требуется root на андроид-устройстве (на свистках он изначально должен быть, просто ставим приложение SuperSU - оно будет предоставлять другим приложениям права суперпользователя):
1) ARLiberator - платная (~1000 рублей), найти и купить можно на Google Play (там же можно найти сайт разработчика). Здесь можно взять бесплатно версию 3.01 :rolleyes2: По идее передает андроиду координаты касаний тача, GPS-координаты, и вроде как нажатия кнопок на руле. На всех версиях есть вероятность словить глюк с тачскрином на свистках, решение здесь (у самого свисток, но пока не подключал и не разбирался). И еще одна ссылка на XDA. К сожаленияю, автор достаточно упорот и в последнее время игнорит пользователей.

2) ARU (AppRadio Unchained) - бесплатная софтина, передает андроиду координаты нажатия на экран (с третьей пре-беты - и кнопки на руле). Особенность ее в том, что пишется она не с нуля, а за основу берется офф. приложение AppRadio от Pioneer и в него уже вносятся модификации. Скачать можно здесь. Для свистков - своя версия, искать в недрах XDA или скачать версию 0.14 отсюда или с исправлением вылета калибровки тача - отсюда. Программа постоянно развивается, автор не забивает на поддержку. Не передает координаты GPS - для этого есть отдельное приложение от того же автора на Гугл Плей - ARUnchained GPS Injector, платное - ~230 рублей.

Я остановился на втором варианте. После покупки ARUnchained GPS Injector прекрасно заработало.

Прошивка свистка - Finless 1.6a. В качестве оболочки использую Holo Launcher HD (и на свистке, и на телефоне).

Также понадобится приложение для изменения выходного разрешения на свистке, т.к. HD на экране 7" выглядит, мягко говоря, мелко :big: Для этого спользуем фреймворк Xposed, с помощью которого можно изменить DPI для каждого приложения отдельно (по умолчанию везде 160dpi, оптимальное значение для многих приложений - 240dpi).

Возможны проблемы с автоконнектом к ГУ по bluetooth после загрузки свистка - если словите, то поможет приложение Tasker. Вообще очень мощная софтина, рекомендую к обязательной установке и ознакомлению. У меня она, например, при загрузке системы выставляет на максимум системную громкость, включает проигрывание музыки и запускает навигацию.

Некоторые приложения из Гугл Плей могут не устанавливаться, вроде как устройство не поддерживается. В этом случае используем buildprop - для того, чтобы устройство выдавало себя не за того, кем является, а например за Google Nexus 5 или Samsung Galaxy S3. Во многих кастомных прошивках этот момент учтен - например, в Finless 1.6a и выше.

Питание свистка решил сделать постоянным, чтобы не ждать каждый раз минуту, пока будет загружаться свисток. Для этого был заказан отдельный 5v аккумулятор на 5200mAh - отказался, т.к. аккум не пережил даже минимальных морозов в -5.

Аудио-плеер - купил на маркете PowerAMP. Отличный плеер, и всего за 80 рублей :)

Аппаратная часть

Сервис-меню для пионера:
Цитата:

Сообщение от and185 (Сообщение 273791)
Посмотреть прошивку можно и через сервис меню. Но я смог зайти только в информационные и тестов. Заходил так, отключаем питание и нажимаем центральную кнопку плюс любую другую. Включаем питание. В принципе на разных кнопках разные меню появляются. Чтоб листать нажимаем прям на стрелочки на экране. Там кстати и калибровка тача была, если кому вдруг понадобится.
http://pccar.ru/showpost.php?p=273791&postcount=191

Коннект пионера со свистком и телефоном одновременно:

Цитата:

Сообщение от macau (Сообщение 274499)
насчет мультипоинта: делается немного криво и нелогично, но работает.
спариваем мобилу и пионер, отключаем бт в телефоне
спариваем ондроед и пионер
запускаем аппрадио-мод, когда девайсы снюхаются, включаем бт на телефоне, ждем когда он снюхается с пионером
при этом в ондроеде бт-коннект какбы пропадает, но при этом тач исправно отдает нажатия
получаем профит

Цитата:

Сообщение от RipZ (Сообщение 279853)
ЗЫ. к вопросу про сочленение mk809 по кариесу и телефона для громкой связи. сегодня удалось повторить сочленение ГУ со свистком и телефоном для громкой (кому интересен начальный ман - отматываем десяток страниц взад на ман от macau). процесс применим к 2 случаям. значит так. применимо к случаю когда свисток висит на независимом питании и постоянно работает. во всех случаях должен быть вдобавок к естественно спареным ГУ со свистком еще и телефон с ГУ.
1 случай. гасим зажигание. свисток работает. кареес на телефоне выключен. в парингах ГУ есть 2 устройства - телефон и свисток. включаем зажигание. ГУ стартует. ничего не трогаем, остаемся на экране с варнингом. ждем когда произойдет коннект ГУ со свистком, слышим писк из пищалки ГУ. это в идеальном случае. нажимаем на ОК. попадаем в главное менюю ГУ. значек AppMode (ведройд) в идеале разукрашен зеленым цветом. это отлично. включаем кареес на телефоне и топаем в настройки парингов ГУ. ставим галку на паринге с телефоном. профит. телефон спаривается с ГУ и можно юзать голос. нажимаем на зеленого ведройда, далее игнорируем варнинг о подключении, тапаем по экрану, лицезрея перечеркнутый палец. через некоторое время произойдет реконнект ару и тач будет работать. входящие-исходящие с телефона работают как надо. этот вариант претендует на 70% успех (у меня).

2 вариант. ситуация аналогична первой, но случай тот что свисток спарен с ГУ и вы находитесь в ланчере свистка. тач и все остальное работает. включаем кареес на телефоне, но (!!!) в главное меню ГУ выйти невозможно, не запустив сам ару и не попав в его главное меню, только из которого при нажатии центральной хардварной кнопки можно выйти в меню ГУ. выходим. спариваем там телефон и ГУ. звонки работают. вернуться в ланчер свистка можно нажав на белого ведройда и проигнорировав варнинг про подключение. вот здесь мне удавалось 1 раз из 10 улицезреть автоконнект свистка к ГУ и продолжение нормальной работы всего комплекса. 9/10 попыток этого способа никчему не приводили. видимо когда ару находится в своем главном меню существуют какието непонятки с автоподключением к бошке.

резюме. на данный момент юзабелен только первый способ. второй способ в стадии курения логкэта и выяснение причины отсутствия реконнекта. кто повторит вышенаписанное - отпишитесь как ведет у вас вся эта связка.

Цитата:

Сообщение от _Lexus (Сообщение 279870)
RipZ, любая инструкция, содержащая слова "идем в меню" и "нажимаем" не состоятельна.
Я могу простить пионеру только первое окошко с предупреждением - и все! Дальше только руль, рычаг кпп и полностью работающая медия.
Я уже писАл (может немного не понятно), что в режиме загружающегося свистка достаточно программно (бт автоконнект) спарить смарт с головой до загрузки свистка и все будет работать. Если момент упущен и в громкой связи фигурирует название не смарта, а свистка, тогда да - идем в меню.
В режиме с постоянно работающим свистком можно в помощь взять wi-fi.
И создать набор правил, например: при подключении смарта к гу, включать на нем хотспот, на свистке при подключении к конкретной сети гасить секунд на 10-15 бт и за это время автоконнектом попытаться зацепить смарт на громкую связь. Свисток потом подключится и тач должен заработать. Хотспот можно потом загасить, если интернет получается через 3G модем.
Блин, все нет времени оформиться в проектах и расписать всю эту машинерию.

П.С. А насколько честно будет, если я куплю "правильный" софт на свою гуглоучетку, а на свистке буду пользовать ломанную лаки патчером? Ну ни разу у меня нет желания цеплять свисток на свою учетку, случится может всякое, а разбрасываться своими личными данными не хочется. У некоторых еще и гуглокошельки прикручены.

Цитата:

Сообщение от LeonGmn (Сообщение 283225)
Автоматический коннект работает у меня следующим образом
Завожу авто - включается ГУ и свисток - телефон в кармане с включенным блютуз автоматически коннектится к ГУ первым - загружается свисток - значек андроида серого цвета, кликаешь по нему и касаешься экрана выскакивает рука красного цвета а через пару секунд автоматом цепляется блютуз свистка и тач начинает работать.
В итоге телефон подключен первым для голосовой связи, свисток вторым

Включение/выключение bluetooth на свистке при включении/выключении ГУ (для инициации коннекта со стороны свистка):
Цитата:

Сообщение от macau (Сообщение 289853)
короч механизм такой:
профиль: файл изменен: /sys/class/display/display.HDMI.0/connect (вместо display.HDMI.0 может быть display.HDMI.1 или вообще все что угодно, зависит от свистка)
задача: 1. прочитать файл /sys/class/display/display.HDMI.0/connect в переменную %HDMI
2. если переменная %HDMI=1 то:
ждем 4 секунды
включаем бт
конец если
3. если переменная %HDMI=0 то:
ждем 5 секунд (чтоб небыло ложных срабатываний при плохом контакте хдми)
выключаем бт
конец если
проверял несколько раз-все отрабатывает. неотдачу тача поймть не удалось

Цитата:

Сообщение от worn (Сообщение 291682)
Файл /sys/class/display/display.HDMI.0/connect изменяется только при включении устройства. Файл enable обновляется при включении HDMI.
Прописав в таскере: /sys/class/display/display.HDMI.0/enable, включить блютуз получилось, но вот выключения не происходит.


Sangreal 14.11.2013 17:49

Вложений: 15
Изготовление универсального джойстика управления

Мне всегда нравились лаконичные и простые интерфейсы управления, вроде iDrive у BMW, и всегда хотелось сделать что-то подобное. Приступим.

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

Основой является плата Arduino Pro Micro, имеющая сверхкомпактный размер, порт micro-usb для питания и передачи сигналов, и умеющая "прикидываться" медиа-клавиатурой. Также мне понадобился хитрый джойстик: Alps RKJXT1F42001, который умеет наклоняться вверх, вниз, влево и вправо; имеет центральную кнопку; совмещен с энкодером (может вращаться влево/вправо). Именно он стоит во многих магнитолах вроде Pioneer и Alpine. Оба компонента были куплены на радиорынке. Там же было приобретено несколько компактных корпусов, пара ручек-крутилок, провода ("лапша") и пара конденсаторов для схемы.

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

Вложение 35330Вложение 35331

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

Вложение 35332Вложение 35333

К джойстику в соответствии со схемой распиновки были припаяны провода и два конденсатора (для устранения дребезга при кручении энкодера). В ардуино был залит поправленный скетч. Готовый разобранный комплект перед установкой:

Вложение 35334

Идем в машину, примеряемся к небольшой нише между передними сидениями:

Вложение 35335

Убираем резиновый коврик (в случае продажи автомобиля он вернется на место и закроет ненужные дырки):

Вложение 35336

Сверлим два маленьких отверстия под саморезы, и широкую прорезь - под шлейф:

Вложение 35337

Крепим нижнюю часть корпуса. Держится мертво!

Вложение 35338Вложение 35339

Через совмещенные прорези прокидываем шлейф под центральный тоннель:

Вложение 35340

Крепим с помощью двух болтов верхнюю часть корпуса с джойстиком:

Вложение 35341

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

Вложение 35342

Готово, окончательный вид джойстика после инсталляции:

Вложение 35343

Схема работы:

джойстик вверх: ___вверх
джойстик вниз: ____вниз
джойстик влево: ___PrevTrack
джойстик вправо: __NextTrack
кнопка джойстика: _Play/Pause
энкодер влево: ___..Vol-
энкодер вправо: __..Vol+

долгое нажатие вверх: __Home Screen
долгое нажатие вниз: ___Menu
долгое нажатие влево: __не используется
долгое нажатие вправо: _не используется
долгое нажатие кнопки: _Enter

кнопка нажата + энкодер влево: __не используется
кнопка нажата + энкодер вправо: _Alt+Tab

Схема не окончательная и скорее всего будет меняться. Ссылка на скетч: Вложение 35348. Буду рад выслушать критику и пожелания.

Migustas 29.11.2013 01:02

Цитата:

- Android TV Box Tronsmart MK908 (он же "свисток") - Android 4.2 Jelly Bean, Cortex A9 Rk3188 Quad Core CPU, Quad Core Mali 400 GPU, 2GB DDR3 RAM, 8GB NAND FLASH ROM.
что это за зверь и для чего? смущает надпись TV Box

Sangreal 29.11.2013 13:05

Цитата:

Сообщение от Migustas (Сообщение 278936)
что это за зверь и для чего? смущает надпись TV Box

Так вы описание почитайте. Это тв-приставка, которая подключается через HDMI (по которому передается изображение и звук), на базе ОС Андроид. Подключается к любому экрану с HDMI - в том числе и к пионеру озвученной модели.

Gorynch 29.11.2013 13:26

на счёт доп питания - зачем? загрузка свистка не более минуты (у самого похожий). Можно поставить реле времени (или мелкий контроллер), чтобы отключение происходило через N минут/часов для коротких остановок.

Migustas 29.11.2013 19:14

Цитата:

Сообщение от Sangreal (Сообщение 278978)
Так вы описание почитайте. Это тв-приставка, которая подключается через HDMI (по которому передается изображение и звук), на базе ОС Андроид. Подключается к любому экрану с HDMI - в том числе и к пионеру озвученной модели.

значит я правильно понял, просто хотел убедиться, а то смутила надпись ТВ

macau 12.12.2013 10:35

а у твоего фокуса есть джой подрулевой для штатной головы? я себе добыл, перепаиваю резисторы: http://ffclub.ru/topic/140820/jump_9640/#entry8287903

imenkv 22.12.2013 23:11

Добрый день.
У меня pioneer da110, я так понимаю принципиально от Вашего ничем не отличается.
Задумался о покупке свистка, в связи с чем есть вопросы:

1. Как происходит коннект с ГУ, через hdmi? Если да, то какие шнуры надо дополнительно мне купить?

2. И не совсем понятно как запускать софт для коннекта на свистке? На тф я сперва запускаю софт, а только потом тф определяется на ГУ

3. И не совсем понял про питание, ведь при подключении через миниюсб к ГУ происходит заряд?

Заранее спасибо за ответ)

Sangreal 13.01.2014 17:38

Цитата:

Сообщение от macau (Сообщение 280452)
а у твоего фокуса есть джой подрулевой для штатной головы? я себе добыл, перепаиваю резисторы: http://ffclub.ru/topic/140820/jump_9640/#entry8287903

Подрулевые переключатели присутствуют, подружил их с пионером через адаптер Zexma MFD207UN-DIP. С разисторами не стал морочиться, чтобы сохранить возможность быстрого перехода обратно на штатную магнитолу - например, в случае продажи авто.


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

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