Originally posted by heinzboehmer
View Post
Announcement
Collapse
No announcement yet.
MSS54 DS2 Tool: FREE TOOL for programming DME - Tune, full binary, flash counter, etc
Collapse
X
-
erm good question - I don't know but will look into this, you're right, it would be very useful.
- Likes 1
-
Random thought I had the other day, which is tangentially related to this effort. Does the DME expose functionality (via DS2 or otherwise) for disabling the fuel injectors at crank time?
Think it would be super useful for priming the oil system.
- Likes 2
Leave a comment:
-
Possible yes, but I'm not sure if it really fits with the intent of the app which is more about the programming/diagnostics side of things. There's already a fair few options out there for DS2-based gauges etc. so I hadn't envisaged the app going in this direction.Originally posted by ac427 View PostWould it be possible to have a dashboard in the app, to display useful and interesting values in a more readable format?
DIS has some interesting values. Temperature, pressures and voltages. It would be great to be able to view them at a glance. Especially oil level, since i never got it to display on the cluster :-)
In terms of gauge type options I think the way to go is something like the Gauge.S that does CAN logging, so you can get 100hz data. Paired with the upcoming v2 of Community Patch you'll have the ability to log and display literally any variable in the DME that you like. The actual code for v2 is finished, I'm just still madly working on all of the documentation to go with it to make it useful for people.
Leave a comment:
-
Would it be possible to have a dashboard in the app, to display useful and interesting values in a more readable format?
DIS has some interesting values. Temperature, pressures and voltages. It would be great to be able to view them at a glance. Especially oil level, since i never got it to display on the cluster :-)
Last edited by ac427; 06-11-2026, 12:58 AM.
Leave a comment:
-
Great stuff - well done! fingers crossed all goes well for your track weekend!Originally posted by Darbshaw View Post
You're the bomb Karter thank you! I got the DME recovered and then properly flashed over to the software on my original 54HP. It's still early on in the testing as this pedal issue has been all over the place, but it seems like my previous DME may have started to fail causing the pedal 2 sensor to walk. It's looking like this saved me and my track weekend in 5 days!
Leave a comment:
-
You're the bomb Karter thank you! I got the DME recovered and then properly flashed over to the software on my original 54HP. It's still early on in the testing as this pedal issue has been all over the place, but it seems like my previous DME may have started to fail causing the pedal 2 sensor to walk. It's looking like this saved me and my track weekend in 5 days!Originally posted by karter16 View Post
Okay this is good on the whole.
The recycle attempt would have failed because the DME was in data programming mode.
FWIW for everyone, you do not need to use Recycle DME when attempting to recover your DME. Its only use is for if you are trying to make 1 DME look exactly like another one (down to manufacturer serial number, etc.). This is why it's protected behind 3 layers of warnings in the app haha.
Where can I find base tunes to restore this back to the 2501 tune? Grab one from here, note that you need to pick one that has 2501 in the identifier: https://github.com/saildot4k/MSS54-X...MSS54HP%20Bins
Is it possible to update this ECU to 0401 after fixing? If so how would I go about this? Yes absolutely. once you've recovered the DME to 2501, the next step is to take a backup 🙃, then use the "Write Program" functionality to write the 0401 program, then "Write Tune" to write the 0401 Tune. Note that the DME has the 32300 bootloader, so you'll need an 0401 program that's modified to work with the 32300 bootloader (e.g. https://nam3forum.com/forums/forum/s...patch-binaries).
- Likes 2
Leave a comment:
-
Okay this is good on the whole.Originally posted by Darbshaw View Post
Q1: Correct this is current state
Q2: This was a recycle attempt I believe after the photo, but the photo when connected still shows the same.
The app did attempt to stop me on the 0401 tune. I was working across multiple computers, one was my old one that didn't have DS2. I forgot about the warning and then used MSS54 flasher to upload the tune. I was attempting to load the tune from my current 54HP onto this 54HP. I didn't realize they were different programs.
I did not pull a backup of the now bricked ECU. Where can I find base tunes to restore this back to the 2501 tune? Is it possible to update this ECU to 0401 after fixing? If so how would I go about this
The recycle attempt would have failed because the DME was in data programming mode.
FWIW for everyone, you do not need to use Recycle DME when attempting to recover your DME. Its only use is for if you are trying to make 1 DME look exactly like another one (down to manufacturer serial number, etc.). This is why it's protected behind 3 layers of warnings in the app haha.
Where can I find base tunes to restore this back to the 2501 tune? Grab one from here, note that you need to pick one that has 2501 in the identifier: https://github.com/saildot4k/MSS54-X...MSS54HP%20Bins
Is it possible to update this ECU to 0401 after fixing? If so how would I go about this? Yes absolutely. once you've recovered the DME to 2501, the next step is to take a backup 🙃, then use the "Write Program" functionality to write the 0401 program, then "Write Tune" to write the 0401 Tune. Note that the DME has the 32300 bootloader, so you'll need an 0401 program that's modified to work with the 32300 bootloader (e.g. https://nam3forum.com/forums/forum/s...patch-binaries).
Leave a comment:
-
Q1: Correct this is current stateOriginally posted by karter16 View Post
Yep we should be able to. The key here is to be clear on what the current state of the DME is.
Q1: Is the 2nd screenshot the current state of the DME?
Q2: Re the 1st screenshot, did you try to run the Recycle DME mechanism and did you do this before or after the second screenshot?
From your second screenshot it looks like the program is 2501 and the tune is 0401 (As an aside I'm curious if you flashed 0401 with the app, it should have warned you against it, if not please let me know as it should at least try to stop you).
Presuming your second screenshot reflects the current state of the DME, the warnings are telling us that the DME is currently in data programming mode. This is what makes it 'bricked'. The DME boots, sees via the flash counter that it's currently in programming mode and jumps straight to the DS2 comms mechanism instead of booting the main software. The reason it's in data programming mode is because you wrote 0401 tune to the DME while it is running the 2501 program. After being written the DME validates the tune and has discovered it's not the right tune for the program. As a result it stays stuck in data programming mode until you fix it.
Again presuming second screenshot reflects current state, the correct action should be to use Write Tune to write the 2501 tune back to the DME. (Or if you took a backup of this DME before you changed anything you can use the History to restore the tune from that backup)
Q2: This was a recycle attempt I believe after the photo, but the photo when connected still shows the same.
The app did attempt to stop me on the 0401 tune. I was working across multiple computers, one was my old one that didn't have DS2. I forgot about the warning and then used MSS54 flasher to upload the tune. I was attempting to load the tune from my current 54HP onto this 54HP. I didn't realize they were different programs.
I did not pull a backup of the now bricked ECU. Where can I find base tunes to restore this back to the 2501 tune? Is it possible to update this ECU to 0401 after fixing? If so how would I go about this
- Likes 1
Leave a comment:
-
no apology necessary - this is all helpful information! agree that the not connected behaviour is weird. I'll do some more digging, I wonder whether there's something with those pins floating when the OBD end of the cable isn't connected to anything?Originally posted by ac427 View Post
Apologies karter16 I thought my post might have helped nextelbuddy but i probably read his post incorrectly.
Once the cable is connected to my car the ignition off/on is correctly detected by both the DS2 Tool and INPA. It was only when not connected to the car that the behaviour seemed odd.
I'll do a proper test but i don't think it will need investigating.
- Likes 1
Leave a comment:
-
Yep we should be able to. The key here is to be clear on what the current state of the DME is.Originally posted by Darbshaw View PostThanks for all the work with DS2! This has been super helpful in Atleast having visibility to my pedal issue.
In testing I was an idiot and bricked my spare DME uploading a tune. Is there any way I can use the reprogramming features in DS2 to bring this back without bench booting?
I seemed to have lost my bench testing equipment so I'm SOL on this ECU.
Q1: Is the 2nd screenshot the current state of the DME?
Q2: Re the 1st screenshot, did you try to run the Recycle DME mechanism and did you do this before or after the second screenshot?
From your second screenshot it looks like the program is 2501 and the tune is 0401 (As an aside I'm curious if you flashed 0401 with the app, it should have warned you against it, if not please let me know as it should at least try to stop you).
Presuming your second screenshot reflects the current state of the DME, the warnings are telling us that the DME is currently in data programming mode. This is what makes it 'bricked'. The DME boots, sees via the flash counter that it's currently in programming mode and jumps straight to the DS2 comms mechanism instead of booting the main software. The reason it's in data programming mode is because you wrote 0401 tune to the DME while it is running the 2501 program. After being written the DME validates the tune and has discovered it's not the right tune for the program. As a result it stays stuck in data programming mode until you fix it.
Again presuming second screenshot reflects current state, the correct action should be to use Write Tune to write the 2501 tune back to the DME. (Or if you took a backup of this DME before you changed anything you can use the History to restore the tune from that backup)Last edited by karter16; 06-07-2026, 11:49 AM.
Leave a comment:
-
Thanks for all the work with DS2! This has been super helpful in Atleast having visibility to my pedal issue.
In testing I was an idiot and bricked my spare DME uploading a tune. Is there any way I can use the reprogramming features in DS2 to bring this back without bench booting?
I seemed to have lost my bench testing equipment so I'm SOL on this ECU.
- Likes 1
Leave a comment:
-
Apologies karter16 I thought my post might have helped nextelbuddy but i probably read his post incorrectly.Originally posted by karter16 View Post
What does INPA show when you perform the same steps?
The way that the KL30 and KL15 detection work is that they are connected on specific pins (DSR and RI) on the interface. Some interfaces have one or both of these pins simply connected to supply, so the detection is not accurate. The app uses the same approach as INPA so the behaviour should be the same. If you get a difference between the two that's where it will get interesting. I've been through the relevant code again and can't find anything that suggests a bug (Not to say there isn't one, I just can't find it if there is).
Once the cable is connected to my car the ignition off/on is correctly detected by both the DS2 Tool and INPA. It was only when not connected to the car that the behaviour seemed odd.
I'll do a proper test but i don't think it will need investigating.
- Likes 1
Leave a comment:
-
I think it depends on the version of FTDI chip. The earlier cables with those chip needed a hardware mod but the later chips did not.Originally posted by karter16 View Post
Thanks for this - I vaguely recall from a long time ago that there used to be a fix that had to be done for some cables to get INPA to detect either KL30 or KL15 (or maybe both? I can't remember). I don't recall what the fix was but I wonder if it was spoofing the value on the relevant pin? I wonder if that's what you're seeing on the first laptop?
- Likes 1
Leave a comment:
-
Sorry been so long I would need to figure out again how to do the coding. The flap is in the CSL code and form what I remember was just a flag as on and off. Can't remember how and what was need though sorry
Leave a comment:
-
Thanks for this - I vaguely recall from a long time ago that there used to be a fix that had to be done for some cables to get INPA to detect either KL30 or KL15 (or maybe both? I can't remember). I don't recall what the fix was but I wonder if it was spoofing the value on the relevant pin? I wonder if that's what you're seeing on the first laptop?Originally posted by nextelbuddy View Post
i just downloaded and installed 1.2.1 to my other laptop and i dont have anything installed driver wise or bmw tool wise other than this DS2 tool from today. when i run it, it shows nothing is connected as i would expect.
my bmw tool laptop which is a lenovo thinkpad, is not a VM and has many things installed along with previous FTDI drivers not the ones you provided but my D CAN USB is not plugged in when that issue happens. normally it show COM1 if it is plugged in.
not a huge deal for me but i will try different scenarios and see if i can nail that one down
for now seems to be an isolated environmental related issue specific to me
- Likes 1
Leave a comment:

Leave a comment: