The car is an '05 facelift Cooper S. If you've seen my other threads, you'll know I've been having cooling system problems, but I think that's sorted now. All I did was the dismantling and reassembly needed to replace the thermostat. Job done, started the car. WTF is the b****y thing doing NOW? It won't idle cold below about 1200 rpm without a fair bit of throttle, and when it's up to temp it idles at about 800 rpm with a regular misfire. EML is on. Once it's warmed up and rolling, it feels normal up to 10 mph, but won't go any faster. My iCarsoft is generic for BMWs, but I get code P1229 (no decode) , and two other fault codes: Throttle Pedal Positon Sensor /Switch A Circuit High, and Throttle Pedal Position Sensor/Switch B Circuit Low. Both faults are both pending and current. I'd think the cause is almost certain to be related to what I did, maybe with the main ECU, which of course I had to disturb to get the airbox out to get to the thermostat. I blew any dust on the contacts away with an air line before reconnecting, and I can disconnect it again and go mad with the contact cleaner tomorrow, but is there anything else I should be looking at as well? How long do I need to disconnect the battery for to do a hard reset?