My wifes 2000 Miata with 88,000 miles has developed an intermittent rough idle/ almost stall out condition mostly from cold startups. It will eventually go away after driving for a while. It spit out code P0300, “random miss fire”. I researched that symptom and 99% of the repairs were changing out the coil pack. I did so with a Mazda updated coil pack, new NGK wires and plugs. The next day she said the acceleration was much stronger and had a better response. Perfect! NOT! The day after, she said the same condition came back and eventually went away. No codes! Where to I go from here? I’m stuck with 2 old hags! Just kidding!
Engine idle is controlled by the IAC (idle air control) valve. If the valve is dirty or malfunctioning the idle will be erratic. I’d try removing and cleaning the IAC valve.
I did disconnect the battery for a few hours. Does the computer need to relearn? I’m going to clean the IAC and EGR.
No need to disconnect the battery. The computer is continuously learning and adapting.