Truck started missing at idle, p0152,p0157,p0300,p0430,p2099 codes( might have missed a couple it's been a bunch) found a tsb about the codes and changing the ecm, took to local dealer to have ecm changed they said it was valve springs, then they couldn't find a broken one so then they put a high pressure fuel pump on it. Same thing then they said it was ecm so they changed it. Get it back it runs good for about a week but keeps giving me a 2099 code, which after a few days changed to 430 and 157 codes. Started missing again yesterday. Any help would would be appreciated.