Показать сообщение отдельно
Старый 07.12.2014, 17:23   #1
alexnf
Старший Пользователь
 
Регистрация: 07.04.2013
Регион: Беларусь
Машина: Opel Insignia
Сообщений: 112
alexnf will become famous soon enoughalexnf will become famous soon enough
По умолчанию Opel Insignia Nexus 7 3g 2012

Новый проект.
Многие вещи на форуме подробно не описываются, тк для имеющих опыт работы - уже стали как само собой разумеющееся, но для тех кто это видит в первый раз, представляют возможно даже основные трудности.
Поиском пользоваться тоже не очень хороший вариант, тк ветки очень замусорены, а шапки не обновляются. Поэтому для себя, а возможно и для других буду собирать сюда ссылки и расписывать все подробно, тк даже сам по прошествии полу года иногда смотрю в то что делал, как в первый раз и приходится все изучать чуть ли не заново.

Вопросы пока можете мне не задавать, тк большим специалистом себя не считаю и боюсь не верно подсказать. А вот если есть замечания к моему проекту - то буду очень рад их услышать!

Цели в новом проекте:
1. Стабильная работа без вмешательства из вне.
2. Максимально простая внешняя часть, по возможности готовыми устройствами, без необходимости их программировать, и возможности свободно купить.
3. Надежная работа навигации.
4. Камера ЗХ, если будет стабильно работать. Пока и пытаться не буду.
5. Подключение к CAN шине для считывания данных работы двигателя и управления планшетом кнопками с руля. (Вот тут человек добился значительных успехов в данном направлении, обещал делиться, ждем. Вот он и на этом форуме )


Итак:
1. Установка
Планшет встраивается вместо, или вернее вместе со штатным ГУ CD300
Нажмите на изображение для увеличения
Название: Opel-Insignia-CD300.jpg
Просмотров: 1949
Размер:	109.4 Кб
ID:	43834
Ранее уже делал аналогичный в такой же машине на Nexus 7 Wi-fi, стояла прошивка тимура, а так-же был у меня и изикап и флешка и вебкамеру подключал. Глюков было полно, приходилось с ними бороться, что то получилось (перешел с управления включением по ОТГ на HallSensor), что-то нет (стабильности от Изикапа с Каркамом так и не добился, в итоге выкинул на ...).
Из полученного опыта сделал для себя вывод, что максимум задач должно по возможности решаться штатными средствами, те прошивка - сток, вкл/выкл - Hall Sensor, управление процессами при помощи таскера, и тп.


Почему Nexus 3g 2012:
2012 - так как очень мне понравился, плюс уже много чего по нему изучил, плюс большая база знаний на форуме, плюс дешевле найти донора в случае выхода из строя. Производительности вроде как хватало, прошивку 5.0 вроде обещают так зачем платить больше
Выбирал 3g - тк нужен инет для интернет-радио, виджетов погоды и прочих потребностей, модем с wifi версией стабильно работать так и не получилось, а раздавать с телефона тоже надоело.


Планшет будет встроен в панель, но максимально штатно без "колхоза", поэтому приобрел рамку от оригинального экрана штатной навигации. Рамка в оригинале стоила около 80$, но удалось найти ее на разборке на Польском аукционе Allegro.pl, посредника для доставки нашел на родном Белорусском форуме Onliner.by. в итоге после 3-х недель ожидания рамка у меня - суммарные затраты 42$.
Хоть и весь экран планшета в рамку не помещается - я не стал че-то распиливать и расширять, тк уверен все равно красиво не получится. Рамки достаточно что бы увидеть основной экран без нижней панели кнопок. Кнопки будут реализованы иначе, но об этом позже.
Сам планшет также приобретен на барахолке Onliner.by за 160$ - новый в родной упаковке, даже еще не вскрытой до меня, и с гарантией.
Для встраивания планшета в рамку пришлось подрезать некоторые элементы рамки (внутри) и вклеить крепления (фото позже)

