You need to have the codes pulled from the tccm,something most generic scan tools cannot do,to find out what the problem is. Chances are its the encoder position sensor on the fritz.
Code will be c0327 if that's the case
Agree with this!
My 99 2500 has the push button and the encoder motor was corroded real bad where it bolts to the t/c
That corrosion kept the motor from functioning properly and eventually it wouldn't dis engage 4wd
I had. Shop diagnose it as there was only the "service 4wd" light on
That motor is easy to change and if badly corroded just replace it
Be sure to match the encoder motor position to the position of the t/c input

