Announcement

Collapse
No announcement yet.

Comprehensive MSS54/MSS54HP DME Information

Collapse
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Comprehensive MSS54/MSS54HP DME Information

    Copy from p0lar on the old M3F

    PROGRESS UPDATES:
    • Shift lights enabled for 6MT-equipped vehicles (full-time or sport-mode only) (VERIFIED)
    • Modified oil temperature warning lights (CSL, hybrid, tach-aligned, or custom) (VERIFIED)
    • Sport mode memory enabled (VERIFIED)
    • Speed governor modification per gear (VERIFIED)
    • Rev limit modification per gear (VERIFIED)
    • Throttle sensitivity adjustments (Pedal% to Throttle%) in limp, comfort and sport modes (VERIFIED)
    • CSL rev-match functionality/SMG shifting (VERIFIED)
    • Fix SMG Auto shifting behaviour with modified rear gear ratios (VERIFIED)
    • Convert DME from SMG to 6MT & vice versa (VERIFIED)
    • Post-Cat O2 SES delete (VERIFIED)
    • Secondary Air Pump delete (VERIFIED)
    • Dyno Rev-limit delete (VERIFIED)
    • Disable cold-start rough-running/fuel enrichment issues (VERIFIED)
    • Lockout of MSS54HP DME solved, but currently requires BDM connection (Paffy), or desoldering/socketing the EPROMs
    • ~96% Map Identification
    • Fuel, Ignition, VANOS, Electronic Throttle, Knock et al.(VERIFIED)
    • Download BMWFlash NOW for free (read-only version) to read your DME's contents with an ordinary Vag Com cable and get started today!
    • Windows-based Software is now available to calculate/correct checksums, enable sport mode memory/6MT shift lights, and produce binaries reliably
    • Checksum calculation for MSS50 (E36 M3)/MSS52 (E39 M5)/MSS54|MSS54HP (E46 M3) calibrations/binaries (Now using TunerPro) (VERIFIED)
    • Binary file generation for MSS50/MSS52/MSS54/MSS54HP .0DA files
    • BDM connectivity to the DME for live tracing and full flashing without desoldering the EPROM chips
    • solved DME lock-out based on flash increment within Program Space or Boot Sector (VERIFIED)
    • JTAG/BDM hardware interface (VERIFIED)
    • identify more maps/features (VERIFIED)
    • disable cold start sequence (VERIFIED)
    • burble/pop (VERIFIED)
    • PDF Howto (VERIFIED)
    See post #3 for a table with common features and maps that correlate to their respective hardware version.


    TO-DO TASK LIST: (in order of priority)
    • disassemble more MSS54[HP] DME executable code? (ugh)

    ------ ORIGINAL POST ------
    Due to the severely fragmented nature of MSS54/MSS54HP information within this and other M3 communities, I'm starting a comprehensive information thread whereby I can maintain information pertinent to all things related to the DME of the E46 M3.

    This is a table of information auto-parsed from flash files taken from the ISTA CDs. If you have a version that isn't listed here, please PM me your .0DA file so I can add it to the list! (Please bear in mind that I'm not manually parsing and interpreting this information, this is extracted straight from the BMW AG files themselves.)

    This is a correlation table between software and hardware versions found inside the DME themselves.

    The variant is most easy to determine by size, 32kb = MSS54, 64kb = MSS54HP.
    The hardware number is the associated program space (.0PA) for which the data is correlated (.0DA)
    Version Information is taken from the .0DA binary itself, 0x7FB8 for the MSS54, and 0xBFB8 for the MSS54HP, and is 56 bytes long
    Program # is also taken from the .0DA binary itself, and is in two locations per file, one for the master processor and one for the slave processor. On the MSS54, these are located at 0x4002 for the master and 0x0002 for the slave. On the MSS54HP, these are located at 0x8002 for the master and 0x0002 for the slave.
    Hardware Variant
    MSS54
    Program Version
    7831815
    .0DA File
    7831824
    Version Information
    211322000701J404
    Program # (dec)
    0x01F7 (503)
    MSS54 7831815 7831827 211322000701J409 0x01F7 (503)
    MSS54 7831815 7831830 211322000701QD04 0x01F7 (503)
    MSS54 7831815 7831833 211322000701QD09 0x01F7 (503)
    MSS54 7833892 7833894 211322001401J424 0x0206 (518)
    MSS54 7833892 7833896 211322001501J444 0x0206 (518)
    MSS54 7833892 7833905 211322001501J464 0x0206 (518)
    MSS54 7833892 7833913 211322001501J449 0x0206 (518)
    MSS54 7833892 7833925 211322001501JD34 0x0206 (518)
    MSS54 7833892 7833927 211322001501JD54 0x0206 (518)
    MSS54 7833892 7833929 211322001501JD74 0x0206 (518)
    MSS54 7833892 7833935 211322001501JD59 0x0206 (518)
    MSS54 7833892 7834745 211322001501J4E9 0x0206 (518)
    MSS54 7833892 7834747 211322001501J4G9 0x0206 (518)
    MSS54 7833892 7834751 211322001501JDD9 0x0206 (518)
    MSS54 7833892 7834753 211322001501JDF9 0x0206 (518)
    MSS54 7837941 7837908 211322002101J424 0x0207 (519)
    MSS54 7837941 7837910 211322002101J444 0x0207 (519)
    MSS54 7837941 7837912 211322002101J464 0x0207 (519)
    MSS54 7837941 7837918 211322002101J449 0x0207 (519)
    MSS54 7837941 7837920 211322002101Q424 0x0207 (519)
    MSS54 7837941 7837922 211322002101Q444 0x0207 (519)
    MSS54 7837941 7837924 211322002101Q464 0x0207 (519)
    MSS54 7837941 7837928 211322002101Q449 0x0207 (519)
    MSS54 7837941 7837930 211322002101JD34 0x0207 (519)
    MSS54 7837941 7837932 211322002101JD54 0x0207 (519)
    MSS54 7837941 7837934 211322002101JD74 0x0207 (519)
    MSS54 7837941 7837940 211322002101JD59 0x0207 (519)
    MSS54 7842559 7842556 211323002601JD39 0x020A (522)
    MSS54 7842559 7842558 211323002601JD79 0x020A (522)
    MSS54 7842975 7842972 211322002801J429 0x020A (522)
    MSS54 7842975 7842974 211322002801J469 0x020A (522)
    MSS54 7842975 7843306 211323002801JD39 0x020A (522)
    MSS54 7842975 7843308 211323002801JD79 0x020A (522)
    MSS54 7842975 7843310 211323002801Q429 0x020A (522)
    MSS54HP 7834910 7834912 211323001601J424 0x0068 (104)
    MSS54HP 7834910 7834914 211323001601J444 0x0068 (104)
    MSS54HP 7834910 7834916 211323001601J464 0x0068 (104)
    MSS54HP 7834910 7834918 211323001601J429 0x0068 (104)
    MSS54HP 7834910 7834920 211323001601J469 0x0068 (104)
    MSS54HP 7834910 7834922 211323001601J449 0x0068 (104)
    MSS54HP 7834910 7834924 211323001601JD34 0x0068 (104)
    MSS54HP 7834910 7834926 211323001601JD54 0x0068 (104)
    MSS54HP 7834910 7834928 211323001601JD74 0x0068 (104)
    MSS54HP 7834910 7834930 211323001601JD39 0x0068 (104)
    MSS54HP 7834910 7834932 211323001601JD79 0x0068 (104)
    MSS54HP 7834910 7834934 211323001601JD59 0x0068 (104)
    MSS54HP 7835564 7835566 211323001801J424 0x006B (107)
    MSS54HP 7835564 7835568 211323001801J444 0x006B (107)
    MSS54HP 7835564 7835570 211323001801J449 0x006B (107)
    MSS54HP 7835564 7835572 211323001801JD34 0x006B (107)
    MSS54HP 7835564 7835574 211323001801JD54 0x006B (107)
    MSS54HP 7835564 7835576 211323001801JD74 0x006B (107)
    MSS54HP 7835564 7835580 211323001801JD79 0x006B (107)
    MSS54HP 7835564 7835582 211323001801JD59 0x006B (107)
    MSS54HP 7835564 7835644 211323001801J464 0x006B (107)
    MSS54HP 7835564 7835648 211323001801J469 0x006B (107)
    MSS54HP 7835564 7836364 211323001801J489 0x006B (107)
    MSS54HP 7835564 7836366 211323001801JD99 0x006B (107)
    MSS54HP 7837340 7837329 211325000401PD11 0x00D3 (211)
    MSS54HP 7837340 7837331 211325000401PD31 0x00D3 (211)
    MSS54HP 7837340 7837333 211325000401PD1D 0x00D3 (211)
    MSS54HP 7837340 7837335 211325000401PD3D 0x00D3 (211)
    MSS54HP 7837340 7837337 211325000401PD1J 0x00D3 (211)
    MSS54HP 7837340 7837339 211325000401PD3J 0x00D3 (211)
    MSS54HP 7837805 7837778 211323002001J484 0x006C (108)
    MSS54HP 7837805 7837780 211323002001J424 0x006C (108)
    MSS54HP 7837805 7837782 211323002001J444 0x006C (108)
    MSS54HP 7837805 7837784 211323002001J464 0x006C (108)
    MSS54HP 7837805 7837790 211323002001J449 0x006C (108)
    MSS54HP 7837805 7837792 211323002001JD94 0x006C (108)
    MSS54HP 7837805 7837794 211323002001JD34 0x006C (108)
    MSS54HP 7837805 7837796 211323002001JD54 0x006C (108)
    MSS54HP 7837805 7837798 211323002001JD74 0x006C (108)
    MSS54HP 7837805 7837804 211323002001JD59 0x006C (108)
    MSS54HP 7842569 7842566 211323002501???? 0x0070 (112)
    MSS54HP 7842569 7842568 211323002501???? 0x0070 (112)
    MSS54HP 7842981 7842978 211323002701???? 0x0070 (112)
    MSS54HP 7842981 7842980 211323002701???? 0x0070 (112)
    MSS54HP 7842981 7843302 211323002701???? 0x0070 (112)
    MSS54HP 7842981 7843304 211323002701???? 0x0070 (112)
    MSS54HP ???????? ???????? 211323001901J484 0x006C (108)
    MSS54HP ???????? ???????? 211323001901JD79 0x006C (108)
    HW Number
    7834910
    Z_Stand (major)
    104
    Z_Stand (minor)
    3
    Version String
    211323001601
    Ver. Check Char
    P
    Checksum
    8FCD
    Checksum Check Char
    7
    CARB Mode CVN
    48D4D495
    CARB Mode Check Char
    Y
    7835564 107 0 211323001801 R 6C4B 8 996B242F S
    7837805 108 3 211323002001 M 2FE5 N 7D1377A5 Z
    7842569 112 0 211323002501 R 3D0B O DF6FC103 N
    7842981 112 1 211323002701 T ECD5 H C2EF8A0A Z
    7837340 211 0 211325000401 M A06A D 9380F1C8 4
    7831815 503 000 211322000701 M 6F23 X unlisted ?
    ? 508 000 211322000901 ? ? ? unlisted ?
    7833892 518 001 211322001501 N 83B1 G 8CA68032 3
    7837941 519 001 211322002101 M 9988 N ED6EDD90 Q
    7835584 519 0? 211322001701 ? ? ? ?
    7842559 522 000 211322002601 R B2B8 V 960CE42A 3
    7842975 522 001 211322002801 T 4302 8 59D512B9 B
    Release #
    7.842.981
    Release Date
    23-Apr-2009
    System
    MSS54HP
    Model
    E46-M3-USA-HS
    Region
    LEV
    Filename
    A7843302.0DA
    Stand
    JD39
    ZV_1
    E46-M3-US
    7.842.981 23-Apr-2009 MSS54HP E46-M3-USA-SMG LEV A7843304.0DA JD79 E46-M3-US
    7.842.979 13-Mar-2009 MSS54HP E46-M3-USA-HS LEV A7842980.0DA J469 E46-M3-US
    7.842.977 13-Mar-2009 MSS54HP E46-M3-USA-HS LEV A7842978.0DA J429 E46-M3-US
    7.842.975 24-Apr-2009 MSS54HP E36/7-M-Roadster-US LEV A7843310.0DA Q429 E36/7-M-Roadster-US
    7.842.975 24-Apr-2009 MSS54HP E46-M3-USA-SMG LEV A7843306.0DA JD39 E46-M3-US-SMG
    7.842.975 24-Apr-2009 MSS54HP E46-M3-USA-SMG LEV A7843308.0DA JD79 E46-M3-US-SMG
    7.842.973 13-Mar-2009 MSS54 E46 M3 US HS USOBD A7842974.0DA J469 Serie E46 M3 US
    7.842.971 13-Mar-2009 MSS54 E46 M3 US HS USOBD A7842972.0DA J429 Serie E46 M3 US
    7.842.569 31-Oct-2008 MSS54HP E46-M3-USA-HS LEV A7842566.0DA JD39 E46-M3-US
    7.842.567 31-Oct-2008 MSS54HP E46-M3-USA-SMG LEV A7842568.0DA JD79 E46-M3-US
    7.842.557 31-Oct-2008 MSS54HP E46-M3-USA LEV A7842558.0DA JD79 E46-M3-US
    7.842.555 31-Oct-2008 MSS54HP E46-M3-USA LEV A7842556.0DA JD39 E46-M3-US
    7.837.939 01-Jul-2005 MSS54 E46 Japan A7837940.0DA JD59 (23.06.05) Serie E46M3-SMG-Japan
    7.837.933 01-Jul-2005 MSS54 E46 EU3 A7837934.0DA JD74 (23.06.05) Serie E46M3-SMG-SA858ZA
    7.837.931 01-Jul-2005 MSS54 E46 EU3 A7837932.0DA JD54 (23.06.05) Serie E46M3-SMG-SA861RDW
    7.837.929 01-Jul-2005 MSS54 E46 EOBD A7837930.0DA JD34 (23.06.05) Serie E46M3-EOBD
    7.837.918 01-Jul-2005 MSS54 E46-M3 Japan A7837918.0DA J449 (22.06.05) Serie E46-M3-Japan
    7.837.912 01-Jul-2005 MSS54 E46-M3 SA858 A7837912.0DA J464 (22.06.05) Serie E46-M3-SA858
    7.837.910 01-Jul-2005 MSS54 E46-M3 SA861 A7837910.0DA J444 (22.06.05) Serie E46-M3-SA861
    7.837.908 01-Jul-2005 MSS54 E46-M3 ECE A7837908.0DA J424 (22.06.05) Serie E46-M3-EOBD
    7.837.803 28-Jun-2005 MSS54HP E46-M3-SMG-Japan Japan A7837804.0DA JD59 (22.06.05) E46-M3-SMG-Japan
    7.837.797 28-Jun-2005 MSS54HP E46-M3-SMG-SA858ZA EU3 A7837798.0DA JD74 (22.06.05) E46-M3-SMG-SA858ZA
    7.837.795 28-Jun-2005 MSS54HP E46-M3-SMG-SA861RDW EU3 A7837796.0DA JD54 (22.06.05) E46-M3-SMG-SA861RDW
    7.837.793 28-Jun-2005 MSS54HP E46-M3-SMG-ECE EU3 A7837794.0DA JD34 (22.06.05) E46-M3-SMG-EOBD
    7.837.791 28-Jun-2005 MSS54HP E46-M3-SMG-ECE EU4 A7837792.0DA JD94 (22.06.05) E46-M3-SMG-EOBD
    7.837.790 28-Jun-2005 MSS54HP E46-M3 Japan A7837790.0DA J449 (23.06.05) E46-M3-Japan
    7.837.784 28-Jun-2005 MSS54HP E46-M3 SA858 A7837784.0DA J464 (23.06.05) E46-M3-SA858
    7.837.782 28-Jun-2005 MSS54HP E46-M3 SA861 A7837782.0DA J444 (23.06.05) E46-M3-SA861
    7.837.780 28-Jun-2005 MSS54HP E46-M3 EU3 A7837780.0DA J424 (23.06.05) E46-M3-EOBD EU3
    7.837.778 28-Jun-2005 MSS54HP E46-M3 EU4 A7837778.0DA J484 (23.06.05) E46-M3-EOBD EU4
    7.837.339 21-Dec-2004 MSS54HP E46-M3 CSL EU3 A7837339.0DA PD3J (03.12.04) E46-M3-CSL-Japan SA231
    7.837.337 21-Dec-2004 MSS54HP E46-M3 CSL EU3 A7837337.0DA PD1J (03.12.04) E46-M3-CSL-Japan Vmax unregulated
    7.837.335 21-Dec-2004 MSS54HP E46-M3 CSL EU3 A7837335.0DA PD3D (03.12.04) E46-M3-CSL-SA861 SA231
    7.837.333 21-Dec-2004 MSS54HP E46-M3 CSL EU3 A7837333.0DA PD1D (03.12.04) E46-M3-CSL-SA861 Vmax unregulated
    7.837.331 21-Dec-2004 MSS54HP E46-M3 CSL EU3 A7837331.0DA PD31 (03.12.04) E46-M3-CSL-EOBD SA231
    7.837.329 21-Dec-2004 MSS54HP E46-M3 CSL EU3 A7837329.0DA PD11 (03.12.04) E46-M3-CSL-EOBD Vmax unregulated
    7.836.365 07-Apr-2004 MSS54HP E46-M3-SMG-US US-LEV A7836366.0DA JD99 (01.04.04) E46-M3-SMG-US
    7.836.363 07-Apr-2004 MSS54HP E46-M3 OBD II A7836364.0DA 1801 (01.04.04) Datensatz M3US Vers107 Prod to 9/2002
    7.835.647 26-Jun-2003 MSS54HP E46-M3-SMG-US US-LEV A7835648.0DA J469 (25.06.03) E46-M3-US
    7.835.644 26-Jun-2003 MSS54HP E46-M3 SA858 A7835644.0DA J464 (25.06.03) E46-M3-SA858
    7.835.581 26-Jun-2003 MSS54HP E46-M3-SMG-Japan EU3 A7835582.0DA JD59 (25.06.03) E46-M3-SMG-Japan
    7.835.579 26-Jun-2003 MSS54HP E46-M3-SMG-US US-LEV A7835580.0DA JD79 (25.06.03) E46-M3-SMG-US
    7.835.575 26-Jun-2003 MSS54HP E46-M3-SMG-SA858 EU3 A7835576.0DA JD74 (25.06.03) E46-M3-SMG-SA858ZA
    7.835.573 26-Jun-2003 MSS54HP E46-M3-SMG-SA861 EU3 A7835574.0DA JD54 (25.06.03) E46-M3-SMG-SA861RDW
    7.835.571 26-Jun-2003 MSS54HP E46-M3-SMG-ECE EU3 A7835572.0DA JD34 (25.06.03) VS E46-M3-SMG-EOBD
    7.835.570 26-Jun-2003 MSS54HP E46-M3 Japan A7835570.0DA J449 (25.06.03) E46-M3-Japan
    7.835.568 26-Jun-2003 MSS54HP E46-M3 SA861 A7835568.0DA J444 (25.06.03) E46-M3-SA861
    7.835.566 26-Jun-2003 MSS54HP E46-M3 EU3 A7835566.0DA J424 (25.06.03) E46-M3-EOBD
    7.834.934 27-Feb-2003 MSS54HP E46-M3-SMG-Japan EU3 A7834934.0DA JD59 (24.02.03) VS E46-M3-SMG-Japan
    7.834.932 27-Feb-2003 MSS54HP E46-M3-SMG-US from MJ2003 US-LEV A7834932.0DA JD79 (21.02.03) VS E46-M3-SMG-US from MY2003
    7.834.930 27-Feb-2003 MSS54HP E46-M3-SMG-US US-LEV A7834930.0DA JD39 (21.02.03) VS E46-M3-SMG-US
    7.834.928 27-Feb-2003 MSS54HP E46-M3-SMG-SA858 EU3 A7834928.0DA JD74 (24.02.03) VS E46-M3-SMG-SA858
    7.834.926 27-Feb-2003 MSS54HP E46-M3-SMG-SA861 EU3 A7834926.0DA JD54 (24.02.03) VS E46-M3-SMG-SA861
    7.834.924 27-Feb-2003 MSS54HP E46-M3-SMG-ECE EU3 A7834924.0DA JD34 (21.02.03) VS E46-M3-SMG-EOBD
    7.834.922 27-Feb-2003 MSS54HP E46-M3 Japan A7834922.0DA J449 (25.02.03) VS E46-M3-Japan
    7.834.919 27-Feb-2003 MSS54HP E46-M3 OBD II A7834920.0DA 1601 (24.02.03) VS E46-M3US-HS-OBD II
    7.834.917 27-Feb-2003 MSS54HP E46-M3 OBD II A7834918.0DA 1601 (24.02.03) E46-M3US-HS-OBD II to MY03
    7.834.916 27-Feb-2003 MSS54HP E46-M3 SA858 A7834916.0DA J464 (25.02.03) VS E46-M3-SA858
    7.834.914 27-Feb-2003 MSS54HP E46-M3 SA861 A7834914.0DA J444 (25.02.03) VS E46-M3-SA861
    7.834.912 27-Feb-2003 MSS54HP E46-M3 EU3 A7834912.0DA J424 (25.02.03) VS E46-M3-EOBD
    7.834.752 16-Dec-2002 MSS54 E46 USOBD A7834753.0DA JDF) (12.12.02) Serie E46M3SMG-USOBD from Prod. 9/2002
    7.834.750 16-Dec-2002 MSS54 E46 USOBD A7834751.0DA JDD9 (12.12.02) Serie E46M3SMG-USOBD to Prod. 9/2002
    7.834.746 16-Dec-2002 MSS54 E46 USOBD A7834747.0DA J4G9 (10.12.02) Serie E46M3-USOBD from Prod. 9/2002
    7.834.744 16-Dec-2002 MSS54 E46 USOBD A7834745.0DA J4E9 (10.12.02) Serie E46M3-USOBD to Prod. 9/2002
    7.833.934 14-Jun-2002 MSS54 E46 JAPAN A7833935.0DA JD59 (13.06.02) Serie E46M3-SMG-JAPAN
    7.833.928 14-Jun-2002 MSS54 E46 SA858 RSA A7833929.0DA JD74 (13.06.02) Serie E46M3-SMG-SA858-RSA
    7.833.926 14-Jun-2002 MSS54 E46 SA861 RDW A7833927.0DA JD54 (13.06.02) Serie E46M3-SMG-SA861-RDW
    7.833.924 14-Jun-2002 MSS54 E46 ECE-EOBD A7833925.0DA JD34 (13.06.02) Serie E46M3-ECE-EOBD-SMG
    7.833.913 14-Jun-2002 MSS54 E46-M3 Japan A7833913.0DA J449 (12.06.02) Serie E46-M3-Japan
    7.833.905 14-Jun-2002 MSS54 E46-M3 SA858 A7833905.0DA J464 (12.06.02) Serie E46-M3-SA858
    7.833.896 14-Jun-2002 MSS54 E46-M3 SA861 A7833896.0DA J444 (12.06.02) Serie E46-M3-SA861
    7.833.894 14-Jun-2002 MSS54 E46-M3 ECE A7833894.0DA J424 (07.06.02) Serie E46-M3-EOBD
    7.833.181 01-Jul-2005 MSS54 E36/7 EOBD A7837920.0DA Q424 (30.06.05) Serie E36/7-EOBD
    7.832.228 01-Jul-2005 MSS54 E36/7 JOBD A7837928.0DA Q449 (30.06.05) Serie E36/7-SA858
    7.831.833 17-Jan-2000 MSS54 E36/7M-t US A7831833.0DA QD09 (13.01.00) Vorserie E36/7M-t
    7.831.831 01-Jul-2005 MSS54 E36/7 SA858 A7837924.0DA Q464 (30.06.05) Serie E36/7-SA858
    7.831.831 01-Jul-2005 MSS54 E36/7 SA861 A7837922.0DA Q444 (30.06.05) Serie E36/7-SA861
    7.831.830 17-Jan-2000 MSS54 E36/7M-t ECE A7831830.0DA QD04 (13.01.00) Vorserie E36/7M-t
    7.831.827 17-Jan-2000 MSS54 E46 M3 US A7831827.0DA J409 (13.01.00) Vorserie 2 E46-M3
    7.831.824 17-Jan-2000 MSS54 E46 M3 ECE A7831824.0DA J404 (13.01.00) Vorserie 2 E46-M3
    Contents of MSS54.DAT:
    ZB-NR
    7831823
    TYP-NR.
    7831825
    HW-NR
    7831815
    SW-NR
    7831824DA
    CS
    8
    7831826 7831828 7831815 7831827DA T
    7831829 7831831 7831815 7831830DA E
    7831832 7831834 7831815 7831833DA 6
    7833891 7831825 7833892 7833894DA L
    7833895 7831825 7833892 7833896DA 3
    7833904 7831825 7833892 7833905DA L
    7833912 7832217 7833892 7833913DA 7
    7833924 7831825 7833892 7833925DA P
    7833926 7831825 7833892 7833927DA 1
    7833928 7831825 7833892 7833929DA D
    7833934 7832217 7833892 7833935DA N
    7834744 7833179 7833892 7834745DA 1
    7834746 7833910 7833892 7834747DA U
    7834750 7833180 7833892 7834751DA 9
    7834752 7833911 7833892 7834753DA 9
    7834903 7831825 7834910 7834912DA 2
    7834913 7831825 7834910 7834914DA 9
    7834915 7831825 7834910 7834916DA L
    7834917 7833179 7834910 7834918DA F
    7834919 7834935 7834910 7834920DA T
    7834921 7832217 7834910 7834922DA V
    7834923 7831825 7834910 7834924DA B
    7834925 7831825 7834910 7834926DA N
    7834927 7831825 7834910 7834928DA Z
    7834929 7833180 7834910 7834930DA U
    7834931 7834936 7834910 7834932DA F
    7834933 7832217 7834910 7834934DA 9
    7835563 7831825 7835564 7835566DA 9
    7835567 7831825 7835564 7835568DA R
    7835569 7832217 7835564 7835570DA 6
    7835571 7831825 7835564 7835572DA T
    7835573 7831825 7835564 7835574DA 5
    7835575 7831825 7835564 7835576DA H
    7835579 7834936 7835564 7835580DA Q
    7835581 7832217 7835564 7835582DA R
    7835643 7831825 7835564 7835644DA 5
    7835647 7834935 7835564 7835648DA 6
    7836363 7833179 7835564 7836364DA B
    7836365 7833180 7835564 7836366DA H
    7837328 7834533 7837340 7837329DA 6
    7837330 7834533 7837340 7837331DA W
    7837332 7834533 7837340 7837333DA 8
    7837334 7834533 7837340 7837335DA K
    7837336 7834544 7837340 7837337DA 0
    7837338 7834544 7837340 7837339DA C
    7837777 7837022 7837805 7837778DA O
    7837779 7831825 7837805 7837780DA 0
    7837781 7831825 7837805 7837782DA J
    7837783 7831825 7837805 7837784DA V
    7837789 7832217 7837805 7837790DA Y
    7837791 7837022 7837805 7837792DA S
    7837793 7831825 7837805 7837794DA X
    7837795 7831825 7837805 7837796DA 9
    7837797 7831825 7837805 7837798DA L
    7837803 7832217 7837805 7837804DA H
    7837907 7831825 7837941 7837908DA A
    7837909 7831825 7837941 7837910DA T
    7837911 7831825 7837941 7837912DA C
    7837917 7832217 7837941 7837918DA 8
    7837919 7831831 7837941 7837920DA U
    7837921 7831831 7837941 7837922DA D
    7837923 7831831 7837941 7837924DA P
    7837927 7832228 7837941 7837928DA E
    7837929 7831825 7837941 7837930DA X
    7837931 7831825 7837941 7837932DA G
    7837933 7831825 7837941 7837934DA S
    7837939 7832217 7837941 7837940DA V
    7842555 7833180 7842559 7842556DA 3
    7842557 7833911 7842559 7842558DA 3
    7842565 7833180 7842569 7842566DA 6
    7842567 7834936 7842569 7842568DA K
    7842971 7833179 7842975 7842972DA F
    7842973 7833910 7842975 7842974DA 8
    7842977 7833179 7842981 7842978DA 4
    7842979 7834935 7842981 7842980DA I
    7843301 7833180 7842981 7843302DA M
    7843303 7834936 7842981 7843304DA 0
    7843305 7833180 7842975 7843306DA L
    7843307 7833911 7842975 7843308DA L
    7843309 7833181 7842975 7843310DA H
    Abbreviation Function (German) Function (Common English)
    AR ANTIRUCKELFUNKTION Anti-bucking
    AQ AQUER aquer
    AUSS Aussetzerkennung Misfire code/detection
    BA BA ??
    BZ Betriebszustaende Operating states
    CAN CAN_Schnittstelle CAN bus interface/control
    CAN CAN_Schnittstelle-Slave CAN bus interface/control slave
    DA D/A_Konfiguration Digital/Analog conversion/configuration
    DKBA DKBA Contains Alpha-N map
    DWF Drehzahlwarnfeld Speed ​​warning field
    DSV Druckspeicherventil Accumulator valve
    DYN Dynamik dynamics
    EDK EDK Throttle Body
    EDISI EDK_Soll_Ist EDK actual
    EGAS EGAS Electronic Throttle system
    ?? Eigendiagnose self-diagnosis
    TI Einspritzung injection
    ELU Elektroluefter electric fan
    FGR FGR Cruise Control
    FR FUELLUNGSREGLER Combustion controller (adapt values)
    ?? Fehlerfilter Kontrolle error filter
    VDIAG Fz_Geschwindigkeit Vehicle speed
    GANG Gangerkennung Gear Recognition/Detection
    KATH Katheiz_Funktion Catalytic heater function
    KATS Katschutz Catalytic protection
    KKOS Klimaanlage air conditioning
    KM Klopfen knock
    EKP Kraftstoffpumpe Fuel pump
    LLR LEERLAUFREGLER Idle control
    ?? Lambda lambda
    ?? Lambda-OBD Lambda OBD
    ?? Lambdadiagnose lambda diagnosis
    ?? Lamdasondenheizung Lambda probe heating
    HFM Lasterfassung load detection
    LU Laufunruhe rough running
    LL LeerLaufSYNChornisation Idle synchronization
    LFR Leerlaufregelung Idle speed control
    LLS Leerlaufsteller Idle adjuster
    ?? Messwerte Observations
    MD Momentenmanager moment Manager
    NO_FUNCTION NO_FUNCTION Miscellaneous
    OEK OEK ??
    TOG Oelniveaugeber Oil level sensor/readings
    PDR PDR varies with time (?)
    ?? Relativer_Oeffnungsquerschnitt relative opening cross
    SA_WE SA_WE Temperature functions
    SSP Saugstrahlpumpe eductor
    SWE Schlechtweg-Erkennung rough road detection
    SLS, SLP, SLV Sekundaerluftsystem Secondary air system
    SERVO Servotronic Servotronic adjustable steering ratio system (non-M3)
    SK Sicherheitskonzept Security concept
    START Startrelais Starter relay
    ?? System_Kontrolle System control
    TW TPU_Synchronisation TPU synchronization
    TE, TEA Tankentlueftung Tank vent or Evaporator canister purge control
    LDP Tankleckdiagnose Tank leak diagnosis
    ?? Vanos vanos
    ?? Versionskontrolle version control
    TZ Zuendung ignition
    SMG smg smg
    SA Options:
    SA858 = Low compression version
    SA861 = No EOBD (cat delete)
    SA231 = deregulated speed limiter

    PERFORMANCE WARRANTY DISCLAIMER
    By installing or attempting, by any means, any information, software, services, suggestions, tune, or tuning idea contained within this thread, the reader both understands and agrees, unconditionally, that any such altered performance products, information, software, services, suggestions, tunes, or ideas may not perform as intended, or at all. Individual results may vary depending on make, model, year, and fitment for any particular use is not guaranteed. In no way shall the contributors of this thread, or m3forum.net administration, site owners, or sponsors be held responsible and/or liable for any results based on information claimed or unclaimed, that may or may not come from the direct or indirect use of information, software, services, suggestions, tunes or tuning ideas contained within. YOU ARE ON YOUR OWN. Any information, software, services, suggestions, tune or tuning ideas can and most will inhibit the ability of the car to perform as intended by its original manufacturer. It is also entirely likely that the information, software, services, suggestions, tune or tuning ideas contained within will interfere with time-tested OEM functionality, diagnostics and local emissions compliance. USE AT YOUR OWN RISK.

    LIABILITY DISCLAIMER
    In no way shall any contributor hereby referred to as an m3forum.net administrator, site owner, forum member or forum sponsor be liable for the information, software, services, suggestions, tune, or tuning idea or other such nomenclature contained within this thread, regardless of proper or improper utilization. Those who actively choose to follow any advice, or seek the counsel of any other person in accordance with the information voluntarily submitted within this thread accept the consequences of their actions or inactions without recourse. The user of this information, software, services, suggestions, tune or tuning idea assumes all liability and agrees to waive any and all remedies and liabilities, claims for remuneration, expressed or implied arising by law or otherwise, including without obligation by those volunteering any such information, software, services, suggestions, tune or tuning idea with respect to fitness or consequential damage, either by negligence or direct consequence. The contributors to this thread also waive any such liability for personal injury or damages that may arise for any reason, not withstanding injury or damage to other persons. The user acknowledges that he or she is not relying on the contributors to this thread to have any such skill or judgment to furnish correct or proper information, software, services, suggestions, tune, or tuning idea suitable for any particular purpose and that no liabilities exist whatsoever. By agreeing to these terms, either actively, passively or not at all, the user of the information, software, services, suggestions, tune, or tuning idea contained within agrees to indemnify The contributors to this thread and to hold any such contributors harmless from any claim(s) related to the aforementioned information, software, services, suggestions, tune, or tuning idea. Under NO circumstance will any participant of this thread be held liable for any damages or expenses for any reason, especially by use of the information, software, services, suggestions, tune, or tuning idea. Contributors to this thread assume zero liability regarding the improper installation or misapplication of the information, software, services, suggestions, tune or tuning ideas contained herein. It is the user's responsibility to make proper judgment decisions when making changes to their own vehicle.

    Checksums and unlocking:
    NickG explains why AIF writes brick a DME
    The ECU lockup due to too many flashes is not due to the EEPROM's characteristics. It's a 'feature' written into the boot code of the MSS52/54 ECU. This pseudo counter (which isn't really a counter) is different than the AIF counter present in other BMW ECUs. Actually, the AIF counter/limit is present in this ECU too. So you're still limited to 14 AIF writes (AIF counter), or about 60 writes in total (general reflashes). I've been able to come up with a way to reset the 'lockup' counter without desoldering the EEPROMs. It's helped tremendously with all the tuning required for a turbo kit.
    Unlock a bricked DME
    Originally Posted by hakentt-mss54
    I was doing some major flashing developing and figuring out things, then ECU would not accept flashing any more.
    I desoldered both eproms using quality adjustable air heat gun, eproms are so close to the processors that it takes some skill to properly desolder eproms and not damage processor legs. Soldering it back together is a bit harder and requires some skill to use the flux properly and not make a mess.

    then I red both files using my wellem psop44 adapter for 29f400, dumped both 512kb files from eproms, then compared it to few other dumps that I have.

    As nick stated 60 flashes max. So I found this area at hex address of both 512kb files located at 4800 hex, in the empty field of FFs, there are 00s, other files had less 00s then mine. So I started calculations, my file has 120 bytes of 00, asuming they are 16bit, I devided them by two, this gives me a number of 60 the same number Nick G said. So I tuned them all back to FFs on both dumps. flashed them back into eproms, and my DME was unlocked, I made a test flash with cheap galletto and it works. Thanks to Nick G.


    CHECKSUM CALCULATION/VERIFICATION/CORRECTION - SOLVED
    MSS54HP
    CRC-16 Checksum algorithm determined here.
    Originally Posted by terraphantm
    Edit: Solved MSS54HP checksum algorithm, it's actually quite simple.
    It's easier to think of the MSS54HP file as two separate 32KB files. Method for calculating the checksum for either half is the same.
    Take the first 0x4000 bytes and move them to the end. So what was byte 0 is now byte 4000, etc...
    Now select the first 7FFC bytes. Calculate the CRC16 value for these bytes.
    That's your checksum.
    • In the MSS54HP, the segment order is important when calculating checksums.
    • The binary is divided into two main parts, and two subsequent parts per half.
    • The checksums are located at 0x3FFC and 0xBFFC and are 4 bytes long each.
    • To arrive at the checksum, reorder the data in the following format:
      • Segment 1: 0x4000 to 0x7FFF
      • Segment 2: 0x0000 to 0x3FFC
        Use a CRC-16 algorithm to calculate the checksum of those two concatenated parts.
      • Segment 3: 0xC000 to 0xFFFF
      • Segment 4: 0x8000 to 0xBFFC
        Use a CRC-16 algorithm to calculate the checksum of those two concatenated parts.
    • Append the respective checksums to the end of Segment 2 and Segment 4 with two bytes 'FF FF' (*needs more explanation).
    • Reorder the file as follows: Segment 2, Segment 1, CRC-16 Checksum (1+2), Segment 4, Segment 3, CRC-16 Checksum (3+4)
    • Save. Feel free to test the Perl script above, or have it test your checksum calculating abilities
    MSS54 (non-HP)
    • Checksum calculation procedure
      Originally Posted by terraphantm
      Add "F0" to the beginning of the file. Select the first 3FFD bytes and calculate the CRC16. That's equal to the checksum. Worked for all the ones I've tried so far. Method is the same for either half.
    Simple unix shell code to split binaries

    Binary Checksum Verification/Calculation/Correction Script (Perl) - functional with MSS50, MSS52, MSS54 and MSS54HP binary files
    0DA to Binary Conversion Script (Perl) - functional with MSS50, MSS52, MSS54 and MSS54HP 0DA files
    VIN to Hexadecimal Calculation Script (Perl)
    Enabled features:
    • Enable Shift Lights
      Originally Posted by hakentt-mss54
      On 32kb file from MSS54 is at 1AB3, stock value is 00, set to 02 to turn on shiftlights. At some other 32kb files it may be at some other location near.
      On 64kb MSS54HP its located at 29CB stock 00, set to 02 to turn on shiftlights.
      Originally Posted by p0lar
      On 64kb MSS54HP files, search for 'C8 1E 06 00' and enable it by flipping the last bit to something like 'C8 1E 06 02'. There are three known locations in the MSS54HP variants, 0x28C9, 0x28CB, as well as 0x29CB that hakenTT-mss54 observed. Also, 0x1A7D is a location on the MSS54 as well as 0x29CB.
    • Sport Mode Memory
      Originally Posted by terraphantm
      In a hex editor, look for "01 02 1E 14 FF FF 03". Change 03 to 04. Correct checksums. Write. In the Euro tune, that "03" is located at offset 8026. May or may not be the same for other tunes. Obviously would not be the same for non-HP DMEs.
    • Raised rev limiter per gear and confirmed immediately thereafter
    Originally Posted by terraphantm
    I think I found RPM limit. In 7837779 (MSS54HP Euro) it's located at 0416. In 7837907 (MSS54 Euro) it's located at 03CA.
    Seems to be stored in a similar format as the speed limiter
    Code:
    Gears:
    00 00 | 00 01 | 00 02 | 00 03 | 00 04 | 00 05 | 00 06 | 00 07
    And in RPM:
    1F 40 | 1F 40 | 1F 40 | 1F 40 | 1F 40 | 1F 40 | 1F 40 | 1F 40
    8000 | 8000 | 8000 | 8000 | 8000 | 8000 | 8000 | 8000
    • Remove speed regulator per gear and also earlier from enemigo
      Originally Posted by p0lar
      At 0x8F94, you'll find the gear maps:
      Code:
      00 00 00 01 00 02 00 03 00 04 00 05 00 06 00 07
      And at 0x8FA4, you'll find the velocity in kmph * 16:
      Code:
      10 20 10 20 10 20 10 20 10 20 0F E0 10 20 10 20
      which will translate in kmph to:
      Code:
      258 258 258 258 258 254 258 258

    Maps:[*]VANOS Intake/Exhaust maps

    Information:
    Tools and Utilities (that are legal to post of course)I'm using this post to enumerate various features and maps as well as where to find them in hardware releases. If you can, please post the information to me with the requirements of the table below. If you don't have your hardware version, please let me know what software version you have and I will make the determination from the tables above.

    Anomalies are marked in BOLD, missing values are HIGLIGHTED.

    The hardware version must be one of the following 11 flashes (5 for the MSS54 and 6 for the MSS54HP):

    Platform Binary Size Production Dates HW Releases Notes
    Platform
    MSS54
    Binary Size
    32kb (32768 bytes)
    Production Dates
    ??
    HW Releases
    7831815, 7833892, 7837941, 7842559, 7842975
    Notes
    Normal MSS54 files, normal binaries
    MSS54HP 64kb (65536 bytes) ?? 7834912, 7835564, 7837340, 7837805, 7842569, 7842981 Normal MSS54HP files, normal binaries
    HW Release
    7831815
    Platform

    MSS54
    Description

    6MT Shift Lights
    Offset

    0x????
    Size

    1 byte
    Notes

    0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7831815 MSS54 Drivetrain Gear Ratios 0x19E4 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7831815 MSS54 Engine Rev Limit per Gear 0x03B6 8x2 table 0x1DB0 = 7600 RPM, 0x1FA4 = 8100 RPM
    7831815 MSS54 Oil Temp Warmup Lights unknown 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7831815 MSS54 Speed Limiter per Gear 0x6E72 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7831815 MSS54 Sport Mode Memory 0x4024 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7831815 MSS54 Throttle Sensitivity: Komfort Mode 0x41B4 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7831815 MSS54 Throttle Sensitivity: Limp Mode 0x4160 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7831815 MSS54 Throttle Sensitivity: Sport Mode 0x418A 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7833892 MSS54 6MT Shift Lights 0x1A7D 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7833892 MSS54 Drivetrain Gear Ratios 0x1A7E 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7833892 MSS54 Engine Rev Limit per Gear 0x03BA 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7833892 MSS54 Oil Temp Warmup Lights 0x0x5454 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7833892 MSS54 Speed Limiter per Gear 0x6F02 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7833892 MSS54 Sport Mode Setting 0x4024 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7833892 MSS54 Throttle Sensitivity: Komfort Mode 0x41A0 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7833892 MSS54 Throttle Sensitivity: Limp Mode 0x414B 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7833892 MSS54 Throttle Sensitivity: Sport Mode 0x4176 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7837941 MSS54 6MT Shift Lights 0x1AB3 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7837941 MSS54 Drivetrain Gear Ratios 0x1AB4 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7837941 MSS54 Engine Rev Limit per Gear 0x03BA 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7837941 MSS54 Oil Temp Warmup Lights 0x5370 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7837941 MSS54 Speed Limiter per Gear 0x6ED2 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7837941 MSS54 Sport Mode Memory 0x4024 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7837941 MSS54 Throttle Sensitivity: Komfort Mode 0x41A0 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7837941 MSS54 Throttle Sensitivity: Limp Mode 0x414C 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7837941 MSS54 Throttle Sensitivity: Sport Mode 0x4176 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7842559 MSS54 6MT Shift Lights 0x1AB3 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7842559 MSS54 Drivetrain Gear Ratios 0x1AB4 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7842559 MSS54 Engine Rev Limit per Gear 0x03BA 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7842559 MSS54 Oil Temp Warmup Lights 0x5370 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7842559 MSS54 Speed Limiter per Gear 0x6ED2 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7842559 MSS54 Sport Mode Memory 0x4024 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7842559 MSS54 Throttle Sensitivity: Komfort Mode 0x41A0 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7842559 MSS54 Throttle Sensitivity: Limp Mode 0x414C 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7842559 MSS54 Throttle Sensitivity: Sport Mode 0x4176 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7842975 MSS54 6MT Shift Lights 0x1AB3 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7842975 MSS54 Drivetrain Gear Ratios 0x1AB4 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7842975 MSS54 Engine Rev Limit per Gear 0x03BA 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM, (HW variants may have 0x1DB0 = 7600 RPM)
    7842975 MSS54 Oil Temp Warmup Lights 0x5370 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7842975 MSS54 Speed Limiter per Gear 0x6ED2 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7842975 MSS54 Sport Mode Memory 0x4024 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7842975 MSS54 Throttle Sensitivity: Komfort Mode 0x41A0 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7842975 MSS54 Throttle Sensitivity: Limp Mode 0x414C 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7842975 MSS54 Throttle Sensitivity: Sport Mode 0x4176 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7834910 MSS54HP 6MT Shift Lights 0x28C9 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7834910 MSS54HP Base Alpha-N Map 0x1F98 18x12 map RPM @ 0x1F98, AQ_REL @ 0x1FBC (relative % opening of BOTH the throttle AND the idle air motor (throttle pos.) (x*100/32768)), øKW @ 0x1FD4 (x/1000)
    7834910 MSS54HP Drivetrain Gear Ratios 0x28CA 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7834910 MSS54HP Engine Rev Limit per Gear 0x03E4 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7834910 MSS54HP Oil Temp Warmup Lights 0xB076 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7834910 MSS54HP Speed Limiter per Gear 0x8F94 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7834910 MSS54HP Sport Mode Memory 0x8026 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7834910 MSS54HP Throttle Sensitivity: Komfort Mode 0x8254 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7834910 MSS54HP Throttle Sensitivity: Limp Mode 0x8200 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7834910 MSS54HP Throttle Sensitivity: Sport Mode 0x822A 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7834910 MSS54HP Transistorized Ignition System 0xB120 18x12 map RPM @ 0xB13E, Relative Filling @ 0xB13E (x/1000), ø @ 0xB156 (x/10)
    7835564 MSS54HP 6MT Shift Lights 0x29CB 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7835564 MSS54HP Base Alpha-N Map 0x???? 18x12 map RPM @ 0x????, AQ_REL @ 0x???? (relative % opening of BOTH the throttle AND the idle air motor (throttle pos.) (x*100/32768)), øKW @ 0x???? (x/1000)
    7835564 MSS54HP Drivetrain Gear Ratios 0x29CC 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7835564 MSS54HP Engine Rev Limit per Gear 0x040C 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7835564 MSS54HP Oil Temp Warmup Lights 0xB076 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7835564 MSS54HP Speed Limiter per Gear 0x8F94 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7835564 MSS54HP Sport Mode Memory 0x8026 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7835564 MSS54HP Throttle Sensitivity: Komfort Mode 0x8254 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7835564 MSS54HP Throttle Sensitivity: Limp Mode 0x8200 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7835564 MSS54HP Throttle Sensitivity: Sport Mode 0x822A 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7835564 MSS54HP Transistorized Ignition System 0x???? 18x12 map
    7837340 MSS54HP 6MT Shift Lights 0x28CB 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7837340 MSS54HP Base Alpha-N Map 0x1F98 18x12 map RPM @ 0x1F98, AQ_REL @ 0x1FBC (relative % opening of BOTH the throttle AND the idle air motor (throttle pos.) (x*100/32768)), øKW @ 0x1FD4 (x/1000)
    7837340 MSS54HP Drivetrain Gear Ratios 0x28CC 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7837340 MSS54HP Engine Rev Limit per Gear 0x03E4 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7837340 MSS54HP Oil Temp Warmup Lights 0xAC74 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7837340 MSS54HP Speed Limiter per Gear 0x92B0 8x2 table 0x11D0 = 4560 / 16 = 285 kmph, CSL VMAX unregulated, 0x1F40 = 335 kmph
    7837340 MSS54HP Sport Mode Memory 0x8026 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7837340 MSS54HP Throttle Sensitivity: Komfort Mode 0x8254 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7837340 MSS54HP Throttle Sensitivity: Limp Mode 0x8200 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7837340 MSS54HP Throttle Sensitivity: Sport Mode 0x822A 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7837340 MSS54HP Transistorized Ignition System 0x08BE - CONFIRM! 18x12 map
    7837805 MSS54HP 6MT Shift Lights 0x29CB 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7837805 MSS54HP Base Alpha-N Map 0x221C 18x12 map RPM @ 0x221C, AQ_REL @ 0x2240 (relative % opening of BOTH the throttle AND the idle air motor (throttle pos.) (x*100/32768)), øKW @ 0x2258 (x/1000)
    7837805 MSS54HP Drivetrain Gear Ratios 0x29CC 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7837805 MSS54HP Engine Rev Limit per Gear 0x40C 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7837805 MSS54HP Fuel Injection, Injector Duration 0xB120 18x12 map
    7837805 MSS54HP Hot Film MAF Voltage 0xA040 ???
    7837805 MSS54HP Injector Latency 0x015A ??x?? map Verify?
    7837805 MSS54HP Oil Temp Warmup Lights 0xB076 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7837805 MSS54HP Speed Limiter per Gear 0x8F94 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7837805 MSS54HP Sport Mode Memory 0x8026 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7837805 MSS54HP Throttle Plate Angle CAT HEATING 0x866E 12x16 map
    7837805 MSS54HP Throttle Plate Angle FULL 0x839E 14x23 map
    7837805 MSS54HP Throttle Plate Angle TEMP MAX 0x8854 4x4 map
    7837805 MSS54HP Throttle Sensitivity: Komfort Mode 0x8254 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7837805 MSS54HP Throttle Sensitivity: Limp Mode 0x8200 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7837805 MSS54HP Throttle Sensitivity: Sport Mode 0x822A 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7837805 MSS54HP Transistorized Ignition System 0xB11A 18x12 map RPM @ 0xB11A, Relative Filling @ 0xB144 (x/1000), ø @ 0xB15C (x/10)
    7842569 MSS54HP 6MT Shift Lights 0x29CB 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7842569 MSS54HP Base Alpha-N Map 0x???? 18x12 map RPM @ 0x????, AQ_REL @ 0x???? (relative % opening of BOTH the throttle AND the idle air motor (throttle pos.) (x*100/32768)), øKW @ 0x???? (x/1000)
    7842569 MSS54HP Drivetrain Gear Ratios 0x29CC 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7842569 MSS54HP Engine Rev Limit per Gear 0x040C 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7842569 MSS54HP Oil Temp Warmup Lights 0xB076 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7842569 MSS54HP Speed Limiter per Gear 0x8F94 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7842569 MSS54HP Sport Mode Memory 0x8026 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7842569 MSS54HP Throttle Sensitivity: Komfort Mode 0x8254 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7842569 MSS54HP Throttle Sensitivity: Limp Mode 0x8200 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7842569 MSS54HP Throttle Sensitivity: Sport Mode 0x822A 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7842569 MSS54HP Transistorized Ignition System 0x???? 18x12 map
    7842981 MSS54HP 6MT Shift Lights 0x29CB 1 byte 0x00 = off, 0x01 = always on, 0x02 = on w/sport mode only
    7842981 MSS54HP Base Alpha-N Map 0x???? 18x12 map RPM @ 0x????, AQ_REL @ 0x???? (relative % opening of BOTH the throttle AND the idle air motor (throttle pos.) (x*100/32768)), øKW @ 0x???? (x/1000)
    7842981 MSS54HP Drivetrain Gear Ratios 0x29CC 8x1 table 0xDA = 218 /60 = 3.63 (final drive), 1st, 2nd, 3rd.. 6th, reverse
    7842981 MSS54HP Engine Rev Limit per Gear 0x40C 8x2 table 0x1F40 = 8000 RPM, 0x1FA4 = 8100 RPM
    7842981 MSS54HP Oil Temp Warmup Lights 0xB076 7x1 table 30,3D,4A,57,64,71,7E = 0°C -> 78°C in 13°C increments
    7842981 MSS54HP Speed Limiter per Gear 0x8F94 8x2 table 0x1020 = 4128 / 16 = 258 kmph, 0x14F0 = 335 kmph
    7842981 MSS54HP Sport Mode Memory 0x8026 1 byte 0x00 = enabled w/DSC, 0x01 = always sport, 0x02 = always comfort, 0x03 = enabled by button, 0x04 = retain previous setting
    7842981 MSS54HP Throttle Sensitivity: Komfort Mode 0x8254 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x02B8 = 696/10 = 69.6% throttle
    7842981 MSS54HP Throttle Sensitivity: Limp Mode 0x8200 10x2 table 0x03E8 = 1000/10 = 100% pedal, maps to 0x01F4 = 500/10 = 50% throttle
    7842981 MSS54HP Throttle Sensitivity: Sport Mode 0x822A 10x2 table 0x028A = 650/10 = 65% pedal, maps to 0x0370 = 880/10 = 88% throttle
    7842981 MSS54HP Transistorized Ignition System 0x???? 18x12 map
    MSS54HP EEPROM Layout


    Code:
    [COLOR=#000000][FONT=verdana][COLOR=#000000]0x00000 -> 0x03FFF: Boot Sector (16kb, master)
    0x04000 -> 0x05FFF: unknown? (8kb)
    0x06000 -> 0x07FFF: unknown? (8kb)
    0x08000 -> 0x0FFFF: Parameter Space Segment 1 (32kb, master)
    0x10000 -> 0x1FFFF: Program Space Segment 5 (64kb)
    0x20000 -> 0x2FFFF: Program Space Segment 6 (64kb)
    0x30000 -> 0x3FFFF: Program Space Segment 7 (64kb)
    0x40000 -> 0x4FFFF: Program Space Segment 8 (64kb)
    0x50000 -> 0x5FFFF: Blank (64kb)
    0x60000 -> 0x6FFFF: Blank (64kb)
    0x70000 -> 0x7FFFF: Blank (64kb)
    -------------------------------------------------------------
    0x80000 -> 0x83FFF: Boot Sector (16kb, slave)
    0x84000 -> 0x85FFF: unknown? (8kb)
    0x86000 -> 0x87FFF: unknown? (8kb)
    0x88000 -> 0x8FFFF: Parameter Space Segment 2 (32kb, slave)
    0x90000 -> 0x9FFFF: Program Space Segment 1 (64kb)
    0xA0000 -> 0xAFFFF: Program Space Segment 2 (64kb)
    0xB0000 -> 0xBFFFF: Program Space Segment 3 (64kb)
    0xC0000 -> 0xCFFFF: Program Space Segment 4 (64kb)
    0xD0000 -> 0xDFFFF: Blank (64kb) 0xE0000 -> 0xEFFFF: Blank (64kb)
    0xF0000 -> 0xFFFFF: Blank (64kb)[/COLOR][/FONT][/COLOR]

    MSS54 EPROM Layout

    Code:
    0x00000 -> 0x03FFF: Boot Sector (16kb, master)
    0x04000 -> 0x05FFF: unknown? (8kb)
    0x06000 -> 0x07FFF: unknown? (8kb)
    0x08000 -> 0x0BFFF: Parameter Space Segment 1 (16kb, master)
    0x0C000 -> 0x0FFFF: blank space (16kb)
    0x10000 -> 0x1FFFF: Program Space Segment 4 (64kb)
    0x20000 -> 0x2FFFF: Program Space Segment 5 (64kb)
    0x30000 -> 0x3FFFF: Program Space Segment 6 (64kb)
    -------------------------------------------------------------
    0x40000 -> 0x43FFF: Boot Sector (16kb, slave)
    0x44000 -> 0x45FFF: unknown? (8kb)
    0x46000 -> 0x47FFF: unknown? (8kb)
    0x48000 -> 0x4BFFF: Parameter Space Segment 2 (16kb, slave)
    0x4C000 -> 0x4FFFF: blank space (16kb)
    0x50000 -> 0x5FFFF: Program Space Segment 1 (64kb)
    0x60000 -> 0x6FFFF: Program Space Segment 2 (64kb)
    0x70000 -> 0x7FFFF: Program Space Segment 3 (64kb)

    MSS54 and MSS54HP XDFs Wiki
    MSS54 and MSS54HP XDFs . Contribute to saildot4k/MSS54-XDFs development by creating an account on GitHub.
    Last edited by Zekarus; 03-29-2020, 12:07 PM.
    2003 AW/BLK 6MT - Instagram

    #2
    Outstanding writeup. Is there a step by step on the AIF counter reset?

    Comment


      #3
      ^Just use MSS Flasher to reset the flash counter.
      TunerPro XDFs, DTCs, A2L, DIY Bench Flash Harness, Swap XDFs COMPREHENSIVE

      Comment


        #4
        Is there any hardware difference in DMEs between coupe, vert MT vs SMG?

        Comment


          #5
          Originally posted by rbg View Post
          Is there any hardware difference in DMEs between coupe, vert MT vs SMG?
          Nope. Hardware differences are only related to year (HP vs non-HP). Firmware is different though.
          2002 Topasblau M3 - Coupe - 6MT - Karbonius CSL Airbox - MSS54HP Conversion - Kassel MAP - SSV1 - HJS - PCS Tune - Beisan - MK60 Swap - ZCP Rack - Nogaros - AutoSolutions - 996 Brembos - Slon - CMP - VinceBar - Koni - Eibach - BlueBus - Journal

          2012 Alpinweiss 128i - Coupe - 6AT - Slicktop - Manual Seats - Daily - Journal

          Comment


            #6
            I am just planing to shop around to see if I can source later version at local partouts, as my sausage fingers and blind eyes are gettin too lazy to deal with SMD components :-)

            Comment


              #7
              Originally posted by rbg View Post
              I am just planing to shop around to see if I can source later version at local partouts, as my sausage fingers and blind eyes are gettin too lazy to deal with SMD components :-)
              Any M3 built 09/2003 or later should be an acceptable donor then.

              Comment


                #8
                Originally posted by terra View Post

                Any M3 built 09/2003 or later should be an acceptable donor then.
                So is there any advantage of picking up a donor MSS54HP ECU, or it will need to be recoded and will be more paint then convert my non HP to HP? For example https://www.kasselperformance.com/pr...s54-hp-tuning/ provide this serves. I can send them either my non-HP ECU or get HP one from donor, but that will be coded to a different VIN. What would be a better option? Sorry if this is a stupid question.

                Comment


                  #9
                  Originally posted by rbg View Post

                  So is there any advantage of picking up a donor MSS54HP ECU, or it will need to be recoded and will be more paint then convert my non HP to HP? For example https://www.kasselperformance.com/pr...s54-hp-tuning/ provide this serves. I can send them either my non-HP ECU or get HP one from donor, but that will be coded to a different VIN. What would be a better option? Sorry if this is a stupid question.
                  Depends. Is your end goal to do a CSL conversion on the ECU?

                  To have Kassel upgrade you non-HP to full CSL would cost $425 + shipping: https://www.kasselperformance.com/pr...re-conversion/

                  HPs are usually $400-500+ on the secondhand market, but if you want a CSL conversion, you would need to flash the HP DME.
                  2002 Topasblau M3 - Coupe - 6MT - Karbonius CSL Airbox - MSS54HP Conversion - Kassel MAP - SSV1 - HJS - PCS Tune - Beisan - MK60 Swap - ZCP Rack - Nogaros - AutoSolutions - 996 Brembos - Slon - CMP - VinceBar - Koni - Eibach - BlueBus - Journal

                  2012 Alpinweiss 128i - Coupe - 6AT - Slicktop - Manual Seats - Daily - Journal

                  Comment


                    #10
                    Originally posted by heinzboehmer View Post

                    Depends. Is your end goal to do a CSL conversion on the ECU?

                    To have Kassel upgrade you non-HP to full CSL would cost $425 + shipping: https://www.kasselperformance.com/pr...re-conversion/

                    HPs are usually $400-500+ on the secondhand market, but if you want a CSL conversion, you would need to flash the HP DME.
                    Yes I am going to do CSL airbox+MAP minus the flap on 6MT. I can source one for a $100 locally, but not sure if it will help for my needs of full conversion.

                    Comment


                      #11
                      Originally posted by rbg View Post

                      Yes I am going to do CSL airbox+MAP minus the flap on 6MT. I can source one for a $100 locally, but not sure if it will help for my needs of full conversion.
                      If you're not going to be running a flap a regular HP will work just fine for the CSL conversion. You can use MSSFlasher (http://www.msstuning.com/mssflasher.html) to flash a modified version of the CSL software onto an unmodified HP. Instructions are on the website.

                      If you want to convert the DME boot sector as well you're going to need to BDM it.
                      2002 Topasblau M3 - Coupe - 6MT - Karbonius CSL Airbox - MSS54HP Conversion - Kassel MAP - SSV1 - HJS - PCS Tune - Beisan - MK60 Swap - ZCP Rack - Nogaros - AutoSolutions - 996 Brembos - Slon - CMP - VinceBar - Koni - Eibach - BlueBus - Journal

                      2012 Alpinweiss 128i - Coupe - 6AT - Slicktop - Manual Seats - Daily - Journal

                      Comment


                        #12
                        Hm... I thought non-HP DME can not run MAP software.

                        Comment


                          #13
                          Originally posted by rbg View Post
                          Hm... I thought non-HP DME can not run MAP software.
                          It can't. You need an HP (or a non-HP converted to HP spec) to run a MAP sensor.
                          2002 Topasblau M3 - Coupe - 6MT - Karbonius CSL Airbox - MSS54HP Conversion - Kassel MAP - SSV1 - HJS - PCS Tune - Beisan - MK60 Swap - ZCP Rack - Nogaros - AutoSolutions - 996 Brembos - Slon - CMP - VinceBar - Koni - Eibach - BlueBus - Journal

                          2012 Alpinweiss 128i - Coupe - 6AT - Slicktop - Manual Seats - Daily - Journal

                          Comment


                            #14
                            Originally posted by heinzboehmer View Post

                            It can't. You need an HP (or a non-HP converted to HP spec) to run a MAP sensor.
                            Ok I see. What about donor ECU begin coded for different VIN, will EWS module need to be coded off, can you DIY it?

                            Comment


                              #15
                              Originally posted by rbg View Post

                              Ok I see. What about donor ECU begin coded for different VIN, will EWS module need to be coded off, can you DIY it?
                              Yes you can DIY all of this.

                              VIN is super easy with Tool32: https://www.ecuworx.co.uk/2016/02/26...f-with-tool32/

                              You can either code out EWS or sync it to your car.
                              2002 Topasblau M3 - Coupe - 6MT - Karbonius CSL Airbox - MSS54HP Conversion - Kassel MAP - SSV1 - HJS - PCS Tune - Beisan - MK60 Swap - ZCP Rack - Nogaros - AutoSolutions - 996 Brembos - Slon - CMP - VinceBar - Koni - Eibach - BlueBus - Journal

                              2012 Alpinweiss 128i - Coupe - 6AT - Slicktop - Manual Seats - Daily - Journal

                              Comment

                              Working...
                              X