Announcement

Collapse
No announcement yet.

M60 404DME TunerPro tuning resources

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    M60 404DME TunerPro tuning resources

    Hey guys,

    I'm assuming you guys are using the 404 DME on your M60's and OBDI M62 conversions. I am also assuming that you have taken on the tuning to get the max out of your project and have run into some of the same walls I have.

    I wanted to share with you what I've been working on; A slightly more in depth XDF file for TunerPro to use on the 404 DME bin tuning files.

    I've come across two software versions of the M60 404 bin file. 357689 and 357153 with the 689 being the more common software used. Mind you, I am not a bosch motronic expert. I do not know how to reverse engineer the coding to find the maps. Yet, here is what I've come up with thus far and it is slightly better then the M60 XDF available on the tunerpro website.

    If you've found this to be useful on your build I 'd truly appreciate if you would grow upon it, fix anything you find wrong. Identify some of the unknown maps. And upload your improved upon XDF, This is very much a work in progress.

    Stock 404 DME software 357689 bin available from TunerPro:




    404 DME software 357689 XDF for TunerPro:



    404 DME software 357153 XDF for TunerPro:



    I would also encourage you, if you haven't already; Install a Moates Ostrich 2.0 chip emulator. It's not necessary, but makes the tuning process much easier.
    Last edited by Mykk540i/6; 12-30-2016, 07:47 AM.

    #3
    👍

    Merry Christmas !
    Mtech1 v8 build thread - https://www.r3vlimited.com/board/sho...d.php?t=413205



    OEM v8 manual chip or dme - https://www.r3vlimited.com/board/sho....php?p=4938827

    Comment


      #4
      Let's turn this into a small 'How to' Bosch Motronic M3.3 using the 404 DME as an example: (Note: I am not a professional nor authoritative on the subject. I'm a gearhead that enjoys the EFI side of wrenching too)

      First step; get into the DME and gently pry out the 27C512 chip:



      Load the chip in your EEPROM reader/Burner of choice and read the chip. My preference is the inexpensive TL866CS and Minipro software.





      Save your file; I usually name the tune based off the DME number, Vehicle Build Date, Vehicle type and trans type. My file name would look like "404_6-1994_E34_540iAuto.BIN"
      In the case of my personal project, I've named the car Ares and I make a bunch of tweaks to the tune and different versions of tunes so those files are the cars name and the current date the tune was tweaked "Ares_Jan18_V1.BIN" So name your files something you'll easily recognize.

      Now you'll have a 64kb file filled with a foreign alien language you now get to learn.



      Hardware used:
      TL866CS - chip reader/burner

      Moates Ostrich 2.0 - Chip Emulator, highly recommend!

      blank SST 27SF512 chips or original type 27C512 chips after they have been UV erased. I usually leave my 27C512 chips outside in the Arizona sun for about a week with the UV window exposed so the sunlight can erase my chips for me. Inexpensive 27SF512 chips on EBays are fakes, as I believe Moates purchased the remaining old stock of genuine SST chips. I've used the fakes before and they work but the long term use and reliability is questionable.

      Software used during this process (my personal preferences, as there are others out there capable of the same, if not more or less features)

      MiniPro v6.6 - Chip Reading and burning software

      HxD - Hex editor

      TunerProRT - Tuning software.

      Using TunerProRT; Tunerpro must have two kinds of files one being your .bin as read for your vehicles chip. This is the tune that runs the car. The other file is called .xdf, this is the interface file used to translate that foreign alien hex language above into human recognizable format and maps.

      It is even more so important to learn how to read and modify the hex code to tune. Using the .xdf in tunerpro is great once you have a firm understanding of what and how is being modified in the hex code.

      So lets tear apart that hex code:

      First most and my favorite bit of code:



      Gute Fahrt translated means "Safe Journey!" or Bon Voyage

      At the end of the file are what I believe to be engineer notes that are address markers in the codes for reference.



      The first address listed is C0 00. When you visit that address the hex address is written in the code, in little endian format (2nd byte first). This address is also the start of the operating section of the code, the parts we'll change in the name of tuning.



      Next address marker: C1 1A



      The beginning of DTC and check engine light data.

      Next, address C2A6 is the beginning of the mass airflow table.

      The following address is D03E. This section is the next step of the tuning equation. It's referred to as the "Table of tables" and has the hex address of every map in the code.



      This Table of Tables is where I start with making the XDF for Tunerpro. There are 129 maps in the 404 code. The first address in the table of D03E is that self describing address for the Table. So the first map is at address C5D0:



      This will be my first example of deciphering a table in the hex code.

      D7 is known as an axis identifier, it is the identifier for Coolant Temp. The next byte describes how long the table is. 4 bytes long. The next 4 bytes describes the coolant temp axis. The following four bytes are the values used by the tuning for that function.

      To make things clearer let's use a table we can all recognize and relate to:

      Hex address CA84



      D0 is axis identifier for RPM. D5 is axis identifier for Load. Looking at this section in decimal reveals that the map is RPM 12 bytes by Load 10 bytes.



      RPM axis labels: 005 010 010 010 013 012 013 007 025 010 030 096

      Working backwards you start from value 256, and the factor value for RPM is x*40.

      256-096 = 160
      160 * 40 = 6,400RPM

      160-030 = 130
      130 * 40 = 5,200rpm

      130 - 010 = 120
      120 * 40 = 4,800RPM

      120 - 025 = 95
      95 * 40 = 3,800RPM

      ...and so on.

      In tunerpro we make a new table, 12 rows by 10 columns at address CA9E (which would be the values after the header information)



      We are now looking at the Part Throttle ignition timing table with raw values.

      If we take a look at the M60 v8 crank pulley, we know we are seeing a Bosch 60-2 crank trigger wheel. It's 60 teeth evenly spaced over 360°, missing 2 teeth. Each tooth is read as 4 data points on the rising side and 4 data points on the falling side. Each tooth is 8 points.

      60 teeth x 8 data points = 480 data points per 360° of rotation.

      The trigger is missing 2 teeth, so we'd physically count 58 teeth but for spacing and data points we treat it like all 60 teeth are present. For the M60 v8's the leading edge past the 2 missing teeth is 60 degrees advanced from TDC of cyl#1.



      360° / 480 data points = .75

      If we apply (X-60)*.75 to the ignition raw numbers if gives us identifiable ignition timing in crank degrees:





      I'll show you one more goodie before wrapping it up. At address C034 is two bytes, a 16bit code so it's treated as one number.



      When you flip the bytes and then apply x/4 to the value you get:



      The major focus for tuning is Idle, Part Throttle and Wide Open Throttle ignition timing as well as Idle, PT & WOT fuel tables.

      I'll be back later to giving a few more examples to those interested.
      Last edited by Mykk540i/6; 01-18-2018, 06:06 AM.

      Comment


        #5
        Very very interested to see this, it's something where there isnt often information available.

        Good work in deciphering the tables locations and meanings, what's your aim with tuning (engine spec)?

        Comment


          #6
          Originally posted by alistairolsen View Post
          .... what's your aim with tuning (engine spec)?

          I was frustrated by the lack of resources for this platform, when I started wanting to tune my 404DME M60B40 the available XDF from TunerPro just had a few basic tables and they were in raw format and didn't make sense for tuning.

          So I started digging, reading, learning and I now want to share what I know to provide others with what I couldn't find for myself.

          I've been using an Alpina B10 404DME tune as the base for my own project...these images and addresses are for my xdf for that .bin. But the tables (not the hex addresses) are interchangeable with U.S & Euro spec 404 DME





          Comment

          Working...
          X