Skip to content
MyAlpDroid edited this page Jan 22, 2023 · 6 revisions

Les composants existants

Le poste Multimédia

Il est d'origine BOSCH. On peut retrouver la documentation sur les modules opensource utilisés pour son logiciel ici

L'arrière du poste se présente ainsi :

De gauche à droite :

BLEU : Connecteur d'Alimentation intégrant +12 / GND , 4 hauts parleurs et Acc

BLANC : Connecteur CAN +Speed/ABS le vert CAN High, le premier blanc CAN Low, le dernier blanc Speed/Abs

Noir/Embase Marron : Connecteur USB renvoi vers les prises USB de la console

Vert : ** Inutilisé **

Gris/Embase Blanche : Connecteur Micro Rouge +5v, Noir Ground, Jaune Signal micro

Blanc/Embase Crème : **Connecteur Jack IN (?)

Noir : Connecteur Antenne DAB+

Gris : Connecteur Antenne Radio

Bleu : Connecteur GPS

Enfin Connecteur Violet (face avant) : Données Vidéo Tablette Multiplexée+TouchScreen

update : sur les versions avec Ampli, le connecteur violet fournit aussi la sortie "Remote" +12V pour alimenter l'ampli.

Si on veut remplacer ce poste, nous devons donc à minima récupérer le signal d'antenne Radio, DAB+ si le nouveau poste l'a, le GPS, l'USB console, le Micro et l'Alimentation.

Selon les postes, on peut envisager de reprendre la caméra de recul (n'a pas été fait dans ce projet), le lecteur de carte (non fait ici, un adaptateur vers l'USB semble possible) et le CAN. Même si je n'ai pas trouvé de poste "Chinois" Android apportant la prise en charge directe du CAN.

L'écran

L'écran Valéo se démonte relativement facilement. Il y a deux caches derrière l'écran qu'on peut faire sauter simplement, puis il suffit de déviser les 2 vis et sortir l'écran en poussant légèrement vers le haut.

A l'arrière de l'écran, on a deux connecteurs :

Connecteur type USB : arrivée vidéo du poste Connecteur Noir : alimentation & CAN (Rouge+12v, Noir GND, Vert CANH, Blanc CANL)

Cela signifie que l'écran récupère l'image et le multiplexage du touchscreen via un lien LVDS (connecteur type USB & Fakra Violet) et se met en marche sur la base d'une trame CANBUS qui lui indique s'il faut s'allumer ou non. Voici le briochage des connecteurs de ce câble:

La trame est probablement celle-ci : 058F code opération sur 4 octets, 2bits 0 :sleep 11:Réveil 2 bits : type de réveil

Ce n'est pas l'objet de ce projet, mais si quelqu'un voulait adapter un nouveau poste, sans démonter l'écran, il devrait :

  1. Adapter la sortie vidéo du poste Android (généralement standard vidéo sur 40 pins) vers une sortie multiplexé LVDS avec un sérialiseur désérialiseur.
  2. Emettre, depuis le poste (si compatible CAN) ou via un kit Arduino, une trame 058F pour réveiller l'écran.
  3. (Probablement) Adapter la gestion du tactile de l'écran pour être compris par le poste comme un écran normal.

J'ai tenté la création d'une carte SerDes mais faute de temps et de compétences avancées, j'ai échoué. Je pense qu'il s'agirait pourtant d'une solution moins intrusive que de changer l'écran.

Les BUS CAN de l'Alpine, le connecteur OBD II

L'Alpine exploite deux bus CAN :

  • Un bus ECU : paramètres moteur et tout composant non "multimédia"
  • Un bus MMU : composants Multimédia : Ecran, Poste, Caméra de récul, Tableau de bord

A noter que des informations du bus ECU sont transmises au bus MMU par l'intermédiaire d'une interface.

Est-ce le tableau de bord qui remplit ce rôle ou un autre composant ? En tout cas, la télémétrie ne s'appuie pas directement sur les informations de l'ECU mais bien sur celles "renvoyées" sur le bus MMU.

