Hi all,
For those of you who've been following on my journal you'll have known this is coming
For many years those of us with E46 M3's have had to pay for tools to flash our DMEs. No longer, this app is FREE to use: Freeware license here
Disclaimer
Using any tool to write to/modify your DME is not free of risk. You should always ensure that you take a full backup of your DME prior to doing anything else (the app will try it's best to get you to do this).
This is version 1.0.0 of a tool developed by an individual (me). I've done my best to make it robust and reliable and test it as much as possible. Others have also helped with testing.
THIS DOES NOT MEAN IT IS GUARANTEED TO BE DEFECT FREE!
Acknowledgements
heinzboehmer , Bry5on and George Hill have been instrumental in helping to test this as well as providing significant amounts of extremely useful feedback that has helped make this a much better tool that I could have achieved alone. I am very grateful to them for the time and effort that they have put into making this a reality.
Download Link:https://github.com/karter16/MSS54-DS...ublic/releases
FTDI D2xx Driver Setup Instructions: https://github.com/karter16/MSS54-DS...X-driver-setup (if you already have another flashing software setup you shouldn't need this)
OBDII Interface and Connection Troubleshooting: https://github.com/karter16/MSS54-DS...roubleshooting
Explanation of MSS54 Memory Layout and Read/Write Types: https://github.com/karter16/MSS54-DS...ad-Write-Types
Reporting Issues: Please report any issues via the GitHub repo: https://github.com/karter16/MSS54-DS...lic/issues/new so that we can keep everything in one place (do feel free to discuss issues in this thread as well, it would just be very helpful if you enter into Github so I have a nice list)
System Requirements
- The app runs on Windows 10/11 (x86, x64 and ARM64 (works great on a VM on Apple Silicon)) with the .Net 8.0 Desktop Runtime
- The app supports OBD2 (FTDI D2xx driver) cables, and also supports COM.
Key Features/Screenshots
Connect Screen
- Guided connection
- Auto-detection of cable, connection to car, Ignition, etc.
- Auto-connect when cable found, and ignition on.

DME Info Screen
- Key DME info (VIN, Serial, Production Data, Variant, etc. Summary of any data integrity, errors, etc.
- Flash Counter
- Logistics info (these are the bootloader / program / data numbers that are frequently referred to)
- AIF records

Error Memory
- Read Error Memory
- Read Shadow Error Memory
- View detailed info about errors as well as interpretations of the exact error types for that error.
- Export report of errors for sharing
- Clear Error Memory

Adaptions
- Read Adaptions and view interpreted data
- Export Adaptions for sharing
- Clear Adaptions (either all at once or specific categories only)

DME Read
- Read out current Tune off your DME
- Read out current Full binary off your DME

DME Programming
- Write Tune (.bin or .0da)
- Write Program (.bin or .0pa)
- Clear Flash Counter
- Insert AIF Record (free type, copy existing, insert from another binary file)
- EWS Re-sync (for when a paired DME and EWS3 module have got their rolling codes out of sync).
- Recycle DME (aka virginization. This entirely wipes the Service Info and Adaptions blocks. If you don't already understand what this is and why you might want it then don't go near this, if you try to you're going to have a lot of pop-up confirmations to deal with)

History
- The app captures everything you do as an item in the history, indexed to the DME serial number. This means you have full history of what you've done, and means you can restore to any point in that history.
For those of you who've been following on my journal you'll have known this is coming

For many years those of us with E46 M3's have had to pay for tools to flash our DMEs. No longer, this app is FREE to use: Freeware license here
Disclaimer
Using any tool to write to/modify your DME is not free of risk. You should always ensure that you take a full backup of your DME prior to doing anything else (the app will try it's best to get you to do this).
This is version 1.0.0 of a tool developed by an individual (me). I've done my best to make it robust and reliable and test it as much as possible. Others have also helped with testing.
THIS DOES NOT MEAN IT IS GUARANTEED TO BE DEFECT FREE!
Acknowledgements
heinzboehmer , Bry5on and George Hill have been instrumental in helping to test this as well as providing significant amounts of extremely useful feedback that has helped make this a much better tool that I could have achieved alone. I am very grateful to them for the time and effort that they have put into making this a reality.
Download Link:https://github.com/karter16/MSS54-DS...ublic/releases
FTDI D2xx Driver Setup Instructions: https://github.com/karter16/MSS54-DS...X-driver-setup (if you already have another flashing software setup you shouldn't need this)
OBDII Interface and Connection Troubleshooting: https://github.com/karter16/MSS54-DS...roubleshooting
Explanation of MSS54 Memory Layout and Read/Write Types: https://github.com/karter16/MSS54-DS...ad-Write-Types
Reporting Issues: Please report any issues via the GitHub repo: https://github.com/karter16/MSS54-DS...lic/issues/new so that we can keep everything in one place (do feel free to discuss issues in this thread as well, it would just be very helpful if you enter into Github so I have a nice list)
System Requirements
- The app runs on Windows 10/11 (x86, x64 and ARM64 (works great on a VM on Apple Silicon)) with the .Net 8.0 Desktop Runtime
- The app supports OBD2 (FTDI D2xx driver) cables, and also supports COM.
Key Features/Screenshots
Connect Screen
- Guided connection
- Auto-detection of cable, connection to car, Ignition, etc.
- Auto-connect when cable found, and ignition on.
DME Info Screen
- Key DME info (VIN, Serial, Production Data, Variant, etc. Summary of any data integrity, errors, etc.
- Flash Counter
- Logistics info (these are the bootloader / program / data numbers that are frequently referred to)
- AIF records
Error Memory
- Read Error Memory
- Read Shadow Error Memory
- View detailed info about errors as well as interpretations of the exact error types for that error.
- Export report of errors for sharing
- Clear Error Memory
Adaptions
- Read Adaptions and view interpreted data
- Export Adaptions for sharing
- Clear Adaptions (either all at once or specific categories only)
DME Read
- Read out current Tune off your DME
- Read out current Full binary off your DME
DME Programming
- Write Tune (.bin or .0da)
- Write Program (.bin or .0pa)
- Clear Flash Counter
- Insert AIF Record (free type, copy existing, insert from another binary file)
- EWS Re-sync (for when a paired DME and EWS3 module have got their rolling codes out of sync).
- Recycle DME (aka virginization. This entirely wipes the Service Info and Adaptions blocks. If you don't already understand what this is and why you might want it then don't go near this, if you try to you're going to have a lot of pop-up confirmations to deal with)
History
- The app captures everything you do as an item in the history, indexed to the DME serial number. This means you have full history of what you've done, and means you can restore to any point in that history.

Comment