2004 BMW 320i mileage: 38,000. I have been experiencing problems with my check engine light. I have had the engine codes looked at and it was diagnosed as the 02 sensor. So, I have replaced it. Since then, I have also replaced all of my spark plug wires and my breather tube. I am currently at a loss. The light comes on about every other day and when it does come on the engine loses acceleration power and shutters lightly. It is drivable but the problem is very noticeable. It seems to me when it all goes wrong the fuel mixture is off so the engine over compensates and is either letting too much air in or it is letting too much fuel in. Any Suggestions? What do you think is the next best step?