A couple of weeks ago I drove my 2016 Silverado Crew for about 3 hours in a heavy rain with lots of road salt and temperatures hovering around freezing. At my destination I parked for about an hour and when I returned to start the vehicle it threw up a bunch errors on the dash; trailer brake issue, Stabilitrak issue, power steering issue, blah blah blah, but then it simmered down and drove fine for an hour to my next destination. Long story short, it repeated this over the next couple of stops getting progressively worse as the evening wore on and eventually the engine light came on and it went into limp along mode. At this point I had little choice but to make a run for it and head to my final destination about 60 km down the highway. Unfortunately it totally died about half way there, no dash lights, nothing. I had the vehicle towed to a dealer I had dealt with (late Saturday night) and waited to call them on Monday. Interestingly the truck started again when I tried it but I'd had enough excitement for the day so just left it. Apparently the truck started on Monday morning and after spending 5 hr. looking into it and taking it for a 60 km test run they said though it had 18 pages of error codes they couldn't find anything specifically wrong with it and no longer being under warranty I think they didn't want to run up a huge bill with the risk of having nothing to show for it so they charged me for an hour and a half and sent me on my way. I suspect being in a warm shop dried out whatever was causing the issue. Once home I researched all the codes on the work order and they all turned out to be communication faults on the CAN Bus network; CCM can't communicate with ECM, EBCM can't communicate, TCM can't communicate etc. etc. Figuring this wasn't over I bought a code reader and did some research so I'd be prepared should it happen again and maybe reset the codes. For the next 500 km it ran fine until the day I set out for another 3 hr trip in rain and drizzle and a little over 2 hours into the trip it started barfing up faults again. The engine light came on however it didn't go into limp mode or die. When I got to a safe place I stopped and checked the codes. It was pretty much the same scenario so I cleared the faults and the engine light and carried on completing the final 70 km without incident. At home I parked in the driveway and when I came out 20 minutes later to dig in it wouldn't start at all and the code reader couldn't connect. My prime suspects at this point were the CAN bus and salt laced rain water. My first step was to check pins 5 (signal ground), 6 CAN-Hi and 14 CAN- Lo on the OBDII connector. If all was well, there would be 60 ohms resistance across 6 & 14 and megaohm resistance from them to ground. What I found was no resistance between any of them indicating they were essentially shorted together with the ground. I decided the easiest thing to get at was the chassis control module at the back above the spare tire. I pulled apart the connector and confirmed 120 ohms on pins 26 and 29 which is the back end of the network and no leaks to ground so that was good however the incoming pins 27 and 28 indicated the same states as the ODBII pins. Next I found the Electronic Brake Control module and noticed that whoever had worked on it left about 4 inches of exposed wires into the connector (sloppy) and there was wet road sand visible up inside the back of the connector and on the wires leading into the pins. I took a spray bottle with clean RO water (barely conductive) flushed all the sand and salty water (very conductive) out of the back of the connector. Once it was clean I pulled the connector off, and inside it appeared to be dry though the tech had slathered dielectric grease over the face of it making it difficult to be 100% sure. I then confirmed 120 ohms on the inbound pair of CAN Bus wires and 120 ohms on the outbound wires which when connected together gave the requisite 60 ohms overall. Coincidence? Maybe.
I then put the connector back on the EBCM and was able to start the truck. At this point I believe this is my problem spot however because the problem is somewhat self correcting it's possible there is another issue and the timing was coincidental but my confidence is fairly high. I subsequently wrapped the wires and took steps to reduce the ability of water and dirt to get into the back of the connector. I also added a dab of dielectric grease to the CAN wires where they enter the connector from the back. So for now I will carry on and see what happens though I will be keeping my code reader and multi-meter handy when I'm on the road.
I've attached the CAN Bus schematic and a couple of before and after pictures of the connector wiring in case someone is interested. Something I noticed when putting it together was that the red retaining tab on the connector had been broken off necessitating the second larger tie wrap in the picture to ensure the connector doesn't come undone. I imagine someone pried the connector open not understanding that the red locking mechanism needed to be pushed back first. Hmm. I'll post an update if this reoccurs. If anyone has any insights I'd be happy to hear them.