I had a similar problem here. It turned out to be a bad speedo cluster. It wasn't outputting speed to the pcm. Truck didnt think it was moving caused the trans to do all sorts of wacky stuff. I had it hooked to a snap on verus and watched what it was doing while I drove.