Показать сообщение отдельно
Старый 08.04.2011, 02:18   #117
tsynik
Старший Пользователь
 
Регистрация: 17.03.2011
Город: Moscow
Регион: 77, 97, 99, 177
Машина: Alfa Romeo
Сообщений: 322
tsynik has a spectacular aura abouttsynik has a spectacular aura abouttsynik has a spectacular aura about
По умолчанию

Цитата:
Сообщение от Evgeniy Посмотреть сообщение
Давай подробности про аудио с внешней картой и про OBD2.
Как экспериментальный образец выбрал мощного китайца WITS A81G. Из плюсов - экран на выбор (резистивный или ёмкостной мультитач за +50 баксов), блютус и GPS из коробки, поддержка аппаратного ускорения 3D / аудио / видео (но не всё гладко в консерватории), а также полноценный USB-интерфейс (флешки и диски монтируются автоматически прошивкой). В процессе изучения устройства выяснил, что планшет использует для работы со звуком alsa, также, даже при старте встроенного чипа стартует драйвер usb-audio (вкомпилирован в ядро). Дальше всё дело техники: подрубаю Creative SB Live 24 USB, вижу, что определилась, смотрю вывод alsa_aplay -L, там уже 2 карты. Дальше, редактируется /system/etc/asound.conf, и для блока AndroidPlayback меняется идентификатор карты 0 на 1. Также, удалил библиотеку /system/lib/hw/alsa.A81E.so и оставил только alsa.default.so, с ней почему-то несмотря на активную Creative, воспроизведение всё равно шло через встроенную карту. Теперь Creative играет, хоть по аналогу, хоть по SPDIF. Хотел сделать вывод стерео на 4 канала через alsa-плагин dmix, но его поддержки в ПО от производителя нет, надо пересобирать библиотеки. Да и пока у андроида с мультиканальностью всё плохо. Решил подключить тыл/саб с лин.выхода усилителя. Так как в большинстве андроид-систем также используется alsa - думаю и в других планшетах проблем быть не должно, если только в ядре нет поддержки USB-audio, но это обычно решаемо. Также, заказал USB DAC на PCM2704, буду курочить его на предмет вывода +5/12В для включения усилителя после инициализации драйвера. Результаты думаю будут недели через 2.

По OBDII всё также тривиально: китайский модуль ELM327 с bluetooth (взял этот, так как маленький и проверенный, пишет о себе в имени ELM 1.2A, хотя продавец говорил что 1.3B. работает на 5), соединяется с планшетом без проблем по воздуху, дальше любая из программ: OBDII Terminal (можно пообщаться с машиной на низком уровне ))), Torque (кажет большинство датчиков, предупреждает голосом о проблемах, отображает и стирает ошибки etc). Настраивается как угодно, со своими ID и математикой.

Проблемой для меня было включение планшета (кнопка питания на торце), но в старых прошивках он автоматом запускался при появлении питания. Разобрал u-boot от старой версии на атомы, в итоге зашил в него лого машины и корректное его отображение. Как результат есть рабочий загрузчик системы с автостартом при появлении питания (полная загрузка что-то около 40с). Ток потребления планшета в режиме запуска/работы около 600мА, как у лампочек габаритов, поэтому решил не париться с выключением. Будет всегда показывать панель приборов OBD к примеру. Питается 5В, для подключения в авто купил NSD10-12S5, его хватает на питание планшета и хаба с периферией (подключал 2 HDD и телефон на зарядку). Вырубаться будет жестко, отключением питания, у меня в машине +12В пропадает спустя минуты 2-5 после закрытия дверей с брелка. Думаю, ubifs во встроенном флеше на меня за это не сильно обидится.

Также, встроенный GPS был мало чувствителен, плохо искал спутники внутри машины, плюс всегда сбрасывал местоположение в 0 0 каждый раз при старте. Заказал BU-353, при подключении определяется как PL2303 и появляется в /dev/ttyUSB0. Для правильной работы выставил в нём скорость работы порта на 9600 вместо штатных 4800, и добавил в загрузочные скрипты планшета его инициализацию:

# USB GPS (hardcoded to /dev/ttyS3 in /system/lib/libwitsgps.so)
# ln -s /dev/ttyUSB0 /dev/ttyS3
# stty -F /dev/ttyUSB0 9600

и поправил путь к нему в библиотеке HEX-редактором. Теперь всё сухо, планшет думает, что работает со встроенным GPS, спутников море, фикс появляется ещё до загрузки планшета, так как BU-353 стартует при появлении питания на USB-хабе.

Сейчас дописываю на java SoftKeys, чтобы окончательно избавиться от необходимости кнопок и получить оболочку а-ля Car Home, но с доп. панелью кнопок громкости меню etc.

Вот такие дела...
tsynik вне форума