Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB

Toyota GR86, 86, FR-S and Subaru BRZ Forum & Owners Community - FT86CLUB (https://www.ft86club.com/forums/index.php)
-   Software Tuning (https://www.ft86club.com/forums/forumdisplay.php?f=88)
-   -   Adjusting AFR with Engine Load Compensation (instead of Load Limits) (https://www.ft86club.com/forums/showthread.php?t=119535)

Tor 06-16-2017 01:43 PM

Adjusting AFR with Engine Load Compensation (instead of Load Limits)
 
**Update post 12**


I made an interesting discovery today: Engine Load Compensation is applied to both OL as well CL.

Here my original problem from 5 months ago to recap:

Well scaled MAF, stock ELC table, and "normal" POL fueling. I made a thread about it here: http://www.ft86club.com/forums/showthread.php?t=115056

https://s15.postimage.org/lj47qcpor/...t_18.01.52.png

The big dip in AFR at 3600 rpm could be mostly solved with updated load limit. But to get the curve really flat some trickery was needed with POL fueling. Hence I had a pretty weird looking AFR command curve:

https://s22.postimage.org/rh3yrfpbl/...t_18.12.58.png


I still wasn't satisfied so I rescaled the MAF with the very kind help of @Kodename47 and his adaptation of 86inches tool to make a near perfect logarithmic MAF. It was a noticeable improvement and made the car more smooth (not that it was bad before at all). However, it started adding quite big LTFT and became way too rich in WOT. Even when freshly flashed and without LTFT is was too rich (keep in mind the zoom factor here):

https://s1.postimage.org/exhalbq3z/S...t_15.17.45.png


So I decided to try and scale the MAF again, but the resulting output didn't make sense. Like "something" was throwing it off. My intention had been to rescale the MAF and afterward redo the "Engine Load Compensation" table (again big thank you to Kodename47 for all the help!), so I had already adjusted it to match the Euro MY17 table. But since rescaling the MAF would seem to only be for the worse I decided to apply all correction to the ELC table directly instead.

Stock MY13:

https://s2.postimage.org/4x5xwj455/stock.png

Stock MY17 adapted to MY13 (MY17 table has 2 more rows):

https://s15.postimage.org/jpqyy4gtn/...t_18.47.16.png

Based on the fuel error logs I ended up with this:

https://s9.postimage.org/qzpog99n3/changed.png

Since I wasn't expecting this to have any influence on OL fueling and I didn't have data for higher rpm/MAP (OL territory), I "guessed" the values and extended the 0.9 MAP value out to the right of the table, kind of to make it look similar to the stock table. Surprise, surprise.... :thumbup:

https://s1.postimage.org/6l6iljc3j/S...t_14.53.08.png


Obviously, this wasn't what intended, so I am in the process of adjusting further. So far it seems to work well to adjust the lower (0.8 and less) MAP cells using CL fuel error logs. MAP 0.9 and above seems to be best adjusted manually looking at the AFR error for WOT pull logs and apply them to the relevant cells.

So far I only did one revision but it already looks pretty good, while reverting to the "normal" POL table again:

https://s17.postimage.org/9gvqjnegv/...t_18.34.20.png

A higher value in the ELC will make it richer and a lower will make it leaner. To anyone trying this method out, be aware it changes lookup in other tables too. E.g Base Timing B, so there is probably some adjustment to do elsewhere afterward.

What remains to be seen is the effect on LTFT. Wouldn't it be great if it could be adjusted by entering the ELC table and adjust a few values? :drool:

P.s.:
Logs of the last edition for anyone curious:
http://datazap.me/u/tor/tor-221

And the corresponding ELC table:
https://s22.postimage.org/anej1o1kx/...t_18.52.58.png

R2 06-16-2017 03:50 PM

Hmmmm, very interesting.

Tor 06-16-2017 06:37 PM

Second try...

Over corrected a bit at 3600 rpm, and shouldn't have added a correction at 4800.

https://s24.postimg.org/4gy3vtrmt/Sc...t_22.50.35.png

Getting pretty close. The step value of the ELC table is pretty rough, so I might end up doing rough tuning in the ELC table and fine tuning in the POL.

Once that is sorted I will start to do thorough tests. E.g. doing pulls in higher gears and see that there are no adverse effects and do a lot of general normal driving to see that it's not acting crazy. I drive quite a bit different when doing log drives than normal driving, so I want to be sure that it also behaves normally in those cases. Then I will also get an idea of where the LTFT might end up.

The log from the last drive. Don't click on IAM or FLKC. It dropped IAM in the first log because AVCS didn't activate:
http://datazap.me/u/tor/tor-2211?log...4&mark=917-946

Tor 06-18-2017 12:38 PM

So, do I adjust 4000 or 4400? Wish that table had double the resolution. :)

https://s8.postimage.org/kss42bxqd/Capture.jpg

steve99 06-18-2017 12:49 PM

Quote:

Originally Posted by Tor (Post 2930812)
So, do I adjust 4000 or 4400? Wish that table had double the resolution. :)

https://s8.postimg.org/kss42bxqd/Capture.jpg


the ECU will interpolate between the two values, assume it would be linear
https://en.wikipedia.org/wiki/Linear_interpolation


you can always rescale the axis but I think your after more rows/columns

Kodename47 06-18-2017 06:20 PM

Quote:

Originally Posted by Tor (Post 2930812)
So, do I adjust 4000 or 4400? Wish that table had double the resolution. :)

