As a quick test, take a pair of jumper cables. Connect one end of the black cable to battery negative, now connect the other end to a clean place on the engine block or a good ground spot on a bracket. Now shift the engine into park and see if it charges, also try it in reverse. If it charges now you have a bad ground to the engine block. If not take the other cable and connect it to the same negative post and connect the other end to a clean spot on the trucks body (under the hood) Try shifting again.
If you now have charging then it's a bad ground between the battery and body.
I sort of doubt either will make a change but it will verify if the grounds are good, and could show the problem if someone did not physically test the cables for internal damage (GM cables love to corrode inside the actual insulation)
Below I attached the schematic for the system, the only fuse that is in the system also powers the dash, if it is working the fuse is good. The large maxi-fuses generally do not blow and in this case if it did you would see no charge at any time as it is the fuse to the alternator. But check it just to be sure.
This truck has the GM smart charge system on it. It does not work like the old charging systems where you would see 13.6-15 volts whenever the alternator is turning. Instead it uses a sensor on the battery cable (connected on the the negative side cable but slid into place) and the efforts of the Body Control Module and the power train control module to test and charge the battery (batteries if it has dual batteries). Instead of the full voltage all the time it may only run at a minimum charge to the battery if the current that the truck is using is under a few amps.
To test if this might be the case, connect a voltmeter (do not trust the dash one for this) across the battery terminals. Start the truck. Now let it run for a couple minutes and look at the battery voltage. Now hold the brake and shift into drive. Now look at the voltage, next turn on the headlights and the blower fan to high, what did the voltage at the battery do? If the system is working the voltage should have gone up to close to or over 14 volts as the system entered headlamp and charging mode.
If you see no change then the first item I would check would be the current sensor that mounts on the negative cable near the battery (images 2, 3, 4). Verify the connector is clean inside and clipped in fully. It is the primary signal generator for all of the above. It can also be controlled through the use of a good scan tool to verify if it is working or not as the state of charge it is commanding will show in the data. If you decide to just change it as a test there are two versions, one uses a 10 volt power feed and the other uses a 5 volt feed. Be sure which one you have by part number.
Now one twist to this could also be that shifting into gear is doing something that is turning off the voltage to the sensor, that should show on a scan tools live data.
If they tested the above and tested the actual harness for the control and voltage signals. Then it could very well be the ECM or BCM that has the failure in it. But to "see" inside those you need a dealer level scan tool to watch the various signals and how they interact and cause the system to switch through its various charging modes.
Images (Click to enlarge)
Monday, April 19th, 2021 AT 10:44 AM