Announcement

Collapse
No announcement yet.

A quick and easy way to street tune your CSL conversion for drivability.

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

    Originally posted by karter16 View Post

    Ah nice! I hadn't figured that out! - that would be great if you could! If we can identify all these factors and how to address them we should be able to come up with a really solid process anyone can follow to do this.


    Sent from my iPhone using Tapatalk
    Ok here we go, set to 00 to disable:
    Click image for larger version  Name:	lambda controller disable.png Views:	0 Size:	154.4 KB ID:	308160
    ‘02 332iT / 6 | ‘70 Jaguar XJ6 electric conversion

    Comment


      Originally posted by Bry5on View Post

      Ok here we go, set to 00 to disable:
      Click image for larger version Name:	lambda controller disable.png Views:	0 Size:	154.4 KB ID:	308160
      Thanks heaps for this - Correct me if I'm wrong but doesn't this straight up disable the lambda controller?

      When you were doing your early tuning runs and ended up rich at low RPM how was that presenting to you? Was the lambda integrator reporting 1 for those cells but the wide-band was showing it was actually rich? Or was there some sort of feedback loop where it was being driven rich on each successive run? Just curious as I'm not really seeing that (second scenario) play out for me with this current testing I'm doing. The low RPM idle range has mildly more fuel than the stock CSL tune, but only slightly so and has consolidated around a lambda of 1.0 after 3 tuning runs.
      Last edited by karter16; 06-12-2025, 01:05 AM.
      2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace
      Build Thread:
      https://nam3forum.com/forums/forum/m...e46-m3-journal

      Comment


        Originally posted by karter16 View Post

        Thanks heaps for this - Correct me if I'm wrong but doesn't this straight up disable the lambda controller?

        When you were doing your early tuning runs and ended up rich at low RPM how was that presenting to you? Was the lambda integrator reporting 1 for those cells but the wide-band was showing it was actually rich? Or was there some sort of feedback loop where it was being driven rich on each successive run? Just curious as I'm not really seeing that (second scenario) play out for me with this current testing I'm doing. The low RPM idle range has mildly more fuel than the stock CSL tune, but only slightly so and has consolidated around a lambda of 1.0 after 3 tuning runs.
        I was doing so much at once back then that I don’t remember what steps I took exactly, but there was some drift with each successive cycle. The car ran fine the whole time, and it presented as stumbling from the transition from cold start open loop to regular closed loop operation, due to a sort of binary change in fueling.

        Now that I think of it a little more, this might have only been an issue during AFR based tuning. I tried a bunch of different things to get the transition from part throttle to full throttle AFR right, which is challenging as the DME goes open loop at different relative openings based on RPM. Then the latency from polling the d-bus messes with your numbers.

        Perhaps it’s not needed after all, I should have thought more before posting! But tuner beware if you’re using AFR
        ‘02 332iT / 6 | ‘70 Jaguar XJ6 electric conversion

        Comment


          Hi gentlemen, trying to play catch up as i've just startet following your work. A suggestion i would propose is to deactivate tank ventilation too.

          Comment


            Originally posted by MC346 View Post
            Hi gentlemen, trying to play catch up as i've just startet following your work. A suggestion i would propose is to deactivate tank ventilation too.
            Great to have more people looking at this. You raise a very valid point re tank ventilation. What I'm not sure of though is for what period of time it's reasonably safe to disable ventilation for? Does anyone have any thoughts on this? There's certainly easy ways it could be disabled in the partial tune.

            I do know for sure that tank ventilation is specifically accounted for in the MAP sensor RF calculations. I suspect that probably the tuning process will get the VE table close enough either way for the MAP sensor to be able to compensate when it's turned back on, but regardless we should try to understand this fully (as I would think those running pure AlphaN could take advantage of this tuning process in similar ways right?)


            Sent from my iPhone using Tapatalk
            2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace
            Build Thread:
            https://nam3forum.com/forums/forum/m...e46-m3-journal

            Comment


              Originally posted by Bry5on View Post

              I was doing so much at once back then that I don't remember what steps I took exactly, but there was some drift with each successive cycle. The car ran fine the whole time, and it presented as stumbling from the transition from cold start open loop to regular closed loop operation, due to a sort of binary change in fueling.

              Now that I think of it a little more, this might have only been an issue during AFR based tuning. I tried a bunch of different things to get the transition from part throttle to full throttle AFR right, which is challenging as the DME goes open loop at different relative openings based on RPM. Then the latency from polling the d-bus messes with your numbers.

              Perhaps it's not needed after all, I should have thought more before posting! But tuner beware if you're using AFR
              Okay cool - it will be good to get some more feedback from others before discounting this I think, I am but one data point. It has driven me to look further into the lambda controller disassembly which is also a good thing.

              It will be good if I can make some progress on the CAN bus message to get fast data acquisition for this as well so we can stop worrying about the data point latency issue.


              Sent from my iPhone using Tapatalk
              2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace
              Build Thread:
              https://nam3forum.com/forums/forum/m...e46-m3-journal

              Comment


                Originally posted by karter16 View Post

                Thanks heaps for this - Correct me if I'm wrong but doesn't this straight up disable the lambda controller?
                Yes, that scalar will shut down the lambda controller completely however Lambda regulator shutdown is rpm/rf based. You'll have a blast disassembling the lambda module! I don't miss it one bit, LOL…


                Sent from my iPhone using Tapatalk

                Comment


                  Originally posted by karter16 View Post

                  Great to have more people looking at this. You raise a very valid point re tank ventilation. What I'm not sure of though is for what period of time it's reasonably safe to disable ventilation for? Does anyone have any thoughts on this? There's certainly easy ways it could be disabled in the partial tune.

                  I do know for sure that tank ventilation is specifically accounted for in the MAP sensor RF calculations. I suspect that probably the tuning process will get the VE table close enough either way for the MAP sensor to be able to compensate when it's turned back on, but regardless we should try to understand this fully (as I would think those running pure AlphaN could take advantage of this tuning process in similar ways right?)


                  Sent from my iPhone using Tapatalk
                  I admit this might be a bit of an overkill for our purposes. Essentially what we are striving for is a judgment (and possible recalibration) of pre-control maps. Therefore, you'll want to get rid of as many components that will affect your fuel path, such as adaptation values (offset and factor), any dynamic compensation (which hopefully won't be in place anyway during steady state driving of load/engine speed points and, as mentioned, the ventilation system that will introduce fuel vapors into your intake.

                  I think if you are performing dedicated calibration runs and deactivate the ventilation for those occasions (i think there is a coolant temp entry condition, that you can set to max. value) you should be fine. Ideally, top up the fuel tank before and don't drive on high altitudes

                  God, i really need a wideband now...

                  Comment


                    karter16 since converting to CSL MAP based software, have you noticed if the cold starts, with the euro section 1 and SAP enabled, smell quite a bit more rich than when it was running with the MAF?

                    Comment


                      Originally posted by Slideways View Post
                      karter16 since converting to CSL MAP based software, have you noticed if the cold starts, with the euro section 1 and SAP enabled, smell quite a bit more rich than when it was running with the MAF?
                      On my current tune no, on the standard CSL tune yes absolutely - cold starts were significantly richer.

                      It's worth noting that I'm running my own CSL tune which I'm developing along the same philosophy as Bryson's Mullet Tune. I've adjusted approx 15 of the cold start maps, including the SAP and cat heating related maps. At this point a lot of that looks a lot more like the Euro M3 tune than the CSL tune which will be why it's no longer rich at cold start.
                      2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace
                      Build Thread:
                      https://nam3forum.com/forums/forum/m...e46-m3-journal

                      Comment


                        Originally posted by karter16 View Post

                        Yeah absolutely - The more we constructively challenge each other's work the better - no one is immune to mistakes or misunderstandings, so we all benefit from robust discussion :-)


                        I did a test drive just now.

                        I took my most recent VE log (note this was first one with MAP sensor disabled which I think is why it shows slightly lean across the board - I think the MAP sensor was compensating for/hiding this) and ran it through the spreadsheet, then imported to MLV, then into your spreadsheet Heinz, to generate the new VE table. The result was as I was expecting, that the mismatched AQ_REL values were previously making low RPM appear richer than they actually were (e.g. more fuel was needed).

                        Click image for larger version Name:	Screenshot 2025-06-11 at 8.48.29 PM.png Views:	0 Size:	513.7 KB ID:	308052

                        I then went for a (reasonably quick) run (about 6000 log lines) focusing on the low RPM and could tell the improvement pretty much immediately, no-throttle, low-rpm downshifts were particularly noticeable, rev matching was even better than previously, the car had even more pep than previously (remember I'm currently doing these runs with the MAP sensor turned off as well, so when I'm making these comparisons it's on pure AlphaN without the MAP sensor correcting anything).

                        And I think the MLV view speaks for itself - Lambda around the high change areas is significantly better, and a lot of values that were quite wrong are now spot on. There's those couple areas between 870 and 1100 RPM to clean up (that previously weren't clearly identifiable and kept moving around - which makes sense given AQ_REL was being misinterpreted) but all in all this is quite a lot of improvement for a single run, and it's very noticeable when driving.

                        Click image for larger version Name:	Screenshot 2025-06-11 at 9.06.09 PM.png Views:	0 Size:	462.1 KB ID:	308053

                        I'll do another run tomorrow off the back of this to prove further that this converges on a neat end result, but I'm pretty confident from this first run that this is the missing trick to really nailing down the low RPM.

                        Important to note as well that I am running pure AlphaN with the MAP sensor disabled. I think this is really key when logging as well to not end up masking inaccuracies in the VE table.
                        Okay, I tried this one tonight and it looks like I had the mullet pretty spot on - weird! I'll load this new file up tomorrow and see if I notice any difference in fueling, although I'm not sure I will given how small the changes are. This was about 15 minutes of driving specifically focused on low RPM.
                        Click image for larger version

