Root cause of multiple codes
I have an 02 325i that my wife drives daily. This morning, she left to run an errand and called me to say the car was turning 4K RPM and only doing around 40MPH. There was an "exclamation point" showing near the "D" for "Drive" indicator on the dash. I told her to take the car back home and drive something else. I took the car later in the day to a tranny shop (thinking the tranny was slipping) and he read the tranny codes - which there were none! However, there were MULTIPLE codes on the OBD II read (although the CEL was not lit) for "Misfire Cylinder 1,2,3 and 5" "Secondary Air Flow Low # 1 and #2", and an "Electronic Thermostat Control" code. When I drove the car to and from the tranny shop, it ran just fine - no issues.
The only notable issues with the car in the past few months have been a rough idle when it was cold in the morning (hard to start 1 time about 2 weeks ago with this issue), but when it warms up and you restart it - it does fine, 3rd gear "hangs" longer than others when the car is cold until it has been driven a bit and warms up, and the vent blower inside blows bursts of air when first started until warmed up (and it makes a whining sound under the hood like the hard drive on a computer then too, but shuts down once warm) and it blows consistently. Appears all of these issues are when the car is cold.
Does anyone know of a singular root cause that would be the culprit to all these other issues?