17-02-2010, 04:06:16
Hello,
A l'époque j'avais fait une étude poussé du NATS-2, j'ai fini par réussir à percer son fonctionnement, peu (voir pas) de doc tourne sur le net ! Le secret est bien gardé des passionnés mais les voleurs sont tous au courant !
J'avais fais une doc à l'époque avec un sondage pour savoir si oui ou non je partage l'info ! Et bien entendu le non l'a emporté avec des arguments qui ne tiennent pas la routes.
Vu le nombre de demande individuel j'ai donc décidé d'ignorer les avertissements des "sages" et de dévoiler étapes par étapes ce secret qui n'en est pas un !
Le NATS-2 :
C'est une clé avec un code (présumé) fixe, un transpondeur avec un code tournant, un ECU avec un code tournant, la chaine est simple :
clé - transpondeur - ecu
si l'un des éléments est différent il ne se passe rien !
Comme le code est tournant il y a une synchronisation entre le transpondeur et l'ECU.
Si l'on démarre le moteur et que les ensembles sont synchronisés, le moteur démarre et le code tourne, si l'on démarre avec un maillon qui n'est pas synchroniser il ne se passe rien et le code ne tourne pas.
Il est possible de synchroniser un ECU (on y revient plus tard), si on as deux ECU synchroniser sur un même transpondeur, celui qui va démarrer le moteur va automatiquement désynchroniser l'autre, empêchant l'autre de mouvoir le moteur, du coup qu'un seul ECU pourra fonctionner.
Mais si les ECU ne sont pas reprogrammable... où est stocké ce code ? Car après tout les dump de ROM sont toujours identique sur deux ECU identique et pourtant seul un ECU arrivera à démarrer la voiture !
Enfaite il est là :
Cette petite carte, entre deux autres ! Il y a une puce qui ressemble à ça :
Inutile de taper sur google les références, vous ne trouverez rien, pour cela faut avoir un minimum de jugeote et un paquet d'expérience, habitué à bosser et voir des composants j'arrive à déterminer le type de composant avec un requête sur google :
"SOIC 8 pin National Semiconductor serial eeprom"
-SOIC 8 c'est le type de boitier
-National Semi c'est le logo qui est sur le boitier
-serial eeprom c'est ce que je pense que c'est (vu le faible nombre de pin et le type de signaux aux bornes qu'on verra plus tard)
Ayant déjà repéré l'alimentation en +5V et la masse il suffit de fouiller dans les datasheet et regarder si la disposition des pin d'alimentation peuvent correspondre, ça permet de faire un trie, ensuite il suffit de regarder si le package correspond au type de signaux...
on en conclu que c'est ce datasheet qui colle le plus à ce qu'on as :
http://nutcracker.free.fr/Nissan/P11GT/NATS/93c66.pdf
Mais est-ce une 256, 1024, 2048 ou 4096 bit ? ça on va très vite le voir plus tard !
En fouillant le net avec la référence de ce composant on trouve d'un coup de la doc sur un câble "K-line" en gros le "k-line" c'est un ligne bidirectionnel, communication sériel classique ! On y revient plus tard !
Avec un oscilloscope on trouve ceci :
Voici le graph "CS" vs "CLK" (activation de la puce et horloge) :
Intéressant, il y a 6 cycles !
Voici le graph "CLK" vs "DI" (horloge vs données entrantes) :
la même chose mais avec "CS" (activation vs données entrantes) :
tiens il y a un truc très intéressant ! 3 Cycles sur 6 renvoie peut être des données !
(horloge vs données sortantes)
(activation vs données sortantes)
Tout ceci est très intéressant ! On consulte le datasheet, avec le nombre d'impulsions d'horloge on arrive très rapidement à déduire le type de mémoire, c'est une 1024 bits, on bricole un montage avec le port parallèle du PC, un petit soft sous linux avec gcc (je laisse le Java, C#, VB, .net à ceux qui aime déféquer sur l'écran)
Et on a un jolie dump que voilà :
la lecture se fait par mot de 16 bits, il y a donc 64 mots :
Ne tenez pas compte de la coloration, c'était pour une explication sur le forum où j'ai initialement traité (et où je traite encore) le sujet.
Et l'installation dans tout ça ?
Nous avons là une installation digne d'un bureau d'étude ! lol !
Où la qualité des installations et du matériel employé est un gage de réussite ^^
Aucune place au hasard !
Non aucune !
Un résumé un peu plus détaillé se trouve dans ce pdf (imcomplet) :
http://nutcracker.free.fr/Nissan/P11GT/N..._nats2.pdf
FAQ :
Si mon ECU est mort et que j'en trouve un d'occaz, comment faire pour qu'il puisse fonctionner sans me prendre la tête avec le NATS ?
C'est simple ! il suffit de déssouder la petite carte et de l'installer dans le nouvel ECU, si la mémoire n'est pas morte aucun problème !
Alors voilà, le pavé est jeté dans la marre, voulez vous la suite ?
A l'époque j'avais fait une étude poussé du NATS-2, j'ai fini par réussir à percer son fonctionnement, peu (voir pas) de doc tourne sur le net ! Le secret est bien gardé des passionnés mais les voleurs sont tous au courant !
J'avais fais une doc à l'époque avec un sondage pour savoir si oui ou non je partage l'info ! Et bien entendu le non l'a emporté avec des arguments qui ne tiennent pas la routes.
Vu le nombre de demande individuel j'ai donc décidé d'ignorer les avertissements des "sages" et de dévoiler étapes par étapes ce secret qui n'en est pas un !
Le NATS-2 :
C'est une clé avec un code (présumé) fixe, un transpondeur avec un code tournant, un ECU avec un code tournant, la chaine est simple :
clé - transpondeur - ecu
si l'un des éléments est différent il ne se passe rien !
Comme le code est tournant il y a une synchronisation entre le transpondeur et l'ECU.
Si l'on démarre le moteur et que les ensembles sont synchronisés, le moteur démarre et le code tourne, si l'on démarre avec un maillon qui n'est pas synchroniser il ne se passe rien et le code ne tourne pas.
Il est possible de synchroniser un ECU (on y revient plus tard), si on as deux ECU synchroniser sur un même transpondeur, celui qui va démarrer le moteur va automatiquement désynchroniser l'autre, empêchant l'autre de mouvoir le moteur, du coup qu'un seul ECU pourra fonctionner.
Mais si les ECU ne sont pas reprogrammable... où est stocké ce code ? Car après tout les dump de ROM sont toujours identique sur deux ECU identique et pourtant seul un ECU arrivera à démarrer la voiture !
Enfaite il est là :
Cette petite carte, entre deux autres ! Il y a une puce qui ressemble à ça :
Inutile de taper sur google les références, vous ne trouverez rien, pour cela faut avoir un minimum de jugeote et un paquet d'expérience, habitué à bosser et voir des composants j'arrive à déterminer le type de composant avec un requête sur google :
"SOIC 8 pin National Semiconductor serial eeprom"
-SOIC 8 c'est le type de boitier
-National Semi c'est le logo qui est sur le boitier
-serial eeprom c'est ce que je pense que c'est (vu le faible nombre de pin et le type de signaux aux bornes qu'on verra plus tard)
Ayant déjà repéré l'alimentation en +5V et la masse il suffit de fouiller dans les datasheet et regarder si la disposition des pin d'alimentation peuvent correspondre, ça permet de faire un trie, ensuite il suffit de regarder si le package correspond au type de signaux...
on en conclu que c'est ce datasheet qui colle le plus à ce qu'on as :
http://nutcracker.free.fr/Nissan/P11GT/NATS/93c66.pdf
Mais est-ce une 256, 1024, 2048 ou 4096 bit ? ça on va très vite le voir plus tard !
En fouillant le net avec la référence de ce composant on trouve d'un coup de la doc sur un câble "K-line" en gros le "k-line" c'est un ligne bidirectionnel, communication sériel classique ! On y revient plus tard !
Avec un oscilloscope on trouve ceci :
Voici le graph "CS" vs "CLK" (activation de la puce et horloge) :
Intéressant, il y a 6 cycles !
Voici le graph "CLK" vs "DI" (horloge vs données entrantes) :
la même chose mais avec "CS" (activation vs données entrantes) :
tiens il y a un truc très intéressant ! 3 Cycles sur 6 renvoie peut être des données !
(horloge vs données sortantes)
(activation vs données sortantes)
Tout ceci est très intéressant ! On consulte le datasheet, avec le nombre d'impulsions d'horloge on arrive très rapidement à déduire le type de mémoire, c'est une 1024 bits, on bricole un montage avec le port parallèle du PC, un petit soft sous linux avec gcc (je laisse le Java, C#, VB, .net à ceux qui aime déféquer sur l'écran)
Et on a un jolie dump que voilà :
la lecture se fait par mot de 16 bits, il y a donc 64 mots :
Ne tenez pas compte de la coloration, c'était pour une explication sur le forum où j'ai initialement traité (et où je traite encore) le sujet.
Et l'installation dans tout ça ?
Nous avons là une installation digne d'un bureau d'étude ! lol !
Où la qualité des installations et du matériel employé est un gage de réussite ^^
Aucune place au hasard !
Non aucune !
Un résumé un peu plus détaillé se trouve dans ce pdf (imcomplet) :
http://nutcracker.free.fr/Nissan/P11GT/N..._nats2.pdf
FAQ :
Si mon ECU est mort et que j'en trouve un d'occaz, comment faire pour qu'il puisse fonctionner sans me prendre la tête avec le NATS ?
C'est simple ! il suffit de déssouder la petite carte et de l'installer dans le nouvel ECU, si la mémoire n'est pas morte aucun problème !
Alors voilà, le pavé est jeté dans la marre, voulez vous la suite ?