Replaced encoder ring - hope that's it!
I've had no "Service 4WD" messages since last winter. Weather's turning cold and wet and guess what, the error message popped up again. The problem had to be related to wiring or the controller, I thought. So, today I replaced the encoder ring inside the encoder motor. Was a pain lying on the garage floor doing the work, especially with back and neck problems. After I finally found the motor, had to remove the front driveshaft and a small skid plate to get to it.
Ordered the A/C Delco part off Amazon much cheaper than anywhere else. Dismantled the old one and it definitely appeared to be worn out. Couldn't see how the contacts were even working, they were so gunked up. If this doesn't do it, I'll replace the actuator which looks like maybe a 10 minute job.
By the way, the encoder motor is no where near the actuator. The actuator is on the front right of the front dff behind the large skid plate. The encoder motor is part of the transfer case and is at the rear of the front driveshaft behind a small skid palte on the left side. I mention this because I wasted a lot of time trying to find it on the front diff near the actuator and have seen other posters who made the same mistake!