It is possible to disable closed loop operation for individual cells of the map. Why would you want to do this you ask? Currently the closed loop software is simple and only one target voltage can be specified for the O2 sensor. Usually you run a richer mixture for wide open throttles (WOT) and you may want to run a leaner mixture for the throttle back off. With the closed loop software at the moment you couldn't just program richer values in the map for WOT as the closed loop software will lean it out. This leaning will then be applied temporarily to the other areas of the map as the throttle is eased until the closed loop software again adjusts.
To solve this problem you disable the closed loop software for high throttle settings and low throttle settings by setting a flag in those entries in the map.
I was quite surprised at the number of variants of oxygen sensors that are available. I would expect My16M to work with all the common types, although I have only tested on one.
The main variations in sensors are whether they are wide band or narrow band, and how many wires come out of it.
All the common types produce a voltage between 0 and 1 volt. Lean gives a 0 volt reading and rich gives a 1 volt reading. The cheaper sensors are narrow band and the voltage quickly changes as the mixture changes for rich to lean or visa versa. This sensors are digital in nature. There's no middle ground and all the ECU can do here is to keep the mixture correct.
Wide band sensors have a more gradual change in output. There are degrees of richness and lean. With these it is possible to be a bit smarter. You can have an acceleration/power mode where you run the bike a bit richer than normal, cruise mode where you run it a bit leaner, etc.
Sensors can come with 1,2,3 or 4 wires. The difference between 1 and 2 wires is that the two wire is isolated electrically from the exhaust. It has a signal and a ground wire that are wired straight into the ECU. The single wire relies on the ground being returned through the exhaust and engine and frame. This has more potential for noise and we don't want more of the earth problems that the bikes already have so I recommend the two wire over a single.
The 3 and 4 wire are basically the same as the 1 and 2 wire respectively. The other two wires are for a heater element that is run off 12 V. For the same reason as above I recommend a 4 wire over a 3. The heater element is to speed up the warm up of the sensor as they don't work until they reach 400 degree Celsius. Without a heater it can take minutes to warm up, with the heater its about 10 seconds.
I'm using the Bosch 0258 104 002. It's a 4 wire wide band sensor. On my bike the heater gets its power from the relay that powers the fuel pump, injectors and coils.