TBH it looks damn close as it is. Don't really need extra resolution IMO.

Tor 06-18-2017 07:10 PM

Yes, I was partly kidding, I'm pretty happy with the results. Though my OCD would like to get the last part in line as well. :D

If making 4000 richer, it will also go richer in the old dip again. I might give the 4400 a notch up, which will probably make it too rich at 4600ish. Or I'll just leave it.

I don't think rescaling is a good idea with this particular table. The resolution is not that high and the individual cells have too big differences in either one end or the other of the individual rows, so I think it would end up in cells missing somewhere.

I did a lot of logs today. But unfortunately, I think it was too hot that I want to use them for further adjustments (28 to 35-40 deg IATs on average). I have IAT compensation zeroed out, so I suppose I would be adjusting the ECU to run without IAT compensations at 30+ deg.

But the engine runs like a dream!

I didn't mention that after rescaling the MAF I had a stuttering problem at 1500 rpm (like when driving at a parking lot in first gear). I thought it was a load limit problem. But that has been solved with ELC as well. :)

I get a fair bit of FLKC but I'm not sure if it's my whole AFR curve being leaner or the temps or a combination. It looks like FLKC influences AFR and causes a fueling error? Which would then be included in the ELC if I was to use that data I suppose? Maybe filter out FLKC in the future?

These are 2 pull done shortly after each other. Looking through everything in the log, the only difference I can see it the FLKC.

https://s15.postimage.org/nh4rpm4pn/...03500323_o.jpg

If I can't use the logs, at least I can play with them:

These are the cells where the engine runs is OL:

https://s13.postimage.org/b8ak7863r/OL_count.jpg


And CL:

https://s8.postimage.org/gkj8a4wmt/CL_count.jpg


And here CL with MAF over 60 g/s:

https://s12.postimage.org/tyb6ew3al/LTFT_count.jpg


And the minimum volt from above:


https://s2.postimage.org/9ij0moafd/LTFT_v.jpg

So out of more than 1 hours of driving, I hit the magical 60 g/s for 48 split seconds. If the assumptions about where LTFT is set are correct, it looks like it's at 3600-4000 rpm and MAP 0.9 or 1.0... If that's the case it looks pretty good. I have -3 to -5 fuel error in those fields, but the good new it's the same in both OL and CL, so I assume the error is due to the lack of IAT comp. This may be the argument for not messing further with the ELC table, and adjusting the rest with POL.

CL:

https://s17.postimage.org/qngnysudr/CL_mean.jpg


OL (it never really hits the 0.9 column):

https://s24.postimage.org/3n6k8zryt/OL_mean.jpg

Spuds 06-19-2017 12:44 AM

Just finished reading through the original thread, and it looked like the AVCS changes were mostly responsible for reducing the AFR dip? Please correct me If I am wrong.

