Sensor accuracy and drift: what to expect over time

Accuracy, repeatability, and drift are different things, and each channel in the Sensirion SEN66 behaves differently over the years. Here are the datasheet figures with their conditions, and what to do when a reading looks wrong.

Also in: Français Español

An ultrasonic distance-sensor module wired onto a small robot chassis, lit in purple and orange.
Photo: Lisha Dunlap via Pexels

Three ideas get mixed up whenever someone asks "is this reading accurate?" Accuracy is how close a reading is to the truth, as a reference instrument would measure it. Repeatability (precision) is how closely repeated readings of the same air agree. Drift is how much either one changes over months and years. A sensor can be repeatable but offset, accurate but noisy, or accurate today and drifted later. Every figure below comes from the manufacturers' datasheets and holds only under the conditions stated there.

CO2: Sensirion specifies the SEN66 at ±(50 ppm + 2.5% of reading) from 400 to 1,000 ppm, ±(50 ppm + 3%) from 1,001 to 2,000 ppm, and ±(40 ppm + 5%) from 2,001 to 5,000 ppm, with repeatability of ±10 ppm typical. Those figures apply after two days of operation that include fresh air, with automatic self-calibration on and fresh air (about 400 ppm) reaching the sensor at least once a week. Sensirion adds a typical drift of ±(5 ppm + 0.5%) per year, starting after five years. A room that never sees fresh air, such as a tight home that is never aired out, falls outside those conditions, and the self-calibration can drift. To check a sensor, look at a room's 30-day CO2 history in the web dashboard after a thorough airing: its lowest readings should come close to the outdoor level of about 420 ppm.

Particles: the SEN66 is calibrated against a TSI DustTrak DRX 8533 photometer in ambient mode. Its PM1 and PM2.5 precision is ±(5 µg/m³ + 5% of reading) up to 100 µg/m³ and ±10% above that; PM4 and PM10 are calculated from the size distribution, with wider limits. Sensirion caps long-term drift of the PM precision limit at 1.25 µg/m³ per year below 100 µg/m³, and the fan runs a short self-clean once a month (see why the fan runs on Tuesdays). Humidity is ±4.5 %RH typical at 25 °C between 30 and 70 %RH; temperature is ±0.45 °C typical between 15 and 30 °C. The Bosch pressure sensor is ±0.50 hPa absolute, with long-term stability of ±0.16 hPa over 12 months.

The VOC and NOx indexes are a different category: relative indexes from 1 to 500, not concentrations, so they carry no concentration accuracy. The VOC index centers on 100 and the NOx index on 1, each against the room's own recent history. Sensirion specifies repeatability of ±5 VOC index points and ±10 NOx index points (or 5% and 10% of the reading, whichever is larger), and both meet spec after about 1 hour (VOC) and 6 hours (NOx) of operation. "Drift" doesn't apply in the usual sense: the baseline follows the room, which is the design intent. See optical vs metal-oxide sensing for the physics.

Confidence comes from knowing what kind of number you are looking at: measured (particles, CO2, humidity, temperature, pressure), indexed (VOC and NOx), contextual (light), or inferred by software. The evidence set behind the figures above (the SEN66 datasheet, Sensirion's specification statement, and the calibration certificate) defines what the components support under stated conditions; in the field, airflow, dust, humidity, and placement matter too. In practice, don't react to a 3 µg/m³ change in PM2.5, which is inside the sensor's precision; do react to a 30 µg/m³ change, which is well outside it.

When a reading looks wrong, first check the room: new furniture, a stored cleaning product, or a different cooking routine usually explains it. Then give the sensor fresh air: open windows wide for 15 to 30 minutes, and CO2 should fall toward outdoor levels (about 420 ppm); with windows open, indoor PM2.5 should move toward the outdoor reading shown in the app. Sensirion rates the SEN66 module for a lifetime of more than 10 years of continuous indoor use (a mean-time-to-failure estimate). See sensor cross-sensitivities and where the numbers come from for the broader picture.

References

  1. Sensirion SEN66 datasheet (PDF)
  2. Sensirion SEN66 specification statement (PDF)
  3. Sensirion SEN5x and SEN6x calibration certificate (PDF)
  4. Bosch BMP390L datasheet (PDF)
  5. Texas Instruments OPT3001 datasheet (PDF)
  6. Sensirion - VOC/NOx Gas Index Algorithm github.com
WhatsApp support