×

Sale ends todayGet 30% off any course (excluding packages)

Ends in --- --- ---

A strategy to use large data logs and math your way into a much cleaner tune.

Practical Reflash Tuning

Forum Posts

Courses

Blog

Tech Articles

Discussion and questions related to the course Practical Reflash Tuning

= Resolved threads

Author
61 Views

Hello friends!

I’ve been tuning my own cars for about a decade now and have developed some methods over the years that I think can be really useful to some of you. I made this when I was struggling big time in doing cell by cell corrections with lots of data logs and the tune was still kind of trash, so I had to come up with a better way. The kind people at HPA let me share this with all of you and my only goal is to have more people out there with solid tunes.

The fundamental principle that I want to share is to use large data sets that you put into formulas/algorithm to adjust your tune. This approach can be used for fuel and ignition, but fuel is really the challenging part to get right on a stock ECU, especially if you changed the injectors.

*This is intended for drivability street tuning, so focus is on closed loop corrections.*

I made a video instruction on how to do this on BMW MSS54, but the concept can be applied to any engine management that can’t be live tuned.

My video is here: https://www.youtube.com/watch?v=V6nvetZfuy8

Discussion of other things that I missed in the video are here (Only applies to MSS54!): https://nam3forum.com/forums/forum/special-interests/coding-tuning/242281-a-quick-and-easy-way-to-street-tune-your-csl-conversion-for-drivability

General Steps:

1. Use MegaLog Viewer (or similar) to create histogram view that looks just like your default VE or Injector pulse table (same size is absolutely critical).

2. Log your load, RPM, and O2 correction values (if you have two banks, I recommend doing both and then average them)

3. Math! This part becomes a bit tricky: on MSS54 I have lambda integrator, which is the correction error value, it already is 1 for good, >1 for lean, Get the values from Megalog viewer into Excel (watch out for last column that it adds on its own)

b. Select Other> Go to Special > Blanks > =1 or =0 in the top, Ctrl + Enter; Now all the cells that you didn’t use get a number. If you plan on using it a multiplier, then 1 will leave you with exact data that you already have, if you plan on using more formulas and fuel trim correction, then 0 makes more sense.

4. From here, you multiply your new “correction” table into the OEM ECU’s fuel table.

Using lambda integrator on MSS54 I get no overshoot this way, just takes about 4-6 long drives; I tried it with “=2-(Wideband Lambda)” and it was a big overshoot. MSS54 has pretty amazing friction modelling and corrections are exceptionally consistent over temperature ranges, this is a rarity from my experience. You can read more about its logic structure here: https://github.com/saildot4k/MSS54-XDFs/blob/master/Siemens_MSS54_Funktionsrahmen_English%20Translation%20via%20AI.pdf .

I recently tuned my S52 (US M3 engine) and I can’t get the consistent results on it, but at 30 years old I am honestly impressed with how smart MS41 is. Some cells just don’t like to hold the correction, its probably because of the cam adjuster switch over or some other anomaly, but its good enough for my daily.

Since MS41 I can only log STFT/LTFT, I use the following approach:

1. Datalog both STFT (LTFT disabled)

2. Fill in empty values with 0

3. Add the tables and divide by 2 (average)

4. =1+(STFT/5) Note: I divide by 5 to avoid overshoot, it has worked ok for me, but you can adjust how much of a step you want to take each time.

5. Multiply this value (dot product) into the injector pulse table.

In reality the STFT corrections you see are after a smorgasbord of other corrections were already applied. Friction, injector coil resistance, air leaks, sensor value drift due to age and temp, all have an effect and so some fuel trim will always exist. Old cars did not have the best modelling of these losses, then they became amazing in the 2000s, and now with high processing power the strategy seems to rely on the ECU partially self tuning over an engine computer model. What this means is that you can have quite a large difference in fuel trims in different conditions, so only do this when everything is right and in the conditions that you typically drive in.

One more thing to add: you can semi automate all this with macros in Excel or write your own MATLAB code. Chat GPT is fantastic to help you with automation.

Hope this helps some of you!

I'm glad you're having fun with your data!

This didn't really come from fun, quite the opposite, got tired of people calling 4th gear WOT pulls a tune while the car being a total trash to drive in every condition that isn't WOT from 2000rpm upwards. But I also understand that without developing tools to streamline this process, its just too time consuming for how much money the customers are willing to pay.

We usually reply within 12hrs (often sooner)

Need Help?

Need help choosing a course?

Experiencing website difficulties?

Or need to contact us for any other reason?