PDA

View Full Version : How does the Spark tables work together?



gpr
November 5th, 2013, 06:51 AM
Working on tuning the car a bit more and was wondering how the spark in gear table works in conjunction with the high octane spark table? When is either used and how does it switch from one to the other? I noticed this weekend at one point in the tune I thought it would be from the Hi octane spark table, but the value was much to high so had to be from the spark in gear table.

BTW I'm using COS 5 not sure if that changes it any.

joecar
November 5th, 2013, 07:03 AM
B5916 and B5917:
if both of these are met then base spark PN and IG are used;
otherwise if either one is not met then HO/LO adaptive spark is used.


COS5: if MAF DTC is present, adaptive spark still functions (slides between HO and LO based on KR).

Wheelz
November 5th, 2013, 01:26 PM
Don't forget there are iat modifiers and ect modifiers that can/do advance timing in cooler temps that will make your timing read higher than the high octane table.

Joecar, doesn't the adaptive spark scaler still function with a MAF dtc on COS#3?

joecar
November 5th, 2013, 01:37 PM
Yes, correct, adaptive spark functions in all COS's (with or without MAF DTC).

gpr
November 6th, 2013, 03:24 AM
So either one or the other values for B5916 and B5917 have to be met, and then it switches over to Hi Octane Spark Table? Or do both values have to be met?

gpr
November 6th, 2013, 04:34 AM
Also how does the table B5919 optimal timing play into working with the rest of the tables? For some reason during the log my timing shows in the Hi Octane table a value of 13, yet the actual timing in the logs is 23 on its way down to 13. I'm just wondering why it is like this. the ECT and IAT tables aren't set to modify it at this position either, so I only see optimal timing table being used.

the timing it is running at is okay, I'm just wondering what is affecting the values and how it pulls the timing down to the hi octane table (as i used the high octane table to pull timing down in boost)

joecar
November 6th, 2013, 05:02 AM
Optimal Timing is not used to command actual timing... but rather it is used as a reference in various calculations.


Post tune file and log file with frame bookmarked where this is happening.

gpr
November 6th, 2013, 05:24 AM
I made a dumb mistake.... Was logging grams/cyl and looking at tune in oz/cyl. ooops

now it is matching up

Wheelz
November 6th, 2013, 05:26 AM
That will do it and is easy to do

joecar
November 6th, 2013, 09:32 AM
ok cool :cheers:


( always check units of logs/pids, maps, tables )

gpr
November 7th, 2013, 02:17 PM
I was going to start a new thread but might as well post it here. i have been looking at why I am getting KR when i initially go WOT? I have all burst knock tables disabled, could this be false knock? This is the worse case of it I have seen. Normally i only get one degree.

joecar
November 7th, 2013, 02:27 PM
Do you hear anything on initial tip in...?

Are motor mounts torquing/bumping/limiting...?

Is oil pooling inside intake manifold...?

Do you see KR when IAT and ECT are cooler...?

Commanded EQR is 1.28... could this be causing rich knock...?

What fuel are you running...?




Hmmm, commanded AFR and wideband AFR are different.

Wheelz
November 7th, 2013, 03:55 PM
Could the difference in commanded AFR and measured AFR be commanding the incorrect stoich AFR for the fuel being used? Or the wideband not being programmed for the correct stoich? Just trying to think of other possibilities besides an incorrect MAF or VE table...

In my experience 25* timing is more advance than I can run without knock at that rpm and g/cyl. Not sure which engine you have, but I'm commanding around 20-21* under those conditions to avoid knock. I would think if you pulled back the timing there it might help spool your turbo a little quicker as well

