L'ECU PM7 (1988-1991)
Introduction :
J'ai décidé d'écrire un article sur la modification des ECU OBD0 et le PM7 en particulier. le PM7 est l'ECU des Civic/CRX 16i16 de 88 à 92. Je crois que c'est le seul article aussi détaillé .... Vous avez de la chance il est en Français. Bien sûr le contenu n'est pas forcement exhaustif, et il faudra sûrement que vous passiez du temps sur
www.pgmfi.org pour en apprendre encore plus !
*
Les explications suivantes vont nécessiter des connaissances de base en électronique, informatique et mécanique automobile. *
Un ECU (Engine Control Unit) est le cerveau du moteur, c'est lui qui va imposer le rythme au moteur en fixant les paramètres d'injection et d'avance à l'allumage en fonction des données qu'il récupère des multiples capteurs de contrôle.
Le contrôle de moteur est un programme tournant à l'interieur de l'ECU, ce programme est la logique de fonctionnement d'un moteur synthétisée pour être exécutée par une machine.
Exemple de logique :
* Paramètres d'entrée :
- Le papillon de gaz est à 100%, le régime à 3000trs/min, la T° d'eau a 80°, la dépression au collecteur 'x' Ingh
* Paramètres de sortie :
- Temps d'injection = 'ti' µs, avance à l'allumage = 'ad' degrés négatifs.
Le programme de l'ECU ne fait que çà, des calculs, tout le temps. Il essaye de toujours d'obtenir le meilleur compromis performance/consommation/pollution pour le moteur. Pour se faire, il contrôle réellement que 2 paramètres essentiels du moteur :
Les timing d'injection et l'avance à l'allumage, et ceci pour chaque cylindre. Et pour parvenir à se résultat il résoud des "équations" de type :
<temps d'injection> = (<statique cartographie d'injection> = fonction(<régime> / <dépression collecteur admission>)) & <T° d'eau> & <angle papillon> & ...
Les ECU Honda (PGM-Fi) étaient très en avance sur le reste de la production mondiale voici une quinzaine d'années (surtout hors production japonaise), puisque se sont des injections séquentielles phasée à contrôle électronique de l'avance à l'allumage. Ce qui veux dire que la vitesse de calcul du microprocesseur est suffisante pour gérer chaque cylindre indépendement jusqu'a + de 8000trs/min.
C'est quoi ODB0 / OBD1 / OBD2 ? :
Ici on va parler du PM7 en particulier. C'est un ECU de type OBD0. "OBD" signifie "On Board Diagnostic", on pourrait croire que c'est un standart et que le brochage va être le même sur toutes les marques ... Et bien non, chaque marque fait comme elle veux ! Et les OBD0,1,2 correspondent à des générations, mais à vrai dire, je ne connais pas l'histoire de cette "pseudo norme".
OBD0 = Honda 88-92
OBD1 = Honda 92-96
OBD2 = Honda 96-??
Codes pannes :
L'OBD0 est super sympa car il nous dit quand il y a une panne et ou elle se situe ! (on board diagnostic) !
Disons que si un capteur est défaillant l'ECU s'en aperçoit et le signale par la lumière jaune CEL (Check Engine Light) au tableau de bord ainsi qu'en clignotant (LED rouge) au niveau du boitier ECU. Il suffit de compter le nombre de clignotements de la diode rouge de l'ECU pour en déduire le N° de code panne.
* Liste des codes pannes PM7 :
# 0 - ECU (Bad ECU)
# 1 - Oxygen Content (Bad O2 sensor) (Sonde O2 )
# 3 - Manifold Absolute Pressure (MAP Sensor)
# 5 - Same as 3
# 4 - Crank Angle (Capteur aac)
# 6 - Coolant Temperature (Temperature d'eau )
# 7 - Throttle Angle (TPS) (potentiométre pap)
# 8 - TDC Position (capteur vitesse position )
# 9 - No. 1 Cylinder Position
# 10 - Intake Air Temperature (IAT) (temperature d'air)
# 11 - Idle Mixture Adjust (IMA) (potentiomètre de réglage de richesse au ralenti)
# 12 - Exhaust Gas Recirculation System (EGR) (recyclage des gaz d'echapp )
# 13 - Atmospheric Pressure (pression atmosphérique )
# 14 - Electronic Air Control
# 15 - Ignition Output Signal
# 16 - Fuel Injector
# 17 - Vehicle Speed Sensor (VSS)
# 19 - Lock-up control solenoid
# 20 - Electric Load
Mais ou est l'ECU ? :
L'ECU est sous les pieds de votre passager(ère). Il faut soulever la moquette sous le tableau de bord au niveau des pieds du passager. Là, apparaitra un "bouclier" métallique retenu par 4 écrous de 10 et en dessous, l'ECU. Une petite fenêtre se situe sur le bouclier afin de pouvoir vérifier un éventuel code panne.
L'ECU paramètrable :
L'ECU Honda PGM-Fi n'est
PAS paramètrable. Son fonctionnement a été déjà paramétré par les ingénieurs motoristes de Honda et ils ont figé cette configuration dans la mémoire de l'ECU. Pour nous l'ECU n'est qu'une boite "noire" métallique qu'on branche et qui ... marche, c'est tout. Ca c'est la dure réalité.
Ceux qui s'interesse au sport auto, ont déjà vu, lors de courses de F1 (par exemple), les ingénieurs courir sur la grille de départ et brancher un ordinateur portable sur la Formule 1 et pianoter. Et oui, ces "voitures" sont équipées d'ECU aussi, mais re-paramètrables à distance. En fait se sont de "super" ECU, extrèmements rapides, capables de ingérer un nombre faramineux de paramètres, piloter la boite de vitesse séquentielle, les stratégies de départ, afficher un tableau de bord digital, etc ... et surtout totalement paramètrable avec un ordinateur portable. Mais au fond ... ils fonctionnent sur le même principe que notre bon vieux PM7, c'est a dire : pilotage de chaque injecteur et avance à l'allumage, un moteur de F1 n'étant qu'un vulgaire moteur à ... pistons !
Du coup quand on voit çà on rêve de pouvoir faire la même chose et re-paramètrer l'ECU de notre Honda avant d'aller chercher le pain le matin car la T° extérieur est de 22° et la pression atmosphérique de 1012 millibars ! :]
Il existe 2 solutions pour se prendre pour un ingénieur motoriste, l'une onéreuse et complexe, l'autre bon marché et plus simple. La première est d'acheter un ECU paramétrable, un Motec, un Sybele, un AEM, un Magnetti Marelli
(la Rolls), etc ... Ca coûte cher et surtout faut refaire en partie le faisceau électrique du moteur. De plus pour régler ce type d'injection (très puissante!) il faut
VRAIMENT savoir ce qu'on fait.
L'autre solution est d'utiliser l'ECU Honda d'origine, non paramètrable, en le rendant ... paramètrable ! C'est le but de cet article.
Un ECU Honda paramètrable ? :
Comment faire pour rendre cette boite "noire" paramètrable ?!? Et bien il faut suivre la voie des "crakers". Le programme informatique qui tourne dans l'ECU peut être espionné, et des gens très doués en informatique industrielle ont réussi à décoder en partie le fonctionnement de l'ECU. Pour simplifier, ils ont isolé les cartographies d'injection et d'avance à l'allumage, la position des valeurs de rupteurs, et plein d'autres choses interessantes. Ils ont même été encore plus loin sur l'ECU PM6 en réussissant la prouesse de recompiler le code source assembleur du programme en y ajoutant des routines particulières comme un boost control, un launch control et même du data-loging !! Ceci dit, il est dangereux d'ajouter trop de code à ces vieux ECU qui tourne en temps réel et qui sont déjà à la limite de leurs performances avec le code d'origine.
Evidement toutes ces modifications sont "artisanales" et plus ou moins "empiriques" dans leurs fonctionnements, mais ont l'avantage de pas coûter grand chose ... C'est ce qu'on appele le DIY aux USA. (Do It Yourself).
Dans cet article on va "simplement" se contenter de suivre la voie des passionnés (
www.pgmfi.org) en ré-utilisant leur ENORME travail de recherche, qu'ils ont eu l'intelligence de partager pour faire avancer les choses. Ils ont compris qu'on travaille beaucoup plus vite à 20 que tout seul ...
Ici on va se débrouiller pour faire exécuter à l'ECU un code modifié, avec de nouvelles valeurs dans les cartographies, etc ...
Logiciels de paramètrage pour ECU Honda :
Le fameux "code" de l'ECU Honda une fois "extrait" de la mémoire se présente sous forme d'un fichier binaire :
Ce fichier contient une longue série de "mots" héxadécimaux correspondant à des données & instructions en assembleur Intel 8052. Pourquoi Intel ? Parce que Le CPU (plus exactement : le microcontroleur) du PM7 est un OKI 83C154, un clone d'
Intel 8052.
La taille du code d'un PM7 est de 16ko, de l'offset 0x0000 à 0x3FFF en mémoire, mais les fichiers font, le plus souvent, 32ko car la mémoire (ROM) de l'ECU fait cette taille, les 16ko restant étant à 0x00 ou 0xFF. Les tableaux correspondant aux cartographies d'injection et d'allumage font 17 lignes x 15 colonnes soit 255 octets. Leurs positions dans le binaire du PM7 est :
- injection = 0x3EF2
- allumage = 0x3CE5
- multiplicateurs de temps d'injection = 0x3FF1 (15 octets)
On pourrait modifier directement des valeurs dans le fichier hexadécimal, mais savoir "quoi" changer et "ou" le changer relève du casse-tête chinois (ou japonais plutôt :] ). De plus, ce fichier possède un "checksum". Si on change ne serait-ce qu'un bit, le programme de fonctionnera plus dans l'ECU. Ou alors il faut recalculer le checksum par cette méthode :
- Utiliser
CHECK8.EXE ou WinHex et calculer le checksum du .BIN .
- Soustraire ce checksum à 0xFF et ajouter 0x01.
- Ajouter cette valeur dans un emplacement libre avant 0x4FFF dans le .BIN
- Revérifier le checksum, il doit valoir 0x00 !
On remarque que faire çà "à l'ancienne" n'est pas pratique ... Heureusement, il existe des logiciels gratuits, écrit par la communauté de
www.pgmfi.org qui vont nous simplier GRANDEMENT la tâche !
* OBD0Edit 1.6, le plus simple étant souvent le plus efficace, ce logiciel est mon préféré pour modifier un code d'origine de PM7 :
* TurboEdit est un éditeur un peu particulier mais TRES puissant. Il est associé à la dernière version de la ROM NGxx de www.pgmfi.org . La NGxx, est basée sur le code de l'ECU PM6 (variante US du PM7), qui a été décompilé, étudié et recompilé avec d'importantes modifications. Cette "NG" est en constante évolution et un éditeur spécifique suivant l'évolution est nécessaire. Informations complémentaires : Forum OBD0 sur forum. pgmfi. org
Fichiers programme PM7 :
-
PM7 "Français" : Programme retiré de mon ECU PM7 de 1989.
-
XE5 : Programme XE5 Mugen Original (PM7 amélioré), aucun rupteur.
-
XE5 + rupteur : Programme XE5 avec rupteur à 7800 réel (environ 8000 au compte tour).
-
NG60 : Actuellement (22/07/05), la dernière version de la NGxx.
Modification de l'ECU Honda :
Le "code" exécuté par le microprocesseur de l'ECU est dans une ROM (Read Only Memory), on ne peut pas modifier ces données, il va falloir remplacer la ROM par une EEPROM : une mémoire reprogrammable autant de fois que désiré. Le soucis avec la plupart des PM7 c'est que cette ROM n'est pas externe ! Par contre pour d'autres PM7 elle est bien externe. En général les ECU 88-89 n'ont pas de puces externe, les 90-91 si. Mais ce n'est malheureusement pas une loi exacte, le seul moyen d'en être sûr est d'ouvrir le boitier.
Les PM7 "interne" ont leur mémoire programme intégrée au CPU, les autres sous forme d'une puce
27C256 soudée sur la carte près du CPU.
Ceux qui ont un ECU avec une puce externe sont les rois, car il suffit de déssouder celle-ci pour la remplacer par un support 28 broches pouvant acceuillir une EEPROM ou Flash-Rom compatible.
* Si votre boitier à une puce 28 broches marquée "M38256AP" vous avez un gros coup de bol, votre PM7 est de type "externe" :
Les autres (la plupart), il va falloir sortir la grosse artillerie pour transformer l'ECU et faire accepter au CPU une puce externe.
* Si le votre est comme çà, vous êtes bon pour une belle séance de bricolage, car vous avez un PM7 "interne" :
Mettre un nouveau code dans une puce :
Afin de faire fonctionner l'ECU avec le nouveau code (fichier binaire) que vous avez bidouillé avec OBD0Edit ou TurboEdit, il vous faut inscrire ce code dans une puce 27C256, 28 pins dual-inline package, temps d'accès inférieur à 120ns. 3 types de puces compatibles existent :
-
27C256 OTP: (One Time Programming). Cette puce se programme avec du 12V, comme un CD on ne peut la graver qu'UNE fois. Puce très bon marché -2 pièce.
-
27C256 UV Erasable: Cette puce se programme avec du 12V, mais peut être effacée, exposée sous un néon particulier émettant une lumière d'une longueur d'onde 2537 Angstroms à une intensité de 12,0µW/cm2 pendant environ 20 minutes. Cette puce est reprogrammable à "l'infini". Son tarif varie autour de 5 pièce.
-
29C256: Cette puce est la plus simple à utiliser, mais aussi la plus chère. C'est une FlashRom, elle se programme avec du 5V et s'efface en quelques secondes avec du 5V aussi. Elles sont reprogrammables environ 10.000 fois.
Mais moi j'ai un PM7 "mémoire interne" ! Je fais comment pour la puce ? :
Le CPU a donc sa mémoire programme interne, impossible de la changer, il va falloir lui "indiquer" qu'il ne faut plus aller chercher le programme en interne mais en externe ! Heureusement, c'est possible, car le CPU à une broche qui celon l'état qu'on lui applique indique de lire en interne ou sur le bus de données externe (broche N°31 /EA).
Le but, maintenant va être de fabriquer une carte additionelle, sur laquelle on posera le CPU et un support d'EEPROM, et on mettra cette carte dans l'ECU l'ancienne place du CPU.
* Comme ceci :
Je vais vous décrire la fabrication de cette carte additionelle qu'on appelera
"Rom Adaptor".
La carte Rom Adaptor :
Cette carte se compose de 4 composants : le CPU OKI 83C154, une EPROM, un circuit d'interface 74HC373, un cavalier.
Elle comporte les éléments essentiels pour faire accéder le CPU à l'EPROM externe. Pourquoi ce montage ? Pourquoi un 74HC373 ? Je vous invite à lire la page 33 et 34 de cette
documentation (PDF) sur le
OKI 83C154.
Le cavalier de la carte va servir à choisir entre le mode "lecture mémoire interne" et "lecture mémoire externe", donc "programme d'origine" et "programme modifié".
Si vous comptez la fabriquer vous-même voici le matériel nécessaire (pas forcement exhaustif) :
- Une imprimante (Laser de préférence)
- Des transparents à typon (Laser)
- Plaques pré-sensibilisées
- Une insoleuse
- Des sachets de révélateur
- Un bidon de perchlorure de fer
- Une graveuse / ou un bac
- Des gants en caoutchouc
- Un bidon d'étamage à froid
- Une mini perceuse et des forêts
- Un fer à souder + étain
- Une pompe à déssouder
- Une 3ème main
Je vais pas vous apprendre à typonner, c'est pas le but de cet article et surtout celà nécessite de l'expérience. Vous n'avez
aucune chance que votre
premier circuit soit bon !!
Pour les courageux qui veulent s'y mettre ou "remettre"
:
www.google.fr "circuit imprimé" ou "typon"
* Le typon double face dont on va avoir besoin :
* Le schéma du rom adaptor :
Les typons, format imprimable : Face 1 (top),
Face 2 (bottom) !
Ces typons sont au format "Ghost Script" il faut installer cet outil (libre) pour pouvoir gérer ce format :
Web : Ghostscript 8.51
Executable : Ghostscript 8.51
Mais ce n'est pas tout, il faut aussi cet outil (libre) "Ghost Script Viewer" pour visionner le typon :
Web : GSview release v4.7
Executable : GSview release v4.7
Maintenant vous n'avez plus qu'a imprimer vos transparents à typon en triple exemplaire. Oui, chaque face doit être tiré en triple exemplaire pour être sûr d'avoir une bonne opacité à l'insoleuse.
Il faudra ABSOLUMENT se débrouiller pour que la face imprimé du typon soit collé à la plaque pré-sensibilisée, sinon la seule épaisseur du transparent fera échouer l'insolation !
Astuce : Vous remarquerez que sur les images des typon il y a des informations en rouge et une piste qui n'est PAS dans les typons "Ghost Script". Je vais vous sauver de nombreuses heures de casse tête (que j'ai subit avant de comprendre) :
* Il faudra relier les broches N°1 et N°28 du support d'EEPROM avec un strap au montage du Rom Adaptor et couper la piste spécifiée si vous comptez y mettre une puce de type Flash-Rom. La raison est simple, il faut monter 5V sur la broche N°1 (/WE) d'une 29C256 pour être certain qu'elle fonctionne en Read Only ! Sans ce brochage votre 29C256 aura un comportement totalement érratique dû à l'état changeant de la broche CPU sur laquelle est relié sa broche N°1 par défaut ...
Ce problème vient du fait que cette carte a été pensé pour une mémoire 27C256 qui n'aura pas de problème de fonctionnement
L'explication en anglais sur le forum pgmfi
Une fois votre plaque réalisée, il faut y mettre des composants :
- Support 40 broches (CPU sur ECU PCB)
- Barettes sécable tulipe à souder 40 pts (CPU) X2
- Barette sécable 40 pts
- Connecteurs HE-14 droit (strap)
- Un cavalier
- Support 28 broches (EEPROM)
- Support 20 broches (74HC373)
- EEPROM 27C256 ou Flash Rom 29C256
- 74HC373
- OKI 83C154
* Implantation des composants :
Et le CPU ? Comment on le mets sur la plaque puisqu'il est soudé à l'ECU ?!? :
Voilà la partie la plus délicate de la modification du PM7 "interne". Il faut déssouder le CPU SANS l'abîmer. Autant vous dire de suite, ce microcontrolleur est introuvable dans le commerce, donc faut pas râter son coup. Moi j'utilise une pince multiprise, un décapeur thermique, et ... une T° corporelle de 0° car faut du sang froid !
Personnelement, je chauffe le dessous de l'ECU au niveau du CPU et dès que l'étain commence a fondre je tire sur la multiprise qui attrape les 2 côtés sans broche du CPU. Surtout, pendant la manip, ne pas retourner l'ECU car les petits composants tomberaient, déssoudés par la chaleur rayonnante !!!
Le pire c'est que çà marche, la preuve :
Il existe du matériel professionnel de déssoudage de composants à broches multiples, qui ne chauffe QUE les broches désirées. Si vous avez accès à ce type de matériel, je vous le conseille fortement !
Finalisation :
Y a plus qu'a tester votre plaque ! Avant d'y de mettre les composants sur leurs supports, je vous conseille de vérifier, archi-vérifier la continuité de toutes les pistes et l'absence
absolue de court-circuit sur la plaque. Ensuite veillez a mettre tous les composants dans le bon sens !
D'abord essayer la plaque sans le cavalier pour voir si le CPU fonctionne toujours bien et ensuite avec le cavalier pour que le CPU accède à l'EPROM fraichement programmée. A ce niveau, il existe 3 types de conditions possible :
1) Rien ne fonctionne.
2) La voiture démarre avec un CEL jaune au tableau de bord et rupte à 3000trs/min.
3) La voiture démarre sans CEL et tout fonctionne parfaitement.
Si vous êtes en
condition 1, c'est grave. Y a surement un court-circuit !
Si vous êtes en
condition 2, çà veut dire que le Rom Adaptor marche pas, peut être même que le CPU marche pas. Et oui ! Car même SANS CPU l'ECU fonctionne toujours ! Y a pas de magie noire japonaise, c'est le composant "NEC EC-BACKxxxx" en bas et au milieu de l'ECU qui se charge de faire tourner le moteur. Je dis bien "tourner" le moteur. Comptez pas partir en vacance dans ce mode ! La voiture rupte à 3000trs/min, fume comme un camion et pue l'essence à 50 mètres. C'est juste un mode de "secours ultime" à éviter absolument.
Si vous êtes en
condition 3, vous êtes balèze ! Mais, c'est probablement pas votre premier essai !
Démarrage d'un ECU OBD0 sur banc :
Il faut savoir que l'on peut démarrer un ECU sur une paillasse. Il suffit simplement d'avoir une alimentation stabilisée 12V, soit une alimentation de laboratoire soit une alimentation d'ordinateur PC. Un ECU qui démarre sur paillasse clignote avec un code erreur. C'est interessant car un ECU qui clignote est un ECU qui est fonctionnel ! Quand il ne fonctionne pas, la LED rouge reste allumée.
* Schémas de brochage d'alimentation d'un ECU OBD0 :
Carte de "dataloging" (ou transmission de données)
Principe et aboutissements :
La carte de dataloging est appelée "dataloging" par abus de langage. En effet, cette dernière n'active pas quelques mystérieux "pouvoirs" des ECU Honda, mais représente simplement une interface de communication via liaison série. Pour ceux qui se grattent déjà la tête,
www.google.fr est votre ami !
Cette carte va donc permettre de communiquer avec l'ECU, par contre aucun ECU de série n'envoie en temps réel les données qu'il traite. Pour que le fameux "dataloging" soit actif, il faut que la ROM qu'exécute le µc de l'ECU contienne une modification du code d'origine afin d'envoyer sur la liason série (pré-cablée dans l'ECU) les données en cours de traitement.
Pour simplifier : l'ECU traite des paramètres comme la vitesse de rotation du moteur, la T° de l'air, la dépression au collecteur d'admission, la vitesse du véhicule, etc. Mais en aucun cas, il n'en informe l'extérieur ! Pour recevoir ces données par un câble série sur son PC, le PLUS important est d'avoir une ROM modifiée CAPABLE de le faire ! Exemple : la NG60 pour les ECU PM6/PM7/PP5.
Sachant celà, on peut continuer, et se fabriquer la carte d'interface série qu'on va mettre dans l'ECU afin que les signaux envoyé par le µc soit interpretables côté PC.
PS : cette carte fonctionne sur les ECU OBD0/1/2. Et l'electronique est simplifiée au maximum pour être facilement accessible.
Informations générales DB9 :
Ici, j'ai réunis les informations sur le brochage du DB9, le type de prise utilisée généralement pour la liaison série. Les ports COM1 et COM2 du PC sont en DB9. Les câbles "série" sont aussi en DB9, et la carte de dataloging sera en DB9
. Il existe le connecteur mâle et le femelle bien sûr.
Informations sur les broches d'un DB9 :
-
PIN#........ NAME.... Notes/Description
- 1 .............. DCD....... Data Carrier Detect
- 2 .............. RD ........ Receive Data (a.k.a RxD, Rx)
- 3 .............. TD ........ Transmit Data (a.k.a TxD, Tx)
- 4 .............. DTR ...... Data Terminal Ready
- 5 .............. SGND ... Ground
- 6 .............. DSR ...... Data Set Ready
- 7 .............. RTS ...... Request To Send
- 8 .............. CTS ...... Clear To Send
- 9 .............. RI ......... Ring Indicator
DB9 (vue coté cablage ) :
Code :
__1_2_3_4_5__
\ . . . . . /
\ . . . . /
-6-7-8-9-
DB9 (vue coté prise ) :
Code :
__5_4_3_2_1__
\ . . . . . /
\ . . . . /
-9-8-7-6-
Composants :
Grâce à la technologie, un seul composant va être nécessaire pour réaliser cette carte :
le MAX233A. En effet le MAX233A est un circuit complet de pilotage de ligne pour liaison série RS232.
Documentation de la série des MAX2xx. Ce circuit se trouve dans les bonnes boutiques d'électronique, et coûte une dizaine d'euros.
Schéma de cablage "basique" du MAX233A :
(Ici, le condensateur de découplage (chimique polarisé) est omis, il est important de l'ajouter au montage final.)
* Lien vers un site US vendant une carte complette *.
Carte "IcedFluid" :
J'ai fabriqué une carte basique, simple face, basée sur le MAX233A et possedant toutes les indications nécessaire sur la face cuivré pour un branchement très aisé. J'utilise le MAX233A et un condensateur chimique. Par contre, j'ai perdu (c'est pas des conneries!) mon archive "eagle" (logiciel de conception de circuit) et il ne me reste que le typon. Je continue donc à produire cette carte.
Schéma de connexion complet :
Après montage dans un ECU PM7 (IcedFluid) :
Admirez le professionnalisme du montage ! C'est bôôôô ! :] :]
Résultat en "Live" :
A l'époque ma carte "dataloging" était à l'état de prototype mais le résultat est le même. Ici on peut voir un PM7 envoyant sur liaison série les données traitées, et affichées sur PC grâce au logiciel ECU Control :
http://www.ecucontrol.com .
Astuce pgmfi.org :
Cette astuce sert à extraire le code d'origine d'un µc de PM6/PM7/PP5 ayant une mémoire interne.
Ceci nécessite d'avoir la carte fille, dont l'assemblage est expliqué dans ce topic.
Procédure d'extraction :
- Enlever le jumper sur la carte fille
- Connecter la broche côté jumper à la broche #8 (P1.7) de l'µc avec un fil
- Charger une EEPROM avec le binaire
Read83C154_12mhz.bin
- Connecter le cable série entre l'ECU et le PC
- Lancer le programme
downloader.exe sur le PC, avec le port série configuré en 4800 bauds.
- Démarrer l'ECU
L' µc va envoyer séquentiellement tout le code contenu dans sa mémoire interne sur la liaison série.
Pour ceux qui veulent avoir le code assembleur de
Read83C154_12mhz, le
voici.
Les plus grands remerciements vont à la communauté
www.pgmfi.org, sans eux, cet article n'aurais jamais existé.