L'existence de ces 2 bus expliquent aussi pourquoi, via un dongle OBDII (type ELM) vous ne voyez en général que les défauts "moteurs". L'explication se trouve dans le brochage du connecteur OBD qui permet d'accéder aux 2 Bus : Schéma Prise OBD

Ainsi, lorsque vous voulez utilisez DDT4ALL par exemple et souhaitez accéder aux menus qui concernent la partie multimédia, vous devez changer le brochage de votre ELM en utilisant un inverseur comme sur le schéma ci-dessus. (L'activation de la télémétrie passe par un menu accédant au CAN multimédia par exemple).

Le bus Multimédia est accessible directement en se raccordant sur la broche blanche du poste d'origine.

Le bus ECU n'est pas accessible depuis les câbles arrivant au poste. Il faut aller se raccorder directement sur la prise OBD.

A partir d'ici, le projet peut comporter deux variantes :

  • Utilisation exclusive du bus multimédia
  • Utilisation des deux bus (multimédia & ecu)

Le choix entre les deux variantes est relativement aisé :

  • Si on ne discute qu'avec le bus MMU, on évite le risque d'envoyer des trames "erronnées" vers l'ECU. On reste focalisé sur le sujet "poste audio". C'est plus sûr, ça libère la prise OBD. Par contre, on s'interdit de lire des données qui ne sont pas dans la télémétrie d'origine.
  • Si on discute avec MMU et ECU, on s'autorise à lire toutes les données moteurs, ce qui peut être très utile sur et hors circuit. Par contre, on prend le risque d'envoyer des trames parasites sur le CAN ECU et d'obtenir des messages d'erreur moteur.

Pourquoi peut on avoir des messages d'erreurs voir d'arrêt d'urgence de la part de l'ordinateur de bord ?

Le protocole CAN utilisé par Renault est relativement standard et à surtout comme particularité de ne pas prévoir ni sécurité ni handshaking des informations échangées. Cela veut dire que tout parasite sur le bus CAN (court-circuit, défaut de masse, trame erronnée envoyée par un système défaillant) est automatiquement interprété ou exécuté par l'ECU comme "légitime".

Dans mes multiples tests, et surtout erreurs, j'ai par exemple déclenché une alerte "bris de vitre imminent" :) J'ai aussi réussi à mettre tous les systèmes défaillants et le véhicule à l'arrêt.

Heureusement, lorsqu'on coupe le moteur, débranche le système défaillant ou parasite et qu'on redémarre, tout revient dans l'ordre. Pourquoi ? tout simplement parce que le système redémarre et renvoit toutes les trames de contrôles. Par défaut, si elles ne retournent pas à nouveau le "code défaut" alors le système considère qu'il a été "réparé".

Attention au dongle OBD II Chinois : On peut parfois être tenté d'acheter un dongle OBD II ultra plat, souvent d'origine chinoise, notamment aussi parce que le prix est très faible (moins de 15 euros). La qualité des composants est aléatoire. Vous pouvez provoquer les parasites dont je parle simplement en utilisant ce type de dongle. Si vous rencontrez des alertes en branchant ou en interrogeant votre dongle OBDII , posez vous la question de sa qualité. Pour ma part, l'un de mes dongles provoquait une alarme "défaut ABS" systématiquement au démarrage du véhicule.

Les commandes au volant

Les commandes au volant (commodo) sont d'origines Renault voir assez courante dans les CLIO, Trafic ou autre véhicule d'entrée de gamme Renault. Je ne mets pas de photo mais vous avez 6 boutons :

Haut Gauche.(src) - Haut Droite.(tel+voix)

Volume (+) Volume (-)

Bas Droite. (Ok)

Au dos, une molette permettant de passer à la musique suivante ou précédente.

Les commandes au volant sont envoyés vers le poste via le BUS CAN MMU sous la forme d'une trame spécifique :

Adr. D1.D2

02D0 XX YY

Adr : Adresse de la trame. Cette adresse, unique, permet de reconnaitre qu'il s'agit des commandes au volant

D1 : Sur un octet, l'information code entre 0 et 255 la position de la molette au dos du commodo. Si vous tournez vers le haut, D1 = D1+1, si vous tournez vers le bas D1 = D1-1

D2 : Sur un octet, l'état des autres boutons avec le codage suivant :

0: toutes les touches relachées

1: Bouton du bas

2: Bouton Haut Droite

4: Bouton Haut Gauche

8: Volume DOWN

16: Volume UP

24: MUTE

Les postes Android sont majoritairement d'origine Chinoise et utilisent une reconnaissance soit de type "série" soit de type impédance des commandes aux volants. Vous allez trouver à l'arrière du poste un faisceau dont deux fils vont attirer votre attention : KEY1 et KEY2. KEY1 et KEY2 sont interprétés par les postes de plusieurs manières :

  1. KEY1 + KEY2 : En général, correspond à l'utilisation d'un protocole de liaison série ou KEY1=Tx (transmit) et LEY2=Rx (receive). Mais le génie des fabricants est de ne pas fournir de documentation sur le protocole, le débit a utiliser etc.
  2. KEY1 fournit une différence d'impédance (en ce cas KEY2 est "en l'air" ou sur GND) : Le poste détecte sur la ligne KEY1 les variations d'impédances et identifie la correspondance à une touche en fonction des niveaux.

La très grande majorité des postes fonctionnent ainsi même les postes occidentaux présentent rarement une option pour accèder directement au BUS CAN pour pouvoir ensuite rechercher/décoder les trames. Par ailleurs, chaque constructeur (Renault comme les autres) implémente son propre "langage", même si certaines trames sont standards via OBD, en direct, le constructeur a adapté à son besoin les échanges. Le poste devra donc être fourni avec un "programme" pour gérer le bus CAN du constructeur. C'est pourquoi vous voyez fleurir, notamment chez Alibaba, des boitiers adaptateurs dont l'objectif est d'interpréter les trames du BUS CAN, de reconnaitre celles représentant les commandes au volant et de fournir ensuite l'information transcrite au poste Android soit via Key1, Key1+Key2 ou directement sur une entrée CAN du poste.

On pourrait donc acheter l'un de ces boitiers pour reprendre les commandes au volant sur l'Alpine.

Decodeur CANBUS pour Renault Mégane

Toute la difficulté est d'obtenir de la documentation sur les entrèes Key1, Key2 voir CAN des postes et sur le brochage (réel) du décodeur. Manifestement, il existe 3 ou 4 fabricants de poste Android. Aucun ne livre ni ne documente réellement ses postes et l'accès au support est impossible ou nullissime.

Après avoir testé une CANBOX pour CLIO et CAPTUR et un boitier similaire pour CLIO et TRAFIC, je suis arrivée à la conclusion que ne maîtrisant ni le brochage réel de chaque boitier ni la logique de connection sur le poste Android, qu'il faudrait des années de tests avant de trouver la bonne combinaison. Inversement, un "fabricant" de boitier adaptateur finira par ajouter l'Alpine à son boitier.

J'ai donc décidé de créer ma propre "CANBOX" en m'appuyant sur un boitier Arduino et un relais CANBUS ayant pour objectif de "repérer" la fameuse trame 02D0 et d'envoyer le différentiel d'impédance vers la ligne KEY1 du poste.

Le projet

  • Installer un poste Android à la place du poste Alpine
  • Fabriquer un faisceau pour récupérer Alimentation et Haut Parleurs
  • Prendre en comte le micro intégré de l'Alpine
  • Raccordement sur le BUS CAN
  • Raccordement de l'USB sur la console centrale
  • Utilisation de l'Antenne Radio Alpine
  • Utilisation de l'Antenne GPS
  • Ajout d'une Antenne 4G