Autor Wątek: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)  (Przeczytany 3905 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline mikrobi

  • Administrator
  • Papla
  • Wiadomości: 153
  • Postaw piwo: +4/-0
  • Marka samochodu: Citroen
  • Model: CX 2.5 TRD Turbo2'87, C5 1.6HDI'05 Break
  • Prawidziwe imię: Artur


UWAGA!

W artykule są informacje pozyskane metodą "odwrotnej inżynierii". Tak więc coś co mi się udało niekoniecznie musi udać się komuś innemu. Za nic nie odpowiadam, cokolwiek robisz, robisz na własną odpowiedzialność.



Opiszę poniżej przeróbkę radia - RD4 produkcji firmy Continental, tak aby działało w Citroenie C5 FL. Po co ? Po to żeby działała cała funkcjonalność modułu Nomade V2. Nomade V2 jest modułem fabrycznym, który poszerzał funkcjonalność radia o Bluetooth - zestaw hands free/audio streaming, oraz o odtwarzanie USB.  Niestety radia RD4 tej wersji nie występowały z panelem który można znaleźć w Citroenach C5 FL i Peugotach 407.
Ale ja chciałem mieć ten BT Audio Steaming. Tu niestety nie ma prostego rozwiązania - albo wymiana radia na niefirmowe, co w tych autach jest do zrobienia - trzeba przeprogramować manetkę, która zwykle służy do sterowania radiem tak, aby sterowała komputerem pokładowym. Trzeba też kupić ramkę, która ponoć istnieje - ale ja tego na własne oczy nie widziałem.
Mam wyświetlacz w najnowszej wersji, moduł Nomade V2 i dwa radia RD4 marki Blaupunkt. Jedno z oryginalnego montażu w najstarszej wersji, które od 3 lat leży w piwnicy, bo w samochodzie jeździ nieco nowszy Blaupunkt RD4 - taki z odczytem MP3.
Dokupiłem więc radio RD4 marki Continental RD4 N2 MP3 - jedno z najnowszych i najtańszych na Allegro (zależało mi żeby było od firmy zajmującej się demontażem aut).

Radio:

Oznaczenie wersji radia:



Radio przyszło, podłączyłem i zaprogramowałem. Okazało się że radio działa prawidłowo. Czyta płyty, łączy się z telefonem itp.
Pozostał problem panela.
Niestety radia - dość konkretnie się różnią - płyta główna jest całkiem inna, gniazdo panela jest w innym miejscu, chassis jest innej konstrukcji, schemat "guzików" jest całkiem inny. Ale była też dobra wiadomość - napęd CD jest na tej samej wysokości. Poniżej porównanie płyt głównych:



Rozebrałem zalegający w piwnicy model firmy Blaupunkt.
Problem mechaniczny - wystarczyło podgiąć dwie blaszki, aby dało się wcisnąć metalową ramkę z panelu B:


Otwór na śrubę - "prawie pasuje" - w każdym razie podkleiłem nakrętkę klejem na gorąco, tak aby się nie obracała. Można, a nawet wypada rozwiązać to w inny sposób - więc tym się nie pochwalę.
To była łatwiejsza część.
Skoro jest zasadniczo inny schemat klawiatur, nie da się po prostu połączyć odpowiednich kabelków. Potrzeba tłumacza. Inaczej jest rozwiązane podświetlenie - panel Blapunkt miał zasilanie +12V i sygnał PWM i wbudowane tranzystory sterujące. Continental nie ma tranzystorów, idzie sygnał PWM 12V do poszczególnych lini podświetlenia. Przerobiłem to tak, że na tranzystory idzie +5V stałego napięcia, a zamiast zasilania stałym napięciem 12V idzie sygnał  PWM 12V.
Tłumacza zrobiłem z pomocą płytki Arduino ProMini, której klona można kupić na Allegro za 10zł.
Do tego potrzeba interfejsu USB-Serial TTL, który kosztuje 5-15zł. Użyłem płytki Arduino Mini Pro w wersji 5V 16MHz.
Schemat:



Płytka musi być zasilana, więc z radia trzeba wyjąć zasilanie 5V.  Tu przyszła z pomocą dokumentacja układu TDA3681ATH:



Umiejscowienie układu TDA3681 na płycie głównej:




Wyszło, że musiałem wyprowadzić na zewnątrz przewodami nogę 19 tego układu. Masę również można wziąć z tego układu - nóżka nr 10, ale równie dobrze można ją wziąć skądkolwiek - są na płycie nieobsadzone miejsca na kondensatory, są to dość duże punkty  lutownicze - sprawdzamy miernikiem i lutujemy do czego wygodniej. Ale na potrzeby tego tekstu - niech będzie że - z nogą 10 układu TDA3681.

Jeśli ktoś woli spis połączeń paneli i Arduino oprócz schematu są tutaj: https://github.com/2mikrobi/RD4-Blaupunkt2Continental/raw/master/Radio%20RD4%20-%20panele.pdf
Numeracja pinów radia i panela:





Płytkę Arduino przykleiłem do panela, na powyższym zdjęciu widać także kabel interfejsu USB-TTL. Po przylutowaniu wszystkiego i założeniu metalowej ramki panel wyglądał tak:



Na końcu przewodu taśmowego jest oczywiście wtyk odlutowany od panelu Continental.
Trochę kleju na gorąco i taśmy klejącej pozwoliło mi upewnić się że na pewno nie będzie zwarcia przy montażu.
Zaprogramowałem układ:
 Szkic Arduino- program jest jaki jest - jeśli ktoś chce użyć go komercyjnie, to proszę o informację.
Poskładałem to wszystko do kupy i zamontowałem radio. Moduł Nomade v2 był już założony i skonfigurowany.
Zawsze przed wymianą radia należy podłączyć się Lexią i odczytać jak jest zaprogramowane stare radio - w szczególności tabelę oświetlenia, krzywą zależności głośności od prędkości jazdy, oraz konfigurację anten.
Po zaprogramowaniu Lexią działa prawie wszystko. Problem jest tylko z automatycznym wyszukiwaniem stacji radiowych. Radio nie znajduje niczego, choć jeśli ustawi się częstotliwość to działa równie dobrze jak poprzednie. Prawdopodobnie jest problem z konfiguracją anten, ale na razie nie chce mi się z tym walczyć.

Prezentacja wideo: https://www.youtube.com/watch?v=8psWaoIu_j8
« Ostatnia zmiana: Czerwiec 09, 2017, 13:02:00 pm wysłana przez mikrobi »

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #1 dnia: Styczeń 30, 2018, 18:55:09 pm »
Zrobiłeś kawał dobrej roboty.
Chcę zrobić wg Twojej instrukcji to samo, mam póki co jedno pytanie.
Radio musi być CONTINENTAL?

Offline mikrobi

  • Administrator
  • Papla
  • Wiadomości: 153
  • Postaw piwo: +4/-0
  • Marka samochodu: Citroen
  • Model: CX 2.5 TRD Turbo2'87, C5 1.6HDI'05 Break
  • Prawidziwe imię: Artur
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #2 dnia: Styczeń 30, 2018, 19:17:47 pm »
W sumie niekoniecznie. Istotne jest, żeby to było radio z samochodu w którym był montowany moduł Nomade v2. Nie wiem, kiedy była różnica, ale radia sygnowane RD4 były sygnowane przez Blaupunkta - i te na pewno się nie nadają, oraz Boscha i Continentala - te powinny, choć ktoś tam twierdził, że mu nie zadziało, poszukaj po forach, gdzie dało się zmotać zestaw Radio + Nomade V2 bez przeróbek (np. http://www.peugeot207club.pl/viewtopic.php?p=98473). Ja miałem tylko jedno i zadziałało te pierwsze :)
Zresztą - działa do tej pory.

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #3 dnia: Styczeń 30, 2018, 19:26:21 pm »
w takim razie będę szukał radia jak Twoje.
Dziękuję

Offline dutrys

  • Stowarzyszenie SKC
  • Gaduła
  • Wiadomości: 387
  • Postaw piwo: +1/-0
  • tel 609570146
  • Marka samochodu: Citroen
  • Model: Xantia v6
  • Prawidziwe imię: Ryszard
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #4 dnia: Styczeń 31, 2018, 11:32:43 am »
Moje uznanie za inwencję i wkład pracy; ale jako facet wychowany na Rajdzie  i Safari 2 , zapytam się : po co to wszystko ?  nie słychać głośników czy cóś ?    ;D
skazany na  ....2 X ?!

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #5 dnia: Maj 16, 2018, 21:15:03 pm »
Masz może klon bibliotek arduino?
Coś mi nie idzie ten szkic

Offline mikrobi

  • Administrator
  • Papla
  • Wiadomości: 153
  • Postaw piwo: +4/-0
  • Marka samochodu: Citroen
  • Model: CX 2.5 TRD Turbo2'87, C5 1.6HDI'05 Break
  • Prawidziwe imię: Artur
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #6 dnia: Maj 16, 2018, 21:19:19 pm »
A jaki masz błąd?
Sprawdzę o co chodzi w czasie najbliższym  O0

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #7 dnia: Maj 16, 2018, 21:30:51 pm »
Szkic wgrał się, ale wali takimi ostrzeżeniami
nie jestem biegły w arduino i nie wiem czy to przeszkadza w czymś

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino: In function 'void ShowKey()':

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:189:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11101)&(wiersz==B11110)) GoPress("AUDIO"  ,4,5);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:190:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11101)&(wiersz==B11011)) GoPress("SOURCE" ,1,2);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:191:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11110)&(wiersz==B11011)) GoPress("TRIP"   ,4,5);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:192:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11101)&(wiersz==B11101)) GoPress("BAND"   ,5,2);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:193:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11110)&(wiersz==B11101)) GoPress("CLIM"   ,4,5);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:194:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11101)&(wiersz==B10111)) GoPress("DARK"   ,2,5);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:195:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11011)&(wiersz==B11110)) GoPress("ESC"    ,2,1);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:196:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11110)&(wiersz==B10111)) GoPress("MENU"   ,4,3);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:197:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11101)&(wiersz==B01111)) GoPress("TONE"   ,3,4);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:198:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11011)&(wiersz==B11101)) GoPress("UP"     ,5,3);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:199:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11011)&(wiersz==B10111)) GoPress("DOWN"   ,1,1);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:200:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11011)&(wiersz==B11011)) GoPress("LEFT"   ,5,1);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:201:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B10111)&(wiersz==B11011)) GoPress("RIGHT"  ,2,3);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:202:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11011)&(wiersz==B01111)) GoPress("OK"     ,3,3);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:203:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B10111)&(wiersz==B11110)) GoPress("TA"     ,1,3);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:204:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B10111)&(wiersz==B11101)) GoPress("LIST"   ,3,1);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:205:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B10111)&(wiersz==B10111)) GoPress("PTY"    ,1,3);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:206:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B10111)&(wiersz==B01111)) GoPress("1"      ,3,5);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:207:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B01111)&(wiersz==B11101)) GoPress("2"      ,3,2);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:208:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B01111)&(wiersz==B10111)) GoPress("3"      ,2,2);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:209:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B01111)&(wiersz==B11110)) GoPress("4"      ,2,4);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:210:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B01111)&(wiersz==B11011)) GoPress("5"      ,5,4);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:211:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B01111)&(wiersz==B01111)) GoPress("6"      ,1,4);

                                                                   ^

