Is the MIL/CEL on because of the after-cat sensor?
If that's the case, there's 2 ways to do it:
Method 1: Something like
this. All it does is moving the O2 sensor away form the direct flow of the gasses. In close loop condition, the way the ECU adjust the fuel trim when a narrow band O2 sensor is by switchig back and forth from rich to lean around the stechiometric value of 14.7... This is due to the low reaction time of the narrow band O2 sensor. It also facilitate the job of the catalitic converter by switching for oxydation to reduction. Therefore the pre-cat sensor senses the increase & decrese in O2, while the post-cat shouldn't (therefore the voltage should be more constant). If it does, the low efficiency code is recorded. By moving the O2 sensor away from the direct flow, you don't expose it to changes in O2 concentration... At least that's what I figured...
Method 2: use a resistor and some stuff like that: this is what you basically buy on the internet. If interested,
here's the schematic on how to make it... Narrow band O2 sensors all have the same voltage range so there's not really a BMW specific O2 simulator.
If I would have to pick between the two, I would personally go with the Method 1 as it's totally reversible and you're not messing with the car electronic... If end up not working for you, you can always investigate it further and get an actual electronic simulator.
PS: wide band O2 sensor are used mostly in direct injection cars beacause of the ultra lean operation, or when tuning the trim and you need to know the actaul A/F ratio.