Вот как он выглядел в предыдущей машине:
Нажмите на изображение для увеличения
Название: navi.jpg
Просмотров: 1202
Размер:	78.6 Кб
ID:	43835

А вот изикап в работе (жаль работал только не часто)
Нажмите на изображение для увеличения
Название: RearCam.jpg
Просмотров: 1126
Размер:	82.9 Кб
ID:	43836

Родной экран был перенесен в потолок, и под него была сделана рамка на место штатной заглушки:
Нажмите на изображение для увеличения
Название: potolok.jpg
Просмотров: 1337
Размер:	71.2 Кб
ID:	43837

В текущем проекте, тк в потолке теперь у меня стоят датчики объема, планирую перенести родной экран в пепельницу, за ее не надобностью. Выглядеть должно примерно так-же как у китайских друзей:
Нажмите на изображение для увеличения
Название: Opel-Insignia-CD400-pepel.jpg
Просмотров: 1402
Размер:	89.1 Кб
ID:	43838
(фото из отчета по установке китайского гу)

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



Что бы получить максимум функционала и минимум багов нам нужно прошить ядро и прошивку
Для начала основы, как я их понял:
Ядро(kernel) Android - Это центральная часть операционной системы, обеспечивающая взаимодействие между аппаратными и программными компонентами системы: как управление памятью и процессами, работа с драйверами.
Прошивка - Это непосредственно сама операционная система, которая работает с приложениями, и имеет интерфейс для работы пользователя.
Поэтому если нам нужны новые драйвера для устройств которые не поддерживает стоковая (родная) прошивка, то нам нужно новое ядро.
Для начала скачаем:
- Стоковое ядро для Nexus 7 2012 под Android 4.4.4 от Daniel с поддержкой USB-аудио (даст возможность подключать USB звуковую карту для более чистого звука) и easycap (для подключения EasyCap с stk1160, к которому можно подключить аналоговую камеру, например заднего хода, подробнее тут), а так же с обходом контроллера батареи (для возможности удалить батарею из планшета вместе с ее контроллером - без этого ядра при отсутствии батареи, в системе будут появляться ошибки) . Прямая ссылка. Это ядро подходит для 3g и WiFi версий. Но только для android 4.4.4
- Так же нам понадобится файл libtinyalsa.so Он нужен для работы подключения "на горячую" USB-Audio, а самое главное при его подключении останется работать встроенный микрофон! Вот подробное описание и инструкция как и куда его подставить. Если кратко, то путь: /system/lib, нужны рут-права.
- Приложение для подключения и работы с планшетом под windows UNIFIED ANDROID TOOLKIT, вот ссылка на загрузку.


Дополнено февраль 2017:

После года использования стокового Андроида 4.4.4, откатился к прошивке от Тимура, причина - тормоза и необходимость установки дополнительных прог на стоке для выполнения функций, которые уже заложены в Тимуровскую прошивку изначально.

Более удобной программой для перепрошивки показалась Nexus Root Toolkit. При перепрошивке было куча багов, то что-то не загружалось, то не прошивалось, то память терялась. Самым надежным способом был выбран: Прошивка стока 4.2.0 по методу возврата планшета в стоковое состояние, прошивка TRWR рекавери, загрузка в планшет архива с Тимуровской прошивкой, и прошивка из рекавери.

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

Прошивка:
Имеем чистый новый планшет Nexus7 2012 3g 32gb:
1. Сразу после первого включения, полной зарядки и подключения к wi-fi, скачал обновления и обновился до версии 4.4.4 (обновления качаются и обновляются все по очереди, сразу с 4.2.1 на 4.4.4 перейти нельзя).

2. Включаем на планшете режим разработчика, для чего нужно нажать минимум 7 раз подряд на номер сборки в настройках андроида.

