I am trying to read from the SGX MICS-6814 gas sensor. The documentation has 2 small sections on how to read the output:

From the datasheet:

From the FAQ document

To start with they show the resister order differently. But mostly I don't quite understand what they are saying about switching resisters. I am using a 16bit ADC and they don't really give any indication how to work out what load resistor/s to use. Can anyone at least explain what the theory of what they are trying convey?

About "switching resistors" (with respect to the first picture):
If you set both I/Os to high impedance (not driving a logic level) you effectively have all resistors in series. If, for example, you set the both IO's to "high / Vcc", you effectively ignore the first two resistors, thus reducing the divider to 6k8 and RS.

The reason one may want to switch resistors is, as dannyf already pointed out, that you may not have enough resolution to properly covert the wide range of the sensor value. By using different dividers, you can improve the situation.

• You only need to use one IO at a time. Using both doesn't hurt, but makes things a wee bit harder to understand – Scott Seidman Mar 7 '17 at 11:46
• Is there a calculation/formula to figure out the best parings to get either the highest possible or a desired resolution? – uhsl_m Mar 7 '17 at 12:28
• @uhsl_m: For a small range resistive sensor, one would choose a reference resistor somewhere in the middle of the sensor range. If the sensor range of interest is from 1k to 10k for example, one would probably choose a 4.7k resistor. Since this sensor has a very wide range it really depends on if you require the whole range and what accuracy you require. Its nothing wrong with just using the suggested values as a start, independently of you ADC resolution. But you could potentially get away with just a single resistor if you really have the full 16-bit resolution. – Rev1.0 Mar 7 '17 at 14:12

But mostly I don't quite understand what they are saying about switching resisters.

that's because of the dynamic range of the sensor, from 1k to 1M -> if you were to pick a fixed resistor, you would be out of range at either the high end or the low end, on an 8-bit adc.

you may not need that for a 16-bit adc. do your math to be sure.