Hi, we have a similar problem, but the starter engages when the key is moved to the run position. I checked the relay as you suggested and one of the pins, 86, has 9.4 volts in the run position which I am assuming is enough to energize the solenoid circuit. I also know that after starting in the run position, if I shut it off and immediately try to restart it, it will start correctly in the start position. If I start it after it has sit for a short period of time, it will start in the run position and if I shut it off and it sits for 15-20 minutes, it will start in the run position almost every time. I don't see anything wrong with any wiring, I have changed the ignition switch, the key/cylinder is not loose, so am I looking at a faulty ECM or as some have said it could be the TCM? Any suggestions would be appreciated.
To better diagnose the issue, what you should do it make a table like the following. where P is the thick pink ignition wire, Y is the thick yellow ignition wire, O is the thick orange ignition wire and W is the thick white ignition wire.
Put a meter on each wire, and record the reading you get in the off position, accessory position (1 click after off and before run), the value in the run position, and the value while you have the key in the crank position (may want to pull the starter relay to prevent cranking the starter)
You should get the following table if everything were to be working correctly in the ignition switch.
If your table differes from that, you should disconnect the ignition switch connector from the truck (there is a harness with a 7MM bolt that connects the harness from the ignition switch to the truck, disconnect this to isolate the truck from the switch)
Repeat the test above, if you get the correct values, the switch is working, and something after that connector on the truck side is screwed up, if you get the same incorrect values, then the ignition switch probably needs to be replaced.
NOTE: white and pink MIGHT have power in the accessory position, this would not cause your issue and should be considered "normal" for the purpose of this test. I cant 100% remember off the top of my head if GM treats them as true ignition wires, or as accessory wires that dont drop out in crank.