Tlemcen Car electronics

Tlemcen Car electronics (https://www.tlemcen-electronic.com/forum/)
-   Flasheur de calculateur (https://www.tlemcen-electronic.com/forum/forum32/)
-   -   EGR OFF sur EDC16C34 (https://www.tlemcen-electronic.com/forum/flasheur-de-calculateur/70491-egr-sur-edc16c34.html)

Jean_Luc 03/11/2017 10h11

EGR OFF sur EDC16C34
 
Bonjour,

Je voudrais faire un EGR OFF sur mon EDC16C34 (1.6HDI 110) simplement en mettant la valeur du AirCtl_nMin_C "Engine speed threshold for EGR shut-off" genre à 6000 rpm (par défaut à 700rpm). Le registre est dans le bloc [1C0000-1CFFFF] donc accessible par l'ODB mais j'ai quand même un doute sur le calcul des checksum. Est-ce que j'ai besoin d'un full dump pour que le flasheur puisse calculer un checksum correct et flasher par ODB ?

Ma vanne est OK et je la garderai OK pour éventuellement pouvoir revenir en arrière donc pas de plaque et son contrôle est OK.

Quel appareil me conseillez vous Galetto ou MPPS ?
Et où acheter un bon produit ?

Merci :)

Monkey_ 03/11/2017 10h58

Bonjour,

Un galetto est polyvalent, il te permettra de faire une sauvegarde complete en BDM de ton calculateur c'est un plus en cas de plantage par la prise ....
Suivant le budget que tu veux lui accorder tu trouveras ton bonheur chez car-prog (qui fait des clones qualité europe), la boutique du forum, ali et pleins de sites ! Un membre a peut être un lien fiable

bon courage !

Jean_Luc 03/11/2017 11h44

Merci pour ta réponse ;)
Sait-tu si il est possible de flasher via ODB (sans ouvrir le calculo donc) le block [1C0.000 1FF.FFF] et sans avoir de full dump fait en BDM ?
J'aimerais éviter d'ouvrir le calculo si possible.

Kennfeld 03/11/2017 11h58

Citation:

Envoyé par Jean_Luc (Message 561906)
Merci pour ta réponse ;)
Sait-tu si il est possible de flasher via ODB (sans ouvrir le calculo donc) le block [1C0.000 1FF.FFF] et sans avoir de full dump fait en BDM ?
J'aimerais éviter d'ouvrir le calculo si possible.



ou bien sur mais le top c'est d'avoir l'outil qui gère le checksum ainsi tu pourra mod dans un simple navigateur web ...

Jean_Luc 03/11/2017 12h14

D'acc merci.
Mais les galetto ou les mpps ne sont pas livrés avec un flasheur qui calcule le checksum ? Et pour calculer ce checksum si on a juste le bloc des cartos 1C0.000 ça suffit ?

Odin68 04/11/2017 00h00

1 pièce(s) jointe(s)
Citation:

Envoyé par Jean_Luc (Message 561916)
D'acc merci.
Mais les galetto ou les mpps ne sont pas livrés avec un flasheur qui calcule le checksum ? Et pour calculer ce checksum si on a juste le bloc des cartos 1C0.000 ça suffit ?

Prend toi un MPPS, suis les instructions ça passe tout seul.
Et pour faire un EGR close c'est 2 hystérésis, si tu sais pas faire, tu trouveras tout ici, et peut-être même un gars qui te le fait.

Kennfeld 04/11/2017 00h06

Citation:

Envoyé par Odin68 (Message 562104)
Prend toi un MPPS, suis les instructions ça passe tout seul.
Et pour faire un EGR close c'est 2 hystérésis, si tu sais pas faire, tu trouveras tout ici, et peut-être même un gars qui te le fait.


dans le premier post il à une méthode bien plus malin que les 2 hystérésis nul besoin de close il sait faire un off .

Jean_Luc 20/05/2022 18h23

Hello,

Donc j'ai testé cette technique et ça a l'air de bien marcher.
Malheureusement, ma vanne (ou le faisceau) est morte et j'ai des valeurs invalides sur RCO et recopie. Je peux donc pas checker sur le graphique.
J'essayerai de le faire avec un autre ECU.

J'ai mis un plaque devant la vanne, j'avais des défaut de débit d'air et de recirculation de gaz insuffisante. J'ai patché la valeur avec 0x17 0x70 (6000 tours) et plus de défaut de débit d'air. La voiture semble mieux se comporter également.

Ce bout de code trouve l’adresse de AirCtl_nMin_C sur l'ensemble de ma collection de dump (edc16c34 1.6 hdi 90cv et 110cv).

