Skoda Superb CarTablet - Ваш автомобільний комп’ютер
Skoda Superb 2012 + Nexus 7 2012 = 4024!
- Управління кнопками з керма через CAN-BUS Shield та Arduino Leonardo
Плани за проектом:
- Переробка управління з керма на варіант із перепризначенням кнопок за допомогою програмного забезпечення на планшеті за допомогою Arduino Uno. - Прикручування SDR-радіо. - Спроба реалізації відображення інформації з CAN-шини на екрані планшета та/або Maxidot-е.
Що не буде реалізовано:
– Переїзд на Android 4.4.2. - Тому що ось чому.
Для реалізації проекту потрібно:
1. Nexus 7 2012 2. Arduino Leonardo (або його клон) 3. Seeedstudio CAN-BUS Shield (можна самостійно спаяти за схемою відlti1з цієї посади) 4. Перетворювачі живлення PSD-15A-05 та Мастеркіт PW24-1-2 5. Перехідна рамка 2DIN 6. HiFimeDIY Sabre Tiny USB DAC. Можливі варіанти, але сумісність слід перевіряти. 7. Якийсь хаб. Можна активний, пасивний. Якщо планується велика кількість периферії, краще активний. У мене крім DAC, флешки та Arduino нічого не передбачається, тому мені достатньо пасивного D-Link на 4 порти.
ЕТАП 1. Доопрацювання планшета.
Робимо, щоб планшет включався при подачі зовнішнього живлення. Як це зробити, написано тут.
1. Розблокувати завантажувач. 2. Встановити CWM рекавері. 2. Встановити прошивку USB ROM від Тимура. Планшет з 3G називається tilapia, а без 3G – grouper. Важливо прошивки не переплутати.
Інструкція з розблокування завантажувача, встановлення рекавері та кастомної прошивки є тут. Все зрозуміло і розписано по пунктах.
Все, що написано далі робимо при вимкненому планшеті.
Розкриваємо планшет пластиковою лопаткою або карткою (можна і нігтями, якщо вони є). Починаємо розкривати з кутапоряд з pogo-pin. На знятій кришці є сіточка, що закриває динаміки. Вона тримається на двох пластикових "соплях" та клеї. Соплі зрізаємо і акуратно відклеюємо сіточку, а потім прибираємо її в коробку від планшета - приклеїмо якщо будемо продавати планшет.
Акумулятор та його контролер будемо з планшета прибирати. На плату від контролера йде роз'єм із 6 проводами - відключаємо його від плати. Акумулятор з контролером приклеєний до корпусу – відклеюємо. Прикладаємо помірне зусилля – все має відклеїтися.
Після цього відрізаємо конектор від акумулятора приблизно посередині.
Проводи краще різати по-одному, інакше є шанс щось замкнути на контролері і вивести його з ладу, наприклад.
Два чорні і два червоні дроти - це мінус і плюс відповідно. Їх з'єднуємо разом і припаюємо до них дроти довше. Два дроти посередині можна залишити висять просто так, можна заізолювати.
Два припаяні дроти просочуємо в отвір динаміків (з якого зняли сіточку) з внутрішньої сторони, а кришку закриваємо.
Кріплення до перехідної рамки полягає в наступному:
1. Зрізаємо ножем усі нерівності на внутрішній стороні внутрішньої рамки та знежирюємо її. 2. По всьому периметру рамки наклеюємо тонкі смужки двостороннього скотчу 3M. 3. Прикладаємо планшет до скотча з помірним зусиллям. Слідкуємо за тим, щоб із зовнішнього боку було рівно та красиво. Важливо закрити датчик освітленості. 4. Я ще зробив з епоксиліну "купки", а в них вставив стійки від материнської плати, в які гвинтиками прикрутив металеві пластинки, щоб планшету ну взагалі нікуди було подітися.
Доопрацювання планшета завершено.
Схема харчування знаходиться на доопрацюванні!
У темі про Nexus 7 є over9000варіантів живлення через одну PSD, 2 PSD, 1 PSD з діодом, за допомогою святої води, за допомогою котушок Тесла та електромагнітного поля Землі. Я описую так як заробило в мене. Якщо ви знаєте, що "можна зробити інакше" - це чудово. Я пробував 3 варіанти харчування, заробив тільки що я використовую.
Працюючи з живленням у автомобілі бажано відключати акумулятор, т.к. якщо ще замикання проводів у колодці просто палить запобіжник, то замикання в блоці запобіжників призведе до невідомих наслідків.
Харчування будуємо в такий спосіб.
На платню планшета (через висунуті дроти) подаємо харчування з перетворювача PW24-1-2, попередньо відрегулювавши його на виході до 4.5-4.6 вольт. На вхід перетворювача подаємо постійні 12 вольт, які є в колодці автомобіля, в яку підключається ГУ. Там чорний провід – мінус, жовтий – плюс.
У USB-роз'єм подаємо живлення з PSD-15A-05 через кабель OTG з живленням (y-кабель). Якщо кабелю з живленням немає, можна купити звичайний OTG-кабель і припаяти до нього харчування. Плюс на червоний провід, мінус – на чорний відповідно. Якщо і звичайний OTG-кабель недоступний, можна спаяти самостійно за цією схемою і припаяти харчування.
PSD у автомобілі запитуємо від ACC. Т.к. в колодці Skoda такого кабелю немає, беремо його з вільного місця в блоці запобіжників, який знаходиться з лівого торця торпеди автомобіля в салоні (пізніше вкажу який контакт саме і прикладу картинку). Мінус загальний з PW24-1-2, або можна взяти з будь-якого місця, де він є.
Виходить, що на плату у нас подається 4.5-4.6 вольт, а USB-роз'єм 4.97. Зважаючи на все, завдяки різниці у вольтажі все і працює так, як треба.
При включенні запалення живлення подається на USB-роз'єм, планшетвключається. Коли харчування зникає – планшет вимикається.
PSD-15A-05 без навантаження - 40 мА PW24-1-2 без навантаження - 4 мА
Nexus + PW24-1-2 в режимі глибокого сну – 10-12 мА. З PSD відповідно буде близько 50 мА, що в 4 рази більше ніж з PW24-1-2. Можна легко підрахувати, що планшет з PW24-1-2 висаджуватиме цілком звичайний акумулятор на 63Ач протягом приблизно півроку. З PSD – приблизно 1.5 місяця, що теж чимало.
Звідси можна дійти невтішного висновку у тому, що режиму сну цілком достатньо, і городити город із контролером харчування - зайве. Тим більше, враховуючи той факт, що з режиму сну планшет виходить миттєво.
ЕТАП 3. Адаптер мультикерма.
Android розуміє натискання мультимедіа-кнопок звичайної USB-клавіатури, тому наше завдання - перетворити натискання кнопок керма на USB-клавіатурні натискання за допомогою CAN-адаптера.
1. Arduino Leonardo або його клон:


