Rough idle and multiple engine codes

:
1999 mazda protege es
My car sounds cammed and won't hold a idle and when you rev it it stumbles til about 2000rpm then revs fine and kind of smokes and has a rich scent from the exhaust. Po131 po102 po122 po660 po462 are the codes I have pulled and when the fan comes on it kind of idles normal. Things I've swapped off a good working car to this car to check and see if the sensor was an issue :egr, tps, iac, maf, coilpacks alternator. I'm starting to lean towards a bad ground for the sensors which is 91 pin on the ecu. I've looked at wiring schematics and all the codes I have are in related harness and I think have the same ground. All help will be appreciated
 
The fact that all the codes are for 'low voltage' to the sensor/solenoids I think you are on the right track. Have to break out the multimeter to find the loose or broken ground.
 
Back