I have a 2002 Chevrolet Silverado LS.4WD non HD with a 5.3L located in Northwest Washington State. 3 weeks ago I went to start truck and it worked fine. Last weekend I went to start it and it would not even crank. Dash lights, radio, headlights all fine. Replaced the battery anyway because it was getting old. Truck still would not even turn over. Took the starter and had it bench tested. It passed and I am also getting power to the solenoid. I checked all my fuses and relays associated with starting or ignition. All were good. I am figuring at this point it is the ignition switch. I have a Haynes Repair Manual so started looking at the wiring schematic. Tore my dash apart to get to the ignition switch in the steering column but before I just replaced the ign switch I ran a few electrical tests. When key turned to the start position it supplies power directly to a 10A crank fuse located in the left hand side bussed electrical center. The test light lights up when the key is in the start position then goes out when in the run position, lock or accessory position. So as far as I can tell the ignition switch closes the circuit and allows power when trying to start. Following the wiring diagram further it goes to a Park/Neutral Position Switch which ultimately leads to the starter relay in the under the hood bussed elec center. I am baffled at this point. Anybody any thoughts?
First lets clear up one observation. You said you had power to the starter solenoid. Are you referring to the battery voltage that is always at the large battery cable connection or the smaller solenoid wire that gets 12 volts from the starter relay? If voltage is showing up from the starter relay, you should be hearing a single, rather loud clunk from the starter each time you turn the ignition switch to "crank".
Most starter circuits can be broken down into four parts, and each one has a test point at the starter relay socket. GM's circuit complicates that just a little, but you already started down that path. The "crank" voltage you found at the fuse goes to the neutral safety switch next, then to the relay. Check for voltage at the relay socket terminals. You should find 12 volts on one of them all the time. The other terminal on the same side will have 12 volts in the "crank" position. If it does not, suspect the neutral safety switch, or more commonly, a broken wire near it or the gear shift is out of adjustment.
To double-check the other two terminals in the socket, move the ground clip of your test light to the battery positive terminal, then probe the two remaining terminals in the relay socket. It should light up on both of them. One is the ground wire for the coil inside the relay and the other one will read to ground through the starter solenoid coil. The clue there is whether or not you hear or feel the relay click when you try to crank the engine.
Be very careful when you poke your test light into the relay socket terminals. GM didn't waste any money there on quality. The slightest poking with a probe or pushing on the relay will stretch those terminals resulting in an intermittent no-crank condition when there is no other problem in the system.