Notices
ECU Flash

Coil Dwell on stock ECU...again

Thread Tools
 
Search this Thread
 
Old Jan 21, 2010, 11:10 AM
  #31  
Evolved Member
iTrader: (8)
 
03whitegsr's Avatar
 
Join Date: Nov 2006
Location: Utah
Posts: 4,001
Received 15 Likes on 13 Posts
I'm thinking discharge time is implicit. If it's not being told to be on, it's off.

No need for a discharge calc.
Old Jan 21, 2010, 12:06 PM
  #32  
Evolving Member
 
Ceddy's Avatar
 
Join Date: Apr 2008
Location: Reading, PA
Posts: 265
Likes: 0
Received 1 Like on 1 Post
I've been looking at coil dwell on the H8s.

The table names I used are:

Coil Dwell = Charge Time

Min Coil Dwell = Table with all 0x60, #96, The Coil Dwell and Min Coil Dwell Lookups are compared later on and the larger is used.

Low RPM Comp. = This is the 3rd table, TCAS(Time between CAS interrupts)[750000/TCAS = RPM] is compared to a value and if lower this table is looked up, some funky math is done so the final value is proportional to the amount you are below that RPM. (On DSMs, this table is all zeros, turning it off. And the RPM is 1700.)
Old Jan 21, 2010, 12:19 PM
  #33  
Evolved Member
iTrader: (8)
 
03whitegsr's Avatar
 
Join Date: Nov 2006
Location: Utah
Posts: 4,001
Received 15 Likes on 13 Posts
Yeah, looking through the code now, it looks similar.

Only a small difference in how you defined things.
I believe what you have labeled Min Coil Dwell might actually be the maximum coil dwell?

The table at 420A is the above table, either a max or min.

Table 41EA is used below ~2800 RPM (value adjustable with the word at 1746).

Table 41F4 is used above ~2800 RPM and as mentioned, is scaled by the difference between word 1746 and the inverse of RPM.
Old Jan 21, 2010, 05:41 PM
  #34  
Account Disabled
iTrader: (3)
 
0xDEAD's Avatar
 
Join Date: Jun 2009
Location: central pa
Posts: 312
Likes: 0
Received 0 Likes on 0 Posts
Ceddy, if the third table is all zeros what keeps the ecu from cutting spark when below 1700 rpm and this table is looked up?
Old Jan 21, 2010, 07:09 PM
  #35  
Evolving Member
 
Ceddy's Avatar
 
Join Date: Apr 2008
Location: Reading, PA
Posts: 265
Likes: 0
Received 1 Like on 1 Post
Originally Posted by 0xDEAD
Ceddy, if the third table is all zeros what keeps the ecu from cutting spark when below 1700 rpm and this table is looked up?
It is a Additive/Subtractive Compensation

The the final value of that lookup is subtracted. Dwell - 0 = Dwell


