Who knows if I'll ever finish the tutorial... it's a lot of work. So I've decided to start dumping my notes. These are going to be dense and not organized for easy consumption, but you might find them useful. Let me know if you notice any errors or something isn't clear.
Timing Basics
We start with some basic facts about the 6G72:
- 4-stroke - 720° in a full engine cycle.
- 6 cylinder - 120° between cylinders (720° / 6 = 120°).
- Waste spark ignition - paired cylinders are 360° out of phase (1&4, 2&5, 3&6).
The cam and crank sensors (either the 1st gen CAS or 2nd gen Hall effect sensors) are the most important inputs and the basis of all timing. As Jeff's notes (Stealth 316 - 3S Ignition System) show, these provide two square wave signals to the EMS. The rising and falling edges are used as reference points for timing calculations.
Take a look at this chart. It shows how these signals correspond to the engine cycle and each cylinder's individual strokes:
Syncing Up
The first thing we're interested in is how the EMS synchronizes itself with these signals. Jeff says,
I don't know if this is actually how the stock ECU works (maybe the flashable ECU guys can tell us) but it is NOT how the EMS works.If the TDCS signal is high when the CAS goes from low to high, the ECU knows that cylinders 2 and 5 are in either the compression or exhaust stroke. When the CAS then goes from high to low, the ECU uses this as a reference to turn power transistor "B" off to produce sparks in cylinders 2 and 5. If the TDCS is still high at this time the ECU also knows that cylinder 1 was near TDC and is currently on the combustion stroke, and that it was cylinder 2 that was on the compression stroke.
If the TDCS signal is low when the CAS goes from low to high, the ECU waits until the CAS signal goes from high to low to determine which of the other two cylinder pairs should be fired. When the CAS signal goes from high to low and the TDCS is high, then cylinders 3 and 6 are in either the compression or exhaust stroke. If instead the TDCS is low, then cylinders 1 and 4 are in either the compression or exhaust stroke. In each case, the ECU uses this (the CAS signal going from high top low) as a reference to turn the appropriate power transistor off ("A" for cylinders 1 and 4 or "C" for cylinders 3 and 6) to produce sparks in the cylinder pair.
Being a generalized ECU for multiple platforms, the EMS has multiple sync strategies. The one used on a 3S is called Sync Crank S Count. It is extremely simple - it watches for a particular number (Sync Teeth: 4) of crank "teeth" (both rising and falling edges, Crank Falling Edge: ON, Crank Rising Edge: ON) to pass between cam "teeth" (falling edges only, Cam(T2) Falling Edge: ON, Cam(T2) Rising Edge: OFF).
I want to take the previous diagram and make it a bit more intuitive. First, all the events are listed in degrees BTDC of the following cylinder. Instead, let's think about a full 720° engine cycle, starting at TDC of the #1 cylinder. Here are the cam and crank signals with each edge's degree in the cycle:
Let's drop the cam rising edges (Cam(T2) Rising Edge: OFF). This represents the significant events as seen by the EMS:
Notice that between the cam edges at 550° and 70°, there are 4 crank edges. This is the ONLY time this occurs in the 720° cycle, and is what the EMS uses as its sync signal. This is very important - the EMS considers the passage of 4 crank signals between cam signals to be the sync event, and synchronizes on the following crank edge at 115°. This won't make much sense yet, but 115° is the tooth reset point for the 3S.
How the EMS "Counts"
Remember that the rising crank edge at 115° (5° BTDC #2) is the reset point. The EMS keeps an internal counter called A Tooth that counts the number of crank teeth seen since the reset point. At that point, it is reset to 0.
Just remember that for A Tooth, 1 crank signal edge = 1 tooth.
Now, the EMS must convert A Tooth into an even pattern of six (Spark Teeth: 6, Fuel Teeth: 6) for use as injection / ignition timing references. These are counted in Fuel Tooth and Ign Tooth, based on A Tooth and configured via the table Crank Tooth Control.
It's not necessary to cover every function, but in short they are:
Value Function
0 Do nothing.
1 Process significant edge.
2 Process alternative edge, used for crank firing.
3 Force reset of A_Tooth, if loss of sync.
4 Test for synchronisation
5 Process significant edge and Test for synchronisation.
6 Process alternative edge and Test for synchronisation.
7 Reserved
All you really need to worry about is function 5, which increments Fuel/Ign Tooth, and function 3, which forces a reset (we should never get to A Tooth: 12). In layman's terms: when we hit a crank edge, if the current A Tooth value is 0, 2, 4, 6, 8, or 10, increment Fuel/Ign Tooth.
TODO: Actually explain how the sync happens. Cam Tooth, S Tooth, S Sync Tooth. Sync Early. Stat Cranking, Stat Sync. Crank Alt Options.









TODO: Actually explain how the sync happens. Cam Tooth, S Tooth, S Sync Tooth. Sync Early. Stat Cranking, Stat Sync. Crank Alt Options.

Reply With Quote




Bookmarks