Safety mode, 6 error codes for TB/ECM failure, replaced TBS
My wife's 2008 V6 G8 has experienced random bouts of going into safety mode for at least two years. Wasn't that bad at first. Would only usually happen in colder temps at first, but started happening a lot more frequently. Usually could restart, sometimes a few times, but then it would be fine. Hadn't done it in a few months until a week ago on Saturday night.
Went into safety mode, started sputtering at high idle but barely accelerating and hard to even work up to 30mph and no amount of restarts did a thing. Was the only car at the time, so we had to drive it like that a bit on the weekend and then to and from work Monday and Tuesday. It was very dangerous, would not suggest it.
Seen some other people had luck cleaning the throttle body. Not me. Got to the point it wouldn't even stay running, and even if it did, it was choppy, inconsistent, almost stalling, and high idle. Safety mode instantly came on with every start and would not turn off. Had a friend come over and check the codes and was getting:
P2119 - Electric throttle control actuator not functioning properly due to return spring malfunction or ECM detects throttle valve stuck open
P2176 - ECM detects TBA/motor has failed to learn correct position for butterfly valve.
P2101 - ECM detects TAC went out of range for circuit causing open circuit detected in TAC motor
P2100 - TAC/motor circuit open detected by ECM
P0700 - PCM detects malfunction in TCM
P2544- malfunction with signal input in PCM or related control module.
First thing I did aside from cleaning up the TB was replace the TBS (easy, 6 clips, right in front off TB, $48 at AZ.) She will stay running now, but is just as rough and inconsistent as ever. Not sure if I have any other options I should tackle before having to come up with ~$180 for a new TB.
Any ideas? Could really use some other opinions. I really don't want to have to replace the whole TB, it still looks in good condition, wasn't even that bad when I cleaned it. Possibly it's the pedal sensor? But I am pretty sure that would spit another code.