03whitegsr you are correct about the second table being Max Coil Dwell.
(That table value is multiplied by a RPM Timer, so you are not limited to #96, but something much larger that varies with RPM.)

Last edited by Ceddy; Jan 21, 2010 at 07:16 PM.
Old Jan 21, 2010, 08:36 PM
  #36  
Evolved Member
iTrader: (8)
 
03whitegsr's Avatar
 
Join Date: Nov 2006
Location: Utah
Posts: 4,001
Received 15 Likes on 13 Posts
Yeah, so a bunch of other crap goes into these, but for the most part, the relevant tables can be explained as:

96530006
Code:
<table name="Base Ignition Dwell Time" category="Ignition Dwell Control" address="41ea" type="2D" level="1" scaling="uint8">
<table name="Battery" address="6808" type="X Axis" elements="9" scaling="BatteryVoltage"/>
</table>
<table name="RPM based Subtraction - Activation Point" category="Ignition Dwell Control" address="1746" type="1D" level="1" scaling="RPMLimit"/>
<table name="RPM Dependent Subtraction Scalar" category="Ignition Dwell Control" address="41fa" type="2D" level="1" scaling="uint8">
<table name="Battery" address="6808" type="X Axis" elements="9" scaling="BatteryVoltage"/>
</table>

<table name="Maximum Ignition Dwell Time" category="Ignition Dwell Control" address="420a" type="2D" level="1" scaling="uint8">
<table name="Battery" address="6808" type="X Axis" elements="9" scaling="BatteryVoltage"/>
</table>
If somebody has an oscope to test this, we could come up with rough scaling equation. Keeping engine speed around 2000 RPM and logging MUT2D along with battery voltage should give roughly the information needed.


IF YOU DON'T UNDERSTAND THE EFFECTS OF CHANGING DWELL TIME...DON'T **** WITH THESE TABLES

Last edited by 03whitegsr; Jan 23, 2010 at 08:15 PM. Reason: Updated Table Names
Old Jan 23, 2010, 05:56 AM
  #37  
Account Disabled
iTrader: (3)
 
0xDEAD's Avatar
 
Join Date: Jun 2009
Location: central pa
Posts: 312
Likes: 0
Received 0 Likes on 0 Posts
I was hoping somebody could look at the image I have attached. I need to copy over the 2g tables to match the evo 8 ecu for when we use it in the 1g cars (similar coils). I don't particuarly like how the first two tables line up but I have arranged them such that they match best by name. Let me know what you think or if the low and high rpm dwell times for the evo 8 ecu need flipped.
Attached Thumbnails Coil Dwell on stock ECU...again-coils.jpg  
Old Jan 23, 2010, 08:34 PM
  #38  
Evolved Member
iTrader: (8)
 
03whitegsr's Avatar
 
Join Date: Nov 2006
Location: Utah
Posts: 4,001
Received 15 Likes on 13 Posts
I updated some table names in the post above as building up a spread sheet to replicate the sub-routine clarified how the tables interact with engine speed.

Unfortunately, I don't know of a good way to even attempt to scale it to make sense since the result of the table that was previously called the high rpm table is RPM dependent.

What I have called "RPM Dependent Subtraction Scalar" is multiplied by the difference between the inverse of the engine speed and the switch point value. This value is then subtracted from the base dwell time. As engine speed increases, the difference becomes larger and the portion of the subtraction gets larger, thus reducing dwell time as engine speed increases. The value in the table is a maximum amount that will be removed, but would happen at roughly 11,000 RPM.

With regards to possibly tuning these tables.
If you want to shift the whole curve up, use the "Base Ignition Dwell Time" table. The effect will be proportional.

If you want to keep the low RPM dwell the same but reduce how much dwell is removed as engine speed increases, you need to reduce the values in the subtraction table.

The graph below shows three curves. The stock curve, multiplying the base dwell by 1.25 and the multiplying the subtraction scalar by 1.25.

Attached Thumbnails Coil Dwell on stock ECU...again-dwell-comparision.png  
Old Jan 23, 2010, 09:04 PM
  #39  
Account Disabled
iTrader: (3)
 
0xDEAD's Avatar
 
Join Date: Jun 2009
Location: central pa
Posts: 312
Likes: 0
Received 0 Likes on 0 Posts
I'm more simply looking as to what 2g values to put into the evo table. If or when it comes time to incrase coil charging times I will just recommend to upgrade to a CDI box.
Old Jan 24, 2010, 10:07 AM
  #40  
Account Disabled
iTrader: (3)
 
0xDEAD's Avatar
 
Join Date: Jun 2009
Location: central pa
Posts: 312
Likes: 0
Received 0 Likes on 0 Posts
I think I understand it now. You have a base table from which dwell time is subtracted from (based on some math and the value in the subtractor table). Then you have a maxim amount of dwell in the last table.

On the 2g DSM you will notice that the subtractor table is zeroed out, rendering the math and what it subtracts out useless. It uses the base dwell and the maxium dwell to provide final dwell. I think the easiest way to tune this system would be to zero out the subtractor table on the evo and go to town.

From the way the code is doing math they are probably just trying to control coil temperatures since the evo coils aren't that big. The DSM coils are much larger and as such may be able to take more dwell.

EDIT:

Jogging my memory and going back to early college electronics courses, it takes 5 time constants to fully charge a coil. From reading it turns out that the ignitions on a car are "tuned" to provide the minimum amount of spark energy to avoid misfires, so the coils almost never achieve a full charge before the spark event. This is done to keep heat in the coil down and the life of the coil high. As RPM's rise the coil dwell needs reduced further to give enough off time for the coil to cool. Too much time charging and it will overheat. I think this all pretty much sums up what the purposes of all three tables would be used for.

Last edited by 0xDEAD; Jan 24, 2010 at 10:25 AM.
Old Jan 24, 2010, 01:25 PM
  #41  
Evolved Member
Thread Starter
iTrader: (30)
 
JohnBradley's Avatar
 
Join Date: Jan 2004
Location: Northwest
Posts: 11,399
Received 70 Likes on 52 Posts
Originally Posted by merlin.oz
the scalings in post #16 are correct.
I think 03whitegsr is on the right track, only more likley the offsets are added/subtracted, not multiplied.

LucasEnglish people, have you played with these parameters re-cdi equiped engines yet and how did it go? One of my evo mates here in Sydney is Mark from M&W ignitions and we are interested.
I have used it on stock coils so far to prevent some misfires and cure some of the idle issues some Evos seem to have. On my personal car I played with it and the Non-CDi from SparkTech but I have yet to play with a full CDi car.

With some of the new input on what the scaling and such should be it will be easier to compare to how we set up an AEM. I need to revisit this anyway, because like Dan we are putting Evo ECUs in 1Gs and 2Gs and I wonder if there are some things we have been tuning around that we can clear up now.

aaron
Old Jan 24, 2010, 03:09 PM
  #42  
Account Disabled
iTrader: (3)
 
0xDEAD's Avatar
 
Join Date: Jun 2009
Location: central pa
Posts: 312
Likes: 0
Received 0 Likes on 0 Posts
One thing that needs clarification. A coil reaches 99.9% of full charge after 5 time constants. One time constant = L/R where L = coil value and R = resistance. The first time constant the coil is 63% charged, the second 86% charged, the third 95% charged, the fourth 98% charged, the fifth 99% charged. As you can see you reach an area of diminishing returns by charging the coil longer. The length of time for each time constant is set up in the coil design itself, it can not be changed.

What this boils down to is that a stronger coil like the DSM coil pack will take on more energy in less time than the stock evo coil packs. At the same exact ecu coil dwell settings the DSM coils will have a stronger spark. Swapping in the correct settings into the evo rom for DSM coils may provide an improvement for cars on the hairy edge, but due to the diminishing returns it won't be as great as you would expect (twice the dwell is not twice the spark energy).

If you spend too much time charging the coil and not enough time letting it rest (giving it too much duty cycle) then it will overheat. I want to say that the DSM coils, due to their larger size, can safely run higher duty cycles than the smaller valve cover mounted evo coils. This may or may not be true. Also at some point you have to make sure that the ignition wiring for the coils is up to the task.
Old Jan 24, 2010, 09:05 PM
  #43  
Evolved Member
iTrader: (8)
 
03whitegsr's Avatar
 
Join Date: Nov 2006
Location: Utah
Posts: 4,001
Received 15 Likes on 13 Posts
Originally Posted by 0xDEAD
I'm more simply looking as to what 2g values to put into the evo table. If or when it comes time to incrase coil charging times I will just recommend to upgrade to a CDI box.
CDI isn't really an end all be all solution either though. It has it's own down falls.

The reason this thread interest me is there are a LOT of really good pencil type coils out there capable of supporting very high power levels without an ignition box.

One issue with a lot of them though is they do not match the dwell time of the EVO ECU. Getting a full understanding of these tables will allow the use of these pencil type coils with optimized dwell settings.

Now if we could just get sequential ignition with a spark limiter instead of fuel cut. There would be NO REASON to go to a standalone or add on ignition box.
Old May 12, 2010, 04:06 AM
  #44  
Evolved Member
 
acamus's Avatar
 
Join Date: Mar 2008
Location: Lattitude 48.38°, Longitude 17.58°, Altitude 146m = Slovakia, for common dude
Posts: 730
Likes: 0
Received 3 Likes on 2 Posts
As far as I can say the third map aka "Maximum Ignition Dwell Time" or Unknown 2
is a batery compensation factor, i.e. time is multiplied by this value.
it is not a subtracton/addition nor limit.
In 88590015 it is used in subroutine 2A16A which is executed from spark event interrupt vector.

It seems to me similar to capacitor charge latency map.

Last edited by acamus; May 12, 2010 at 04:13 AM.
Old May 12, 2010, 07:06 AM
  #45  
Evolved Member
iTrader: (8)
 
03whitegsr's Avatar
 
Join Date: Nov 2006
Location: Utah
Posts: 4,001
Received 15 Likes on 13 Posts
From testing, datalogged response matches very well with what I have posted.

If I recall correctly though, that was from the main loop and is not that actual triggering event, just the table lookup. Something different may happen in the actual spark interrupt driven section.


Quick Reply: Coil Dwell on stock ECU...again



All times are GMT -7. The time now is 07:14 PM.