If that is the case, are these latest MAP load compensation updates on top of that?

Im seeing the same dip you were originally seeing with my OFT stage1 on stock headers. It seems possible to go straight to correcting with the ELC table. Theoretically, any strange effects from valve timing would show more accurately in in the MAP sensor than the MAF sensor. I need to start logging MAP as well.

On the other hand, I would think ambient pressure changes would really mess with the results. If you start seeing inconsistent behavior, I'd recommend correlating with baro. pressure.

I have some more reading and logging to do before I start messing with the ELC or AVCS tables myself, but thanks for posting your results!

Tor 06-19-2017 08:27 AM

Quote:

Originally Posted by Spuds (Post 2931083)
Just finished reading through the original thread, and it looked like the AVCS changes were mostly responsible for reducing the AFR dip? Please correct me If I am wrong.

If that is the case, are these latest MAP load compensation updates on top of that?

No, it was the load limit change the mostly corrected the dip. I changed exhaust AVCS to come on 300 rpm earlier at 3400 instead of 3700 (compared to OFH AVCS) to avoid it making changes in the area of the dip, and it didn’t have any adverse effect (no change in torque as far as I could compare with Virtual Dyno), so I left it that way.

Yes, the load changes were done on top of those changes. And everything after that (MAF scaling, ELC).

Quote:

Im seeing the same dip you were originally seeing with my OFT stage1 on stock headers. It seems possible to go straight to correcting with the ELC table.
If it's just the dip, I think you would be better off looking at the load limits first. I think the dip is timing related and the load limits are set too high, causing too little timing and for that reason, it dips rich. See also my previous post with FLKC as well.

You probably have around load 1 with stg 1 tune at 3600 rpm. With the OFT unmodified A01G tune total timing at 3600, load 1.0 is 24.14. At load 0.9 it's 25.9. So in this example reducing your load limit to e.g. 0.95 would give you 1 more deg of timing. You would need to rescale the load limits and it's not so easy.

I don't know if it's good advice, but a quick fix might be to add 1 more deg to Base Timing B at load 1/3600 (or wherever your actual problem is) as a test?

Quote:

Theoretically, any strange effects from valve timing would show more accurately in in the MAP sensor than the MAF sensor. I need to start logging MAP as well.
AVCS doesn't seem to have an effect on MAP:

With the dip:
https://s30.postimage.org/w4n4hr2v5/...t_11.51.59.png

With AVCS initialization error:
https://s24.postimage.org/x0y60oll1/...t_12.35.55.png

With or without AVCS, MAP is the same.

Obviously, AFR changes and the dip is also gone. But there are probably way-way too many factors that changes, to jump to the conclusion that AVCS is the cause of the dip. With AVCS inactive the loads were far lower and timing a lot lower. AFR seems to almost follow timing with a delay.

Quote:

On the other hand, I would think ambient pressure changes would really mess with the results. If you start seeing inconsistent behavior, I'd recommend correlating with baro. pressure.
I am not worried about that. I think the ambient pressure changes are minuscule when compared to the resolution of the table. Also, I assume the effect of changing ambient pressure will be less in the lower (CL) MAP cells. (Edit: it must either gradually less effect or even zero effect below the actual ambient pressure, i.e. engine is going to suck all the air that is available).

Driving at different altitudes should make far more of a change. Pressure drops roughly 1 hpa per 30 feet altitude. So if driving at 6000 feet its 200 hpa difference or 0.2 bar. So that would take OL values from the 0.8 column (unless I am missing something else). If it's a problem or not, I can't say. Since the MAP would actually be 0.8, maybe those corrections for CL would actually be required in OL as well? (Edit: again same logic as in edit above, in 6000 feet cells below 80 must be unaffected and only cells above won't be achievable, i.e. you can't have 0 MAP at cells 0.2).

In the original table, 0.93 and 1.0 and 1.013 are all the same values. This is also my intention to do.

If you are at a higher elevation the ELC compensation tool allows you to enter the pressure at your altitude where the logs were made. I did correct for my 600 feet altitude, though the logs were made in hills ranging from 300 to 900 feet elevation.

