

Moderator: Series8217
Hmmm, some thoughts/ideas...ericjon262 wrote: ↑Thu Feb 10, 2022 7:50 pm idle tuning continues to be a bear, I think I may be on the ragged edge of what the deka 60's can do, I'm going to keep working with it and see where I can get, but it seems like it either idles on the rich side, or super lean.
when I got home from work, I pulled a bunch of timing, and started attacking idle and trying my best to get it better, I did have a couple things going against me, I forgot to turn off idle advance, and I also had DBW idle control enabled, I think the combination of these two weren't helping, I got it to about 14:1, PW is around 1.1-1.2 or so, pretty short still. tomorrow, before I leave work I'll try disabling DBW idle control again, and see how I can get it. hopefully I can further improve.pmbrunelle wrote: ↑Thu Feb 10, 2022 9:13 pmHmmm, some thoughts/ideas...ericjon262 wrote: ↑Thu Feb 10, 2022 7:50 pm idle tuning continues to be a bear, I think I may be on the ragged edge of what the deka 60's can do, I'm going to keep working with it and see where I can get, but it seems like it either idles on the rich side, or super lean.
If the valves aren't opening/closing exactly like they're supposed to, maybe that's causing your issues? Maybe solve this before trying to tune with a known problem present?
Have you attempted to do a characterization of your injector dead time (function of battery voltage), and have you programmed this in the ECU?
Understand that compensation is never perfect, it is best if dead time is as short as possible. Are you running a manifold-referenced fuel pressure regulator, or atmosphere-referenced? With manifold reference, there is less differential fuel pressure across the injector at idle. The less fuel pressure there is, the less the fuel pressure is keeping the injector forced shut. With less fuel pressure, the injector can snap open quicker.
You have a constant voltage from your alternator? If voltage is low, then the injector is slower to open.
If you retard the idle timing down to the 5-10° BTDC range, then the thermal efficiency of the engine will decrease. To stay alive, the engine will need to idle at a greater MAP kPa. More air -> greater injector pulse width.
What is the idle pulse width? How does it run during warmup, when the mixture is richer, and pulse width is longer?
What AFR are you targeting, and what is the measured AFR when it swings lean or rich?
right now, my main goal is to get it to stay stable, an IAC or DBW throttle can't compensate nearly fast enough to stop that kind of rolling/hunting, in the bad part of the log, RPM is fluctuating 350+ RPM in less than 1/2 a second, in the early parts of the log, it's fluctuating 165 RPM over 1.3 seconds.Shaun41178(2) wrote: ↑Mon Feb 14, 2022 4:31 pm I know you said you have closed loop ego correction off but looking at your a/f plot when at 180 degrees, that does not appear to be the case
I am not using an iac on my engine. My idle used to hunt badly once closed loop kicked on. My af ratio looked like yours. So I adjusted the ego correction above 1500 rpm only as well as locked the ve table in the idle cells so the computer will never try to adjust them.
Maybe that's what you need to do.
Also it looks like you are trying to control your idle by lowering your timing to only 11 degrees. On my 3900 I think I am around 19 degrees at idle. Trying to control idle with timing can work but it's not the correct way.
as noted earlier in this thread, my VSS has a noise issue, I have the new sensor that I still need to install, engine state settings had "Use VSS" enabled. I don't think it would be causing the problem, as all closed loop idle control is disabled, but I went ahead and disabled that setting until I can replace the sensor with the cam sensor and adapter, hopefully later this week. I did review the log, and the idle state was stable in the earlier, good idle, and fluctuating alot in the later, bad idle. I don't think this would cause the problem, but I would be quite relieved if it fixed it.Six_Shooter wrote:One thing I noticed in your log is that "good early" the VSS shows 0 (zero), while the "bad late" shows initially that the VSS is zero, but then jumps up to a few MPH, and also indicates that the car is in first (based on calculations and the fact the ECU is seeing vehicle speed. Was teh car actually rolling a t a slow speed or sitting still and the VSS signal needs some attention?
I get a kick out of this sequenceShaun41178(2) wrote: ↑Mon Feb 14, 2022 4:31 pm I am not using an iac on my engine.
Trying to control idle with timing can work but it's not the correct way.
This is a strong point... your AFR varies wildly with RPM... the change in torque with AFR is what's destabilizing your idle. The AFR slope or rate of change looks extremely steep, as though you're traversing a discontinuity in your VE table.Shaun41178(2) wrote: ↑Mon Feb 14, 2022 4:31 pm My idle used to hunt badly once closed loop kicked on. My af ratio looked like yours.
So near stoichiometry, the addition or subtraction of fuel causes a direct change in engine torque.The Dark Side of Will wrote: ↑Tue Feb 15, 2022 10:16 am This is a strong point... your AFR varies wildly with RPM... the change in torque with AFR is what's destabilizing your idle. The AFR slope or rate of change looks extremely steep, as though you're traversing a discontinuity in your VE table.
Without adding any of the closed-loop idle or EGO functions (which just adds more complexity into the mix), you need to get a stable non-oscillating idle with a constant throttle opening.ericjon262 wrote: ↑Mon Feb 14, 2022 11:12 pm right now, my main goal is to get it to stay stable, an IAC or DBW throttle can't compensate nearly fast enough to stop that kind of rolling/hunting
I don't think there is an idle modifier based on VSS, the MS3 determines "Engine state" via a few parameters, throttle position, VSS, and RPM change. I turned off the VSS input to the engine state calculation with the intention of turning it back on once I handle the noise problem, but I also haven't driven the car since doing so. yesterday, I got the new VSS mounted, and the wire routed, I still need to terminate the MS3 side, and tie back the wiring. I'll test the new VSS after I install my new pushrods that showed up yesterday.The Dark Side of Will wrote: ↑Tue Feb 15, 2022 10:16 amThis is a strong point... your AFR varies wildly with RPM... the change in torque with AFR is what's destabilizing your idle. The AFR slope or rate of change looks extremely steep, as though you're traversing a discontinuity in your VE table.Shaun41178(2) wrote: ↑Mon Feb 14, 2022 4:31 pm My idle used to hunt badly once closed loop kicked on. My af ratio looked like yours.
Is there a "rolling idle" that would change settings based on VSS? GM computers have that to kick the idle up a little bit while the vehicle is moving in a parking lot, in order to better absorb power steering loads.
Also, how does the ECM know you're at idle? Zero on the pedal sensor?
Also, what kind of temperature dependency do you have in your AFR table?
pmbrunelle wrote: ↑Tue Feb 15, 2022 1:04 pmSo near stoichiometry, the addition or subtraction of fuel causes a direct change in engine torque.The Dark Side of Will wrote: ↑Tue Feb 15, 2022 10:16 am This is a strong point... your AFR varies wildly with RPM... the change in torque with AFR is what's destabilizing your idle. The AFR slope or rate of change looks extremely steep, as though you're traversing a discontinuity in your VE table.
As the mixture is enriched, torque will increase up to a maximum, then torque will decrease if the mixture is further enriched.
Around the maximum (which occurs around 12.5 AFR), small fluctuations in AFR do not cause fluctuations in engine torque. Engine torque remains stable despite changes in AFR.
Eric mentioned running near 14 AFR, so engine torque will depend significantly on AFR here.
Of course, besides reducing the engine's sensitivity to AFR fluctuations, we should also try to reduce the AFR fluctuations themselves.
AFR fluctuations can exist for a number of reasons:
Sensor noise
VE table issues
Numerical noise in the ECU's calculations
Dead time compensation is not close enough, combined with short pulse width
Wall-wetting -> fuel delivered (evaporated from the puddle) into the combustion chamber now does not reflect the present airflow; it reflects the airflow measured at the time of injection into the port.
The wall-wetting time constant is very much a function of RPM. The faster the air rushes through the port, the shorter the time constant.
On my own Fiero, the time constant may be ~1 second at 700 RPM. Up at 1200 RPM, the time constant may drop to ~0.5 seconds.
By increasing idle RPM, the wall-wetting time constant (and therefore whatever AFR fluctuation it may produce) is reduced.
Without adding any of the closed-loop idle or EGO functions (which just adds more complexity into the mix), you need to get a stable non-oscillating idle with a constant throttle opening.ericjon262 wrote: ↑Mon Feb 14, 2022 11:12 pm right now, my main goal is to get it to stay stable, an IAC or DBW throttle can't compensate nearly fast enough to stop that kind of rolling/hunting
I suppose that I would suggest trying to make the idle work at 12.5 AFR, and 1200 RPM.
Once you get a stable baseline, then you can work on reducing the idle speed and leaning it out more to your liking.
What parameters cause AFR to change with coolant temp?ericjon262 wrote: ↑Thu Feb 17, 2022 5:02 am the only variable changed is the coolant temp and run time.
Maybe? The AFR varying significantly across idle speeds indicates that it's not staying in that range.
Idle ignition timing should ramp smoothly through the idle table. Idle ignition timing should be higher at RPM below the idle set point and lower at RPM above the set point. That way when RPM sags from a transient, ignition timing comes up for increased torque. When the opposite transient happens, ignition timing comes down to lower torque and slow the engine down.ericjon262 wrote: ↑Thu Feb 17, 2022 5:02 am I also plan on increasing my ignition timing some, it needs more idle torque to minimize the effects of transients on RPM.
This statement struck me as bizarre, so I downloaded your *.msq tune file from the other forum to understand better.
At the moment, AFR in the idle area cannot be constant due to two reasons:
The VE table is flat in the idle region, and above/below, with closed loop fuel correction turned off, the AFR table shouldn't be making changes to fueling. I did that so I would have one less variable changing things while I tried to get the car to idle consistently.pmbrunelle wrote: ↑Thu Feb 17, 2022 8:45 pmThis statement struck me as bizarre, so I downloaded your *.msq tune file from the other forum to understand better.
Looks like you have exactly the same VE values in the idle area:
Eric VE 2D.jpg
Same table viewed in 3D:
Eric 3D VE.jpg
Commanded AFR, with idle area in red rectangle:
Eric 2D AFR.jpg
most EFI applications I have used in the past (granted, use was limited) performed calculations similar to what was described by not including target AFR, having the VE table control fuel, so I stuck with that, or at least I think that was my mindset at the time. include target AFR sounds simpler by the way you describe it.pmbrunelle wrote: ↑Thu Feb 17, 2022 8:45 pmAt the moment, AFR in the idle area cannot be constant due to two reasons:
1. Engine VE varies with RPM and load, but the VE table (in the idle area) VE is constant. Therefore, the VE table (as it is today) cannot accurately model the actual airflow.
2. Commanded AFR is not constant in the idle area.
Speaking of AFR, you're not running includeAFRtarget?
AFRtarget.jpg
I would recommend it switching it on, so that the VE table is only modeling the volumetric efficiency, without having the target AFR baked into it. When includeAFRtarget is activated, with a properly tuned VE table, you can simply change the AFR by changing the commanded AFR, without having to revisit the VE table.
I've actually been using the VE analyze feature, in MLV, but not the autotune as much. I also have not hit all parts of the map, and having the throttle capped limits the ability to hit the entire table. I ran the analysis on the current table with the data from the log I took yesterday after work, and the 100 KPA table smoothed out significantly. I'm hoping now that I have isolated a part of my issues to the VSS input, that things will tune smoother and faster. honestly, the car felt like it ran smoother with no VSS than it did with the noisy VSS.pmbrunelle wrote: ↑Thu Feb 17, 2022 8:45 pm
Your VE table is currently a horror show. Discussion of dead times, ignition timing retard, idle RPM, those are details that don't matter with the current state of your VE table.
VE is generally a smooth function, so the VE table should reflect that. In something such as a VTEC Honda with lobe-switching, I suppose you might find a crease in the VE table at the switchover point.
Here's my Fiero's table:
Pat 3D VE.jpg
The red cursor is at the idle point. There is nothing particular about the idle point. The VE table attempts to model VE accurately for all conditions of MAP/RPM.
For idle stability, it is not sufficient for the VE value at the idle point to be correct. The gradient of the VE table in the idle area must also reflect the gradient of the engine's VE.
To transform the VE table into a good representation of the engine's VE, you should use the VE Analyzer Live in TunerStudio as you drive around. Try to hit as many cells as possible in near "steady-state" conditions. I generally pick an RPM (keeping constant RPM by left-foot braking), and then slowly open the throttle with my right foot to move through the cells.
The VE table as computed by the automation won't be perfect. It will be spiky, and some unreachable areas won't be tuned (for lack of data). So, manually adjust the table so that it looks smooth, while trying to imagine what the true VE function may look like beneath the noise. Do some logical extrapolations to areas of the table you weren't able to reach.
It's an iterative process; you won't get the table like mine on the first go. With each iteration, increase the "difficulty" from Easy, to Normal, then to Hard in VE Analyzer.
In the final iterations of VE table refinement, you should datalog (always trying to hit each cell in near-steady-state) over a bunch of different conditions. Hot/cold, humid, dry. The final VE table correction should be based on this average data over different conditions. MegaLogViewer can compute a corrected VE table based on multiple datalog files. Manually review and smooth if necessary.
Generic values of injector dead time will be OK for your initial roughing-in of the VE table, but before getting to the final stages of VE table refinement, you should characterize the dead time for your specific car.
I had a MAF before I installed the intercooler, once I installed the intercooler, I made an entirely new charge pipe, and the MAF was left out.pmbrunelle wrote: ↑Thu Feb 17, 2022 8:45 pm I thought you had a MAF sensor? Why aren't you using it? It saves the fuss of getting the VE table to model the engine accurately.
That's the way I interpreted it, currently MS3 doesn't support my crank and cam position sensor arrangement for actual sequential injection.pmbrunelle wrote: ↑Thu Feb 17, 2022 8:45 pm Eric Settings.jpg
What is Semi-sequential?
How many times does each injector fire per 4-stroke cycle?
that's a good point I had not considered, I have a Flex sensor, but I have it disabled to remove added variables. I'll have to run a few ethanol tests to compare the ethanol content to the content observed by the sensor.Shaun41178(2) wrote: ↑Thu Feb 17, 2022 10:11 pm Maybe we need a refresher on what the setup is. Cam, injector size, blah blah
I have 80 lb injectors and have my injector dead time at .845. I have high z injectors
Af ratio on 93 octane should be at 14.1. Remember there is 10% ethanol which means you gotta set the target to 14.1
At idle and low load
The injectors are legit Siemens Dekas, I bought them almost 10 years ago, and don't have any literature for them, but I did dig all over to find people running them with dead times around where I have them set at .700.Shaun41178(2) wrote: ↑Fri Feb 18, 2022 7:36 am According to MS literature high z injector dead times are closer to .900. I am guessing your injectors are a.chinese variant? I am guessing you got no literature with them as far as dead times?
I'm not aware of them being used in an OE application, I have thought about getting another set and having them flowed and getting as much data as I can from a fuel injector service, I'm not sure how necessary that is though.The Dark Side of Will wrote: ↑Fri Feb 18, 2022 8:27 am What OE application were they used in? You may be able to find OE injector table data for them... that you know is backed up by a lot of test time.
For example, Injector Dynamics sends injector data in various OE formats (GM, Ford, Etc), so that tuners can copy/paste the right data into the tune when using those injectors. The closest schmoes like us can get is copying out of a factory tune that uses those parts. That's what I'm doing with the LC3 injectors in my engine.