The spark occurs when the air / fuel mixture has been compressed and the molecules are close together. That enables the flame front to jump from one molecule to the next to burn all the fuel. If the spark occurs when the piston is not near top dead center, it is real difficult for all of the fuel to burn, and what does burn and expand can't push the piston to develop any power because it is already too far away from top dead center. We know we need fuel and air, but we forget that compression and proper timing of the events are just as important.
The 3.0L engine is not an interference engine, but Chrysler did start using one of that design in '95. If the timing belt jumps on those, open valves will be hit and bent by the pistons. To prevent that expensive damage, the Engine Computer can detect when the belt has jumped only one tooth. The driver may not notice the reduction in power, but a diagnostic fault code, "Cam and crank sync" will be set, and the Check Engine light will turn on. If the belt jumps two teeth, the computer will shut the engine down to protect the valves. At three teeth off, or if the belt breaks, the valves will be bent.
There is one engine that was available in the '97 Caravan that is an interference engine. If the safeguards were built into the Engine Computer for that application, it isn't hard to imagine that would be incorporated into the computers for the other engines to reduce design costs. To add to the misery, my reference lists your engine as an interference engine, which I can't argue with, but the same reference lists the 3.0L for a '90 Dynasty and an '88 Grand Caravan as interference engines too, which I know for a fact they are not.
Regardless, the timing belt should be checked to see if it has jumped. Due to the design of the oil pump's housing, the belt can not jump on the crankshaft sprocket unless over a dozen teeth are stripped off. That would stop the camshafts from turning. For the belt to jump only a few teeth, it has to do that on one or both camshaft sprockets. The belt has to be loose for that to happen, and that too isn't likely. The pulley that sets the tension on the belt is spring-loaded, but once its job is done, the pulley is bolted tight to hold it in place. If the belt did jump, you're going to find that tensioner pulley or the water pump are wobbling around allowing the timing belt to be loose.
The next question is how does the Engine Computer stop the engine from running when the timing belt has jumped? I've always gone by the diagnostic fault codes, then diagnosed the cause of the timing belt issues. I never checked to see if spark or injector pulses were missing. Knowing that wouldn't have helped the diagnosis, and might have confused it.
Tuesday, January 31st, 2017 AT 3:25 PM