Code:

    private void findEGRLimit() {

      // Try to find address of AirCtl_nMin_C (Engine speed threshold for EGR shut-off, in rpm)
      // Search for address of AirCtl_nMaxHi_C/AirCtl_nMaxLo_C (We assume that the difference
      // between this 2 values is 200RPM or 250RPM)
      // Immediately follow AirCtl_nMin_C
      // Standard values for AirCtl_nMin_C are 650 or 700 RPM

      boolean eos = false;
      int start = 2600;
      int diff = 200;
      while(!eos) {

        int hMaxHi = (start+diff) >> 8;
        int lMaxHi = (start+diff) & 0xFF;
        int hMaxLo = start >> 8;
        int lMaxLo = start & 0xFF;

        egrLimitAdd = search(0x1C0000,toByte(new int[]{hMaxHi,lMaxHi,hMaxLo,lMaxLo}));

        if(egrLimitAdd!=-1) {

          egrLimitAdd += 4;
          egrLimit = ((((int) memory[egrLimitAdd]) & 0xff) << 8) + (((int) memory[egrLimitAdd + 1]) & 0xff);
          eos = egrLimit == 700 || egrLimit == 650;

          if( !eos ) {
            // Try a second match
            egrLimitAdd = search(egrLimitAdd,toByte(new int[]{hMaxHi,lMaxHi,hMaxLo,lMaxLo}));

            if(egrLimitAdd!=-1) {
              egrLimitAdd += 4;
              egrLimit = ((((int) memory[egrLimitAdd]) & 0xff) << 8) + (((int) memory[egrLimitAdd + 1]) & 0xff);
              eos = egrLimit == 700 || egrLimit == 650;
            }
          }

        }

        if(!eos) {
          start += 50;
          if(start>=3600) {
            diff += 50;
            if(diff>250) {
              // Fail !
              eos = true;
            } else {
              start = 3000;
            }
          }
        }

      }

    }



  }


Kennfeld 20/05/2022 22h58

déterrage !!!!


Citation:

Envoyé par Jean_Luc (Message 930801)
Hello,

Donc j'ai testé cette technique et ça a l'air de bien marcher.
Malheureusement, ma vanne (ou le faisceau) est morte et j'ai des valeurs invalides sur RCO et recopie. Je peux donc pas checker sur le graphique.
J'essayerai de le faire avec un autre ECU.

J'ai mis un plaque devant la vanne, j'avais des défaut de débit d'air et de recirculation de gaz insuffisante. J'ai patché la valeur avec 0x17 0x70 (6000 tours) et plus de défaut de débit d'air. La voiture semble mieux se comporter également.

Ce bout de code trouve l’adresse de AirCtl_nMin_C sur l'ensemble de ma collection de dump (edc16c34 1.6 hdi 90cv et 110cv).

Code:

    private void findEGRLimit() {

      // Try to find address of AirCtl_nMin_C (Engine speed threshold for EGR shut-off, in rpm)
      // Search for address of AirCtl_nMaxHi_C/AirCtl_nMaxLo_C (We assume that the difference
      // between this 2 values is 200RPM or 250RPM)
      // Immediately follow AirCtl_nMin_C
      // Standard values for AirCtl_nMin_C are 650 or 700 RPM

      boolean eos = false;
      int start = 2600;
      int diff = 200;
      while(!eos) {

        int hMaxHi = (start+diff) >> 8;
        int lMaxHi = (start+diff) & 0xFF;
        int hMaxLo = start >> 8;
        int lMaxLo = start & 0xFF;

        egrLimitAdd = search(0x1C0000,toByte(new int[]{hMaxHi,lMaxHi,hMaxLo,lMaxLo}));

        if(egrLimitAdd!=-1) {

          egrLimitAdd += 4;
          egrLimit = ((((int) memory[egrLimitAdd]) & 0xff) << 8) + (((int) memory[egrLimitAdd + 1]) & 0xff);
          eos = egrLimit == 700 || egrLimit == 650;

          if( !eos ) {
            // Try a second match
            egrLimitAdd = search(egrLimitAdd,toByte(new int[]{hMaxHi,lMaxHi,hMaxLo,lMaxLo}));

            if(egrLimitAdd!=-1) {
              egrLimitAdd += 4;
              egrLimit = ((((int) memory[egrLimitAdd]) & 0xff) << 8) + (((int) memory[egrLimitAdd + 1]) & 0xff);
              eos = egrLimit == 700 || egrLimit == 650;
            }
          }

        }

        if(!eos) {
          start += 50;
          if(start>=3600) {
            diff += 50;
            if(diff>250) {
              // Fail !
              eos = true;
            } else {
              start = 3000;
            }
          }
        }

      }

    }



  }



Jean_Luc 21/05/2022 07h17

Salut,
Oui, après 5 ans et au moins 100.000km de plus, la vanne et mon FAP ont décidé de me laché. Donc ce coup là, j'ai mis une plaque sur la vanne, vider le FAP, virer le ressort de la vanne PCV et reprog avec un MPPS v18 qui me calcule correctement le checksum et qui marche super :)


Fuseau horaire GMT +1. Il est actuellement 22h30.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Version française #23 par l'association vBulletin francophone
Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Tlemcen-electronic © All right reserved