gpr
November 7th, 2013, 05:28 PM
I am running on e85. the commanded afr is shown on the 85 scale, but the wide band is show on a gas scale. (because i'm use to using gas scale when tuning)

This is an ls1 with front mount turbo kit.

joecar
November 7th, 2013, 05:45 PM
Could the difference in commanded AFR and measured AFR be commanding the incorrect stoich AFR for the fuel being used? Or the wideband not being programmed for the correct stoich? Just trying to think of other possibilities besides an incorrect MAF or VE table...

In my experience 25* timing is more advance than I can run without knock at that rpm and g/cyl. Not sure which engine you have, but I'm commanding around 20-21* under those conditions to avoid knock. I would think if you pulled back the timing there it might help spool your turbo a little quicker as wellDiscrepancies in stoich AFR in tune and wideband...? Maybe if they are different... but if they are the same then both commanded and measured AFR would be that stoich AFR in Closed Loop... (if you use Lambda you will see 1.00 in Closed Loop). It seems to me that both your VE and MAF are not correct.

GenIII engine typically takes no more than 24* timing at peak torque, and sometimes less depending on fuel.

gpr
November 7th, 2013, 05:51 PM
I am still dialing in the VE table. It is pretty rich and I'm slowly leaning it out to get it dialed in 100%, but i have no maf.

I'm thinking I simply am commanding too much timing. I will back it off in that area and see what happens.

Wheelz
November 7th, 2013, 05:52 PM
Hmm could be rich knock from too much fuel before boost. I had knock going at that EQR that cleared up when I went to 1.17 EQR. Not sure though.

joecar
November 7th, 2013, 05:52 PM
For E85 do this:
- set your B3601 to 9.7.
- make sure that your injector duty cycle does not max out (or rather stays below 80% or 90%).
- set your calc_pids.txt to use EQR and/or lambda for commanded fueling and wideband measurement.
- get VE and MAF tables corrected so BEN for both is close to 1.00.
- recheck injector duty cycles,
- check LTFT's.


Note:

you should use a BEN pid based on lambda and/or EQR...

examples:

if you have FlashScan V2 with serial wideband connection:
your BEN will be "{GM.EQIVRATIO}*{EXT.WO2LAM1}"

if you have FlashScan V1 or V2 with analog wideband connection:
you BEN should be "GM.EQIVRATIO}*{CALC.AFR_xxxx}/14.7"
(where the 14.7 should actually be the default stoich AFR of your wideband).

Wheelz
November 7th, 2013, 05:54 PM
Discrepancies in stoich AFR in tune and wideband...? Maybe if they are different...

I was trying to say it looks like they could be programmed differently, didn't do a very good job of that.

joecar
November 7th, 2013, 05:55 PM
With boost, EQR 1.28 is ok, should not be causing rich knock (rich knock does not usually happen, it can, but not usually, forget that I mentioned it).

but check injector duty cycle, if it hits 100% then you would be going lean and you might be getting lean knock...

but I see your injector duty cycle is still below 100%...

but see what the injector duty cycle is when MAF and VE are corrected (BEN stays very close to 1.00 all the time).

gpr
November 8th, 2013, 05:41 AM
For E85 do this:
- set your B3601 to 9.7.
- make sure that your injector duty cycle does not max out (or rather stays below 80% or 90%).
- set your calc_pids.txt to use EQR and/or lambda for commanded fueling and wideband measurement.
- get VE and MAF tables corrected so BEN for both is close to 1.00.
- recheck injector duty cycles,
- check LTFT's.


Note:

you should use a BEN pid based on lambda and/or EQR...

examples:

if you have FlashScan V2 with serial wideband connection:
your BEN will be "{GM.EQIVRATIO}*{EXT.WO2LAM1}"

if you have FlashScan V1 or V2 with analog wideband connection:
you BEN should be "GM.EQIVRATIO}*{CALC.AFR_xxxx}/14.7"
(where the 14.7 should actually be the default stoich AFR of your wideband).

Here is my tune. and calc.pid files. I have B3607 set to 9.7 for e85. My injector duty cycle is staying under 90% and it is running rich, so once VE is dialed in it should be less than 90%.

Also if you could double check my calc_pid file I believe it is using lambda, and that is also what I'm creating the maps with. (I think every time i post logs it confuses everyone. I am logging lambda and AFR but display the AFR on the dashboard, as I am use to reading AFR not lambda or eq.)

BTW to clarify the "BEN" factor is basically the factor the scan tool map is creating to show how far off your VE table is from making it run at the correct afr you are commanding in the tune, is this correct? If so will this ever become "1" as I have ran calc.maft almost every time i drive the car and it is always recommending the slightest changes.

joecar
November 8th, 2013, 07:21 AM
You calc_pids.txt is good, it uses lambda and/or EQR to calculate the BEN.

Yes, the BEN is the correction factor (shows you how far off VE table is)(VE table * BEN = corrected VE table).

I see you have CL/LTFT enabled, SOL disabled, MAF disabled... your COS tune looks good.

Questions:
- do you see a MAF DTC (you need to see it everytime)...?
- what engine mods...?
- is your FPR manifold referenced...?
- what injectors...?
- what is your rail pressure (measured with reference hose temporarily removed)...?
- does your IFR table match your injectors...?
- which wideband do you have...?
- when you do Calc.MAFT do you apply the low cell count filter and the transient filter...?


Fix these out-of-range tables: A0007, A0012, A0013 (enter a value that is max-1).


Post some log files of your Calc.MAFT attempts.

gpr
November 8th, 2013, 08:54 AM
The only odd thing in the tune and log that confuses me is you once said that you can not command 1 in table B3647 or your short term fuel trims won't be disabled when for calc.maft. If you look at my table I have lambda set at .98 instead of 1, yet in the log is still commanding 1 (or 9.7 afr)... Never figured that one out.

1. Yes i have a code P0102 everytime cause the maf is failing
2. The engine is a stock ls1 with a cam (don't know specs was installed before i purchased), push rods and dual valve springs. I installed head studs, oh and the throttle body is ported. Everything else engine wise is stock.
3. FPR is manifold referenced
4. Injectors are 1000cc injectors at 3 bar
5. Rail pressure is 58 psi with vacuum hose off FPR. is about 52psi with hose connected at idle.
6. Yes IFR matches my injectors
7. wideband = lc1
8. Yes i filter the map before applying

I only show table a0007 as showing out of range, the others down show up on the out of range calibration summary. A0007 is all set to 500 so that it does not use this table. I was under the impression if i change these values then that table will become active? Also why is 500 showing out of range as that is the max value?

Attached is the last couple logs i have taken. the log from today (11-8-13) is a bit all over the place as I was putting the car in different gears trying to hit a lot of different cells.

joecar
November 8th, 2013, 09:14 AM
B3647:
- is used only in OL,
- any cell set to 1.00 causes STFT trimming when that cell is hit (this is called "semi-open loop" SOL).

I'll try to figure out why it is commanding 1.00 when you have 0.98 lambda.

Goto A0012 and A0013, you will see blue dogear corners on those cells.

The V7 tunetool displays the max or min for any cells that exceed the range...
and when you edit the cell to the max or min value and Save, the tunetool thinks that nothing changed (so it doesn't save);
so you have to set those cells to max-1 and Save, the tunetool now sees that something changed (so it saves).

joecar
November 8th, 2013, 09:14 AM
I'll look thru your logs this afternoon.

joecar
November 8th, 2013, 09:18 AM
Since you have CL/LTFT enabled, you will never be in OL, so B3647 will never be used

( when you go from CL to PE, the last positive LTFT is applied... this is a manner of "CL" since it really is not OL... )
( I did some experiments with the values in B3647 and B3618, and I can verify that going CL -> PE does not invoke B3647 )


This is why you see Lambda 1.00 being commanded (i.e. CL/LTFT is trimming to stoich).

joecar
November 8th, 2013, 09:21 AM
Check you pm's.

gpr
November 8th, 2013, 12:04 PM
The V7 tunetool displays the max or min for any cells that exceed the range...
and when you edit the cell to the max or min value and Save, the tunetool thinks that nothing changed (so it doesn't save);
so you have to set those cells to max-1 and Save, the tunetool now sees that something changed (so it saves).

This is odd. I can change it to 499, save and close it. Reopen the tune and all the values are showing out of range still and for some reason have a value of 499.026... Even if I change to 498 close, save, and reopen it still shows it out of range..... Does it affect anything leaving it showing out of range?

Is it best to tune everything in OL by shutting off LTFT? then once i have the ve dialed in I can turn STFT and LTFT back on. I know that LTFT can be used to calculate VE, but are the last LTFT factored in once in OL mode? for example when i enter PE mode my LTFT are 5% and 5% is added to the VE table, is this extra 5% accounted for in the BEN factor?

Not sure if you didn't send anything but i have no pm's.

Thanks again joecar for all your help!

joecar
November 8th, 2013, 01:45 PM
Is it best to tune everything in OL by shutting off LTFT? then once i have the ve dialed in I can turn STFT and LTFT back on.
Yes, try with CL/LTFT disabled, i.e. using wideband only.



I know that LTFT can be used to calculate VE, but are the last LTFT factored in once in OL mode?
The last positive trim gets added on top of PE (when you go CL -> PE).

(when you go OL->PE there is no last trim)



when i enter PE mode my LTFT are 5% and 5% is added to the VE table, is this extra 5% accounted for in the BEN factor?
When you go to PE, the pid CALC.CL goes to zero, this causes CALC.SELBEN to select CALC.WO2BEN, so the LTFT is discarded.

joecar
November 8th, 2013, 01:55 PM
Ok, after looking thru your logs, I would disable CL/LTFT and use CALC.WO2BEN to correct the VE tables

(i.e. pretty much same as AutoVE, but with a better BEN pid)...

take some logs like this and post here.

gpr
November 15th, 2013, 07:54 AM
Here is a log with the LTFT disabled. Now it makes much fewer changes to the VE table.

I still have a little KR when first punching it (isn't the best log), so I backed off timing a few degree's in those area's to help prevent as the fueling seems to be okay and I don't get any KR when WOT.

joecar
November 15th, 2013, 09:06 AM
WO2BEN looks pretty good.

With newly adjusted VE table, how is throttle response (do you notice any difference)...?

Are your injector tables correct for your injectors...?

gpr
November 15th, 2013, 09:29 AM
With the leaned out ve table and modified spark table the throttle response and turbo spool time are much improved.

Only one last issue. Is once in a while when i coast down to a stop, the car surges and almost dies (does die once in a while.) I'm not sure why it does this, I'm thinking maybe it is transitioning to the base spark in gear table b5932 and spark timing is more retarded... So I increased timing at lower rpms. (from 28 to 30)

I have attached a screen shot to show an example of this. Where the marker is you can see the rpms dropped to 500, and for some reason right around this area the spark advance is all over the place. What would cause such wild swings in spark timing?

joecar
November 15th, 2013, 12:12 PM
It could be spark following VE, or it could be VE itself, or it could be throttle follower/cracker and/or stall saver.

gpr
November 15th, 2013, 05:15 PM
How do you tell what causes it?

I don't think it is VE as the a/f ratio is okay while it happens. Also it isn't all the time it is sort of random and is after the car has been running for a while and it is good and warm.

statesman
November 15th, 2013, 11:28 PM
How do you tell what causes it?

I don't think it is VE as the a/f ratio is okay while it happens.

Your commanded AFR is 9.71 but your WB AFR is showing 15.47. I think you might be going too lean to idle properly.

Wheelz
November 16th, 2013, 02:34 AM
How do you tell what causes it?

I don't think it is VE as the a/f ratio is okay while it happens. Also it isn't all the time it is sort of random and is after the car has been running for a while and it is good and warm.

Your going to have to try changing one parameter at a time and see how it effects the problem.

joecar
November 16th, 2013, 07:12 AM
Post your log file and your calc_pids.txt...

in the log we want to also see these (not shown in your pic):
- BEN calculated from GM.EQIVRATIO and wideband lambda,
- GM.DYNCYLAIR or GM.DYNCYLAIR_DMA;


when you log GM.AFR, it is based on B3601 (which you've set to stoich AFR of the fuel you run);
when you log WB_AFR, is it based on the same stoich AFR or is it based on a difference stoich AFR...?
commanded AFR and wideband AFR can only be compared if they are based on the same AFR.

joecar
November 16th, 2013, 07:20 AM
You see spark bouncing like that because it is using spark to try to control idle speed...

( I think spark is too high right there, it does not leave enough upper range to allow idle speed to be controlled )

this points to two things:
- spark is too high, it's range is used up so when trying to control idle speed,
- incorrect idle air (either too much or not enough).

gpr
November 16th, 2013, 04:51 PM
Here is the log of the run. The spot in the tune I posted a screen shot of is at the end around frame 8500.

I think you might be right, the VE table does look a little lean down in the 400rpm row so I richened it up. The 28 degree's of timing advance in B5932 is the stock value. In B5913 High octane spark table I do have higher timing. I'm guessing I should back this down close to stock levels as well where it idles? See if that and extra fuel in the ve table helps and then allow the spark timing to control rpm better.

gpr
November 19th, 2013, 07:22 AM
I was thinking about this more. When i disabled my LTFT it seems like the VE table was dead on and the car was running at commanded afr, where as when LTFT were enabled it would always run a bit rich as once in PE the LTFT value was being added to the VE tables values....

Is it possible to run STFT and leave LTFT disabled? this way the o2 sensors are still working at idle and part throttle. Then once I get into PE it will use the VE table with out the added percent of the LTFT. Seems like it would be much more precise at idle, cruising and at WOT as well with LTFT disabled.

joecar
November 20th, 2013, 04:16 PM
CL STFT: try this: disable LTFT, leave CL enabled.

gpr
November 21st, 2013, 05:09 AM
CL STFT: try this: disable LTFT, leave CL enabled.

I think this is what I already have and posted with the last log. I had B4108 disabled, and then disabled B3801 on your recommendation. Thus both STFT and LTFT are disabled, but CL is enabled by table B4205.

I was thinking about re-enabling B4108. This way I have STFT enabled at idle and LTFT will still be disabled, so it will be in CL mode. Is this correct?

joecar
November 21st, 2013, 10:37 AM
Yes... you have to carefully read the description of B4108... I have to reread it (lol, it loses me everytime after I read it).