The GM 6.5 diesel DS-4 OBD-II system

The Stanadyne DS4 injection pump is the electronically operated version of the DB2 mechanical pump on early 6.2 Liter GM diesels.  It can be finicky if you mix and match different DS4 units with different EPROMS not for the ECM that controls it.   It can be hard to troubleshoot also.

The lift pump - is the Achilles Heel of the DS-4 Injection Pump - becasue FIRST it needs 5 psi MINIMUM at the fuel inlet no matter at start, idle or wide open throttle - or it will operate erratically. (This is Stanadyne's standard)  No matter what you read or see elsewhere - again -  it needs 5 psi MINIMUM at the fuel inlet no matter at start, idle or wide open throttle - or it will operate erratically.  No flow test in "x" amount of seconds or any other BS you will read - it needs to be 5 PSI MINIMUM at the inlet at ALL TIMES, and you can only measure this by putting an electrical cab mounted gauge in the line - but it is well known that an Airtex EP158 is a well built pump guaranteed for life with a good quality American made spring that will reliably provide this required pressure.  

These lift pumps are solenoid operated slingshot pumps - the spring provides the pressure and the solenoid only pulls back to release the piston plunger so the spring produces the pressure - and that is why so many get weak and fail so soon - the spring is crap - and that is also why you want a good high lubricity fuel - so the pump has as little resistance in the dry nature of ULSD fuel itself to pumping friction.  The solenoid does not produce the pumping pressure.  If the lift pump is noisy - it is really near death and is pum[ing likely at a low pressure and volume - and so replace it right away..  It must be said - without a head pressure on the pump - it will likely pump fuel like crazy - but as soon as you close up the line and expect pressure - it will NOT produce it

SECOND, it needs good lubricity fuel because the lift pump needs it to NOT fail prematurely as ULSD fuel is quite "dry" and be able to pump reliably AND  the DS-4 is immersion lubricated and needs the 5 PSI to make sure adequate "slippery" oil is forced into all moving parts for lubrication and cooling of the IP and be sure the primary chamber is ALWAYS full of oil to compress to the second stage.  This is important because the ECM measures performance using the crank sensor and timing and will adjust the timing and fuel solenoid closure time (also known as C-time)  to try to compensate when there is not enough fuel.  

It is this second factor - the C-time which is what will lead to a higher duty cycle on the fuel solenoid - which is effectively the "throttle" and higher duty cycles on solenoids cause heat and draw more power - and the next thing that will happen is the Fuel solenoid driver - also known as the PMD - will overheat its power transistors and then either blow one or both of then or blow the 12 volt internal voltage regulator - and the engine will stall - and will not start or start any longer.  It will start with a new PMD but the cycle will repeat until you get someway to provide constant relatable fuel to the IP inlet at or over 5 PSI at all times.  The IP does have a return valve which opens at 10 PSI so up to 14 PSI will not damage the IP - it will only assure it operates properly.

Here is the sad reality - the higher fuel pressures assure the engine can inject as much fuel as the injectors will allow and it does result in higher emissions - so it is known among those who are in the know - this is reason that GM put a lower pressure lift on the engine until from 1994 to 1999 when they realized that doing so caused the destruction cycle above and many of the IP's were needed to be repaired due to burned up fuel solenoids and / or seized the IP due to not enough fuel pressure for the forced immersion lubrication the IP needed with ULSD "dry" fuel because of this, and they went BACK to an 8 to 12 psi lift ump.  The 1992 and 1993 one was a 9 to 14 psi spec pump.  

So . . .  if you have a 1994 to 1998 6.5 and you have a stock pump or replacement stock lift pump - it is UNDERSIZE and should be replaced with a E158 or EP158 or cross referenced equal output 9 to 14 psi pump.  The stock one is 6 to 9 psi and gets real weak fast - and often is found putting out 3 psi or less even a few days after brand new.  Of course only three years later the engine went out of service as an option in favor tf the Duramax actually designed and priginally built by Izuzu

This one change will likely end all of your problems and performance will then be something you never knew the engine had.  You will feel the accelerator produce power properly.

A Diesel engine - and the 6.5 in particular is a good engine to bi-fuel because the electronic DS4 Stanadyne IP working with the PCM on a mechanical injector system is elegant and simple for a Diesel the way GM did it. Some swear at it and try to go around the GM system instead of making the engine run the best it can - and then push the envelope. Others swear by it.

A common mistake pots make is toi put in 2250 psi pop injectors on an injection pump which might be weak or setup to pop at 1825 will cause sticking or hammering injectors.  System injection pressure to each cylinder is set by the calibration of the injector springs - oem is ~1825 psi min, ~2050-2275 psi max - and when that pressure is reached the injector "pops" open.

OEM injectors when tested "pop" around 1850 - 1900 psi, and one would WANT lower pop instead of higher pop - like with 2250's which are like marine injectors.

1850-1900 psi is the oem auto pop pressure. 2100 psi or 142 bar for 6.5 turbo injectors ,1850 psi or 126 bar for 6.2 and 6.5 naturally aspirated; and 2250 psi or 150 bar for 6.5 turbo "Marine" injectors. Many guys set the 6.5 TD injection pumps to the high end of the pop pressure with the springs +- 5% variation to allow for some pressure drop over time.

There can be simply  dirt or other particulate matter  in the injector or a pop pressure imbalance of  an injector - or bad spray pattern - causing what usually shows up as a sticking loud "hammering" injector, but  2250's might actually causing the problem and not so much the pump

Here is a "for instance" -  algae was suspected in the tank and system below the filter which on the van as a center- mount turbo engine is under the drivers seat area just in front of the lift pump.  Lve Algae is usually "brown" and dead algae is usually "black"..

It was killed with Bio-Kill and then went to dissolve and push the dead residue to the filter with Diesel Clear. It worked and performance dropped as the filter clogged more.  The old filter was removed there were three spares on hand) and changed.   change it. Sure enough it was Black inside confirming the suspicions of algae. Most of the black residue was wiped clean and the new filter installed. (You fill the filter with fresh fuel before putting it on to reduce air in the sytem and have fuel ready to hit the Injection Pump)  Performance returned, and then an injector started sticking. Obviously some of the algae residue had made its way up the line in the filter change and to an injector. 

Gasoline in diesel fuel is a "natural" bio-cide and Algae "dissolver", but ii takes time when mixed with two stroke oil in small amounts as it should be to keep the pump properly lubricated as a Diesel fuel additive. 

It took two months of patience - using the fuel additive mix formula - and a bit of erratic engine behavior but finally that small bit of algae worked its way THROUGH the injector - and the engine went back to idling silky smooth and power returned fully - because a sticking or partially clogged injector means also a cylinder misfiring - or dead altogether - and of course "no load rattle" in addition to the "hammering" that comes with it.

That hammering injector shut up finally on its own with no further mechanical intervention.  This one of the quirks of the GM 6.5 Diesel system.  Another thing many do not realize is that on the trucks - the fuel filter is on top of the engine in the read - and the fuel is effectively being heated before going to the Injection Pump, whereas on the Van - the filter is under the drivers seat area in the underside air flow - effectively cooling the fuel before entering the Injection Pump.  There is big deal about PMD relocation for failure due to high heat.  Well . . .  heated fuel plus low lubricity fuel equals higher heat and greater pump wear faster which - in a pump where only the fuel cools and lubricates it - means PMD failures because the IP gets that much hotter.  Vans do not usually have PMD falures - because the air flow past the side manifolds is better and the fuel enters the IP cooler int he first place.  

The moral of the story is that lots of things can cause an injector to stick on the 6.5 - or not "pop"- and while your IP may have been "weak" - usually the VOLUME of fuel they can push after pop pressure is what suffers as they wear.

But, also if an injector is partially clogged AND STICKING - AND - you have crappy fuel - it won't light off the fuel cleanly - it will just cause smoke from partial combustion, and you will not know where - which cylinder - easily - it is coming from.

 if you have a GM 16015.20-4 - manual or similar; you can read a bit more on the wiring and how the system operates. 

If you leave in - or put in a - MAF sensor to report air flow through the engine to the PCM - and do nothing else - then an OBD-II reader like an UltraGauge or DashCommand will use that MAF output from the PCM against the IP fuel duty injection cycle to give you instantaneous real-time mileage readouts.

True a well breathing engine gets the best power development and thus "mileage" for whatever fuel or fuels it is burning - but the beauty of a Diesel as a throttle-less engine - is it can "breath" fuel EASILY by its design.  Most do not understand the diesel engine.

A bi-fueled 6.5 GM  engine reports horsepower of about 2 to 8 HP at 65 MPH when bi-fueling - because it "THINKS" it is basically idling on diesel fuel - and that is how it can  get upwards to 46 MPG of actual mileage of "purchased" fuel - the injection of diesel fuel only acts as a "liquid park plug" only - and for that I WANT low consistent and even pop pressure.

When there is any sticking injector - one could hear serious "no load rattle" in addition to the injector ignition delay hammering noises.  


An Intrercooler however is a MUST, and this is partly because the PCM will de-fuel the engine if Intake Air is over 125 F, and boost will not kick in - as the waste gate will be directed to stay more open than closed by the PCM.  When the engine first starts - it will go to around 750 RPM - then as it warms and the fuel tends to want to idle the engine faster - the PCM will de-fuel and slowly tank the rpm down to around 640 - until the Intake air is over 80 F and the coolant temperature is over 172 F, then it will reduce it to 600 rpm.  You cannot manually adjust idle.  There is however manual high idle trigger speeds available of 750, 100 and 1350 rpm for power take-off or high idle for higher alternator output for accessorizes,  that can be wired to be triggered by the pCM using a high idle controller - that  at least with thye Penn-Tex system cuts off by tapping the brake pedal like cruise control.

The 6.5 G diesel OBD-II engine is  a high compression and boosted (turbocharged) perfect platform for other fuels that can develop wild HP and do it cleanly also the industry has been in need of.

Though similar, the OBD-I platform for the 6.5  is dead (pre 1996) and the OBD-II platform for Diesels lives only because it is "still" the OEM and engine standard; however the 6.5 GM is dead in that the Duramax and others are now common rail electronic injection (electronic injectors) direct injection - but the proof of concept as to a Diesel bi-fueling in general remains the same for what bi-fueling can be doing.

We even have a dual PCM type sequential gaseous injection system with metered vapor AND gaseous fuel injection like the GM gasoline is - for the 6.5

As an EPA registered company there is only one way we can market it - and most people are nowhere in the mindset to understand why it is of value or why it must be marketed according to law only; but this and bi-fueling - the future of diesel fueling and engines.



All the pumps are NOT what you think of as interchangeable AND OBD-I pumps will not always interchange with OBD-II pumps like a 5521 to a 5288.

Here is this example as a "for instance" - is the 5068 pump. it was a 1 year special breed. It was a higher output pump than the 5521 pumps. It had a special EPROM to run it. If you mixed up the EPROM or the pump that was not compatible with the other, all sorts of fun would erupt with idle, and uncontrollable fuel rates. They allegedly only applied to the 94 model year on HD trucks, but they are often confused with other rebuilt pumps and you will not for SURE what EPROM is in any pump. Otherwise the EPROM is the same usually for the 5067/5288/5521 compatible IPs.


For instance a 1994 K2500 L65 vin F truck w/a 4L80E had a DS-5521 pump put in. It suffered hot start issues and the pump was replaced with a DS-5288 and it worked fine then. An L56 engine and L65 engine (also called HD) has a different ECM binary and needs to have different sensors to operate properly and as said above the 5068 EPROM might be in the pump.

When you go mixing and matching the DS4 driven GM 6.5 to other ECM's ANYTHING as an issue could crawl out of the spaghetti to haunt you - not to mention optical sensor and PMD issues and the resistor matters that go with it.


DS4 Injection Pump


The DS4-831-XXXX Diesel injection pump is a rotary Distributor-type Solenoid-activated 4 pumping-plunger 8 cylinder 0.31" plunger-diameter model - the four remaining digits denote Stanadyne final calibration specs - it is a constant-beginning variable-ending pump design with three modes controlled by the Fuel Solenoid valve: fill - pump - spill 


Diesel fuel is the sole lubricant and coolant in the DS4


The IP body and fuel distributor is attached to and rotatable on the engine timing cover and can be positioned within a limited arc wrt 360* and crankshaft Top Dead Center to establish Base injection timing for the fuel distributor - PCM can rotate the internal camring\OS within the limits of the IP body to vary injection timing in a positive direction (advanced) from that Base - the internal fuel distributor rotor, pumping plunger assembly and encoder disk on the IP shaft rotate thru that 360* when the crankshaft spins - the four pumping plunger rollers operate in parallel on the 8 internal ramps on the camring, pumping the 1850psi hi-pressure required to "pop" the injectors during each injection event - the distributor rotor directs the hi-pressure fuel to each cylinder port around the fuel distributor, timed to crank rotation and the piston in each selected cylinder being at some point approaching Top Dead Center - PCM controls the FUEL SOLENOID via the Fuel Solenoid Driver to close the valve that enables the pumping event and opens it to end the injection event - it is a constant-beginning variable-ending pumping\injection event


The oem lift pump is a solid-state electronically-controlled solenoid-actuated shuttle-type fuel pump with two one-way valves - it is pump-thru when failed type - the electronic control regulates pressure according to flow, shutting down at a specified pressure when flow slows, as at idle, resuming pumping as flow increases, as at take-off and driving, but always maintaining the specified pressure - it is called a lift pump because it lifts the fuel from the source tank to the IP, also acting as a transfer pump because it transfers fuel from the source tank to the IP to keep a solid flow and pressure available to the IP


Filtered inlet fuel from the lift pump enters the IP at the top front thru the Engine Shut Off solenoid valve, thru a filter screen into the housing pressure regulator then into the internal transfer pump, which is powerful enough to pull fuel from the tank if the oem lift pump should fail but that is a strain on it - housing pressure is regulated to  approximately 25psi at idle by bypassing the lift pump output back into the input, (a tank return line) increasing to upwards of 125psi as engine rpm increases in order to deliver the fuel within the limits set by the ever-narrowing injection window


Not all lift pumps are flow-thru when they fail - those will leave you dead on the side of the road, stranded effectively unable to let fuel be drawn through it.


Now, picture a camshaft, with the lobe ramps rising and falling around the base diameter - comparatively, the CAMRING is a ~2.750" diameter machined collar ~0.75" wide x ~0.425" thick, hardened\ground smooth on the outside diameter surface, with 8 hardened\ground ramps rising and falling around the inside diameter surface, much like an inverted camshaft - the valleys between the ramps, closest to the camring outside diameter, are the base diameter, from where pumping begins - the peaks of the ramps are closest to the physical center of the camring - as the IP shaft rotates, centrifugal force combined with fuel at internal IP housing pressure pushes the pumping plungers outward in their bores against the rollers, forcing the rollers against the camring ramps - the rollers ride inward and outward on the ramps as the IP shaft spins, driving the pumping plungers which intake fresh charge of fuel on the outward stroke, pumping the fuel charge on the inward stroke - the four plungers operate in parallel, pumping into a central chamber, then into the distributor rotor and timed into each of the 8 distributor ports to the cylinders as the crankshaft rotates


A sensor measures this to feed the pulses to the ECM at 1 and 8 pulse intervals


As the pumping plunger roller rides down the camring ramp from outermost plunger position to innermost plunger position, the ECM / PCM closes the Fuel Solenoid (Fsol)  valve, allowing fuel pressure to build in the injector pipe connected to the injector until calibrated injector spring pressure is reached, which at that time passes fuel thru the injector nozzle into the cylinder - and the PCM opens the Fuel Solenoid upon reaching the required metered volume (idle to full wide open throttle - fwot), releasing excess fuel and pressure back into the IP reservoir\accumulator, ending the injection event - the rollers reach the ramp peaks and over and down the opposite side of the ramps, heading for the valleys - residual fuel pressure in the injector pipe is prevented from dropping to 0 psi by an external one-way delivery valve at each port on the fuel distributor, thereby reducing pumping time during subsequent injection events for each cylinder - the DS4 (and it's ancestor, the DB2) builds injection pressure for each cylinder individually


The odd shapes of the ~0.250"o.d.\0.093"i.d. injector pipes are resulted from making each pipe the exact same length as the others, such that injection timing is identical for all cylinders


System injection pressure to each cylinder is set by the calibration of the injector springs - oem is ~1825 psi min, ~2050-2275 psi max - when that pressure is reached and the injector "pops", the pumping plunger rollers on the ramps stop building pressure and starts producing volume at that pressure - therefore, injection pressure at any rpm idle to fwot is fixed, only the injected volume is variable - the FSol, under PCM management, meters injected volume.


The PCM manages idle on a per-cylinder basis, measuring angular velocity of the OS timing tracks in the IP to determine if crank is speeding up or slowing down, metering less or more fuel to compensate - this is how idle is maintained under varying loads, such as ac on, turning on the lights, shifting into any gear range from P\N, etc - there is no "fast-idle" like in a gasoline engine (patooie!), which burns unnecessary fuel - therefore, Cylinder Imbalance codes occur only at idle - if Cyl Imbal codes keep occurring after being cleared, the injectors may be sticking, and will require removal for flow-bench testing If the injectors are upgraded, the PCM has no way to compensate for higher-flow injectors, particularly if injector flow rates are not evenly balanced or matched.  Usually you will hear this as a "knock" that is actually ignition delay or no load rattle.


DS4 Timing 


BASE timing is the most retarded position of the camring /  Optic Sensor wrht crank TDC, limited to and set by the physical position of the IP on the timing cover.


ACTUAL timing is the measured position of the camring / OS while the engine is running, and is variable to match rpm and loading requirements


DESIRED timing is the amount of advance with Base that the PCM has determined as required to match rpm and loading requirements


DESIRED and ACTUAL timing should always match within a degree or so


Top Dead Center Offset is a calculated value derived from the total advance available and limited by the physical position of the IP on the timing cover wrt crankshaft TDC - this factor allows a range of rpm and timing not easily manageable in the old mechanical injection systems, where cranking-in advance and turning-up the fuel affected operation across the rpm band, idle to fwot - total available range for TDCO is +2.50* to -2.50*, probably for IP testing\calibration purposes, not useable in-vehicle - PCM will DTC for TDCO over-range at some value greater than -2.02* up to -2.20*


The PCM measures injection timing via the Optic Sensor which is attached to the camring, controlling any required injection advance with the Timing Stepper Motor, which moves the advance piston, rotating the camring / OS - the OS reads timing pulses thru the OS encoder disk attached to the IP driveshaft along with the pumping plunger assembly and fuel distributor rotor - this timing disk, often mistakenly referred to as the tone-wheel, has two separate tracks of timing windows, or slots, circling the disk at separate diameters -   (if the Optic Sensor goes bad - you have got real problems.)


The outer-most diameter is the Hi-res track, with 512 slots in 360*, 64\cylinder, a binary number corresponding to available memory locations, used for precision timing determination wrt crank TDC
The inner-most diameter is the lo-res cylinder-timing track with 8 slots, one for each cylinder, which PCM compares to crank TDC to determine start of injection cycle for each cylinder - #1 slot is more than twice wider than the other 7


- 512 / 8 cyl = 64 hi-res slots per cylinder
512 hi-res slots / 360 deg = 1.422 slots\deg or 0.703deg\slot 

- #1 lo-res TDC slot is 10 hi-res slots wide to allow for TDCO
10/1.422 = 7.03deg /2 for crank angle 

- #2 thru #8 lo-res TDC slots are 4 hi-res slots wide
4/1.422 = 2.817deg /2 for crank angle


The PCM has precise control of the injection event by the 22* rotation of the camring / OS around the encoder disk, which is fixed to the IP shaft which is geared to the camshaft which is timing-chained to the crankshaft - 22* internal advance results in 11* at the crank, as the camshaft-driven IP rotates at 1/2 crankshaft speed


The mysteries of Timing and TDCO - are procedures that can be ONLY performed with a current TECH2:


NOTE: Engine Coolant Temperature is critical, here, as Timing and TDCO procedures do not function if ECT is below ~172*F, although  some pcware scantools will command the functions below that limit - TECH2 will not command the functions unless ECT is above ~172*F, which is where PCM is no longer calling for cold-start advance / fast-idle - in cooler climes, Intake Air Temperature also affects cold-start advance and fast-idle, so even if ECT is at 195*F operating temps, if IAT is below ~80*F due to the cold air, the timing procedures will be skewed - if temps are normal and idle rpm is ~695-750 rpm, depending on manual or automatic trans, reliable DS4 timing procedures can be initiated, with repeatable results


+3.5* oem or +8.5* performance Base timing is resulted from the locked-down-by-three-12point-nuts physical position of the IP on the timing cover - remeber the PCM cannot change or alter BASE timing, but can DESIRE timing that is advanced wrt Base timing


When TIME SET is commanded the PCM first sets idle rpm to 1000 rpm to prevent the engine dying during timing procedures, disables DESIRED timing advance, using 0 advance to move the camring / OS to it's most retarded position, then wratchets the TSM to rotate the camring / OS between the physical limits set by the current location of the IP, comparing that range of movement to crank TDC - thus, PCM is determining actual IP position wrt TDC and measuring the available range of advance in degrees at that position - camring / OS rotation is limited to 22* total by the design of the advance piston, which gives 11* total advance at crankshaft - minimum timing position with 0* advance is actual BASE timing, or +3.5*BTDC crank, with total advance at that position of 14.5*BTDC - rotating the IP ~2mm in the advance direction adds +5* for +8.5* actual BASE timing, with max advance of +19.5*BTDC - PCM never commands, and the IP cannot respond to, negative advance, or retard, below actual BASE timing - 'nuther words, it cannot go below actual specified BASE timing value .......unless the IP was mistakenly retarded to some degree less than oem-specified minimum of +3.5*


Once the PCM determines IP position in degrees wrt crank *BTDC during TIMESET, it ratchets the TSM to move the camring / OS into BASE timing position, again, determined by the physical position of the IP - that position is actual BASE timing with 0* desired advance - OBD-I can read this number at any position, OBD-II fudges the +3.5* number at any position in order to fake-out any enquiring minds, in accordance with the FSM blurb on timing alteration resulting in nil performance gains - when TIMESET is exited, PCM resumes normal injection timing operation - now, it is setup do TDCO LEARN


Next, when TDCO LEARN is commanded (and here's where OBD-II KOKO  [Key-On - Key Off)] procedure comes from), the PCM once again dials in 1000 rpm, sets DESIRED (advance) to 0 to fully retard the camring / OS for starting position, ratchets the TSM thru min to max timing,  verifying what was measured in TIMESET, then moves the camring / OS back to actual BASE timing position with 0 advance - the PCM then computes a TDCO value based on that measured range - now, although the  PCM has disabled displayed DESIRED timing function and TSM response in TDCO LEARN, if engine rpm is increased PCM still calls for, or DESIRES, timing advance as required to match the increased rpm - this 'hidden' advance is where the range of TDCO values for each actual base timing setting comes from: PCM continually recalculates TDCO based on the varying advance required for the varying rpm as if that were the actual BASE timing - so, you get a range of values for each actual BASE timing position: at +8.5*BTDC you can get -1.5* to -1.94* to -2.20* TDCO while in TDCO LEARN merely by increasing engine rpm until you see the desired value, then exit TDCO LEARN to lock that value into PCM memory 


The KOKO procedure is:


Key On, depress accelerator pedal for not less than 45 seconds, then release - this gives PCM time do do some housekeeping for the coming event

Key Off for not less than 30 seconds - PCM powers down, allowing memory to clear, including,and this is important, any drive-ability parameters

Key On, START the engine - TDCO will re-learn as soon as Engine Coolant Temp and Intake Air Temp come up to operating temps.   (172F and 80 F respectivel) 

- you may feel the engine hesitate and hear some increased rattle as PCM hunts for Inj Position if timing is way off - may not be any symptom if timing is close

Connect Scantool and note TDCO value in degrees - noting that 1mm movement is about 2.5deg timing change, loosen the nut:

- if less than -0.5deg (more positive) rotate Inj Pump away from turbo-side to increase BTDC timing
- if greater than -1.94deg (more negative) rotate IP towards turbo-side to decrease BTDC timing

Lock the IP down with one nut, do the KoKo thing again - repeat as necessary to get TDCO between -1.54deg and -1.94deg 
- you will want TDCO to read above -1.54deg - once it is in that vicinity, then you can adjust TDCO with the scantool by commanding TDCO LEARN, then slowly increase idle till you see the desired value, immediately exiting TDCO LEARN - then recheck TDCO in the monitor-only screen

NOTE: While total available range for TDCO is +2.50* to -2.50*, the PCM will DTC (throw a Diagnostic Trouble Code)  between -2.02* to -2.20*, where you must stop, attempt to clear the DTC, then start over from the beginning, as that particular TDCO DTC will seldom clear at this stage - it's a real catch-22, so Beware.


To clear OBD-I DTC's, put a wire jumper into pins A/B in the DLC connector under the dash, turn on the key, push brake and APP to the floor and hold for 1 minute or so. Turn off key, release pedals, then turn on key again. Should have cleared all codes, you should get a flashing 12.


OBD-II requires a scantool or other OBD-II interface to clear DTC's - like an  UltraGauge or the DashCommand program

The OBD-II KOKO procedure takes advantage of the positional advance re-measuring (TIMESET) that TDCO LEARN goes thru prior to calculating the correct TDCO value - thus, you don't need TIMESET an OBD-II system.


You also do not need TIMESET in OBD-I unless you move the IP - merely resetting TDCO within each possible range of values for each BASE timing setting can be accomplished with TDCO LEARN, as BASE timing has not been altered 
Once again, always do a scan to determine the current parameters before attempting to reset those parameters 



NOTE: engine stumble\hesitation will result during the period when PCM ratchets OS timing 22* between minimum and maximum limits to determine IP position - this is normal.


If the Engine Shut Off solenoid is 90* vertical to the horizontal plane across the valve-covers, this should be within a RCH of +3.5* Base timing


A - Stanadyne flow bench procedures for testing the DS4 are not comparably compatible with functional operation required by in-vehicle systems


B - If the EFI values are already correct when doing TIMESET and TDCO LEARN, no change in operation will be observed - if the IP is moved, several things change noticeably, beginning with the 1000 rpm idle which, hopefully, prevents engine dying during incorrectly performed procedures


C - Aftermarket tunes, including chips or eproms, seldom respond like the oem version, particularly in timing functions - don't be surprised if your results are skewed or even non-functional with an after market  chip or tune, but alledgedly - the Heath tunes have normal oem functionality with scantools 


Standard ser up procedure of replacement 65 DS4 injection Pump


When installing a replacement DS4**, or resetting timing, start with the Engine Shut Off solenoid in 90* vertical to horizontal plane across valve-covers - this should within a RCH of +3.5* Base timing

Start the engine, do an initial scan on engine parameters for 180*F ECT, idle speed 695~750rpm, ACTUAL IP timing +8.5*BTDC, DESIRED IP timing +8.5*BTDC, TDCO -0.5*

ECT must be at operating temperature ~180*F or timing procedures are invalid - I prefer 195*F

Scribe a line across the IP and timing cover flange

Scribe a second line across the timing cover flange, 2mm to the right of the first line - 1mm = 2.5*

Loosen the 3 12pt nuts on the IP flange, rotate the IP, aligning the IP flange line to the 2mm line for a +5* advance, secure the nuts

Start the engine, scan again verifying at least +180*F ECT, ACT\DES +8.5*, idle 695-750rpm

Command TIMESET, rpm will increase, engine will hesitate and stumble as PCM determines new IP position, wait ~5 seconds, exit TIMESET

Command TDCO LEARN, engine rpm will again increase, and hesitate\stumble, will self-exit when new value is learned

Scan again for +8.5*BTDC ACT\DES IP timing, TDCO at -1.5*

NOTE: engine stumble\hesitation is resulted during the period when PCM wratchets OS timing 22* between minimum and maximum limits to determine IP position


If initial scanned TDCO value is elevated to some level greater than -0.5*, this may indicate BASE timing is not +3.5*BTDC

In this case Command TIMESET, exit; command TDCO LEARN, rescan TDCO - if same value, you will have to punt: either 

- move IP to exactly vertical and do the standard setup 

- or move IP 1mm to right, do TIMESET and TDCO LEARN, scan for new value
repeat at smaller increments until desired TDCO value is attained - PCM will DTC for TDCO over-range at some value greater than -2.02* for OBD1

*Again, aftermarket tunes seldom comply, but TDCO values at idle always represent Base timing, if you interpolate after the initial scan: 

-0.5* = +3.5*

-1.5* = +8.5*


** Alternately, having scribed the line across the IP\timing cover, remove the old IP, accurately measure the position of the scribed line to either end of the upper slot - transfer that dimension to the replacement IP, scribe a line, match that line to the timing cover line when installing the IP, and you should be within a RCH of the original timing, no timing procedures necessary - the IP machining tolerances are that close


OBD-II timing procedures for oem factory tune* - results may vary with aftermarket tunes
- Bill Heath's tunes respond normally to scantools


All DTC's must be cleared prior to performing Timing and TDCO procedures - OBD2 DTC's require a scantool

Comparing procedures using a new TECH2 and Autoenginuity to find no difference, except that an Autoenginuity is  more user-friendly


Standard procedure


When installing a replacement DS4**, or resetting timing, start with the Engine Shut Off solenoid in 90* vertical to horizontal plane across valve-covers - this should be within a RCH of +3.5* Base timing

Start the engine, do an initial scan on engine parameters for 180*F ECT, idle speed 695~750rpm, ACTUAL IP timing +8.5*BTDC, DESIRED IP timing +8.5*BTDC, TDCO -0.5*

ECT must be at operating temperature ~180*F or timing procedures are invalid - I prefer 195*F

Do KOKO* to verify timing, rescan, shut the engine off

Scribe a line across the IP and timing cover flange

Scribe a second line across the timing cover flange, 2mm to the right of the first line - 1mm = 2.5*

Loosen the 3 12pt nuts on the IP flange, rotate the IP, aligning the IP flange line to the 2mm line for a +5* advance, secure the nuts


*Do the KOKO procedure
Mash pedal to floor and hold it there
Key ON 45 seconds
Release pedal
Wait 30 seconds
Turn key and start engine after glow cycle
As engine fires up, engine rpm will increase, engine will hesitate and stumble as PCM determines newly-adjusted IP position, then will smooth out to normal idle after new TDCO value is calculated

NOTE: engine stumble\hesitation is resulted during the period when PCM wratchets OS timing 22* between minimum and maximum limits to determine IP position

Scan again verifying at least +180*F ECT, ACT\DES +8.5*, idle 695-750rpm, new TDCO value should be -1.5* to match newly-adjusted +8.5*Base timing


You still need a scantool to verify initial\current\final parameters in OBD2, but timing can be altered simply by using the KOKO procedure, rather than commanding the scantool procedures - TIMESET has been eliminated as an OBD2 procedure, tho you can still use the command - TECH2 has retained the TIMESET command, as the factory scantool is used for both OBD1 and OBD2


If initial scanned TDCO value is elevated to some level greater than -0.5*, this may indicate BASE timing is not +3.5*BTDC

In this case command TDCO LEARN or KOKO, then rescan TDCO - if same elevated value, or any value other than -0.5*, you will have to punt: either 

- move IP to exacty vertical and do the standard setup 

- or move IP 1mm to right, do TDCO LEARN or KOKO, scan for new value
repeat at smaller increments until desired TDCO value is attained - PCM will DTC for TDCO over-range at some value over -2.20* in OBD2

*Again, aftermarket tunes seldom comply, but TDCO values at idle always represent Base timing, if you interpolate after the initial scan: 

-0.5* = +3.5*

-1.5* = +8.5*


** Alternately, having scribed the line across the IP\timing cover, remove the old IP, accurately measure the position of the scribed line to either end of the upper slot - transfer that dimension to the replacement IP, scribe a line, match that line to the timing cover line when installing the IP, and you should be within a RCH of the original timing, no timing procedures necessary - the IP machining tolerances are that close





Electronic Fuel Injection (EFI) - fuel injection controlled by a computer, with sensors, modules, and solenoids

Common Rail Diesel (CRD) - EFI at super-high pressure, ~20,000psi, injectors are usually solenoids

Analog = infinitely variable signal, voltage can be negative or positive, frequency from DC to LIGHT

Digital = signal is either on or off - signal can be negative going, as from +5v to 0v, or can be positive going, as from 0v to +5v - usually ground-based, 0v, upper level is supply-rail dependent, frequency from DC to Light

Alternating Current (AC) - analog signal crossing a baseline, 0v in AC power circuits, with positive-going and negative-going component - in analog signal circuits, baseline can be shifted to some DC level by the circuitry that generates the signal (output), or reads the signal (input) - usually applied to 60hz ac power generation, positive-going component is equal to negative-going component across the 0v baseline - due to the physical properties of magnets and iron cores, and the electrical properties of copper conductors and coils, ac power voltage generation results in a sine wave, a complex waveform ofsine and cosine calculations which cannot be accurately measured with analog meters or digital meters, so the displayed voltage is not even the RootMean Squared voltage, which would allow calculation of the Peak (and Peak-to-Peak) voltage - high-end DVM's usually have a switchable RMS converter for accurate ac power-line voltage display - it would be switched off when measuring other analog waveforms

Direct Current - unchanging voltage level, like a battery

Thus, we have: 

DC - steady voltage state, either polarity, not rising\falling, no frequency component

Analog - infinitely variable, either polarity, can be "alternating", can have frequency component

Digital - steady state, either on or off (ones and zeros), switchable between ones and zeros, can have frequency component

AC - analog, varying with positive and negative voltage content, sinusoidal waveform in power generation, has frequency component - often applied to varying analog signal waveforms without sinusoidal content

In elctronics, Discrete is transistors'n'diodes'n'capacitors'n'resistors'n'tr ansformers'n'fuses'n'stuff - can have discrete digital and discrete analog circuitry

Integrated Circuit (IC) is some of that discrete stuff scrunched together on a teeny silicon circuit board, usually in an *injection-molded epoxy package - can have IC digital and IC analog circuitry

Transistor-Transistor-Logic (TTL) is mostly direct-coupled bipolar transistors with a few-odd diodes thrown in as token representation

Bipolar transistors are NPN or PNP doped junctions, usually silicon but sometimes germanium flavored, are lo-impedance current devices, transfer function results in odd harmonics, single polarity drivers either pull up to the rail, or pull down to 0

Field Effect Transistors (FET) are N or P doped, are hi-impedance voltage devices, operate similar to electron tubes, transfer function results in even harmonics

Complementary Metal Oxide Silicon (CMOS) devices are hi-impedance FET circuits, direct-coupled circuitry is similar to Complementary Output Pair (COP) hi-fi power amps, where N device pulls signal up, P device pulls signal down (and verse vica), very sensitive to static discharge

Metal Oxide Silicon FET's (MOS-FET) are discrete and IC devices, usually for power circuitry, very sensitive to static discharge 

Analog is infinitely variable

Analog control is infinitely variable

Digital is on or off

Digital control is on or off

Digital logic is multiple on\off circuits parallel-arranged in binary bits'n'bytes

One form of computer-synthesis is like analog logic


A magnetic pickup sensor with a coil around a magnet will give an analog signal something like a sine-wave when the tooth sweeps by, as in the speed sensor for the speedometer, and the two speed sensors in the 4L80E - those are 2-wire twisted-pair because of the low-voltage ac signal, and go thru an amplifer\squaring circuit in the PCM and VSS module for conversion from analog ac to digital wave suitable for PCM logic circuitry

A Hall-effect device (magnetic-type) sensor sets a digital off till the tooth sweeps by the pickup, then an abrupt rise to on then abruptly back off - it is a square pulse, as from the Crankshaft Position Sensor (and Cam Sensor in gassers (patooie!)) - this type sensor has 3-wires, one for +5v power, one for ground, and one for digital signal to PCM logic circuitry (PCM is +12v powered, but has internal +5v regulators for logic and sensor reference)

In an Optic Sensor a similar square on-off pulse occurs when the encoder-disk window sweeps between the Infra-Red diode transmitter and the IR-sensitive photo-transistor receiver - this type sensor will usually have 3-4-wires, +5v power for the diode, ground for the diode and transistor, digital signal output

A varying frequency creates a varying voltage which drives a meter to indicate varying crankshaft rpm - the analog tachometer in these trucks operates off one phase of the 3-phase winding in the alternator, which is a variable-frequency 3ph ac generator with solid-state rectifier diodes and 400hz regulator

The speedometer works similar, but with varying freqency from a sensor on the transmission or transfer case output shaft

PCM signals

PCM has a 12.5mhz clock with 512k eprom, receives signals from several sensors, analog signals into op-amp circuitry, digital signals into digital circuitry, and sends digital control signals to several solenoids and modules - 6.5 PCM does not do any analog control

A digitally-synthesized signal is how a digital computer with ones'n'zeros can make a varying analog signal - similar to the on-screen display of curves on the old b-w, cga, vga monitors, which was a series of digital steps that formed coarse curves and circles - the more and finer the digital steps the smoother the curve

The 6.5 EFI PCM is too primitive for computer synthesis - the nearest thing to c\s in these trucks is the stereo\cd\dvd\mp3\serious radio - also the radar detector - then a cell phone - blackberry - pacemaker - XBox - Wii - Buck Rogers space toy.................

Here are the modules, sensors, solenoids, and signal-types used by the PCM - passive sensors are part of a 'nuther separate circuit, do not generate output without external influence - active sensors are solid-state devices requiring power and ground to generate a signal on a third wire:

IAT, ECT sensors (to PCM) are passive temperature-variable resistors in a +5v ref voltage-divider circuit in the PCM - an analog-to-digital converter in PCM changes the variable analog voltage to 16-bit binary digital 1-2-4-8 1-2-4-8 1-2-4-8 1-2-4-8

Boost and EGR sensors (to PCM) are active analog-voltage pressure transducers using +5v ref from PCM - the analog voltage varies as pressure changes - an analog-to-digital converter in PCM changes the variable analog voltage to 16-bit binary digital

Crank Position Sensor, Optic Sensor are active - pulses increase as rpm increases - to PCM:
5v_ ''''''''''''''''''''__ ''''''''''''''''''''''''''' __ '''''''''''''''''''''
0v_________| |___________| |________

NOTE: PCM can use clock ticks to turn on electronic switches for any length of time, as below:
5v_ ''''''''''''''''''' __ '''''''''''''''''''''''''''' ______ '''''''''''''''''''''

Wastegate Solenoid drive, pulse width modulated - WG duty cycle runs ~66%, decreasing to reduce Boost, increasing to raise Boost - also EGR solenoids -from PCM:
~10%duty cycle
12v_____''''''_ ''''''''''''''''''''''''''''''_''''''''''''''''''''''

~50% duty cycle
12v_____''''''_____ ''''''''''''''''''''_____ '''''''''''

~100% duty cycle

Fuel Inject signal from PCM to FSD module - pulse width increases to increase fuel rate - (Note:any of these three signal examples may be inverted - I've slept some since '03\'04) :
5v_ ''''''''''''''''''''__ ''''''''''''''''''''''''''' __ '''''''''''''''''''''
0v_________| |___________| |________

Fuel Solenoid Driver module to FS coil - pulse width increases to increase fuel rate - from PCM:
12v___''''''''''''''''''''''''''__ ''''''''''''''''''''''''''' __ '''''''''''''''''''''
0v______ _______| |___________| |________

12v___ '''''''''''''''''''''''''____________ '''''''' __________
0v_____ ________|..................|___|

Timing Stepper Motor drive, 2 phase - each pulse steps motor ~5* - TSM reverses direction when lower signal leads upper signal - from PCM:
5v_______''''''''''''____'''''''''''''____'''''''' '''''____

VSS (to PCM) after analog input from magnetic pickup has been squared - output frequency varies with vehicle speed - mag pickup is passive, becoming 'active' as "tone-wheel" tooth approaches sensor: a real conundrum :
5v_____ ''''_'''''''_''''''_''''''_''''''_'''''''_''''''_' ''''''_''''''_
0v_____ _| |_| |_| |_| |_| |_| |_| |_| |_| |

Speedo, Tach drive from VSS, PCM - active - frequency varies with vehicle speed and engine rpm - to speedo, tach:
5v_____ ''''_'''''''_''''''_''''''_''''''_'''''''_''''''_' ''''''_''''''_
0v_____ _| |_| |_| |_| |_| |_| |_| |_| |_| |

4L80E = PCM uses pwm at ~30hz to apply TCC clutch, PCM uses prm to vary line pressure



On-going collation -




that is the fuel metering valve, of which one inherent function is spill 

GMTDScan is a GREAT pcware scantool, for OBD-I 1994 AND 1995 but that and a DVM does not tell the whole story - Closure Time pulse from the FSD module tells the PCM to start timing the metering pulse, which varies in width according to demand fuel rate - overall pw timing includes CT 

LIMP MODE fixes idle rpm, locks TSM timing, limits max fuel rate by limiting the metering pulse width, locks out turbo management, locks out Cruise, limits the 4L80E to two lower ranges - this results when CPS or OS failure occurs, CT is too long or erratic\intermittent, etc - these limitations resutts in long-start condition, requiring long cranking periods before engine will fire

Secondary "limp modes" occur when certain parameters are exceeded, such as high Boost, where PCM will set DTC, reducing and limiting fuel rate and limiting turbo control until restart - however, PCM is too primitive to reduce fuel rate when Boost is too low for demand conditions, thus the black smoke with reduced power when wg system fails - that scenario is not a limp mode

This is all digital, based on the 'clock' pulses from the OS on the 512-slot track on the encoder disk, and sync'ed by the clock pulses from the 8-slot cylinder track and the CPS - PCM has 64 counts per cylinder with which to work it's magic - the 64 counts are spread across TDC of each cylinder, some BTDC, some ATDC, allowing precise management of the injection\combustion event

Any perceived "voltage variation" is due to frequency and ELI - however, low battery voltage at the FSD, be it from grounding, resistive connection, or failing battery system, will increase CT due to slower FS reaction time, thus affecting injection event timing - DTC36: there's ole ELI, at it again................

Remember, in digital signals, the signal is driven to the upper rail, in this case 5v, but is also driven to the lower rail, 0v, so DVM must integrate and average the upper voltage with 0v - you will get different readings in DCV and ACV ranges

An oscilloscope is the desirable tool for investigating computer-controlled systems, as most everything is digital: solenoids, valves, switches, position sensors, etc - temperature and pressure sensors are mostly analog, with variable resistance and variable voltages representing response to change - these can be read with a 'scope or DVM

With inductors in the system, inductive kick may be a usable part of the signal, but not even seen by a DVM - inductive kick can be as high as 2400v in a 12v system - the FS coil gives between 100-180v of inductive kick when power is applied, which is why the PNP driver transistors are hi-voltage rated, in addition to hi-current rated, designed to pass a lot of current thru the FS coil

The waveform at question * resembles the Fuel Injection Pulse Width at idle, and at question ** resembles the waveform at FWOT, but on a much higher voltage, as the drive voltage is just under +12v battery voltage due to solid state forward voltage drop of the bipolar drivers and the steering diode in the emitter circuits - on-time to off-time is determined by demand fuel rate - the max pulse width is never as wide as the duration for the rollers to ride completely up the ramps

The PCM sends a digital Fuel Inject control pulse to the FSD, which is (a) a power driver that applies battery current to the FS solenoid coil via the collectors of the paralleled PNP driver transistors, and (b) a comparator circuit that monitors that current for the changes that result when the flux density changes as armature\plunger begins moving, continues forward motion, and stops as the valve seats - the resultant digital Closure-Time pulse is sent to PCM which starts counting clock ticks for injection pulse width timing - PCM has been counting ticks since sending the injection pulse to the FSD, so CT is included in Injection Pulse Width timing - FS is merely a coil, responding to applied power - power on is a 1, coil energized, power off is a 0, coil de-energized




So, let's talk a little bit about Limp Mode - and just fyi, kiddies: Sildenafil citrate won't even help here...........

To wit: the much-dreaded oft-feared Limp Mode, or, more formally, Limp Home Mode, is resulted when PCM senses over-limit, under-limit, intermittent or erratic response from, or loss of, a sensor(s) - symptoms are CEL, very obvious loss of power, limited APP input, 1st and shift to 3rd gear only, no turbo, no TCC lockup, no cruise, no nuttin' - but the engine will get you to a desired destination, albeit, not in the style to which you have become accustomed




Basic 6.2\6.5 engine timing, crankshaft to camshaft, camshaft to IP, courtesy of MATUVA and MGW: