[TUTO] Adaptateur pour SMEG/NAC/Matrice CAN2010 sur BSI CAN2004

1) Your EEPROM is probably containing a bad language value so reset it using resetEEPROM and/or set listenCAN2004Language to false

2) Reminder:
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE

Feel free to contribute to the project, don't expect me to make the work for you (I don't have any RT6 to debug this)
 

Vlud again, your project its great produce and open things to life! for sure let us play with that to make it in full house like beta testers. and without you itll never hapen:)
 

Salut Vlud , un grand merci a toi pour avoir partagé ce tuto!! je suis en attente de tout recevoir pour passé a l'acte , mais j'ai une petite question concernant les 3 boutons nécessaire , il y a t'il pas la possibilité de les déporter ? style dans le vide poche ou même sur les petits boutons noir a coté du warning?j'ai essayé de t'envoyer un mp mais apparemment je ne suis pas habilité pour.
Encore une fois merciiii
 

J'ai encore une question , j'ai reçu aujourd'hui mon smeg + que j'allais tester dans ma 308 T7 mais le gros doute que j'ai c'est que l'écran a 3 fiches , 1 SMEG ->ecran , une marron pou l'alimentation mais la noire j'arrive pas a trouvé a quoi elle correspond ? si quelqu'un peux me dire je suis vraiment intéressé
merci
 


Salut, Je viens de monter NAC HU sur ma Peugeot 607 2005 et ça marche. Dans ma voiture, j'ai le BSI 2004. Tout d'abord, j'ai connecté HU sans adaptateur CAN. Cela fonctionnait, mais certaines options étaient impossibles à voir / à modifier, telles que les paramètres de langue, les paramètres de date / heure.

Ensuite, j'ai construit un adaptateur CAN et tout fonctionne à merveille. Mon concessionnaire Peugeot a utilisé le télécodage du numéro de VIN. Il était surpris que le CNA dans une vieille voiture fonctionne et le fait gratuitement. Maintenant, j'ai acheté (auprès de mon concessionnaire Peugeot également) une caméra de recul et mon revendeur a essayé de la télécoder, mais les options telles que la caméra et les capteurs de stationnement sont bloquées (grisées) dans Diagbox. Il n'a aucune idée de comment utiliser le télécodage pour ces options. Y a-t-il un moyen de le changer?

Un autre problème est l’adaptateur CAN: c’est assez gros, et j’essaie maintenant de projeter une carte avec ESP32 et deux récepteurs CAN. Si je le fais, je le publierai ici.

La dernière chose est le pouvoir. Je l'ai connecté à la sortie BSI, qui s'éteint après 2 minutes d'inactivité. L'avantage de cette solution est un démarrage plus rapide du système et je n'ai pas besoin de minuterie. Maintenant, quand je viens le matin à ma voiture et que j'utilise une télécommande, le système NAC est prêt à être utilisé immédiatement après le changement de contact. Merci les gars pour ce guide, spécialement VLud - vous l'avez très bien fait.

Et enfin désolé pour cette traduction, mais je ne connais pas du tout le français.

-----

Hello,
I just mounted NAC HU in my Peugeot 607 2005 and it works. In my car I have BSI 2004. Firstly I've connected HU without CAN adapter. It was working, but some options wasn't unable to see/change, like Language Settings, Date/Time Settings.

Then I've built CAN adapter and everything works like a charm. VIN Number telecoding did my Peugeot Dealer. He was surpsised, that NAC in old car works and did it free of charge.
Now I've bought (by my Peugeot dealer also) backup camera and my dealer tried to telecoding it, but the options like camera and parking sensors are blocked (grayed out) in Diagbox. He has no idea how to do telecoding for these options. Is there any way to change it?

Another thing is CAN adapter - its quite big and now I'm trying to project PCB with ESP32 and two CAN receivers. If I do it, I will publish it here.

Last thing is power. I've connected it to BSI output, which is shutting down after 2 minutes of inactivity. The advantage of this solution is faster system starting and I do not need any time switch. Now, when I come in the morning to my car and I use remote, the NAC system is ready to use immediately after switching ignition.

Thanks guys for this guide, specially VLud - you did it very good.

And finally sorry for this translation, but I don't know french at all.
 


J'ai un 2011 c5 X7 avec Smegiv2 installé, j'ai acheté et trouvé Nac wave2 à installer mais il ne montre aucun signe de vie et d'écran noir. BSI avevo CAN 2004
 


