10 września 2018 kubosh 0Comment

Razem z premierą BMW E65 (seria 7) pojawił się wszystkim znany i lubiany system iDrive oparty na Windows CE.
Projektowany w latach 90 był rewolucją w porównaniu z rozwiązaniami stosowanymi w generacji poprzedniej, jednak na dzień dzisiejszy jest to praktycznie niefunkcjonalne.
Największym problemem jest brak aux w samochodach przed 09/2006, brak USB i tak naprawdę brak upgradu do iDrive z E60 (która działa pod kontrolą systemu VxWorks).


Celem projektu jest uruchomienie innego systemu operacyjnego (w oknie nawigacji) wraz z możliwością kontroli poprzed joystick iDrive (łączność poprzez CAN), a co za tym idzie uruchamianie navigacji GPS, muzyki MP3 itp itd.

Jednak są sposoby aby unowocześnić nasze BMW 7er:
1) Kupno od Chińczyków radia z Androidem (1GB RAM, 16GB ROM) -koszt około 3k pln
2) Wykonanie samemu czegoś na wzór wyżej – koszt około 1,5k pln
3) Wpięcie się do systemu iDrive zamiast nawigacji – koszt około 200-500 pln

Skupię się na opcji numer 3 która mnie i was najbardziej interesuje.

Etap 1 – AUX
Potrzebujemy mieć w E65 AUX, jeżeli masz samochód przed 09/2006 trzeba wlutować się do modułu FM (który jest w lewym tylnym słupku), lub dokodować jeżeli masz nowsze 7er.
Ja mam polifta 2005 więc musiałem wlutować się bezpośrednio do modułu – jakość dźwięku jest akceptowalna (zdecydowanie lepsza niż transmiter FM)

Mamy już auxa, testujemy go sobie przełączając na radio (FM) i podłączając do naszego smartphone’a – powinniśmy mieć dźwięk.

Etap 2 – Sygnał VIDEO IN

Tak się składa, że czytnik nawigacji komunikuje się z ekranem głównym (który jest komputerem iDrive) poprzez sygnał analogowy video RGB.
Dzięki temu mamy otwartą furkę aby się do niego podłączyć, po wybraniu knobem nawigacji z menu głównego
Zrobiłem mały test aby sprawdzić czy moje rozwiązanie zadziała – i proszę przy odpięciu kabli pokazuje artefakty.

Z tego co się zdążyłem zorientować możemy się wpiąć w bagażniku bądź bezpośrednio do komputera głównego.
Ja jednak poprzestanę na opcji nr.1

Etap 3 – Wybór komputera bazowego

Ten etap jest wg. mnie najtrudniejszy gdyż nie ma idealnego rozwiązania które by się sprawdziło i było dostępne dla każdego.
Jednak są pewne wymagania które należy spełnić :
– minimum 1GB RAM
– Wifi (wbudowane lub po USB)
– obsługa CAN lub GPIO ( i wtedy moduł CAN)
– wyjście video RGB, Component lub HDMI ( wtedy zastosujemy przejściówkę)
– wyjście audio 3,5″ (niepotrzebne gdy korzystamy z HDMI bo zrobimy adapter).

Idealnym rozwiązaniem miało być Orange PI 4G-IOT które posiada wsparcie Androida 8.1, 1GB RAM, 4G, Wifi, Bluetooth, GPS jednak sprzęt jest kompatybilny z  jakąś dziwną rozdzielczością 720×1280 48Hz która nie jest praktycznie wspierana przez wyświetlacze. Na tą chwilę nie ma co liczyć na aktualizację.



Każda opcja to jakieś kompromisy – Raspberry Pi ma świetne wsparcie społeczności ale nie działa Android (tzn działa ale bardzo wolno), BananaPi M1 ma Androida lecz w wersji 4.4 itp.
Najbardziej zależy mi na czymś dość uniwersalnym aby każdy z was mógł sobie wybrać wg własnych wymagań. Ale więcej o tym w kolejnej części.

Etap 4 – Wybór systemu operacyjnego

Kolejny skomplikowany etap, powiązany z trzecim gdzie wybór jest uzależniony od funkcjonalności jakie chcemy posiadać, aplikacji oraz płytki bazowej.
Zrobiłem research i wybrałem kilka standardowych systemów operacyjnych na których przeprowadzę testy:
–  Linux ( i jego różne odmiany typu Raspbian)
–  Android (dedykowany do danej SBC)
–  Android x86 (dedykowany dla płytek pokroju AAEON Gene QM77 – patrz inne moje wpisy)
–  KODI (i pochodne)
–  Windows (odmiany zwykłe i embedded)

Nie będę się zagłębiał w tematy BSD oraz QNX gdyż musiałbym spędzić za dużo czasu na ogarnianiu softu.

I to by było na dziś koniec, kolejny wpis niebawem 🙂