To get you started, it sounds like you're seeing proper operation but you aren't aware of it. When you turn the ignition switch to "run", the Engine Computer turns the automatic shutdown, (ASD) relay on for one second, then it goes back off. That is done to insure fuel pressure is up for starting, in case it bled down over days or weeks. That relay gets turned on again during engine rotation, (cranking or running), and the computer knows that by the signal pulses it receives from the crankshaft position sensor and the camshaft position sensor.
On models that use a separate fuel pump relay, that relay is turned on either by the ASD relay directly, or the coils for the two relays are in parallel so both are turned on by the computer, at the same time.
The air gap for the crankshaft position sensor is critical, and since the transmission was separated from the engine, if that sensor wasn't removed first, there's a good chance it got damaged or pushed up a little. That sensor on older engines was adjusted by a thick paper spacer glued to the end to set the air gap. Your design is set automatically by the mounting bracket so it can't be misadjusted, but it can be damaged.
You've already observed you're missing spark and fuel pump. Most people get hung up on the first one of those they find missing, then waste all their time in the wrong circuit. You can try reading the diagnostic fault codes first, but be aware fault codes for these two sensors often don't set just from cranking the engine. They usually need more time to be detected, as in when a stalled engine is coasting to a stop. For that reason, be sure to not disconnect the battery or let it run dead until the codes have been read, because doing so will erase them, then that valuable information will be lost.
To read the codes yourself, cycle the ignition switch from "off" to "run" three times within five seconds, without cranking the engine, leave it in "run", then watch the code numbers appear in the odometer display. You can go here:
https://www.2carpros.com/trouble_codes/obd2
to see the definitions, or I can interpret them for you.
If there are no fault codes related to these sensors, start by checking if the ASD relay is turning on. The easiest way to do that is to use a test light and back-probe the dark green / orange wire at any injector, the ignition coil or coil pack, or either smaller terminal on the back of the alternator. In the rare event I told you the wrong wire color, it is the wire that is the same color at all of those places. A test light works best because it is easy to see from inside the truck, and digital voltmeters usually don't respond fast enough.
You should see the test light turn on for one second when you turn on the ignition switch. If you do, that proves the relay and its circuit are okay, and the computer has control of it. It's very rare to find this part doesn't work. What's important is if the 12 volts comes back when you start cranking the engine. If it does not, it is because the signal is missing from one of the two sensors.
Both of these sensors commonly fail on all car brands by becoming heat-sensitive, then they work again after cooling down for about an hour. This type of failure doesn't really sound like what you have. Typically they work okay as long as you keep on driving and natural air flow keeps them cool. They usually fail when a hot engine is stopped, such as when stopping for gas, then during "hot soak", engine heat migrates up to the sensors causing one to fail.
I had one fail exactly like you described, but it was my fault. To help out a coworker at the dealership, I was replacing transmissions periodically, and I got too arrogant to use the paper spacer to set the air gap on the crankshaft position sensors. It was on my 13th transmission job, the engine quit running two weeks later, and was repaired with a new crank sensor. I'm pretty sure it was just because I hadn't set the air gap properly. That one stopped suddenly, like you described, after running just fine for miles.
Let me know what you find up to this point.
Sunday, December 13th, 2020 AT 10:01 AM
(Merged)