BMW E46 M3
Legend Eternal
BMW Garage BMW Meets Register Search Today's Posts Mark Forums Read
Technical Sections Coding / Tuning / Audio-Video / Electronics

Post Reply
Thread Tools Search this Thread
      03-31-2020, 10:28 AM   #1

Join Date: Feb 2007

iTrader: (0)

Identifying the MSS5x DMEís Hardware Variant and Program Version

Full credit to p0lar for the writeup.

Identification of your DME's program version is absolutely necessary when considering any changes to the parameter space as all offsets are referenced based on program version and distance (offset), in bytes, from the beginning of the dump.

There are over a dozen different program versions across both DME variants found in the E46 ///M3. The tuning parameter space is matched to its corresponding program version so the parameter space from one DME may not be (and very likely isnít) compatible with another, unless the program versions are an exact match. The locations of maps, curves and values are different between program versions, so the DMEís program version must be determined before proceeding to make modifications to the DME parameter space!

While the MSS50, MSS52, MSS54 and MSS54HP DMEs have two EPROM chips onboard, they are not identical in size or configuration.

While the MSS50, MSS52, MSS54 and MSS54HP DMEs all share a relatively common processing architecture and two EPROM chips onboard, as well as various differences in board layout and drivers, the EPROMs are not identical in size or configuration. The MSS50 has two 256 KB chips (AM28F200), MSS52 and MSS54 have two 256 KB chips (AM29F200) and the MSS54HP has two 512 KB chips (AM29F400). The extracted sizes of both parameter space, program space, and a full DME read are provided in the following table.

Name:  Screen Shot 2020-03-31 at 8.24.25 AM.png
Views: 568
Size:  107.8 KB

The first step is to identify the variant of the DME by looking at the partial read (aka parameter space or calibration). The fastest way to identify the DME variant is by examining the resultant file size of the parameter space dump. If it is a 32 KB file, it is the MSS50, MSS52 or MSS54 (non-HP) variant. If it is a 64 KB file, it is the MSS54HP variant. The E46 ///M3 CSL utilizes a variation of the MSS54HP with a minor hardware augmentation, and is also 64 KB.

To date, the most accurate way to determine both the DME variant and program version is by the 16-byte version string located at offsets 0x7FB8 on the MSS50, MSS52 and MSS54 and 0xBFB8 on the MSS54HP. This will contain a series of characters such as Ď211323002701J469í and should be repeated in triplicate, though technically only the first 16 bytes are necessary to make the proper determination.

Name:  Screen Shot 2020-03-31 at 8.25.17 AM.png
Views: 662
Size:  25.4 KB

Bytes 5-8 (2300) will denote the DME variant, as illustrated in the table above. The segment located in bytes 9-12 (2701) will denote the program version. Bytes 13-16 (J469) will denote a difference in calibration, but with equivalent parameter offsets to other calibrations within the same program version group.

The version can also be somewhat determined by opening the partial read using a hex editor and looking at the two bytes at 0x0002 representing the program number, though there is some minor variance and overlap for program numbers 4.26, 4.27, 5.19, 5.22, 1.08 and 1.12 that can and does result in parameter space offset difference. The 16-byte version string will serve as the best method for accurately determining the hardware number and subsequent location for its various parameters.

The following table will illustrate the cross reference to program version with respect to hardware number, version string, program number, DME variant and finally, file size.

Name:  Screen Shot 2020-03-31 at 8.27.03 AM.png
Views: 600
Size:  394.3 KB
Appreciate 0
      03-23-2021, 06:16 PM   #2

Drives: BMW E46
Join Date: Mar 2021
Location: Indonesia

iTrader: (0)

Appreciate 0
Post Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

All times are GMT -5. The time now is 01:16 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, vBulletin Solutions Inc.,,,,,,,,, logo and trademark are properties of BIMMERPOST