mine also did that. it was the encoder motor! the part was like 90 bucks and pretty easy to change. im not sure if there are any test to narrow down the prob.
2003 chevy cc,sb 4x4
Engine: LB7 6.6 duramax diesel
Transmission: allison 1000
Mods: transparts stage IV, S/C 1056 converter (built by me), EFI live w/ DSP2, LBZ fuel pressure regulator, 5" flo pro exhaust 6" dual wall tip, airdog 150, PPE billet pickup tube, K&n cold air intake, LB7 mouth piece mod, tripple piller gauge mount w/ fuel pressure,egt and boost, GM touch screen navigation, extang soft bed cover, tow mirrors, debadged
Wheels & Tires: 20"x10" eagle wheels and 33"x12.5"x20" nitto mud grapplers