3. Устанавливаем в корень диска С на компьютере, приложение UNIFIED ANDROID TOOLKIT
- выбираем в нем версию планшета
- запускаем установку драйверов
- после установки подключаем планшет через USB к компьютеру - компьютер должен опознать устройство и сообщить о установке драйверов для него

4. Разблокируем загрузчик
- запускаем UNIFIED ANDROID TOOLKIT
- загружаем планшет в fastboot (выключить, а затем включить удержанием кнопки включения и минуса громкости), выбираем UnLock BootLoader в UNIFIED ANDROID TOOLKIT и следуем инструкциям, при этом будет нужно подключить планшет загруженный в fastboot к компьютеру, выполнить выбор операции в TOOLKIT - программа в свою очередь запустит разблокировку, о чем вы узнаете по появившемуся на экране планшета запросу. Кнопками громкости выбрать разблокировку и подтвердить кнопкой вкл-я питания. Перезагрузка. Если все прошло успешно, при загрузке планшета, под надписью Google, появится разомкнутый замок.

5. Установка кастомного рекавери
- запускаем UNIFIED ANDROID TOOLKIT
- выбираем Flash Recovery и следуем инструкциям. Я выбрал CWM (там несколько вариантов). Подключать планшет в fastboot. Важно! По окончании прошивки не выключая и не перезагружая планшет переходим в рекавери (листаем кнопками громкости, выбор подтверждаем кнопкой вкл.), после загрузки рекавери выбираем пункт Reboot system, должно появится меню с выбором YES / NO disable recovery flash, выбираем YES., затем появится запрос на получение прав "суперпользователя" (Root), так же выбираем YES. Загружаемся.

Когда я делал роот другому планшету, описанный способ мне не помог, и я делал через загрузку отдельного файла через рекавери, вот ссылка на 4pda

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

И первое, что надо забэкапить, это загрузчик, те получить файл blob.bin, тк если его убить, (а это легко сделать в нашем варианте использования планшета, например вырубить питание при загрузке), то Nexus превратится в кирпич, и вылечить его может только замена материнской платы. Подробно весь процесс описан тут, тут и тут
Я делал по инструкции в последней ссылке (инструкция для 3g) и заодно поглядывал в инструкцию по wi-fi, тк по сути все должно быть одинаковое, и на всякий случай опишу и здесь т к многое вызвало у меня вопросы, на которые я искал ответы на других сайтах:
Вот некоторые моменты, которые сразу были не понятны:
Используется 3 варианта загрузки праншета:
fastboot - минус громкости + вкл
рекавери - запускается из fastboot
APX - плюс громкости + вкл (с подключенным шнуром) - в этом режиме экран не загорается и определить его можно только по появляющемуся в устройствах APX-устройству, для него нужно поставить драйвера, я их брал в папке Universal_Naked_Driver_0.72.zip из инструкции описанной в wi-fi версии.

Команды, описываемые в инструкциях, вводятся в командную строку окна команд, вызывается оно в windows запуском штатной программы CMD, так же ее можно вызвать нажав правую кнопку мыши с зажатым Shift в окне проводника и выбрав "Открыть окно команд" из открывшегося контекстного меню,
На планшете, в меню его настроек должна быть включена опция «Отладка USB».
Для выполнения команд нужно наличие утилиты adb (Android Debug Bridge), она вроде есть в TOOLKIT, но я без опыта, не понял как ее от туда использовать и взял ее в Android SDK, вот инструкция по установке этого всего.
Все скачанные по ссылкам с 4pda файлы (flatline_grouper.img, bootloader-grouper-4.23.img, распакованный nvflash-tools-win32.zip), что бы не писать длинные пути в командные строки, я скинул в папку platform-tools\, из этой же папки я вызвал, правой кнопкой через шифт, командную строку, и в нее вводил все команды.

Подключаем планшет загруженный в fastboot и вводим:

fastboot flash recovery flatline_grouper.img -для прошивки нужного загрузчика, затем выбираем на планшете выключение (это важно), и снова загрузил в fastboot (шнур не отключал)

