Injector Dead Times
Moderators: jsmcortina, muythaibxr
Injector Dead Times
I seem to be having some winter fuelling issues, so I have been going through checking the fuelling parameters in my professionally configured tune. I want to understand what the effects of incorrect dead time would be, and what else I need to change if I correct it.
I'm using the Rx8 yellow Denso injectors on my NA8 Mazda MX-5 (Miata) with GT2560R. My tuner left the dead time as 0.9ms @ 100% (13.2V in all 4 curves). In my searches I found this post by jsmcortina:
"I measured that yellow RX8 injector and found a dead time of about 0.8ms at 12.2V.
James"
This suggests my dead time is set too high; on the voltage curves (all the same) 12.2V would be 20% above the 100% value, so 0.8ms at 12.2V gives a 100% value of 0.67 (to 2dp), right?
Can anyone explain to me what the impact would be of this being too high, and if I change it now what tables will likely need to be rescaled?
Thanks,
Nigel
Sent from my SM-N950F using Tapatalk
I'm using the Rx8 yellow Denso injectors on my NA8 Mazda MX-5 (Miata) with GT2560R. My tuner left the dead time as 0.9ms @ 100% (13.2V in all 4 curves). In my searches I found this post by jsmcortina:
"I measured that yellow RX8 injector and found a dead time of about 0.8ms at 12.2V.
James"
This suggests my dead time is set too high; on the voltage curves (all the same) 12.2V would be 20% above the 100% value, so 0.8ms at 12.2V gives a 100% value of 0.67 (to 2dp), right?
Can anyone explain to me what the impact would be of this being too high, and if I change it now what tables will likely need to be rescaled?
Thanks,
Nigel
Sent from my SM-N950F using Tapatalk
Re: Injector Dead Times
So here's my guess. Please correct me.NigeT wrote:I seem to be having some winter fuelling issues, so I have been going through checking the fuelling parameters in my professionally configured tune. I want to understand what the effects of incorrect dead time would be, and what else I need to change if I correct it.
I'm using the Rx8 yellow Denso injectors on my NA8 Mazda MX-5 (Miata) with GT2560R. My tuner left the dead time as 0.9ms @ 100% (13.2V in all 4 curves). In my searches I found this post by jsmcortina:
"I measured that yellow RX8 injector and found a dead time of about 0.8ms at 12.2V.
James"
This suggests my dead time is set too high; on the voltage curves (all the same) 12.2V would be 20% above the 100% value, so 0.8ms at 12.2V gives a 100% value of 0.67 (to 2dp), right?
Can anyone explain to me what the impact would be of this being too high, and if I change it now what tables will likely need to be rescaled?
Thanks,
Nigel
Sent from my SM-N950F using Tapatalk
Assuming, and I have no reason to doubt, that the dead time figure from James is correct, then my VE table was created with the incorrect long dead time and so it's values are actually to low by however ms pw the dead time is wrong.
Is there a way I can convert the pw delta to a VE adder?
Thanks.
Sent from my SM-N950F using Tapatalk
Re: Injector Dead Times
While it is certainly best to have "proper" deadtime, the error you have is not excessive enough to really explain any issue that can't be tuned out. All you will gain from fixing this is a more "correct" looking VE table at low loads.
What specific issues are you having?
What specific issues are you having?
86 Rx-7, swapped to 2.3 ford turbo (BW EFR 6758), ms3/ms3x sequential fuel /waste spark, ls2 coils
88 Tbird 2.3t, Microsquirt Module (PIMP), TFI ignition
88 Tbird 2.3t, Microsquirt Module (PIMP), TFI ignition
Re: Injector Dead Times
13.2v is an odd figure to choose. Both my cars - one fairly new, one much older - run at about 13.8v. Unless the compensation works on more than 100%.
Rover SD1 3.5 EFI
MS2 V3
EDIS
Tech Edge O2
London UK.
MS2 V3
EDIS
Tech Edge O2
London UK.
Re: Injector Dead Times
Thanks DaveEFI. I have not touched the compensation tables, just quoted them.DaveEFI wrote:13.2v is an odd figure to choose. Both my cars - one fairly new, one much older - run at about 13.8v. Unless the compensation works on more than 100%.
Sent from my SM-N950F using Tapatalk
Re: Injector Dead Times
Thanks Wes, I was wondering if I would just be making work by changing it. I'm having issues with cold start at lower temperatures, but I think I'm working through that with changing cranking pulse widths and ASE.wes kiser wrote:While it is certainly best to have "proper" deadtime, the error you have is not excessive enough to really explain any issue that can't be tuned out. All you will gain from fixing this is a more "correct" looking VE table at low loads.
What specific issues are you having?
Sent from my SM-N950F using Tapatalk
Re: Injector Dead Times
Check out Andy's latest video.
https://youtu.be/gyFOkxit8gA
It's not on your topic specifically but he covers it and you'll be able to draw your own conclusions on how it will impact the tune.
Sent from my MI 5 using Tapatalk
https://youtu.be/gyFOkxit8gA
It's not on your topic specifically but he covers it and you'll be able to draw your own conclusions on how it will impact the tune.
Sent from my MI 5 using Tapatalk
Re: Injector Dead Times
I did watch the video and it confirmed what I was thinking - that my VE table had been set up compensating for the incorrect dead time. If I correct the dead time I'll need to add /subtract some constant I guess to account for this. I'm guessing that as long as my duty cycle allows enough headroom is only going to be an issue if I change injectors.
Sent from my SM-N950F using Tapatalk
Sent from my SM-N950F using Tapatalk
-
- Experienced MS/Extra'er
- Posts: 374
- Joined: Thu May 26, 2016 1:25 pm
- Location: Germany
Re: Injector Dead Times
Corrections only apply to the non-DT part of the PW as they multiply with the VE value.NigeT wrote:I'm guessing that as long as my duty cycle allows enough headroom is only going to be an issue if I change injectors.
My project: Link
Re: Injector Dead Times
Thanks.Dennis_Zx7r wrote:Corrections only apply to the non-DT part of the PW as they multiply with the VE value.NigeT wrote:I'm guessing that as long as my duty cycle allows enough headroom is only going to be an issue if I change injectors.
By corrections do you mean like ASE...?
Simplistically is PW = DT + (C * VE * k) where C is corrections multiplied and k is some constant related to req fuel? If so then for me I have PW = DT + DTe + (C * VE * k), where DTe is my DT error. The DTe should really be a component of the variable part. I.e. When corrections are 100% my true VE = DTe/k + VEc (VEc is current VE).
Sent from my SM-N950F using Tapatalk
-
- Experienced MS/Extra'er
- Posts: 374
- Joined: Thu May 26, 2016 1:25 pm
- Location: Germany
Re: Injector Dead Times
The fuel calculations are in the manuals but you're basically correct. By corrections I mean things like startup enrichments, MAT, EGO...
My project: Link
Re: Injector Dead Times
Hi,
So after much internet searching I am convinced I have a dead-time error of 0.2ms or so and also the voltage curve is wrong. This is based on tables from the RX-8 ECU and puzzling through how that ECU uses the tables.
Am I right in thinking that the dead-time setting in MS-3 does not have to be at 13.2V (that being the 100% point in the current dead-time / voltage curve) but just that the curve has to have that value as the 100% value, regardless of the voltage. The RX-8 table ha a value at 12.75V and though I can interpolate to 13.2V it is another approximation that I would rather avoid.
Based on the fuel calculation information in the documentation I tried to work out how to figure out the error in my VE table based on the dead-time error, to give me an initial correction.
PW_map,rpm = DT + (RF * MAP * VE_map,rpm * Corrections)
where:
PW_map,rpm = pulsewidth at given MAP and RPM
DT = injector dead-time (at 100% voltage)
RF = Req Fuel constant
MAP = manifold air pressure
VE_map,rpm = volumetric efficiency constant at given MAP and RPM
RPM = engine speed in RPM
Corrections = other multiplied in corrections such as Air Density, AFR, Baro, Warm up Enrichment...
Considering error in dead time, with all other parameters unchanged:
PWmap,rpm = DTa + DTe + (RF * MAP * (VE_map,rpm - VEe_map,rpm) * Corrections)
where:
DTa = Actual (correct) dead-time
DTe = error in dead time
VEe_map,rpm = Error in VE to adjust for DTe
Equating these:
DTa + (RF * MAP * VE_map,rpm * Corrections) = DTa + DTe + (RF * MAP * (VE_map,rpm - VEe_map,rpm) * Corrections)
so,
(RF * MAP * VE_map,rpm * Corrections) = DTe + (RF * MAP * (VE_map,rpm - VEe_map,rpm) * Corrections)
Assuming corrections are all 100% (I have no baro correction,assuming AFR is correct, warm-up over...)
DTe = (RF * MAP * VE_map,rpm) - (RF * MAP * (VE_map,rpm - VEe_map,rpm))
= (RF * MAP) * (VE_map,rpm - (VE_map,rpm - VEe_map,rpm))
= (RF * MAP) * VEe_map,rpm
Given that DTe is known:
VEe_map,rpm = DTe / (RF * MAP)
Of course when I apply this it doesn't quite seem to be right - the VE corrections are tiny; the largest being 0.00143985. Can anyone spot my logic error, or is there some scaling that I am not aware of (maybe VE in the tables is a percentage...)?
Many thanks,
Nigel.
So after much internet searching I am convinced I have a dead-time error of 0.2ms or so and also the voltage curve is wrong. This is based on tables from the RX-8 ECU and puzzling through how that ECU uses the tables.
Am I right in thinking that the dead-time setting in MS-3 does not have to be at 13.2V (that being the 100% point in the current dead-time / voltage curve) but just that the curve has to have that value as the 100% value, regardless of the voltage. The RX-8 table ha a value at 12.75V and though I can interpolate to 13.2V it is another approximation that I would rather avoid.
Based on the fuel calculation information in the documentation I tried to work out how to figure out the error in my VE table based on the dead-time error, to give me an initial correction.
PW_map,rpm = DT + (RF * MAP * VE_map,rpm * Corrections)
where:
PW_map,rpm = pulsewidth at given MAP and RPM
DT = injector dead-time (at 100% voltage)
RF = Req Fuel constant
MAP = manifold air pressure
VE_map,rpm = volumetric efficiency constant at given MAP and RPM
RPM = engine speed in RPM
Corrections = other multiplied in corrections such as Air Density, AFR, Baro, Warm up Enrichment...
Considering error in dead time, with all other parameters unchanged:
PWmap,rpm = DTa + DTe + (RF * MAP * (VE_map,rpm - VEe_map,rpm) * Corrections)
where:
DTa = Actual (correct) dead-time
DTe = error in dead time
VEe_map,rpm = Error in VE to adjust for DTe
Equating these:
DTa + (RF * MAP * VE_map,rpm * Corrections) = DTa + DTe + (RF * MAP * (VE_map,rpm - VEe_map,rpm) * Corrections)
so,
(RF * MAP * VE_map,rpm * Corrections) = DTe + (RF * MAP * (VE_map,rpm - VEe_map,rpm) * Corrections)
Assuming corrections are all 100% (I have no baro correction,assuming AFR is correct, warm-up over...)
DTe = (RF * MAP * VE_map,rpm) - (RF * MAP * (VE_map,rpm - VEe_map,rpm))
= (RF * MAP) * (VE_map,rpm - (VE_map,rpm - VEe_map,rpm))
= (RF * MAP) * VEe_map,rpm
Given that DTe is known:
VEe_map,rpm = DTe / (RF * MAP)
Of course when I apply this it doesn't quite seem to be right - the VE corrections are tiny; the largest being 0.00143985. Can anyone spot my logic error, or is there some scaling that I am not aware of (maybe VE in the tables is a percentage...)?
Many thanks,
Nigel.
-
- Experienced MS/Extra'er
- Posts: 374
- Joined: Thu May 26, 2016 1:25 pm
- Location: Germany
Re: Injector Dead Times
Yes, but keep in mind the DT value for the MS can be a little different for the same injectors in different systems, and that there are different definitions for DT outside the MS world. Things like fuel pressure or a different ECU can result in different values. I would at least measure the DT myself with the MS at one point and check if it's the same as in that table.NigeT wrote:Am I right in thinking that the dead-time setting in MS-3 does not have to be at 13.2V (that being the 100% point in the current dead-time / voltage curve) but just that the curve has to have that value as the 100% value, regardless of the voltage. The RX-8 table ha a value at 12.75V and though I can interpolate to 13.2V it is another approximation that I would rather avoid.
As for the formula, I basically got the same:
Assuming DTe, DTa, RF and PW all in ms, VE and MAP as fractions (ve 100 = 1, VE 50 = 0.5; 100kpa = 1, 50kpa = 0.5)
DTa + (RF*MAP*VEa) = PW
DTa + DTe + RF*MAP*(VEa - VEe) = PW
->
DTa + RF*MAP*VEa = DTa + DTe + RF*MAP*(VEa - VEe)
RF*MAP*VEa = DTe + RF*MAP*(VEa - VEe)
VEa = DTe/(RF*MAP) + VEa - VEe
-->
VEe = DTe/(RF*MAP)
Remember to put in DTe and RF as ms, and MAP as a fraction. The resulting VEe has to be multiplied by 100, as the VE table is in %.
For example, with a DTe of 0.2ms (0.8 instead of 1.0), a RF of 3ms, a VE of 30 and MAP 50 (let's say idle) this would result in a "correct" VE of 43.
Note:
This only works when IncorporateAFR is turned off, otherwise it will have to be included in the calculation.
My project: Link
Re: Injector Dead Times
Thanks for the detailed reply Dennis. The VE and MAP as fractions would make my calculated VE errors make sense - I hadn't understood that from the fuel calculation documentation (I had guessed VE was a percentage of Req Fuel, but hadn't guessed that MAP in the calculation was a fraction of 100kPa).
I mentioned earlier that James had measured it as 0.8ms at 12.2V - using the dead-time I interpolated out of the RX-8 tables (to take into account the difference between the pressure differential my car runs at and that which the RX-8 injectors run at) and the RX-8 derived voltage curve I calculate the dead-time at 12.2V to be 0.78ms. I think the derived dead-time seems reasonable.
Thanks again, you have been a big help.
I mentioned earlier that James had measured it as 0.8ms at 12.2V - using the dead-time I interpolated out of the RX-8 tables (to take into account the difference between the pressure differential my car runs at and that which the RX-8 injectors run at) and the RX-8 derived voltage curve I calculate the dead-time at 12.2V to be 0.78ms. I think the derived dead-time seems reasonable.
Thanks again, you have been a big help.
Re: Injector Dead Times
I checked and my AFR target is below stoich in boost and generally at higher MAP / RPM. I'm wondering though if it needs taking into account. With incorporate AFR the corrections are extended by 14.7 / AFRtarget so:
VEe = (DTe * AFRt) /(RF*MAP * 14.7)
Since my targets are all lower than 14.7 it just means my calculated VEe will be a bit too high, the worst case being 11.5/14.7, i.e. about 25% high (for the correction). Is this worth worrying about?
Is there any way to export the VE and AFR target tables and import them into MS Excel? If that could be done it would be pretty easy to create the "correct" VE corrections.
Thanks,
Nigel.
VEe = (DTe * AFRt) /(RF*MAP * 14.7)
Since my targets are all lower than 14.7 it just means my calculated VEe will be a bit too high, the worst case being 11.5/14.7, i.e. about 25% high (for the correction). Is this worth worrying about?
Is there any way to export the VE and AFR target tables and import them into MS Excel? If that could be done it would be pretty easy to create the "correct" VE corrections.
Thanks,
Nigel.
-
- Experienced MS/Extra'er
- Posts: 374
- Joined: Thu May 26, 2016 1:25 pm
- Location: Germany
Re: Injector Dead Times
You can just mark and copy&paste them over, like most tables.
My project: Link
Re: Injector Dead Times
Thanks Dennis, I never thought to try that but it works just as you say. Unfortunately the AFR table and VE table are different sizes and indexed differently so no really easy way to automate the updates. I pulled out all the AFR values used and have calculated the VE error for each MAP value in the VE table for each of those AFRs - that was easy to automate with Excel. Just got to pick the values and add them appropriately to the VE cells now.
Cheers, Nigel.
Sent from my SM-N950F using Tapatalk
Cheers, Nigel.
Sent from my SM-N950F using Tapatalk