Forcer
06.11.2018, 03:16
Вступление
С момента покупки MDX в 2016 году единственное что меня расстраивало в машине, это абсолютно бесполезная штатная система навигации при наличии достаточно большого штатного монитора и его отличного положения на дашборде.
С первых дней я начал гуглить все возможные варианты по апгрейду, все что находилось на тот момент, заключалось в подключении навигаторов типа Garmin к штатному монитору. Но в 2016 году пользоваться железными навигаторами с зашитыми, трудно обновляемыми картами выглядело как стрельнуть самому себе в ногу. Варианты с CARPC на основе центрифуги или чего-то подобного мне тоже не нравились, уже был опыт в Honda Accord 2006, и это определенно не то что должно быть в машине в 2018 году. Минусы в carpc на винде для меня были следующими:
на винде не очень хороший выбор софта по навигации
нужно подключать внешний gps модуль
для обеспечения связи нужно держать телефон в режиме hotspot или держать еще одну сим карту для usb модема
залить музыку по USB, это для меня как музычку на дисках таскать
держать комп или ноутбук в машине
Логично было двигаться в сторону вариантов на Android, наличие хорошего софта для навигации и широкие возможности по кастомизации радовали.
В моем варианте на тот момент(2016) я нашел два варианта реализации подключения устройства с Android в штатный монитор с минимальным вредом для штатной проводки:
Navtool ACURA MDX 2007-2009 VIDEO INTERFACE (http://www.navtool.com/acura-mdx-2007-2009-hdmi-interface.aspx)
Модуль, позволяющий подключать внешний источник видеосигнала от Игоря (http://www.acura.pro/video_mod.html)
Попытка #1
Модуль от Navtool заработал при достаточно простом подключении, в него я воткнул через HDMI Google Chromecast, и пробовал со своего телефона транслировать изображение по WIFI. Такой подход оказался не очень хорошим. Chromcast требует подключения к WIFI для того чтобы работать, и соединение с телефоном тоже происходит посредством WIFI. А это значит что интернет с телефона раздать не получиться, пришлось возить с собой 3G роутер с WIFI. Но, как оказалось при движении между телефоном и Chromecast все время терялась связь по WIFI, так и не успев разобраться как это побороть, модуль от Navtool перестал работать. Видимо из-за того что на нем гордо написано Made in USA, а в какой то момент он осознал что находиться в Украине, и не пережил расставания с родиной. :big:
http://pccar.ru/attachment.php?attachmentid=50431&stc=1&d=1541458570
После этого я забил на это дело на некоторое время, после чего наткнулся на вариант от Игоря, и руки снова зачесались...
Попытка #2
Модуль от Acura PRO Игоря, он же известен как SEM, позволяет подключиться так же как и модуль от Navtool, к блоку навигации под водительским сидением "разъем в разъем" дает некоторые преимущества: автонажатие кнопки Ok, для того чтобы штатный монитор не вырубался через 10 секунд после старта, USB HID интерфейс, который можно подключить к телефону через OTG, и пользоваться штатным джойстиком как мышкой. Из недостатков: видеовход в виде композитного видео, которое должно быть в формате NTSC. Пришлось подключить HDMI->RCA конвертор чтобы снова иметь в наличии HDMI вход.
В него на сей раз я подключил Google Nexus 5 через MHL шнурок, и через OTG подключил штатный джойстик в роли мышки для того чтобы не приходилось все время брать телефон в руки. Минусов у данного подхода тоже очень много, нужно постоянно держать включенным дисплей телефона, если спрятать его в центральный ящик, то он переставал ловить GPS сигнал, телефон на постоянной зарядке и включенным дисплеем греется, был вопрос по автоматизации включения и т.д. На этом этапе я понял что идея бредовая, где-то так же выглядит для меня идея с планшетом вместо штатного монитора.
После очередных гуглений я нашел следующий вариант...
Попытка #3
Google достаточно давно разрабатывает Android Auto, но интегрирован он к сожалению только в самые свежие машины, а с недавних времен потрогать его можно и на любом относительно свежем телефоне с Android, но в таком виде, по моему мнению, он абсолютно бесполезен, он только ограничивает функционал телефона, а не расширяет его. С точки зрения безопасности все правильно, но мы то находимся на форуме про кастомные разработки мультимедиа для автомобилей. :wink2:
В начале 2018 года появилась опенсорсная библиотека aasdk (https://github.com/f1xpl/aasdk), которая позволяла эмулировать Android Auto, позже появилась готовая для использования реализация openauto (https://github.com/f1xpl/openauto), а еще позже, решение для ленивых: Crankshaft (http://getcrankshaft.com/). Именно последнее решение спровоцировало меня достать запылившийся Raspberry Pi 3 и установить на него Crankshaft. После коротких тестов решение мне очень понравилось, это именно то что должно представлять из себя Carpc для апгрейда старых автомобилей.
http://pccar.ru/attachment.php?attachmentid=50432&stc=1&d=1541458973
http://pccar.ru/attachment.php?attachmentid=50433&stc=1&d=1541458973
http://pccar.ru/attachment.php?attachmentid=50434&stc=1&d=1541458973
Сразу появился вопрос как управлять устройством, которое рассчитано на управление через тачскрин в машине без тачскрина. :shok: Вспомнив что модуль от Игоря умеет прикидываться HID мышкой и имея на борту Raspberry полноценную Linux подобную ОС, решил немного схитрить, и программно замапил с помощью xbindkeys нажатия кнопок мышки в нажатия кнопок клавиатуры, Crankshaft поддерживает некоторый набор хоткеев, который позволяют эффективно управлять практически всеми действиями в Android Auto, таким образом я получил почти полноценное управление посредством штатных железяк в виде джойстика и кнопок вокруг. К сожалению кнопок у нашего hid устройства всего 5, их не хватает на все хоткеи которые хотелось бы использовать. Самих штатных кнопок на штатном блоке навигации более чем достаточно, но Игорь сказал что больше к сожалению настроить через его модуль не получиться. Собственно реализация в таком виде вполне жизнеспособна, но тут случайно нашелся Простой USB HID контроллер 4-й версии под Windows или Android/Linux (http://pccar.ru/showthread.php?t=20460) и понимаешь что пора приступать к следующему этапу...:wacko2:
С момента покупки MDX в 2016 году единственное что меня расстраивало в машине, это абсолютно бесполезная штатная система навигации при наличии достаточно большого штатного монитора и его отличного положения на дашборде.
С первых дней я начал гуглить все возможные варианты по апгрейду, все что находилось на тот момент, заключалось в подключении навигаторов типа Garmin к штатному монитору. Но в 2016 году пользоваться железными навигаторами с зашитыми, трудно обновляемыми картами выглядело как стрельнуть самому себе в ногу. Варианты с CARPC на основе центрифуги или чего-то подобного мне тоже не нравились, уже был опыт в Honda Accord 2006, и это определенно не то что должно быть в машине в 2018 году. Минусы в carpc на винде для меня были следующими:
на винде не очень хороший выбор софта по навигации
нужно подключать внешний gps модуль
для обеспечения связи нужно держать телефон в режиме hotspot или держать еще одну сим карту для usb модема
залить музыку по USB, это для меня как музычку на дисках таскать
держать комп или ноутбук в машине
Логично было двигаться в сторону вариантов на Android, наличие хорошего софта для навигации и широкие возможности по кастомизации радовали.
В моем варианте на тот момент(2016) я нашел два варианта реализации подключения устройства с Android в штатный монитор с минимальным вредом для штатной проводки:
Navtool ACURA MDX 2007-2009 VIDEO INTERFACE (http://www.navtool.com/acura-mdx-2007-2009-hdmi-interface.aspx)
Модуль, позволяющий подключать внешний источник видеосигнала от Игоря (http://www.acura.pro/video_mod.html)
Попытка #1
Модуль от Navtool заработал при достаточно простом подключении, в него я воткнул через HDMI Google Chromecast, и пробовал со своего телефона транслировать изображение по WIFI. Такой подход оказался не очень хорошим. Chromcast требует подключения к WIFI для того чтобы работать, и соединение с телефоном тоже происходит посредством WIFI. А это значит что интернет с телефона раздать не получиться, пришлось возить с собой 3G роутер с WIFI. Но, как оказалось при движении между телефоном и Chromecast все время терялась связь по WIFI, так и не успев разобраться как это побороть, модуль от Navtool перестал работать. Видимо из-за того что на нем гордо написано Made in USA, а в какой то момент он осознал что находиться в Украине, и не пережил расставания с родиной. :big:
http://pccar.ru/attachment.php?attachmentid=50431&stc=1&d=1541458570
После этого я забил на это дело на некоторое время, после чего наткнулся на вариант от Игоря, и руки снова зачесались...
Попытка #2
Модуль от Acura PRO Игоря, он же известен как SEM, позволяет подключиться так же как и модуль от Navtool, к блоку навигации под водительским сидением "разъем в разъем" дает некоторые преимущества: автонажатие кнопки Ok, для того чтобы штатный монитор не вырубался через 10 секунд после старта, USB HID интерфейс, который можно подключить к телефону через OTG, и пользоваться штатным джойстиком как мышкой. Из недостатков: видеовход в виде композитного видео, которое должно быть в формате NTSC. Пришлось подключить HDMI->RCA конвертор чтобы снова иметь в наличии HDMI вход.
В него на сей раз я подключил Google Nexus 5 через MHL шнурок, и через OTG подключил штатный джойстик в роли мышки для того чтобы не приходилось все время брать телефон в руки. Минусов у данного подхода тоже очень много, нужно постоянно держать включенным дисплей телефона, если спрятать его в центральный ящик, то он переставал ловить GPS сигнал, телефон на постоянной зарядке и включенным дисплеем греется, был вопрос по автоматизации включения и т.д. На этом этапе я понял что идея бредовая, где-то так же выглядит для меня идея с планшетом вместо штатного монитора.
После очередных гуглений я нашел следующий вариант...
Попытка #3
Google достаточно давно разрабатывает Android Auto, но интегрирован он к сожалению только в самые свежие машины, а с недавних времен потрогать его можно и на любом относительно свежем телефоне с Android, но в таком виде, по моему мнению, он абсолютно бесполезен, он только ограничивает функционал телефона, а не расширяет его. С точки зрения безопасности все правильно, но мы то находимся на форуме про кастомные разработки мультимедиа для автомобилей. :wink2:
В начале 2018 года появилась опенсорсная библиотека aasdk (https://github.com/f1xpl/aasdk), которая позволяла эмулировать Android Auto, позже появилась готовая для использования реализация openauto (https://github.com/f1xpl/openauto), а еще позже, решение для ленивых: Crankshaft (http://getcrankshaft.com/). Именно последнее решение спровоцировало меня достать запылившийся Raspberry Pi 3 и установить на него Crankshaft. После коротких тестов решение мне очень понравилось, это именно то что должно представлять из себя Carpc для апгрейда старых автомобилей.
http://pccar.ru/attachment.php?attachmentid=50432&stc=1&d=1541458973
http://pccar.ru/attachment.php?attachmentid=50433&stc=1&d=1541458973
http://pccar.ru/attachment.php?attachmentid=50434&stc=1&d=1541458973
Сразу появился вопрос как управлять устройством, которое рассчитано на управление через тачскрин в машине без тачскрина. :shok: Вспомнив что модуль от Игоря умеет прикидываться HID мышкой и имея на борту Raspberry полноценную Linux подобную ОС, решил немного схитрить, и программно замапил с помощью xbindkeys нажатия кнопок мышки в нажатия кнопок клавиатуры, Crankshaft поддерживает некоторый набор хоткеев, который позволяют эффективно управлять практически всеми действиями в Android Auto, таким образом я получил почти полноценное управление посредством штатных железяк в виде джойстика и кнопок вокруг. К сожалению кнопок у нашего hid устройства всего 5, их не хватает на все хоткеи которые хотелось бы использовать. Самих штатных кнопок на штатном блоке навигации более чем достаточно, но Игорь сказал что больше к сожалению настроить через его модуль не получиться. Собственно реализация в таком виде вполне жизнеспособна, но тут случайно нашелся Простой USB HID контроллер 4-й версии под Windows или Android/Linux (http://pccar.ru/showthread.php?t=20460) и понимаешь что пора приступать к следующему этапу...:wacko2: