Cartographie E85 pour les moteurs BMW M54 avec ECU MS43.
Ces modifications ont été faites sur ma BMW 530i e39 de 2001, 270 000km passé.
Pour cela il vous faut :
- un PC portable
- Un câble K-DCAN
- Etre anglophone c’est mieux ^^
Dans votre PC il vous faut :
- Les drivers du câble K-DCAN
- INPA
- Le logiciel MS4x flasher (gratuit)
- Le logiciel Tuner Pro (gratuit) https://www.tunerpro.net
- Le fichier binaire de 512k de votre moteur en version MS430069 (Par exemple
M54B25 pour une 325i)
- Le fichier XDF de tuner pro pour le fichier binaire de 512k à la version MS430069.
- Le fichier XDF patchlist Tuner Pro pour le fichier binaire de 512k à la version
MS430069 (Facultatif)
Vous pouvez télécharger MS4X flasher, le fichier .bin et les fichiers .xdf sur ms4x.net.
https://www.ms4x.net/index.php?title=Main_Page
Dans Tuner Pro pour modifier le fichier .bin il faut charger le fichier .xdf associé (même
version, donc MS430069 par exemple).
Avant tout, il faut faire une lecture de l’ECU avec MS4X Flasher, et sauvegarder
précieusement le .bin original de l’ECU, qui sera en version MS430037 ou 55,56,64,66.
Ensuite on peut soit modifier une copie de ce fichier-ci, soit utiliser la dernière version
MS430069 (tant qu'à faire !).
Pour passer son ECU en MS430069, il n’y a rien de particulier à faire, juste flasher avec le
.bin avec MS4X Flasher.
Si on part d’un fichier MS430069, il faut donc l’adapter aux équipements du véhicules :
1. Configuration pompe à air secondaire, table c_conf_sap, mettre la valeur selon la
configuration du véhicule :
0: Automatic learning of SAP varants
1: SAP not present
2: SAP present without SAFM (Secondary Air Flow Meter)
3: SAP present with SAFM (Secondary Air Flow Meter)
2. Voir cette section du wiki si la voiture a d’autres particularité :
https://www.ms4x.net/index.php?title=Siemens_MS43#Variants_Configuration_Swit
ches
Modification des cartographies (méthode table par table, sans
toucher au ratio injecteur) :
Toutes les valeurs indiquées sont approximatives et doivent être ajustées selon votre
moteur (usure, étanchéité de l'admission...) en monitorant les LTFT/STFT après injection
de la carto. Dans chaque sous-partie le nom de la table est associé à sa modification.
Les captures d’écrans des tables à suivre sont pour M54B30, les valeurs pour B22 et B25
seront en général un peu différentes, le principal étant d’y appliquer le même facteur
multiplicatif (et à ajuster selon les résultats obtenus niveau démarrage à froid, LTFT)
1. Tables d'injection :
Avec la même quantité d'air, le calculateur doit injecter 38% d'E85 en plus par rapport à de
l'E10 ou E5 pour obtenir une valeur lambda de 1. +38% veut dire qu'il faut appliquer un
facteur de 1.38, aux six tables suivantes :
(Si on veut une carto plutôt “flex” on peut ne mettre que +25%)
Charge partielle (partial load):
Moteur froid (banc 1 et 2)
ip_ti_tco_1_pl_ivvt_1__n__maf
ip_ti_tco_1_pl_ivvt_2__n__maf
Moteur chaud (banc 1 et 2)
ip_ti_tco_2_pl_ivvt_1__n__maf
ip_ti_tco_2_pl_ivvt_2__n__maf
Ralenti (idle):
Moteur froid
ip_ti_tco_1_is_ivvt__n__maf
Moteur chaud
ip_ti_tco_2_is_ivvt__n__maf
2. Autres tables lié à la quantité de carburant injecté, +38% à chaque (enfin même
facteur qu'appliqué aux tables précédentes) :
- “Cylinder wall rewetting” Réhumidification de la paroi du cylindre :
ip_ti_slow_wf_thd_min__tco
ip_ti_fast_wf_thd_min__tco
- Quantité de film de carburant sur les parois des cylindres, selon l’angle de la
pédale d’accélérateur (PVS angle-dependent wall film amount) :
ip_ti_pvs__pvs__n
- temps d’injection de base quand le VANOS est en défaut(Basic injection time under
VANOS fault condition) :
ip_tib__n__maf
Démarrage (cranking) :
La séquence de démarrage peut se diviser en trois parties :
- Pré injection à froid, c'est la première impulsion de carburant injectée en début de
démarrage.
- Injection de démarrage, ce sont les tables utilisées durant la rotation du
démarreur.
- Enrichissement après démarrage, permet une transition entre les tables de
démarrage et de ralenti/charge partielle.
Les paramètres qui suivent sont validés pour une température de 0°c, démarrage au ¼ de
tour. Chaque moteur étant différent, vous pouvez essayer de mettre des facteurs un peu
moins fort, pour 9.8°c et plus bas.
1. valeur de temps de base de pré-injection (Pre injection time basic value) :
ip_tipr_cst__tco
Facteurs à appliquer pour chaque température :
-30°c : x1.7
-20°c : x2.4
-9.8°c : x2.5
0°c : x2.5
9.8°c : x2.0
30°c : x1.35
2. Valeur de temps de base d'injection durant le démarrage (Cranking injection time
basic value) :
ip_ti_cst__n__tco
Facteurs à appliquer :
De -30°c à 0°c : x2 pour chaque régime moteur
9.8°c : x1.5 pour chaque régime moteur
30°c : x1.35 pour chaque régime moteur
3. Régime de ralenti (idle speed) :
Vitesse de ralenti nominal sans charge appliquée au moteur (Nominal idle speed without
additional load on the engine) :
ip_n_sp_is__tco :
-30°c : 1250 tr/min
-9.8°c : 1120 tr/min
9.8°c : 1000 tr/min
Méthode en modifiant le ratio des injecteurs :
Sinon méthode facile et rapide, on modifie le ratio injecteur, de base il est à 1, il suffit
donc de mettre par exemple 1.30 pour augmenter de 30% tous les temps d’injections (au
moins on ne risque pas d’oublier une table), ça remplace donc toutes les modifications
précédentes de la section “Tables d’injections”.
tables t_ti_as_0 à t_ti_as_5, mettre 1.30 comme valeur (ou 1.25 pour être plus “flex” au
choix)
En revanche la consommation sera faussée pour remédier à cela il faut mettre un facteur
identique au ratio injecteur à cette table (donc x1.30 à toute la table) :
ip_fco_map_cor__pq_main_col
Du coup si on choix cette méthode, il faut enlever 30% aux facteurs ci-dessus que j’ai
proposé pour le démarrage à froid (donc les diviser par 1.30)
Cas de l’avance à l’allumage
Alors l’avance, on lit partout qu’on peut en rajouter entre 4 et 7° sans problème, grâce à
l’indice d’octane supérieur de l’e85 (logique), mais autre son de cloche : l'éthanol ayant
une vitesse de front de flamme supérieur à l’essence, il semble que la pression maximum
dans le cylindre arrive un peu plus tôt, donc là on pourra même retirer un peu d’avance
(logique aussi). La documentation sur le sujet restant limitée, il faudrait faire des essais
sur banc de puissance pour voir le bénéfice à modifier l’avance dans un sens ou dans
l’autre…
Dans le doute je n’y touche pas.
Facultatif :
1. Modifier l’amplitude des LTFT (-8%/+12% de base sur b30), on peut mettre
-31.25%/+31.25%, pour être vraiment flex, avec par exemple +25% aux tables d’injection.
Tables c_ti_ad_fac_min et c_ti_ad_fac_max
Pour les STFT, d’origine l’amplitude est -28%/+28%, on peut aussi mettre -31.25%/+31.25%
maximum, ça ne change pas grand chose.
Tables c_lam_min et c_lam_max
2. Optimiser le Vanos pour gain de couple à moyenne charge (on le sent bien !), pour
M54B30 seulement !
A ces tables Admissions il faut appliquer ces valeurs (copier/coller) :
https://docs.google.com/spreadsheets/d/1B2UPjiNvCkuWGU0Ub3A3Yk5coaGsUtRhiTu-BMn
vcLM/edit?usp=sharing
ip_cam_sp_tco_1_in_pl__n__maf_iv ( à froid)
ip_cam_sp_tco_2_in_pl__n__maf_iv (à chaud)
Et aux tables Echappements :
https://docs.google.com/spreadsheets/d/1rpFpgegPDDfqhmI9uzP6tmeQPMmMEzHF2sPW1
KlzOUw/edit?usp=sharing
ip_cam_sp_tco_1_ex_pl__n__maf_iv
ip_cam_sp_tco_2_ex_pl__n__maf_iv
voir ici :
https://www.ms4x.net/index.php?title=Siemens_MS43#VANOS_Tweak_for_little_extra_mid
range_power
3. Augmentation de puissance Stage 1 ( pour M54b30)
Pour cela, une seule table à modifier (hé oui ^^), la table du “Full Load”: ip_ti_fl__n
Valeurs à coller de 600 tr/min à 6500 tr/min :
0.223
0.121
0.102
0.098
0.098
0.082
0.102
0.098
0.105
0.117
0.121
0.129
0.133
0.148
0.168
0.172
La pleine charge (Open Loop, Full Load) c’est donc cette table, un facteur, qui s’applique
aux tables d’injection (ip_ti_tco_2_pl_ivvt_1__n__maf etc), plus les LTFT à l’instant T.
Donc en théorie même sur une carto “flex” (avec +25% aux tables d’injection par
exemple), et ayant fait la modification des LTFT à -31.25%/+31.25%, on peu rouler au SP
et profiter du Stage 1, du moment qu’on laisse le temps aux LTFT de passer en négatif.
(j’avoue j’ai pas essayé, j’ai pas les moyens de mettre du SP ! ^^)
4. Rupteur à 7000tr/min (pour boite manuelle, et si l’écrou de pompe à huile a été
sécurisé !!)
Mettre 7000 dans chaque case de toutes ces tables :
id_n_max_mt
id_n_max_max_mt
id_n_max_vs_max_mt
Après les modifications :
Enregistrez votre fichier binaire 512k et chargez le dans le calculateur à l'aide du logiciel
MS4X flasher.
Supprimez, sur MS4X flasher ou INPA, les valeurs d'adaptation des sondes lambda
(important), voir toutes les adaptations.
Testez votre nouvelle cartographie en vérifiant les valeurs des sondes lambda les valeurs
de correction de richesse "lambda integrator", les STFT et surtout les LTFT (si on reset
toutes les adaptations, les LTFT mettent quasiment 20km à être calculée, c’est normal)
Une valeur positive des LTFT indique que l’ECU doit augmenter les temps d’injections pour
être steochio, et négative il doit baisser les temps d’injection.
Contrôlez ces valeurs au ralenti et en charge partielle moteur froid et chaud.
Modifiez les tables en fonction des LTFT voulues à l’e85 (entre 0 et 10%)
A chaque modification, ne pas oublier de réinitialiser les valeurs d'adaptation des sondes
lambda.
Pour avoir une idée de la richesse à pleine charge, il faut regarder les tensions des sondes
lambda en amont du catalyseur (donc banc 1/1 et 2/1), la tension doit plafonner à 0,85v à
pleine charge. ( à défaut d’avoir une vraie sonde AFR)
Pour information, ma voiture avait déjà une carto e85 faite par un “pro”, qui commençait
à montrer ses limites (LTFT en butée, démarrage en 4-5 coups), en effet il n’avait modifié
que “2” tables, celle qui défini le ratio des injecteurs, de base il est à 1, si on met par
exemple 1.25 comme c’était le cas pour moi, ça augmente de 25% les tables liés aux
injecteurs (donc toutes celles que j’ai modifié dans ce tuto), ça fonctionne plutôt pas mal,
mais totalement insuffisant pour le démarrage à froid (il n’y avait pas du tout touché “pas
possible sur cet ECU” selon lui….) et ça fausse la consommation OBD, bref c’est comme
installer un kit e85.
Et la table du full Load ip_ti_fl__n pour le stage 1.
Après avoir refait entièrement la carto, l’agrément de conduite supplémentaire est
impressionnant, notamment plus coupleux à bas régime.
Sources :
https://github.com/legtom/BMW-M54-E85-conversion?fbclid=IwAR3iVy6insKvYT6fzdtjdXpJ8
1UDr4Y7PLK5xAYRua4yBKlGnG9vFRcrnRk
https://www.ms4x.net/index.php?title=Main_Page
https://www.e46fanatics.com/threads/m54-e-85-tuning-n-a-ms43.1263149/
https://www.e46fanatics.com/threads/biggest-ms43-tuning-thread-ever-incl-software.108
2287/
http://www.meeknet.co.uk/e38/diagnostics.htm