Customer:
I’m trying to use an oxygen sensor from SGX with the Arduino library. I need to create a custom sensor type but cannot find the necessary information in the datasheets. How do I configure the sensorType struct for this sensor?
Originally submitted via email support on 25 September 2025. Migrated to the forum for community visibility.
Soldered Support:
Here’s the sensor type configuration for the SGX-OX-ROHS-LP oxygen sensor:
const sensorType SENSOR_OX = {
5.0F, // nanoAmperesPerPPM (approx, based on 0.1 mA in air -> ~4760 nA per %vol; ≈ 4.76 nA/ppm)
0.0, // internalZeroCalibration (oxygen has small offset; can be tuned after calibration)
ADS_GAIN_2_048V, // adsGain (keeps sensor output within ADC range)
TIA_GAIN_120_KOHM, // TIA_GAIN_IN_KOHMS (balances sensitivity vs noise)
RLOAD_10_OHM, // RLOAD (common for SGX sensors)
REF_EXTERNAL, // REF_SOURCE (external 2.5V reference)
INTERNAL_ZERO_67_PERCENT, // INTERNAL_ZERO (best bias point for -600 mV)
BIAS_SIGN_NEGATIVE, // BIAS_SIGN (datasheet specifies -600 mV)
BIAS_24_PERCENT, // BIAS (≈ -600 mV with 2.5V ref → 0.24 * 2.5V ≈ 0.6 V)
FET_SHORT_DISABLED, // FET_SHORT
OP_MODE_3LEAD_AMP_CELL, // OP_MODE
};
This is based on the datasheet specifications for this oxygen sensor.
Attachment omitted in migration: ds-0549-sgx-ox-rohs-lp.pdf