Шилд постачається з неприпаяними ногами, що виправдано, т.к. якщо їх припаяти, то з Leonardo шилд не запрацює.
Причина полягає в тому, що шилд розрахований на роботу з Leonardo Uno, який не вміє вдавати USB HID пристроєм, а у Uno і Leonardo SPI-інтерфейс використовує різні контакти. У UNO це контакти з D11 по D13, а у Leonardo - піни 4, 1 і 3 роз'єми ICSP відповідно.
Виходить, що варіанта 2:
а) припаяти ноги до шилда, відкусити ноги, що йдуть на піни 11-13 і підключити їх за допомогою дротів до контактів роз'єму ICSP. б) спочатку підключатися проводами, як і зробив. Виходить менш компактно і красиво, але врешті-решт це все не на стіну ж вішати.
Є ще третій варіант. Купити шилд з розпинанням під леонардо: http://pccar.ru/showpost.php?p=311376&postcount=135
Післятого як все підключили, потрібно відпаяти термінуючий резистор R3 (його добре видно на цій картинці), інакше нічого не запрацює. Якщо хтось хоче подробиць, можна почитати про пристрій каншини і термінатори в ній.
Насамперед ставимо Arduino IDE версії 1.0.5. Є нова бета, але вона нам ні до чого. Для використання з Arduino CAN-BUS адаптера потрібна бібліотека. Беремо її з цієї посади (CANBUS.ZIP), розпаковуємо і копіюємо сюди: "C: Program Files (x86) Arduinolibraries". Потім беремо USBLIB.ZIP з цієї посади (вони взяті звідси) і файли з нього копіюємо в папку "C: Program Files (x86) Arduino hardware arduino cores arduino" із заміною існуючих файлів.
Скетч, який працює у мене доданий до цієї посади (test_keys-140206a.zip). Його потрібно відкрити в Arduino IDE та завантажити в Arduino.Він працюватиме тільки з Leonardo!
Якщо хочете просто посніфити CAN-шину, то функцію loop треба замінити на таку:
Тоді в моніторі COM-порту буде видно всі повідомлення кан-шини.
За ідеєю все те саме має працювати в будь-якому автомобілі концерну VAG - Skoda, Volkswagen, Audi, Seat. Різниця може бути в ідентифікаторах джерела CAN-повідомлень та в самих повідомленнях. Все що тут написано 100% працює у Skoda.