Announcement

Collapse
No announcement yet.

MSS54 DS2 Tool: FREE TOOL for programming DME - Tune, full binary, flash counter, etc

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

    Originally posted by ac427 View Post

    I'm not sure if i am helping but with the latest version of the tool and nothing connected to my laptop but with FTDI drivers loaded, KL30 and KL15 are not illuminated.

    However, as soon as i plugged the USB end of the cable in the COM port but without the OBDII connector plugged into the car both KL30 and KL15 illuminated.

    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).
    2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace/Apex ARC-8s
    Build Thread | Community Patch | MSS54 DS2 Tool

    Comment


      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
      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?
      2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace/Apex ARC-8s
      Build Thread | Community Patch | MSS54 DS2 Tool

      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
        Build Journal - E46 M3 CSL Conversion

        Comment


          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?
          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.

          Comment


            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).
            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.

            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.

              Comment


                Originally posted by Darbshaw View Post
                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.
                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)
                Last edited by karter16; 06-07-2026, 11:49 AM.
                2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace/Apex ARC-8s
                Build Thread | Community Patch | MSS54 DS2 Tool

                Comment


                  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.
                  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?
                  2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace/Apex ARC-8s
                  Build Thread | Community Patch | MSS54 DS2 Tool

                  Comment


                    Originally 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)
                    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

                    Comment


                      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
                      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).
                      2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace/Apex ARC-8s
                      Build Thread | Community Patch | MSS54 DS2 Tool

                      Comment


                        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).
                        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!

                        Comment


                          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!
                          Great stuff - well done! fingers crossed all goes well for your track weekend!
                          2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace/Apex ARC-8s
                          Build Thread | Community Patch | MSS54 DS2 Tool

                          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 :-)



                            Click image for larger version  Name:	DIS v57 Revtor-2024-11-25-14-59-27.png Views:	0 Size:	19.8 KB ID:	358163
                            Click image for larger version

Name:	DIS v57 Revtor-2024-11-25-14-56-29.png
Views:	58
Size:	13.5 KB
ID:	358161 ​​
                            Attached Files
                            Last edited by ac427; 06-11-2026, 12:58 AM.

                            Comment


                              Originally posted by ac427 View Post
                              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 :-)



                              Click image for larger version Name:	DIS v57 Revtor-2024-11-25-14-59-27.png Views:	0 Size:	19.8 KB ID:	358163
                              Click image for larger version

Name:	DIS v57 Revtor-2024-11-25-14-56-29.png
Views:	58
Size:	13.5 KB
ID:	358161 ​​
                              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.

                              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.
                              2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace/Apex ARC-8s
                              Build Thread | Community Patch | MSS54 DS2 Tool

                              Comment


                                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.
                                2002 Topasblau M3 - Coupe - 6MT - Karbonius CSL Airbox - SSV1 - HJS - Mullet Tune - MK60 Swap - E86 Front Triangulation - 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