Вложений: 3
AndroidCarAudioDock - универсальное решение по USB Audio
Нашел интересный проект по подключению внешних USB-карт к устройствам с Android через платформу-посредник под управлением Embeded Linux.
На основе последней создается эмулятор док-станции c открытым кодом, поддерживающий виртуальное ALSA Loopback устройство между Андроид-системой и звуковой картой для взаимодействия по протоколу Android Open Accessory Protocol 2 (AOA2), поддержка которого должна быть у всех Андроидов от версии >= 4.1 и выше. Также допускается тонкая настройка скриптов для взаимодействия с кнопками на руле через подключение платы-посредника к CAN-шине автомобиля.
В качестве отладочной платы рекомендуется BeagleBone Black, но схема может быть реализована и на более дешевых Raspberry Pi.
Потенциально возможна организация и полноценного DSP в рамках Embeded Linux, но для этого необходимо организовать достаточное количество выходных аудиоканалов, а многоканальные USB звуковые карты либо дороги, либо недостаточно хорошо поддерживаются драйверами для Linux. Объединение нескольких USB-интерфейсов в одно виртуальное многоканальное устройство возможно с помощью плагина ALSA dmix при условии, что ядро собрано с поддержкой SysV и семафоров, что уже является "тонким местом" всех устройств на процессорах ARM ( http://www.doulos.com/knowhow/arm/Hi...ng_Semaphores/ ). Возможно, для этих целей практичнее использовать платформы Intel Galileo или Edison на процессорах x86, но достаточно глубоко эту тему не изучал. Но было бы интересно сравнить, по крайней мере в моем распоряжении есть и BeagleBone Black, и Intel Galileo, а также некоторое количество звуковых USB-карточек.
https://github.com/SquidIndustries/AndroidCarAudioDock
Перевод на русский и собственные дополнения дам по мере возможности в ближайшее время.
AndroidCarAudioDock
Вложение 729358
Software for running a USB audio dock using Android Open Accessory Protocol 2.
USB audio over AOA2 is supported on all Android devices with OS version 4.1 and up.
Current Features
- supports all Android devices with OS version 4.1 and up
- Creates alsaloop back device between Android device and sound card
- Sends Play/Pause command to device. This should cause last open APP to start playing
- Track/Play/Pause via steering wheel buttons on BMW e90. Commands are recieved via cars k-can bus (only supported on Beagebone Black)
Limitations/issues
- USB 2.0 is limited to 500mA charge current by the USB standard. Some third party kernels for Android devices have the ability to bypass this limit.
- project is a work in progress. I try to keep code in repository functional.
Installation
OS
Beaglebone Black
if on beaglebone black, use Debian 7.2 image from armf.com
I used this version
Install to device and boot up into os using these directions.
Then setup module dependancies... I had to do this, later versions may not require it.
Код:
sudo depmod -a -v "3.8.13-bone30"
Other
From this point on, these directions should work on any debian based linux installation. You may need to remove pulseaudio and install alsa if its installed though.
Update & Install Necessary Software
Update OS
Код:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
# Install git & alsa
sudo apt-get install git alsa-base alsa-utils
# Give debian user permission to use audio device.
sudo adduser debian audio
# Reboot or log out of all sessions and then log in again so new permissions take hold
sudo reboot
Install pyusb
Install AndroidCarAudioDock
Код:
cd ~/
git clone https://github.com/SquidIndustries/AndroidCarAudioDock.git
cd AndroidCarAudioDock
sudo ./install.sh
Setup CAN bus
Suggested hardware
Picture of my setup. I have cut and soldered all the cords to shorter lengths.
Вложение 729360Вложение 729362
Reference
Re: AndroidCarAudioDock - универсальное решение по USB Audio
Не стандартный подход! =)
Re: AndroidCarAudioDock - универсальное решение по USB Audio
Очень интересное решение! Дядь Саш, есть продвижения в данном направлении?
Re: AndroidCarAudioDock - универсальное решение по USB Audio
ЕВот оно почти... Еще чуть чуть и можно бутет поставить планшет вместо гу... Найти бы готовое решение по управлению планшетом с кнопок на руле, я имел ввиду без танцев с бубном...
Re: AndroidCarAudioDock - универсальное решение по USB Audio
Цитата:
Сообщение от
Pterodon Очень интересное решение! Дядь Саш, есть продвижения в данном направлении?
Поддержку AOA2 в прошлом месяце повертел в новых Kenwood, Образцы качественного минимализма. Есть ли жизнь с Android без Bluetooth в автомобиле . С ГУ управление коллекцией можно организовать удобным образом, так как одновременно идет подзарядка, с планшета не особо впечатлило Андроид-приложение. Если активно пользоваться смартфоном в качестве карманного плеера на все случаи жизни, то данная технология в самый раз, когда там уже и так хранится музыкальная коллекция файлами. Да и стоит Kenwood дешевле, чем BeagleBone, и уже идет в сборе с дисплеем, блоком питания и кнопками. Как из него сделать high-end, рассказывал SOVA: http://magnitola.org/vysshii-pilotaz...kompleksa.html
---------- Сообщение добавлено 12.05.2015 в 23:16 ----------
Цитата:
Сообщение от
Lexx69 ЕВот оно почти... Еще чуть чуть и можно бутет поставить планшет вместо гу... Найти бы готовое решение по управлению планшетом с кнопок на руле, я имел ввиду без танцев с бубном...
Вся прелесть классического ГУ - в эргономике управления. Поэтому хорошо, когда с него можно управлять планшетом. Наоборот получается хуже. Платформы на Linux, которые могут обеспечить гибкие (самообучающиеся) готовые решения для автомобильного использования - вопрос может и недалекой, но все же перспективы. Самостоятельно эту задачу под конкретный автомобиль относительно "несложно" решить на конструкторах вроде RPi (принцип программирования аналогичен примерам для BBB, приведенным вначале).
Re: AndroidCarAudioDock - универсальное решение по USB Audio
Цитата:
Сообщение от
HoSStiA Вся прелесть классического ГУ - в эргономике управления.
в том то и дело... а кнопок на руле катастрофически мало и вешать на каждую из них по 3-4 функции не вариант... хотя по сути нужно управление громкостью плеера, выбор треков и папок... это правда в расчете на непритязательного слушателя... но универсальность здесь на высоте не в ущерб остальным функциям...
---------- Сообщение добавлено 13.05.2015 в 00:18 ----------
Цитата:
Сообщение от
HoSStiA Самостоятельно эту задачу под конкретный автомобиль относительно "несложно" решить на конструкторах вроде RPi (принцип программирования аналогичен примерам для BBB, приведенным вначале).
увы, это мне "не по зубам"....
Re: AndroidCarAudioDock - универсальное решение по USB Audio
Lexx69, многие давно уже переходят на "библиотеки", т.е. индексы треков, которые можно сортировать как душе угодно - по исполнителям, по альбомам, по жанрам, по годам и пр... Это стало нербходимостью с ростом объёмов портативных накопителей, на базе которых строятся плееры. Тут простым перелистыванием папок не обойтись:(
Re: AndroidCarAudioDock - универсальное решение по USB Audio
Цитата:
Сообщение от
HoSStiA Поддержку AOA2 в прошлом месяце повертел в новых Kenwood,
Образцы качественного минимализма. Есть ли жизнь с Android без Bluetooth в автомобиле . С ГУ управление коллекцией можно организовать удобным образом, так как одновременно идет подзарядка, с планшета не особо впечатлило Андроид-приложение. Если активно пользоваться смартфоном в качестве карманного плеера на все случаи жизни, то данная технология в самый раз, когда там уже и так хранится музыкальная коллекция файлами. Да и стоит Kenwood дешевле, чем BeagleBone, и уже идет в сборе с дисплеем, блоком питания и кнопками. Как из него сделать high-end, рассказывал SOVA:
http://magnitola.org/vysshii-pilotaz...kompleksa.html
---------- Сообщение добавлено 12.05.2015 в 23:16 ----------
Вся прелесть классического ГУ - в эргономике управления. Поэтому хорошо, когда с него можно управлять планшетом. Наоборот получается хуже. Платформы на Linux, которые могут обеспечить гибкие (самообучающиеся) готовые решения для автомобильного использования - вопрос может и недалекой, но все же перспективы. Самостоятельно эту задачу под конкретный автомобиль относительно "несложно" решить на конструкторах вроде RPi (принцип программирования аналогичен примерам для BBB, приведенным вначале).
Посмотрел видео. Не понятно, а "что приборы"? Какие то циферки ....
Что касается эргономики: треки попереключать вперёд-назад, громкость крутилкой - да, ГУ эргономичный.
Но выбирать в десятках папок и сотни файлов - однострочный дисплей - не соглашусь.
Поэтому, вопросы:
1. Со смартфона можно управлять файлами на флешке в магнитоле?
2. Или звук со смартфона идёт без потерь при USB подключении и смысла флешку вставлять в магнитолу нет?