Сохранение необходимых файлов:

- Переходим в режим рекавери
- Идем в меню Advanced, выбираем пункт Wheelie
- Соглашаемся с возможным риском
- Нас интересует "Step 1: flash AndroidRoot BL"
- Когда девайс выключится, нужно его включить и дать полностью загрузиться (это важно!)
- Если увидите лого нексуса, значит бутлоадер встал нормально.
- Перезагружаем планшет в режим рекавери.
- Теперь нас интересует "Step 2: Generate wheelie blobs"
- вывод последней команды будет указан адрес, куда сохранились blob. Адрес может отличаться!
- вводим в терминале:

adb pull /data/media/AndroidRoot ./ - (это мой адрес) для сохранения файлов на компьютер, получил 7 файлов все в той же папке platform-tools, от туда скопировал их в надежное место.

далее

- Выключаем планшет.
- Заходим в моду APX, для этого нажимаем VolUp и Power, Экран остается черный.

wheelie --blob blob.bin -обратить внимание на отсутствие ошибок после выполнения данной команды, у меня первый раз они были тк я не дал загрузится после Step 1

nvflash -r --download 4 bootloader-grouper-4.23.img - обратная прошивка загрузчика 4.23, после этой команды планшет все еще должен оставаться в APX, но у меня он отвечал в командной строке успехом и перезагружался. Версия загрузчика все же была 4.23, это видно при загрузке в fastboot.

- После пробной загрузки, вошел в в fastboot и через UNIFIED ANDROID TOOLKIT заново прошил CWM рекавери
- Затем выключил, подключил шнур и вошел в APX (громкость "+" + "включение")
- Снова выполнил команду

wheelie --blob blob.bin - планшет ответит в командной строке ..... [!] Done - your device should now be ready for nvflash и загорится на экране логотип Google

- затем копируем для бэкапа последние необходимые файлы следующими командами:

nvflash --resume --rawdeviceread 0 2688 bricksafe.img
nvflash --resume --read 5 eks.img
nvflash --resume --read 13 factory-config.img
nvflash --resume --read 14 mda.img

- по окончании выключаем планшет, загруженные файлы так же храним в надежном месте

Все, самое главное сохранили, при желании можно сделать бэкап остального содержимого, но на это есть много способов, я делал через рекавери.

7. Единственное, что нам нужно теперь прошить, это ядро от Daniel, скаченное ранее. Для этого воспользуемся все той же UNIFIED ANDROID TOOLKIT:
- распакованный файл ядра кладем в папку put_img_files_to_flash_here/nexus7
- запускаем TOOLKIT и после подключения планшета загруженного в fastboot выбираем загрузку IMG файлов, далее последовательно отвечаем на вопросы (нужно будет ввести название нашего файла ядра, указать что его нужно прошить (flash) в область Boot).

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

В конце нужно ещё раз установить Рут (см выше)

8. Если использовать USB Audio, то нужно еще заменить файл libtinyalsa.so, ссылки на инструкции даны выше, вместе со ссылкой на загрузку этого файла. Тк я пока не планирую это использовать, то и копировать не стал.

3. Схема питания и вывод кнопок.

- Планшет установлен без батареи и запитан от основного аккумулятора автомобиля.
- Управление включением и засыпанием производится через Arduino посредством датчика Холла.
- Управление питанием внешнего usb хаба, так же производится через Arduino.
- Для стабильной работы навигации используется внешняя активная GPS антенна.

1. Блок питания.