Tor 07-16-2017 04:33 AM

After 450 km, it has -0.75 LTFT at WOT. At 150 km it set -1.21 and at 250 in changed to -0.75 where it has stayed since.

This seems to be working!

Apart from the small bump at 4200 rpm (which I can probably correct if I'd bother), AFR now follows AFR command.

https://s10.postimage.org/wfbq35gq1/...t_09.25.13.png
http://datazap.me/u/tor/tor-222-400k...zoom=9438-9571

With the 11.76 it's too lean for the timing. But I suppose that I am now at a point where I can use the POL table to set whatever I want to target and actually get it. :)

So I'll play around with POL next and I also need to adjust MAF IAT compensation slightly. I changed the IAT comp already to be centered around 25 deg. From 20 up to 40 deg IAT AFR remains on target.

Below 20 deg it starts to become slightly rich, which is where it should be running timing wise:

https://s3.postimage.org/rgpc16vqb/S...t_09.28.56.png
http://datazap.me/u/tor/tor-222-400k...zoom=7709-7836

My ELC table looks like this now. I think it looks reasonable:
https://s9.postimage.org/e64tgfenj/S...t_09.29.43.png

Tor 07-21-2017 05:36 AM

I just did an hour of logging at 15 deg C ambient temp. My old MAF scaling was done at 24-28 deg IAT and causes the car to run rich at lower temps.

Rather than messing with the IAT comp, I would rather redo the MAF at 20 deg IAT where the stock tune runs with zero compensation.

I just threw in my log data in Vgi's tool and made a combined OL/CL scaling to have a look. It more or less suggests a -1 to -2% correction all along the curve. Most of the classical bumps in the curve are gone. :)

https://s10.postimage.org/aogikm7o9/...t_10.13.17.png

It's now quite obvious what data should be taken seriously and what not. E.g. at 3.37v where I didn't quite manage to flatten the curve completely it suggests -0.5, though the other nearest points are closer to -2.

https://s1.postimage.org/w7e007xj3/S...t_10.27.15.png

I would think a good process for perfect dial in would be to get MAF roughly right, then do the ELC scaling and thereafter do the final MAF scaling (and perhaps then recheck the ELC).

Tor 08-21-2017 09:28 AM

I've found out that I can do away with the Load Limits above 3200 rpm (had points at 3600 and 3800 before with low load limits).

The dips and peaks in the 3500-4500 area can be kept completely under control with Engine load compensation. The benefit seems to be that I get the same fueling error in 3600 cells in both OL and CL as opposed to before.

At high load in CL I would get a negative error at high MAP. In OL I would get positive error at high MAP in the same cells.... Now to avoid a dip at 3600 at WOT I had to use the OL corrections, which I suspect was the cause the ECU to set highish negative LTFT when hitting those cells.

With the load limits removed, I get the same negative error in both CL and OL in the same cells, so I can apply one correction that is right for both OL and CL.

I'm changing the title of the thread, because I think this may actually be the most useful part of ELC. Looking at the stock tables, it seems Subaru is following the same strategy. Load Limits up to 3200 rpm, there after compensations applied to ELC.

Tor 08-26-2017 07:07 PM

Last update. My tune is done. :)

I have driven now 1000 km. Backroads, 160 km track, autobahn, cruisecontrol, aggressive, economical, cold and hot. And logged it all. During all this my WOT LTFT has been varying between 0 and -0.78. :party0030:

Fixing the jumping LTFT was what I set out to do, and this seems to have done the trick.

Current ELC table. Note, no load limits above 3200 rpm. Other adjustments timing at the affected loads with highish corrections (3600 negative and 42/4400 positive) and MAF IAT compensation.
https://s28.postimage.org/3s7pl6nm5/...t_00.05.48.png

phrosty 08-27-2017 10:51 PM

Awesome work man. I've not had the time yet to give this a try, but it all makes sense. Much more sense than mucking with load limits.


All times are GMT -4. The time now is 07:40 AM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
User Alert System provided by Advanced User Tagging v3.3.0 (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.


Garage vBulletin Plugins by Drive Thru Online, Inc.