No announcement yet.

16x16 VE table fuel tuning on MAF based cars?

  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    also the pages from the damos for all the lambda control constants. i think we all know where the lambda table is already. The addresses in hex on these pages work with PRJ's files. there is no offset difference.
    Attached Files
    "The really good drivers got the bugs on the side windows." Walter Röhrl


    • #17
      As for PRJ's SD file the only things i found in the fuel calculation routine several jumps to the "add fuel" sub routine where removed. there doesnt seem to be anything really changed other than this in the actual fuel calculation routine.

      code:00003977 12 0F F9                 lcall   TableAccess_02  ; 0x8F39 - Knock enrichment, RPM 5x1
      code:0000397A          Long call to add fuel code removed.
      code:0000397A          Custom_Nop_05:
      code:0000397A 00                       nop                     ; No operation
      code:0000397B 00                       nop                     ; No operation
      code:0000397C 00                       nop                     ; No operation
      code:0000397D          code_397D:                              ; CODE XREF: CALC_FUEL+183A↑j
      code:0000397D                                                  ; CALC_FUEL+1843↑j
      code:0000397D 30 4F 06                 jnb     Flag5.7, code_3986 ; Jump if Bit is clear
      code:00003980 12 0F F9                 lcall   TableAccess_02  ; 0x8F45 - Load based enrichment, LOAD 4x1
      code:00003983          Long call to add fuel code removed.
      code:00003983          Custom_Nop_06:
      code:00003983 00                       nop                     ; No operation
      code:00003984 00                       nop                     ; No operation
      code:00003985 00                       nop                     ; No operation

      code:00003A6E 90 01 12                 mov     DPTR, #0x112    ; XRAM Lambda adjustment VS20
      code:00003A71 E0                       movx    A, @DPTR        ; Move from/to external RAM
      code:00003A72 D0 83                    pop     DPH             ; Data Pointer, High Byte
      code:00003A74 D0 82                    pop     DPL             ; Data Pointer, Low Byte
      code:00003A76          Long call to add fuel code removed.
      code:00003A76          Custom_Nop_07:
      code:00003A76 00                       nop                     ; No operation
      code:00003A77 00                       nop                     ; No operation
      code:00003A78 00                       nop                     ; No operation

      Though in lambda control there are some interesting changes i have yet to fully understand.

      code:00002ADB          Custom_Jnb_01:
      code:00002ADB 30 24 24                 jnb     FLAGBM.4, code_2B02 ; Jump if Bit is clear
      RAM:0024          .equ FLAGBM,0x24                        ; DATA XREF: TF2_EXF2+2↑r
      RAM:0024                                                  ; TF2_EXF2:code_36↑w ...
      RAM:0024                                                  ; 24.0=BM_S EL: BM-Selektion
      RAM:0024                                                  ; 24.1=Synchronization
      RAM:0024                                                  ; 24.2=Entry about synchronization
      RAM:0024                                                  ; 24.3=Indikator 'SYNCRO' aktiv
      RAM:0024                                                  ; 24.4=Buffer for sample marks (only 20)
      RAM:0024                                                  ; 24.5=End state bit
      RAM:0024                                                  ; 24.6=Speed changeover for fuel program
      RAM:0024                                                  ; 24.7=Speed change time / angle
      This i am not 100% sure of that it does this.
      code:00002B71          This Custom code disables LTFT's.
      code:00002B71          Custom_Add_02:
      code:00002B71 24 80                    add     A, #0x80        ; Add Second Operand to Acc

      i think that most of the modifications done in the load calculation route are the ones that are most important. I have the load decapping commented very well in my IDA disassembly but i wont clutter up this post anymore unless the information is necessary.
      "The really good drivers got the bugs on the side windows." Walter Röhrl


      • #18
        Originally posted by vwnut8392 View Post
        but the issue is that the ECU cannot know an AFR below like 13.0 if i remember correctly. the oxygen sensor cannot read any lower than that so the ECU would just be guessing from MAF readings at what the AFR actually is.hence the why it is called a narrow band oxygen sensor. i know the ECU references the map in boost but its technically impossible for it to know a proper AFR in boost without the addition of a wideband controller and custom code so that it can see the full range from 20.0AFR to 10.0AFR.
        Wow dude...
        If injectors and MAF or VE table in case of SD are fully calibrated then main AFR table is just that, main AFR table.
        You put your desired lambda/afr into the table and you have it. Simple as that.
        What does the narrowband sensor have to do with anything? You have everything mixed up.

        This table is always used. Closed loop, open loop etc. In closed loop there is some correction applied based on o2 feedback, in open loop such correction is not applied.
        Load gets capped at either the soft load limiter or at 255, at which point 8 bit load rolls over to 0 (goodbye engine at WOT) if you don't patch it...

        That said, on prjmod to get to 255 load you need like 2.5-2.6 bar boost. -


        • #19
          Just keep it mind that for MAF based cars not only this 16x16 correction table is in play, also the lambda short term correction and lambda longterm correction (additiv and multiplicativ correction factors which are stored in Xram) affect the injection duration.
          these need to be neutralized to seriously tune this 16x16 correction table.

          Best Regards


          • #20
            Originally posted by prj View Post
            .. Simple as that......
            Now is my turn to say - Finally
            With few sentences you explain everything
            I broke my fingers and there is no much sense from all my words

            Next time you will explain with few words I will add only emoticons Deal?!!!!
            You have one option for answer =

            Merry Christmas!!! I's close


            • #21
              so back to my question now, what all changes are involved in adding a VE table to a MAF based car? got a bunch of technical over thought answers so lets rethink this in simple terms. for example "if you change this + this and remove this, you have a good functioning VE table on a MAF based car." i know it is extremely difficult for all of you german guys to just tell someone something instead of force feeding them mountains of information and taking the long road to the end result in hopes that someone learned something or prove that your smarter but lets try it my way for once, just find and share the answer instead of hints and taking the long road. K? lets face it, a nice 16x16 VE table would be useful on any old motronic like this. making fueling adjustments would a breeze. this could be a game changer in general for a lot of people with or without a MAF.
              Last edited by vwnut8392; Yesterday, 14:46.
              "The really good drivers got the bugs on the side windows." Walter Röhrl