За образец взята схема и скетч от Chubaka885
Тк взаимодействие с кнопками руля автомобиля планируется осуществить иначе, то от указанной схемы была взята только часть касающаяся управления питанием:
Нажмите на изображение для увеличения
Название: СхемаБП.jpg
Просмотров: 5672
Размер:	56.4 Кб
ID:	39790
Все компоненты покупались на Ebay и Ali:
Нажмите на изображение для увеличения
Название: Компоненты.jpg
Просмотров: 2163
Размер:	110.7 Кб
ID:	39791
Arduino Pro Micro
DC/DC преобразователь Kis-3r33s
Relay 1-Channel Module for Arduino
Корпус, разъемы, кнопки и оптрон с резисторами - в местном радио-ларьке.
Вот что получилось (извините за качество фото):
Нажмите на изображение для увеличения
Название: Вкорпусе.jpg
Просмотров: 1845
Размер:	113.8 Кб
ID:	39792

2. Внешние выводы Nexus.
Тк планшет будет сниматься вместе с частью панели, то решено было все выводы объединить в один разъем для удобства быстрого снятия/установки. На роль основного разъема был выбран ATX - выпаянный из старой материнской платы компьютера. Разъем для подключения внешней GPS антенны так же выбран из "того что было" - BNC
Нажмите на изображение для увеличения
Название: Внешние разъемы.jpg
Просмотров: 2051
Размер:	89.7 Кб
ID:	39793
Аккумулятор на время отсутствия питания от машины, подсоединяется к тому же разъему и закреплен на планшете лентой "липучкой"

Мой вариант распиновки разъема:
Нажмите на изображение для увеличения
Название: распиновкаразъема.jpg
Просмотров: 2406
Размер:	100.1 Кб
ID:	39794

и распайка в планшете:
Нажмите на изображение для увеличения
Название: распайкаразъема.jpg
Просмотров: 4985
Размер:	140.5 Кб
ID:	39795

В разъемы подключения наушников и USB были вставлены соответствующие штекеры с распаянными проводами, а сами разъемы сняты со штатных мест и уложены на место батареи. Таким образом минимизировано количество мест пайки на материнской плате. Мною были подпаяны только 2 провода кнопки включения, 1 провод HallSensor, и коаксиальный кабель GPS, 5в на его центральную жилу подано с USB, ни каких фильтров не ставил, тк они уже есть на плате.

3. Проводка в машине

Для обеспечения устойчивого приема сигналов спутников GPS, была установлена внешняя активная антенна. Покупалась также в китае. Антенну установил на лобовое стекло за зеркалом заднего вида - при выборе иного места установки, учитывайте, что лобовое стекло в Insignia - имеет покрытие, являющееся хорошим экраном и мешающее приему, но за зеркалом есть фрагмент без покрытия - именно туда лучше всего поместить антенну. Я ее закрепил на "липучку" с двухсторонним скотчем. Единственное, для такого ее положения требуется небольшая доработка: я снял с ее основы наклейку из фольги, снял магнит (у вас она может быть и без магнита), и вскрыв корпус перевернул плату активной стороной вниз - тк установлена она будет на стекле "в верх ногами" - обратно собрал (без фольги), наклеил "липучку" и закрепил на стекле. Провод проложил под потолком и по правой стойке спустил в панель.
Замечание: прокладывайте провод в стойке так, что бы он не мешал подушке в случае ее срабатывания!

Питание и АСС - я взял в блоке предохранителей, в левой нижней части панели, за открывающимся отсеком для мелочей. В качестве ACC выбрал провод на котором напряжение появляется с включением зажигания, а пропадает с выходом водителя из машины.

Провод питания прерван предохранителем на 5А - на всякий случай. И кнопкой общего отключения.

Кнопку общего отключения и кнопку включения планшета, а также пару USB вывел в бардачек. Нужно предусмотреть простое отключение проводов идущих к этим кнопкам, тк бардачек придется периодически снимать, как минимум для замены фильтра салона.

Подключение к AUX автомобиля сделал сразу в разъеме ГУ, вот есть отчет о подключении на форуме Insignia. Для отключения AUX, провода управляющие им - не трогал, подсоединил только аудио, а в штатный разъем AUX воткнул пустой 3,5jack штекер.

Нажмите на изображение для увеличения
Название: Проводка.jpg
Просмотров: 2720
Размер:	90.8 Кб
ID:	39796



