[TUTO] Adaptateur pour SMEG/NAC/Matrice CAN2010 sur BSI CAN2004
Je ne fourni aucune garantie de fonctionnement sur votre véhicule, il est probable que vous ayez un peu de débogage à faire en fonction de votre voiture
---
Voici un tuto qui vous servira à fabriquer votre adaptateur CAN-BUS pour votre voiture CAN (tuto incompatible avec les véhicules en VAN) avec un RNEG2 / NG4 / RNEG / RD45 / etc, cela vous permettra d'y monter les boîtiers
télématiques les plus récents de chez PSA (par ex: le SMEG+IV2 / le NAC). En effet le SMEG+IV2 / NAC est monté sur BSI 2010, plus évolué que le BSI "tout court" évolué
Cet "adaptateur" qu'on pourrait plutôt appeler passerelle sert à modifier / envoyer des messages que le boitier télématique ne comprend / traite pas ou que le BSI n'envoie pas du tout. En effet le BSI 2010 sauvegarde pas mal
de petites choses en plus: l'heure, la date, la langue de l'interface, etc. Ces taches étaient auparavant délaissées au boitier télématique / combiné.
--
Coût total approximatif: 100€
--
Liste de courses
-
2 cartes CAN-Bus Shield 1.2 (aussi dispo
ici) - environ 27€ TTC ou 2 cartes
CAN-BUS Shield 2.0 (les 1.2 étant en rupture un peu partout, les 2.0 sont plus chères avec un port
microSD inutile)
-
Un fer à souder de faible puissance (Antex 12W par ex) ou à température réglable et
un peu d'étain (au plomb c'est mieux, ça fond plus vite) - environ 30€
Liste de courses optionnelle mais recommandée
--
Etape 1
Vos cartes CAN-BUS Shield arrivent avec leur PIN Ă souder vous-mĂŞme:
Je vous recommande de travailler sur une planche bien plane pour éviter que les connecteurs ne soient trop vers l'extérieur ou trop vers l'intérieur, c'est galère à rattraper après: souder un PIN de chaque bloc bleu pour
vous assurer qu'il soit bien perpendiculaire Ă la carte avant de passer aux autres, si ajustement il y a, ce sera plus simple.
Voila pourquoi vous avez grand intérêt à avoir un fer de basse puissance et avec une petite panne, il faut mettre un peu d'étain sur chaque PIN, attention au sens du connecteur ISP, il doit être monté dans l'autre sens !
La bonne technique c'est de chauffer d'abord le PIN et la pastille avec la panne du fer Ă souder puis d'approcher l'Ă©tain
Rappel:
Etape 2
Vous devez retirer la résistance de 120 Ohm placée en fin de circuit CAN-BUS sur les deux cartes CAN-BUS Shield pour éviter de générer des erreurs / problèmes sur le réseau.
Il suffit simplement de chauffer la résistance, attendre que l'étain fonde et la pousser avec l'objet de votre choix pour la dessouder totalement, inutile de la garder => poubelle
Ajoutez de l'isolant (ruban adhésif, etc) sous le connecteur DB9 pour éviter le contact à la masse des PINs du connecteur avec le port USB. Mettez également l'interrupteur sur OFF
Etape 3
CAN-BUS Shield 1.2 / 1.5
Modification d'une des cartes Shield, par défaut la carte communique grâce au PIN 10 (PWM 10) de l'Arduino, on ne peut pas faire fonctionner deux cartes sur le même PIN, nous allons donc bidouiller un petit peu.
Il faut couper à la pince coupante le PIN 10 d'une de vos cartes Shield à mi-hauteur et le plier en direction du PIN 9 (MVM 9). Une fois ceci fait il faut simplement faire un gros pâté d'étain entre les deux PIN. Et
c'est tout, le PIN 10 ne sera plus connecté à la carte inférieure et sera redirigé vers le PIN 9 (qui est officiellement libre sur la documentation de la carte Shield)
​
CAN-BUS Shield 2.0
Modification d'une des cartes Shield, par dĂ©faut la carte communique grâce au PIN 9 (PWM 9) de l'Arduino, on ne peut pas faire fonctionner deux cartes sur le mĂŞme PIN, nous allons donc modifier la configuration des PIN Ă
l'arrière de la carte.
Coupez la connexion avec un cutter comme indiqué:
Puis soudez comme suit:
​
Avec cette petite bidouille on peut maintenant gérer deux cartes avec un seul Arduino
Etape 4
Branchez les connecteurs 2 voies (peu importe leur forme) en les dénudant et vissant sur les cartes CAN-BUS Shield
Etape 5
Branchement du module RTC, il va nous servir Ă garder l'heure en mĂ©moire quand le boitier tĂ©lĂ©matique et l'Arduino est Ă©teint. D'après Internet, la pile bouton doit pouvoir tenir 30 ans, la voiture sera Ă la casse d'ici lĂ
Et au pire, on peut la changer si nécessaire.
Il faut souder 4 câbles DuPont mâles > femelles sur le connecteur I2C
Vous branchez l'autre côté des câbles DuPont (femelle) sur le module RTC en respectant le PINOUT inscrit sur les cartes
Enfichez les 3 cartes entre elles, l'Arduino et les 2 cartes CAN-BUS Shield.
CAN-BUS Shield 1.2 / 1.5
Mettez la carte bidouillée vers le PIN 9 en haut, c'est celle qui sera connectée au boitier télématique.
CAN-BUS Shield 2.0
Mettez la carte non modifiée en haut, c'est celle qui sera connectée au boitier télématique.
Etape 6
Ici vous avez le choix entre bidouiller le faisceau d'origine (pas recommandé) et utiliser une rallonge (Phonocar 4/790) pour récupérer l'alimentation et faire la redirection du CAN Multimédia vers l'Arduino
Voici le PINOUT du connecteur, quelques variantes sur les modèles plus anciens, mais l'alimentation principale et le CAN Divertissement / Multimédia High et Low est toujours au même endroit:
Vous devez donc sectionner le CAN Div High et CAN Div Low, y relier (soit avec des dominos, soit avec des gaines thermorétractables avec étain) les connecteurs Mâle / Femelle en fonction de ce que vous avez mis comme connecteur
sur vos cartes Shield
Rappel: carte Shield la plus haute modifiée vers le PIN 10 = Arduino > Télématique
On sectionne aussi le 12V Principal et sa masse pour brancher notre abaisseur de tension / allume-cigare USB en dérivation cette fois-ci (il faut bien continuer d'alimenter le boitier télématique).
Pour l'allume cigare vous avez le choix entre casser sa coque plastique et souder directement les fils sur la carte interne ou vous soudez directement les fils sur le téton (+) et un des crochets sur le côté (-)
Ne pas oublier d'isoler le tout
Grâce à l'alimentation repiquée ici on est sûr que l'Arduino s'allume en même temps que le boitier télématique (car oui il est alimenté bien avant que vous mettiez le contact, dès le déverrouillage de la voiture avec la clé)
N'oubliez pas de déclipser les blocs blanc / noir sur le faisceau d'origine pour les rebrancher sur la rallonge, dans le bon ordre (voir schéma, bloc B et C).
Autre solution, ajouter sur la rallonge un
Phonocar 4/617
En fonction de votre voiture et de la place que vous avez je vous conseille d'ajouter du fil (Automobile Multi-brins 1mm2 de préférence) entre les connecteurs qui vont vers l'Arduino et la rallonge, il y a souvent plus de place
dans la console centrale / derrière la boite à gants (en plus c'est souvent plus facile d'accès pour la maintenance
)
Moi j'ai choisi la console centrale, en soulevant légèrement le cache sur le côté j'ai accès à mon allume-cigare USB et l'embout USB qui va vers l'Arduino, avec une rallonge USB je peux travailler facilement sur le code avec mon
PC Portable dans la voiture sans rien démonter
Fabrication de votre boitier
Impensable de laisser votre Arduino tel quel dans la planche de bord de votre voiture, vous avez quartier libre pour fabriquer votre petit boitier afin de l'isoler des parties métalliques, n'oubliez pas de laisser le port USB
disponible depuis l'extérieur.
Voici le mien, imprimé avec une imprimante 3D (modèle dispo par MP pour les intéressés):
Installation de l'IDE Arduino
Récupérez et installez l'IDE compatible avec votre système d'exploitation directement sur
https://www.arduino.cc/en/Main/Software
Ajout des librairies nécessaires au projet dans votre IDE
Téléchargez ces 3 fichiers .zip :
-
arduino-mcp2515.zip - Librairie pour gérer les cartes CAN-BUS Shield
-
DS1307RTC.zip - Librairie pour gérer le module RTC
-
Time.zip - Librairie pour travailler sur l'heure
Et ajoutez les une par une via ce menu:
Compiler le programme
Et voici enfin le principal, ce qui m'a pris plusieurs heures d'analyse / d'essais / de batterie Ă plat :
arduino-psa-comfort-can-adapter.ino
Vous avez le choix entre copier le code source depuis le RAW et enregistrer le fichier .ino ou bien récupérer le ZIP du master pour directement récupérer le .ino et les ZIP des librairies
Uploader le programme
Branchez votre Arduino en USB sur votre ordinateur.
Vous n'avez plus qu'à uploader le programme sur votre Arduino en cliquant sur la flèche allant à droite, vérifiez bien dans Tools > Port que vous avez bien sélectionné le bon port.
DĂ©bogage / VĂ©rification
Vous pouvez vérifier les messages de debug directement via la console série (attention à bien vérifier que le "baud rate" est bien à 115200) en changeant au préalable debugGeneral à "true":
Evidemment si vous voulez voir quelque chose d’intĂ©ressant il faut que vous connectiez l'Arduino en USB sur votre PC Portable pendant qu'il est connectĂ© au CAN-BUS de la voiture