Armchair mechanic here. Have you ever had the Service Shifter message? That code indicates communication problems on the CAN bus and specifically an inability to determine which position the gear shift selector is in. I’ve seen discussion of fixing such problems by reseating the communication cables from the various components to the comms hub. Not sure exactly where it is located, but behind the dash and I think more passenger side. Some googling may help, I know I’ve seen previous discussions on the topic.