With respect to the expensive Oxygen Analysers I have compiled a solution to someone with a steady hand and confidence in their electronic workshop skills.
However, the common feature of the design is that having bought a digital panel meter (DPM) or Digital Multimeter on which to display the results, one has to modify its circuit board to increase the sensitivity.
As these are fairly small units, often utilising surface mount components, the potential for permanently damaging the DPM is high, especially if the necessary soldering iron is wielded by someone who's more at home with a 2lb hammer.
In addition, all electronic semiconductors can be damaged by static discharges so normal anti-static precautions should be observed.

If you're not sure which way to go, leave your options open by buying a DPM first. Have a good look at it and if you feel confident enough to "hack" the board by all means do so and save yourself the hassle of the PCB manufacture involved in this design.

If you decide not to hack the DPM, then as long as it will run from a 9 volt supply (+/-4.5V), can measure a voltage referenced to a split supply and has a full scale reading of 100 - 200mV, it can be used in this design.


The principles are very straightforward: fuel cell sensors produce an output voltage directly proportional to the partial pressure of oxygen in the sampled gas - this voltage can then be scaled and measured on a suitable instrument.
This voltage is typically in the range of 7 - 17mV for air, this implies that 100% O2 would produce approximately 35 - 85mV. These figures are the expected output over the life of the unit.
A digital voltmeter therefore, with a full-scale range of 100 to 200mV will adequately display the results.
An amplifier with a variable gain of between 1.2 and 3.0 is used to give the correct scaling i.e 1mV/%.
A ten-turn potentiometer is used to adjust the gain. A single turn 'pot would be much cheaper but won't have the resolution for accurate setting. Two potentiometers (a coarse and fine adjustment) would work, however, the coarse setting would always be a source of instability.

The unit as it stands will work with the Siemens ST-11, the Teledyne R17/R22 types and the IT (Dr Gambert Gmbh) M-03/M-25. If the Maxtec (formerly Ceramatec) MAX/CAG250E is to be used, the value of R6 must be increased to at least 1M.
There are minor differences in specifications of the above sensors, for more information about the errors involved, I've produced some information about the accuracy of the instrument.


DIY Oxygen Analyser Accuracy

I've tabulated the important bits from the different manufacture's datasheets for comparison.
Because I've accumulated more than one datasheet for some sensors I've found some slight discrepancies between them, although nothing serious.














Nominal output in air:






Zero offset:






Response time (90s):

<15 sec

6 sec

<3 sec

<12 sec

<6 sec

Expected life (in air):

>900,000%O2 hrs

1,500,000%O2 hrs

>750,000%O2 hrs

>1,000,000%O2 hrs

36 mo

Recommended Load:






Accuracy (const temp):

+/-1% of FS



+/-1% of FS


Linearity (const temp):

+/-2% of FS

+/-1% of FS

<2%@100% O2

<2%@100% O2


Repeatability (const temp):


+/-1%@100% O2

+/-1%@100% O2


Warranty period:

24 mo

12 mo

18 mo


12 mo


The importance of nulling
The datasheets for Teledyne sensors quote a maximum output offset voltage (in 100% nitrogen) of 50uV whilst IT and Siemens quote 200uV and Maxtec 500uV.
If we assume a nominal sensor output of 500uV/% these correspond to errors of about 0.1%, 0.4% and 1% PPO2 respectively.
The implication from this is that after calibrating in air only, if a 42% mix were measured, the reading could be incorrect by about as much as the offset error plus any voltmeter errors.

 However, the best accuracy over the range we require is gained by calibrating in 100% oxygen then using pure nitrogen to finally "tweak" the offset adjustment

Of course these figures would look great, but you're not going to achieve this in real life, all the sensor manufacturers quote-basic accuracy and/or linearity figures. For Teledyne it's +/-1% of full scale, whilst Maxtec, IT and Siemens quote linearity within 2% - which correlates pretty well with +/-1%. So this must be taken into consideration.
For comparison, the VN202 commercial analyser supplied by Vandagraph quotes an accuracy of 1% of full scale, but since this is also the accuracy of the Teledyne sensor they use, I suspect they're assuming their instrument is perfect and introduces no errors - which is extremely optimistic.

In addition, the environmental conditions (temperature/humidity) can have a small but noticeable effect on the ideal of 20.9% when performing an on-site calibration with atmospheric air. 