C:\Users\vvv\Documents\Arduino\citroen\citroen.ino:212:67: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]

      if ((kolumna==B11110)&(wiersz==B11110)) GoPress("EJECT"  ,4,2);

                                                                   ^

Szkic używa 2712 bajtów (8%) pamięci programu. Maksimum to 30720 bajtów.
Zmienne globalne używają 13 bajtów (0%) pamięci dynamicznej, pozostawiając 2035 bajtów dla zmiennych lokalnych. Maksimum to 2048 bajtów.

Offline mikrobi

  • Administrator
  • Papla
  • Wiadomości: 153
  • Postaw piwo: +4/-0
  • Marka samochodu: Citroen
  • Model: CX 2.5 TRD Turbo2'87, C5 1.6HDI'05 Break
  • Prawidziwe imię: Artur
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #8 dnia: Maj 18, 2018, 11:09:02 am »
Szkic powinien działać.
Ale jak chcesz możesz to poprawić:
Trzeba Wszystkie wystąpienia GoPress(" zamienić na
GoPress((char *)"
czyli np.  zamiast
GoPress("AUDIO"  ,4,5)ma być:
GoPress((char *)"AUDIO"  ,4,5)
Wtedy przejdzie bez warningów. Zresztą za chwilę poprawę w repozytrorium.

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #9 dnia: Maj 20, 2018, 16:06:27 pm »
Dzięki wielkie będę próbował to polutować teraz.
Jedno pytanie jeszcze.
Na zdjęciach wyżej do pinu 3 w panelu radia nic nie przylutowałeś, na schematach jest połączony z VCC z arduino i 5V z układu TDA3681ATH
Łączyć tak ja na schematach czy jak na zdjęciu panela?

Offline mikrobi

  • Administrator
  • Papla
  • Wiadomości: 153
  • Postaw piwo: +4/-0
  • Marka samochodu: Citroen
  • Model: CX 2.5 TRD Turbo2'87, C5 1.6HDI'05 Break
  • Prawidziwe imię: Artur
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #10 dnia: Maj 20, 2018, 22:47:03 pm »
Trochę nie pamiętam, się przyznam, ale na 99% wg schematu. Chyba zrobiłem zdjęcia przed przylutowaniem zasilania, żeby było lepiej widać resztę przewodów.

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #11 dnia: Maj 21, 2018, 22:05:01 pm »
Prawie polutowane mam.
Kolejne pytanie.
Zamieniona jest kolejność pinów
TX(0) i RX(1)
u Ciebie jest
TX(1) i RX(0)

jak łączyć żeby nie zepsuć?

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #12 dnia: Maj 21, 2018, 22:25:17 pm »
OJ chyba jednak to mój błąd

DOBRZE MASZ

Offline mikrobi

  • Administrator
  • Papla
  • Wiadomości: 153
  • Postaw piwo: +4/-0
  • Marka samochodu: Citroen
  • Model: CX 2.5 TRD Turbo2'87, C5 1.6HDI'05 Break
  • Prawidziwe imię: Artur
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #13 dnia: Maj 21, 2018, 22:27:07 pm »
Obydwa te piny pracują jako wejścia - więc jak będą zamienione to nic nie wybuchnie. Co najwyżej nie będzie działało poprawnie.

Offline vorobiej

  • Nowicjusz
  • Wiadomości: 13
  • Postaw piwo: +0/-0
  • Marka samochodu: Citroen
  • Model: C5
Odp: Citroen C5 FL (2004-2008) + radio z USB i Bluetooth Audio Streaming (A2DP)
« Odpowiedź #14 dnia: Maj 21, 2018, 22:31:11 pm »
Raczej wszystko jest OK, mój błąd.
Piny liczyłem odwrotnie.

Możesz usunąć moje ostatnie posty