Ozone sensing - design changes

A project log for Portable Air Quality Monitor

For those who wonder how safe the air around them is and what can be changed to avoid the negative health effects of polluted air.

ThomasThomas 08/13/2017 at 23:590 Comments

The original design used a carbon monoxide (CO) sensor from SPEC, in a 6 lead through hole package. They also offer a number of sensors in the same package: NO2, alcohol, O3, SO2, H2S.

I was interested in the ozone (O3) sensor, as electrostatic filters can generate some ozone.

It is essentially a drop in replacement, however some circuit elements and code needs to be changed. For comparison:

Carbon Monoxide (110-102)Ozone (110-401)
Sensitivity4.75 nA/ppm
-12 nA/ppm
Range0 to 1,000 ppm
0 to 4.75 uA
0 to 5 ppm
0 to -60 nA

So while the sensitivity is higher, the range is much smaller and higher TIA gain is needed. Recommended is 500k, however the LMP TIA amplifier used will only go up to 350k. This means a maximum voltage output at -60nA of only 21mV. With a 10-bit ADC and a 3.3V reference, that would give us only ~26 counts to cover the full range of the sensor.

The reference voltage needs to be reduced, but there is a limit. LMP91002 has a lower level of 1.5V:

STM32L476 has a lower limit of 1.62 to 2.4V:

So U8 can be replaced by LM4120AIM5-1.8 for example, to provide 1.8V Vref and 48 counts to cover the full range. Still not great, but better than before. Oversampling will help, although this point is really pushing the gain of the LMP91002.