Announcement

Collapse
No announcement yet.

CSL '0401' Program Binary Disassembly Notes

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

  • karter16
    replied
    Originally posted by ac427 View Post
    karter16
    What are ARBID's?
    i guess they are ARB ID's but what are they for?
    Arbitration ID - used as part of the CAN communication format to deal with situations where multiple messages are flying around the bus at the same time. The message with the lowest ARBID value wins. Part of the plan for introducing another CAN message is to give it a suitably high ARBID so that everything else wins. That way the more critical CAN functions continue on unimpeded and the new message can be transmitted when the bus is free.

    Leave a comment:


  • karter16
    replied
    Originally posted by Bry5on View Post

    Just a few percent higher seems to cause instability. I believe you want the air velocity high enough for effective fuel mixing, so if you open the throttles too much you pass a sad point of no return. They really seem to have pushed it pretty close to the max as far as I could tell when playing with that variable.
    So would that then mean that the reason why that one region of the table is slightly higher in the CSL tune is that the difference in cams allows for a slightly longer intake period which allows for slightly more mixing time?

    Leave a comment:


  • ac427
    replied
    Originally posted by Bry5on View Post

    Just a few percent higher seems to cause instability. I believe you want the air velocity high enough for effective fuel mixing, so if you open the throttles too much you pass a sad point of no return. They really seem to have pushed it pretty close to the max as far as I could tell when playing with that variable.
    Ah, fair enough. I'll settle for proper part throttle performance every time.

    Leave a comment:


  • Bry5on
    replied
    Originally posted by ac427 View Post

    Could the limit be raised though?
    Just a few percent higher seems to cause instability. I believe you want the air velocity high enough for effective fuel mixing, so if you open the throttles too much you pass a sad point of no return. They really seem to have pushed it pretty close to the max as far as I could tell when playing with that variable.

    Leave a comment:


  • ac427
    replied
    Originally posted by Bry5on View Post

    You do not want to defeat that unless you enjoy a motor that has unstable combustion and pings!
    Could the limit be raised though?

    Leave a comment:


  • Bry5on
    replied
    Originally posted by ac427 View Post
    karter16 So is the hunt on to find a way of defeating the throttle plate limititation before 3000RPM or is that just enabling 'Sport Mode' ?

    What are ARBID's?
    i guess they are ARB ID's but what are they for?
    You do not want to defeat that unless you enjoy a motor that has unstable combustion and pings!

    Leave a comment:


  • ac427
    replied
    karter16 So is the hunt on to find a way of defeating the throttle plate limititation before 3000RPM or is that just enabling 'Sport Mode' ?

    What are ARBID's?
    i guess they are ARB ID's but what are they for?

    Leave a comment:


  • karter16
    replied
    Originally posted by Bry5on View Post
    karter16 compare those opening maps with the euro tune, it'll help you avoid pinging - you found the difference that you never found.
    ❤️ haha so that's what you were referring to :-)


    Sent from my iPhone using Tapatalk

    Leave a comment:


  • Bry5on
    replied
    karter16 compare those opening maps with the euro tune, it’ll help you avoid pinging - you found the difference that you never found.

    Leave a comment:


  • heinzboehmer
    replied
    Originally posted by karter16 View Post
    I have no idea what scenario it's trying to mitigate. If someone wants to give it a go and report back on whether they can detect any difference that would be super cool.
    Hmm, maybe this has something to do with setting the emissions readiness for the post cat O2s? Wild guess, but that's the first thing that came to mind when you mentioned steady state driving.

    Also, just came back from my lunchtime test drive. Did it a little differently, mostly because I hadn't read your post before heading out

    This is what I did:
    1. Take car out for a spin without modifying anything in the tune. Made sure to hit redline in first, starting from 2500 rpm.
    2. Set K_NOISE_CFG to 0x00, flash DME.
    3. Repeat step 1.
    I noticed zero difference, which makes complete sense based on your findings. My dreams of a secret burnout mode are crushed.

    Leave a comment:


  • karter16
    replied
    Okay so this is very limited.

    Essentially what it does is monitor for the condition where the car is in 4th gear and has been cruising between 44 and 54 km/h for more than 3 seconds. At that point it enters "noise" mode where the max requestable torque is limited. As soon a different gear is selected or the car drops below 44 km/h or goes about 70 km/h noise mode ends.

    It's worth noting that in the 1801 binary the parameters are different (3rd gear instead of 4th, and speed thresholds differ) so this has been tuned specifically for the CSL binary.

    So it's super restricted. I have no idea what scenario it's trying to mitigate. If someone wants to give it a go and report back on whether they can detect any difference that would be super cool.

    To validly test this.

    Control test
    1: Drive in 4th gear and maintain speed between 44 and 54 km/h (28-33 mph) for more than 3 seconds.
    2: Boot it and monitor noise and acceleration. (bonus points for logging rather than going by feel)

    Test
    1: Turn noise control off by setting K_NOISE_CFG to 0x00.
    2: Drive in 4th gear and maintain speed between 44 and 54 km/h (28-33 mph) for more than 3 seconds.
    3: Boot it and monitor noise and acceleration. (bonus points for logging rather than going by feel)


    Bry5on and heinzboehmer - with regard to limits at low speed/rpm it is worth noting that the DME DOES limit throttle plate opening below 3000 RPM. (I have no idea whether there's anything at all to be gained by making any change)

    This is controlled by KF_EGAS_WDK (when CSL flap is closed) and kf_egas_wdk_ask (when CSL flap is open). Now I'm not suggesting that there's a whole bunch of torque hidden there or anything, and (if there is anything to be gained at all in terms of torque and/or noise) I would imagine that changes to this would require co-ordinated changes across timing, fueling, VANOS tables, etc. but there are a range of reasons the engineers might have done this and some of it might have been for noise control and for smoother application of torque.

    Some tuners do make changes to this (interestingly some actually reduce the throttle plate opening further under 3000 rpm, I wonder what the reasoning for this is, or maybe it's to enhance the feeling of the car coming onto the power), although amusingly they do so only to KF_EGAS_WDK (after having lowered the CSL flap open threshold) so half the time the adjustments they've made aren't actually in effect. Given kf_egas_wdk_ask was only identified when I worked through the disassembly hunting the "CSL specific" parameters I would suspect they simply weren't aware that the table exists. The more I see of some tunes the more I do wonder how much they understand everything they're doing.

    Please note: I am NOT in any way suggesting that I have the skills of a professional tuner or that I can do a better job than them. But simply reading some changes in the context of the disassembled code it does appear that people don't always actually understand what they changes they are making do and the effect that they do (or in this case don't) have.

    Click image for larger version  Name:	Screenshot 2025-06-14 at 8.54.53 AM.png Views:	0 Size:	524.7 KB ID:	308502
    Last edited by karter16; 06-13-2025, 01:44 PM.

    Leave a comment:


  • karter16
    replied
    I haven't worked through the logic end to end, but pretty sure this is quite limited compared to being a blanket suppression of max torque under 60kph, I think it's targeting only certain conditions, but let me work it through.

    Leave a comment:


  • heinzboehmer
    replied
    Originally posted by karter16 View Post
    One of the torque limitations in the Moment Manager is to restrict maximum torque below a certain vehicle speed under certain conditions in order to quote "reduce noise". I've seen others edit this out by adjusting KL_MD_BEGR_NOISE to not have restricted torque below 60 km/h.
    Dude what

    Disabling this is the first thing I'm doing tomorrow before my test drive, now that the car is finally back together.

    Leave a comment:


  • Bry5on
    replied
    Well I’m definitely going to be disabling this now that modern tires are grippier. That’s an extra 50ft-lbs in first gear! Here we go.

    Also, this would be a cool thing to have enabled/disabled based on sport mode. Wonder why they didn’t do that.

    Leave a comment:


  • bmwfnatic
    replied
    Originally posted by Bry5on View Post
    You mean I’ve only had 80% torque in first gear this whole time?! Ha
    My E60 M5 6spd did the same thing, ign based torque management, I disabled it and it turned my description of the car from “quite civil” to a “burnout machine”…

    Leave a comment:

Working...
X