For coupling to the cylinder, the major problem is that the business ends of the sensors have a M16 x 1 thread.
As those mechanically minded out there will realise, this is quite a fine thread of which I have a Thread Tap if anyone requires.
The Siemens ST-11 is supplied with a flow diverter which has a female m16 thread for the sensor and simply pushes into a 15mm bore (it's meant to fit a "T" piece on medical equipment), I'm not sure if Teledyne's are supplied with them but IT's and Maxtec's aren't.
The easy option is to buy a kit of adapters from Vandagraph, this is what they supply with their own analyser. The "DINKIT" includes everything needed to couple the sensor to DIN valves.


Being Mean I have manufactured the fitting by machining some black Acetal and some plastic fish tank tubing.


The circuit:

For the amplifier, I initially decided to use an OP-177 low offset, precision op-amp as this is readily obtainable, (or a Linear 1077 if necessary).Power is applied by pressing a momentary switch with a time delay to automatically disconnect the supply (a 9V PP3 alkaline battery), this should greatly extend battery life for those of us who're a little forgetful.The schematic is shown below; the prototypes have been built and everything (except the sensor) fits neatly into a 100mm x 75mm x 40mm box.I've produced a drawing for a circuit to be made using Copper Stripboard, everything appears to work correctly with both a Teledyne sensor and an IT sensor.

Circuit description:
Electronically minded folks won't need this, but for those less technical I've briefly described what all the bits do.
Under normal conditions, Q1 will be non-conducting, no current will be drawn from the battery, the voltage across pins 4 & 7 of U1 will be zero and the DPM will be off.
When the switch is momentarily closed C1 charges to 9V, this causes Q1 to conduct, its drain (pin 4 of U1) will effectively be shorted to the negative side of the battery, the DPM will come to life and the junction of R1 & R2 will settle at about half the battery voltage.

When the switch is released, C1 will very slowly discharge into R7 (R5 has no effect as Q2 will not be conducting at this point.
After about three minutes (depending upon the values of C1 & R7), the voltage across C1 will have fallen to a level such that Q1 begins to turn off, its drain voltage will start to rise which in turn causes Q2 to start conducting, this speeds up the discharge of C1 through R5 so that everything shuts down rapidly from this point onwards.
If you want a longer delay, simply increase the value of C1.

Diodes D1 & D2 are for electrostatic protection, they ensure that the input of U1 can never exceed the supply rails by more than 600mV. They can be omitted if you take care not to handle the exposed connections on the jack plug.
C2 & C3 are for decoupling the supplies to minimise electrical noise etc.
The amplifier output voltage will always drive to a voltage level that results in the voltages at pins 2 and 3 being equal. The voltage at pin 2 is attenuated by the network R8, R9 and P2 and it is the combinations of these that determine the gain of the amplifier.
The lowest gain is given by: (R8+R9+P)/(R8+P), whilst the highest gain is: (R8+R9+P)/R8.

If you decide to optimise the amplifier gain to suit one particular sensor, the following should prove useful.
The starting point will always be the value of potentiometer, P2, as the available values are limited, typically 10K, 20K 50K or 100K. You'll then need to establish the maximum and minimum gains, AH & AL; i.e. AH = 20.9/Vmin and AL = 20.9/Vmax where Vmin & Vmax are the limits of the sensor output quoted on the datasheet.
You can now insert these figures into the formulae below:
Using the extremes for all sensors, these give theoretical values for R8 & R9 of 33K & 15K respectively.
To be really practical, you should aim for a slightly smaller minimum gain and a slightly higher maximum gain.


Initial calibration:
When the unit is "on" without the sensor connected, the offset potentiometer P1 should be adjusted until the DPM displays zero (0.0) in this state.

With the sensor connected and in air, the output of the sensor will be somewhere in the range of 7 to 17mV, the Calibration potentiometer P2 is adjusted until the DPM reading is 20.9mV (1mV = 1%).


The following should enable fairly accurate offset nulling.

For those with access to 100% oxygen only:
1. The initial calibration procedure above should initially be performed.
2. Calibration should then be performed with 100% O2 - adjusting P2 for a reading of 100.0
3. Then, monitoring air, tweak the Offset potentiometer P1 until 20.9 is displayed.
These last two steps should be repeated until no further adjustment is necessary.

For those with access to 100% nitrogen only:
1. The initial calibration procedure needn't be performed.
2. Using 100% nitrogen, adjust P1 for a reading of 0.0.
3. Then, monitoring air, adjust P2 until 20.9 is displayed.
These steps should be repeated as necessary.
Subsequent normal calibration can be carried out in air, P1 should only need adjusting when a new sensor is fitted.

The best results should be gained by combining both the above techniques. i.e. using nitrogen for zeroing a new sensor and 100% O2 for routine full-scale calibration before use.