Name:	Screenshot 2025-06-25 at 9.24.56 PM.png
Views:	56
Size:	369.3 KB
ID:	309905

                        Also, karter16 I'm assuming that the relative opening value we're transmitting over CAN now is the same one as DS2, not the modified CSL one.
                        ‘02 332iT / 6 | ‘70 Jaguar XJ6 electric conversion

                        Comment


                          Originally posted by Bry5on View Post
                          Okay, I tried this one tonight and it looks like I had the mullet pretty spot on - weird!
                          How interesting - I've been trying to think through the order of events of multiple rounds of tuning and how you could converge on the right result anyway, I was seeing waves of lean and rich coming through the table in successive runs, but maybe yours just didn't drive the same behavior 🤷‍♂️


                          Originally posted by Bry5on View Post
                          Also, karter16 I'm assuming that the relative opening value we're transmitting over CAN now is the same one as DS2, not the modified CSL one.


                          Yes correct - value on 7D0 is AQ_REL as per DS2. Given we now know how to convert AQ_REL to (what I am calling) aq_rel_alpha_n for the purposes of the VE tuning I figured it made sense to use standard AQ_REL in the CAN message to align with all other tables that use AQ_REL.
                          2005 ///M3 SMG Coupe Silbergrau Metallic/CSL bucket seats/CSL airbox/CSL console/6 point RACP brace
                          Build Thread:
                          https://nam3forum.com/forums/forum/m...e46-m3-journal

                          Comment


                            Originally posted by karter16 View Post
                            How interesting - I've been trying to think through the order of events of multiple rounds of tuning and how you could converge on the right result anyway, I was seeing waves of lean and rich coming through the table in successive runs, but maybe yours just didn't drive the same behavior 🤷‍♂️

                            My car is still out of commission , but I plan on doing this as soon as it's back up and running. Am running the same exact hardware as Bryson (minus flap) and the same tune. Will be interesting to see if there's any variation from car to 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


                              Originally posted by karter16 View Post

                              How interesting - I've been trying to think through the order of events of multiple rounds of tuning and how you could converge on the right result anyway, I was seeing waves of lean and rich coming through the table in successive runs, but maybe yours just didn't drive the same behavior 🤷‍♂️




                              Yes correct - value on 7D0 is AQ_REL as per DS2. Given we now know how to convert AQ_REL to (what I am calling) aq_rel_alpha_n for the purposes of the VE tuning I figured it made sense to use standard AQ_REL in the CAN message to align with all other tables that use AQ_REL.
                              Thanks.

                              In my final fuel tuning I disabled all lambda control and tuned by AFR directly, i suppose the conversion was close enough, or steady state enough, that my multipliers worked? Some of my final tweaks were also manual/logical on top of the algorithmic AFR targeting. I guess this proves that my method didn’t suck! Hah. I also couldn’t really tell much of a difference after turning off adaptations and MAP compensation when driving. Just one mediocre downshift around 1500rpm or so.
                              ‘02 332iT / 6 | ‘70 Jaguar XJ6 electric conversion

                              Comment


                                Ran through the karter16 updated VE tuning method on my car today. Car is running Bry5on's latest mullet (v28) and I disabled MAP and adaptations during the data logging sessions.

                                Here's the final change compared to the baseline after three iterations:

                                Click image for larger version

Name:	Mullet v28 Heinz VE Tuning Comparison.png
Views:	13
Size:	523.2 KB
ID:	310225

                                There was a little bit of weirdness left down low (<1500 rpm and <~1.5 relative opening) before the tuning. It was mostly noticeable when pulling away from a stop and when feathering the throttle right before fully disengaging the clutch on upshifts. Was extra noticeable with the stock comfort throttle mapping.

                                But all that is practically undetectable post-tuning! I'm super happy with the results. Drivability is very, very, very close to stock now.
                                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