Yeah, figured that out with a pen, paper and a calculator (old-school....)...
Each time you power on or press the push button it determines the calibration value for air (20.9 %).
pertinent line is "calValue = 20.9000/currentmv;"
You can also calibrate it using 100% by changing "20.9000" to "100.0000".
...
I added a 2nd button for calibration with 100% oxygen, to see what happens:
-calibration with air results in measuring pure oxygen at 100,32%
-calibration with 100% oxygen results in measuring 20,83% when exposed to air
Cell I used is AO2 CITIcel
I'm fiddling with your code and this one. Also got a CO sensor on the way, specs say it's possible to measure in the 1ppm till 15ppm range, so I'm curious what the results will be when I expose this one to a calibration gas.