@VLud i'm installing a DS3 NAC into my older CAN2004 DS3. I also got the 3 buttons from the donor car, they are being shipped now. I think the reference is the same, will know for sure when it arrives. But i can not find the pinout for these buttons in the citroen schematics for a car with a NAC. Any idea? Could it be similar to the 208, if so, what is the pinout on a 208?
 

Don't mind, found it. CANBUS signal is generated by the speedo as all the buttons in the car are wired into it.
Guessing my old speedo (one from the first 1000 racings) won't be able to generate this canbus signal, arduino is the way to go then.
 

I was wondering what the frame is that sends the VIN from the BSI to the NAC module. I have a NAC and corresponding BTA, was lucky enough that they didn't scrap it afterall.

Now, having to use the adapter i was wondering if i could trick the NAC by changing the VIN using the adapter. So i don't need to change the BSI but have access to the services using the BTA on donor VIN.
 

Hello VLud I made an arduino adapter and 2 CAN-Bus Shield v2.0 cs9 cards are on top and connected to nac a cs 10 on the bottom and connected to bsi can ds3.
Navi won't run black screen, that's something wrong
 

To add the buttons from a DS3 as analog inputs:

Code:
Add in setup():
  //Initialize buttons - MENU/VOL+/VOL-
  pinMode(4, INPUT_PULLUP);
  pinMode(5, INPUT_PULLUP);
  pinMode(6, INPUT_PULLUP);

Add in loop() just after int tmpVal;:
  // Receive buttons from the car
  int tmpVal = digitalRead(4);
  // Menu button
  if (tmpVal == LOW) {
    canMsgSnd.data[0] = 0x80;
    canMsgSnd.data[1] = 0x00;
    canMsgSnd.data[2] = 0x00;
    canMsgSnd.data[3] = 0x00;
    canMsgSnd.data[4] = 0x00;
    canMsgSnd.data[5] = 0x02;
    canMsgSnd.data[6] = 0x00;
    canMsgSnd.data[7] = 0x00;
    canMsgSnd.can_id = 0x122;
    canMsgSnd.can_dlc = 8;
    CAN1.sendMessage( & canMsgSnd);
    if (SerialEnabled) {
      Serial.println("Menu");
    }
  }
  // VOL-
  tmpVal = digitalRead(5);
  if (tmpVal == LOW) {
    canMsgSnd.data[0] = 0x04; //Volume down
    canMsgSnd.data[1] = 0x00;
    canMsgSnd.data[2] = 0x00;
    canMsgSnd.can_id = 0x21F;
    canMsgSnd.can_dlc = 3;
    CAN1.sendMessage( & canMsgSnd);
    if (SerialEnabled) {
      Serial.println("Volume -");
    }
  }
  // VOL+
  tmpVal = digitalRead(6);
  if (volmas == LOW) {
    canMsgSnd.data[0] = 0x08; //Volume up
    canMsgSnd.data[1] = 0x00;
    canMsgSnd.data[2] = 0x00;
    canMsgSnd.can_id = 0x21F;
    canMsgSnd.can_dlc = 3;
    CAN1.sendMessage( & canMsgSnd);
    if (SerialEnabled) {
      Serial.println("Volume +");
    }
  }

To change the VIN, if you want to keep donor VIN in NAC/BTA but keep original VIN in BSI:
Values are HEX ASCII values.
Code:
Add in // Receive CAN messages from the car:
      } else if (id == 822 && len == 3) { // ASCII coded first 3 letters of VIN
        canMsgSnd.data[0] = 0x56 //V
        canMsgSnd.data[1] = 0x46 //F
        canMsgSnd.data[2] = 0x37 //7
        canMsgSnd.can_id = 0x336;
        canMsgSnd.can_dlc = 3;

        CAN1.sendMessage( & canMsgSnd);
      } else if (id == 950 && len == 6) { // ASCII coded 4-9 letters of VIN
        canMsgSnd.data[0] = 0x53 //S
        canMsgSnd.data[1] = 0x41 //A
        canMsgSnd.data[2] = 0x48 //H
        canMsgSnd.data[3] = 0x4E //N
        canMsgSnd.data[4] = 0x50 //P
        canMsgSnd.data[5] = 0x53 //S
        canMsgSnd.can_id = 0x3B6;
        canMsgSnd.can_dlc = 6;

        CAN1.sendMessage( & canMsgSnd);
      } else if (id == 694 && len == 8) { //ASCII coded 10-17 letters (last 8) of VIN
        canMsgSnd.data[0] = 0x00 //X
        canMsgSnd.data[1] = 0x00 //X
        canMsgSnd.data[2] = 0x00 //X
        canMsgSnd.data[3] = 0x00 //X
        canMsgSnd.data[4] = 0x00 //X
        canMsgSnd.data[5] = 0x00 //X
        canMsgSnd.data[6] = 0x00 //X
        canMsgSnd.data[7] = 0x00 //X
        canMsgSnd.can_id = 0x2B6;
        canMsgSnd.can_dlc = 8;

        CAN1.sendMessage( & canMsgSnd);
      }

