Not this exact code but I myself have had problems with the TPS. During certain engine on/off conditions the PCM learns the min/max values of the TPS. Simply switching in another one doesn't allow the PCM to learn the new values hence the problem still occurring or the code coming back. Doing the overnight battery pull clears these values amongst others and the PCM relearns. Let us know how it works out for you elsewise you may have a map issue.