4. Дополнительные принадлежности.

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

Нажмите на изображение для увеличения
Название: Кабель зарядки.jpg
Просмотров: 2151
Размер:	108.2 Кб
ID:	39797

4. Монтирование в панель.

в стадии подготовки...

5. Настройка андроида и установка программ.

Вначале, если шили Тимура, нужно установить гапсы (приложения от гугл, маркет и тп). Ставить через рекавери.
Затем с помощью EXпроводника с правами SuperSu, удалить не нужные.

1. SuperSU Основная программа, описывать не буду, но от нее много что зависит. Сама по себе ни чего не дает, для ее работы необходимо сделать root (см. выше в разделе прошивки)
2. ES Проводник Самый удобный для меня файловый менеджер.
3. Set Orientation Для наших целей планшет будет использоваться только в горизонтальной ориентации. Что бы она не изменялась, было установлено это приложение. Эту задачу можно выполнить и штатными средствами, но у меня на 4.4.4 перестал работать акселерометр (проблема конкретного устройства) и экран был только в вертикальном положении. Это программа очень спасла.
4. ES Диспетчер задач С его помощью можно легко выставить все уровни звука на максимум и запретить спящий режим (в штатных настройках есть только тайм аут макс 30мин). К сожалению в одном из имеющихся у меня планшетов это не помогало и при выставлении "Никогда", Nexus уходил в сон через 10 сек. Проблема была решена следующим приложением:
5. Менеджер подсветки
6. StickMount Pro Программа для подключения внешних флешек по USB. Pro - версия необходима для возможности продолжения воспроизведения с прежнего места файла записанного на флешку. (Если честно, сам не разбирался - прочитал что нужно Про, купил и поставил)
7. LMT Launcher Тк при установке планшета в панель нижняя строка навигации будет скрыта, то нужно либо изменить размер экрана - что практически на верняка вызовет определенные сложности в некоторых приложениях, либо установить альтернативный способ вызова команд (домой, назад, недавно запущенные) строки навигации. Мне на форуме посоветовали эту программу, и ею я пользуюсь. Настраиваю на вывод диска с кнопками, "на вытягивание" с правой стороны экрана. На маркете ее нет, так что нужно держать апк во внутренней памяти на случай перепрошивки, иначе не вынув планшет из панели, ни чего не сделаете.
7.1. В дополнение, при переходе на андроид 4,4,4 пришлось поставить еще одну аналогичную программу: Handy Soft Keys Ставил только для IGo, тк в нем при нажатии кнопки назад в LMT, он переходил не на предыдущий экран, а на домашний, те закрывался, и только эта программа работала как штатная кнопка "назад". В последствии вернулся на Тимура и все заработало на LMT как и прежде.
7.2. На Тимуре не работает кнопка "последние запущенные приложения" (2 квадратика) - что бы заработала, нужно зайти в службы в настройках и там разрешить службу LMT
8. Classy Live Wallpaper Lite Отличные живые обои. Я ставлю карбон, настраиваются тёмный вид с еле заметным движением. Получается и стильно, и в темноте не слепит.
9. Nova Launcher Лаунчер, позволяющий произвольно располагать виджеты и ярлыки на рабочем столе.
10. Desktop VisualizeR Приложение для создания виджетов из картинок и тп, в частности с его помощью сделан логотип-кнопка "Opel"
11. Slider Widget - громкость В виде значка динамика или подсветки для быстрого доступа к их настройка например после перезагрузки.
12. Навител Навигатор
Настройки:
-на экране с картой жмем сверху "Динамик" - Настройки - Звуковой поток - Будильник. Теперь навигатор будет говорить в динамики нексуса, когда Aux не включен и например играет диск или штатное радио.
-камеры качал вот от сюда: http://mapcam.info/speedcam/

Последний раз редактировалось alexnf; 16.10.2017 в 16:02.
alexnf вне форума   Ответить с цитированием