Can someone confirm if the logic is correct? Especially the button command send to NAC.
 
  • J'aime
Reactions: Almeria63

V3nn3tj3, te przyciski można podłączyć do adaptera Vlud.
Czy musi być dostępny drugi adapter sterowania przyciskiem?
I czy przyciski są podłączona do ardiuno,
 
Dernière édition:

Hello you all!
finally I completed my installation of NAC on my C4 VTS and this is the result.
I'd like to thank @VLud for his inestimable work!
Almost all works perfectly. I choosed to fit one dedicated fmux to avoid troubles
with che control of the multifunction display.
By now the only thing still not working (excluding vehicle settings) is the vocal control.
I used this 8' screen because to find a NAC screen for C4 is a bit hard and still too expensive,
anyway this one looks nice for me.
Merry Christmas!!!
View media item 1957
 

I'd like to thank @VLud for his inestimable work!
Almost all works perfectly. I choosed to fit one dedicated fmux to avoid troubles
with the control of the multifunction display.
By now the only thing still not working (excluding vehicle settings) is the vocal control.

Very well done ! ;)

I'm about to finish my installation on a C3 (where I didn't add the DS3 three buttons) and I do need to investigate the frames to get the vehicle controls (diagnostic, resetting tire pressure values...). I guess I should put back my RD4 to sniff the right frames unless his royal Highness VLud or Lord V3nn3tj3 had already captured that before !! :ange:

I'll keep you upated on that. Thanks to all for this great tutorial and its evolutions ! :bien:
 
  • J'aime
Reactions: g-luka

@V3nn3tj3 : Yes you got it, take care because I think menu buttons are generating a -12V which would fry your Arduino inputs (must be positive voltage and under 5V which require additional things)
 

@VLud : Thanks for the info! What do you think about the VIN idea also?

I was wondering about the 0x169, 0x260 and 0x361 frames. It says in your .ino file you still have some investigation to do. Is this something you are still looking into? Am i correct to assume that when these are not send to the NAC it uses the configuration parameters in the NAC (that we push with you soft)?
 

I was wondering what the frame is that sends the VIN from the BSI to the NAC module. I have a NAC and corresponding BTA, was lucky enough that they didn't scrap it afterall.

Now, having to use the adapter i was wondering if i could trick the NAC by changing the VIN using the adapter. So i don't need to change the BSI but have access to the services using the BTA on donor VIN.
just change the VIN in BTA and NAC to the same as BSI :)
 



Simple pcb for Dualcan for use with Nano

1.png
2.png
 

After change my navi unit trip computer reset doesn't work anymore. Does anybody know how to get it working again?
Second question is how to get working Power button to put navi unit in sleep mode? I've checked communication from multifunction control switch panel (from 3008 II) and there is no any CAN frame by Power button (also Volume knob) pressing. There is only analog signal from the panel and its output +12V by button pressing.
 

what part of the sketch needs changing for nac fitted in a 2012 can2004 c5
to get multi language selection i did change 1 line to 1 from 0 now is in english my next problem is knowing what to change as trip computer is only in km kml will not change to mpg mph
also how to get the nac to change settings on the car lighying locking parking on off etc
 

Just changing

bool listenCAN2004Language = true;

to

bool listenCAN2004Language = false;

should fix your issues.

-

Personalization is not supported, reminder:
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License at <http://www.gnu.org/licenses/> for
more details.

Feel free to contribute
 

[QUOTE = "VLud, post: 2607755, member: 108646"] Just changing



to



should fix your issues.

-

Personalization is not supported, reminder:


Feel free to contribute [/ QUOTE]
wat about mpg mph as my trip computer is in km kml only and wont change

thnk you
 

Did you make the change ? You should be able to change to mpg once done, directly from the NAC (Language & Units are inside the same byte)
 

[QUOTE = "VLud, post: 2607952, member: 108646"] Did you make the change? You should be able to change to mpg once done, directly from the NAC (Language & Units are inside the same byte) [/ QUOTE]
i ill check later
so am i right that the nac cannot control the functions of the vehicle parking on off etc lighting ?
 

I don't have the opportunity to dump frames for this (From a SMEG IV2 CAN2004), so no, not until someone makes the conversion code for it.