Buying considerations: calibrations required; component specs

Hi, I am considering the DIY Pro pre-soldered but have two questions:

  1. What procedures are needed to calibrate the unit? I live in a high rise apartment in which it’s not practical to do something like put the unit outside for 6 hours. I also do not currently have an air purifier and would not want to buy one before understanding what my baseline situation is.

  2. One of the things I do not like about consumer sensors on the market, in addition to not being able to get access to the data, is the low transparency about specs. Specifically, accuracy, working life and drift for each sensor. For example the company Airthings says “The lifespan of the Wave Plus and it’s sensors would be similar to that of a smoke detector so it should last for many many years if kept in the recommended operating environment.” I don’t believe it particularly for VOC. (I am are the Airgradient DIY does not ship with a VOC sensor). Specificity lends credibility.

Thanks for any help & insights anyone can provide!

The only sensor that needs calibration is the CO2 sensor. It has an automatic baseline calibration that kicks in every 7 days but if you do not want to wait that lomg you can open all windows, ideally place the monitor close to one for at least 15 minutes. Then flash the calibration code and it will calibrate to 400ppm CO2.

However, in most cases it is easier just to wait a few days until the ABC kicks in.

All other sensors are already well calibrated from the factory and do not need calibration.

Thank you, that is helpful! I Using some of the terms you mentioned, I found CO2 Sensor Calibration: What You Need to Know that further educated me.

Synthesizing that, I would say ABC is sensible but dependent on the space being unoccupied for sufficeint time to reduce CO2 levels to 400. Which, given I work from home in a newer, more airtight building, might not be every week. Not saying it’s a flaw, rather that it is important information to know and the fresh air calibration should probably be done perhaps quarterly. Of course it would be most important when it would be most problematic: in winter. But thanks to global warming there are days in winter that are less cold :wink:

Also now I see that the kit descriptions specify the exact sensors included, nice. Then the specs on each can be looked up.

I will say that I have experience with Sensiron SHT20 from use of a Sensorpush humdity monitoring device for use with an acoustic guitar. That is a less accurate unit than the SHT31 used in AirGradient DIY, but what it shares in common with the SHT31 is a claimed drift per year of <0.25%. My experience over about 3 years was they saw more drift than that, as calibrated with Boveda 32% RH kits. But then I also had the experience of a Boveda calibration kit being clearly out of spec (like 41% RH - which Boveda tried to blame on the sensor but, after purchase ofanother kit, revealed it was the kit).

Suffice to say I like to “trust but verify” specs - want to know them and be able to calibrate, where feasible. Good that AirGradient discloses the sensors used. Also the data access would make it easier to assess drift over time even where calibration not possible.

Yes, we do sometime see instances of CO2 not reaching 400ppm within a week and this is definitely an issue.

The S8 CO2 sensor we use allows the disabling of the ABC and this can be done in code. Since it is an open source kit, you could probably write a few lines of code and disable it.
However I have no practical experience about long term drift with the S8 with disabled ABC. So you would probably still need some reference tests from time to time.

Hi team, this study indicates that a calibration might be needed? Maybe I missed something.

Evaluating Low-Cost Commercially Available Sensors for Air Quality Monitoring and Application of Sensor Calibration Methods for Improving Accuracy.

1 Like

This is a great find @Victor_Ottati , thanks for sharing. By the way - did you create the link such that it goes straight to the relevant text using Chrome browser? I’ve not seen that before, very cool. Unfortunately it’s not reliable in Safari.

Skimming the paper, I see that the authors found the Plantower PMS5003 used by AirGradient DIY to be the most accurate of the 3 tested, so that’s good. Where they raise the need for calibration is for PM2.5 concentration > 500 µg/m3, which would be super hazardous and so I don’t know how much it would matter for purposes of taking action (vs science) at that level.

However, calibration is useful not only for accuracy but also to correct for sensor drift over time. I found a 2019 study, Long-term field comparison of multiple low-cost particulate matter sensors in an outdoor urban environment, which, skimmed, I read to say the PMS5003 did not show drift in 320 days - which is good, but not all that long.

It’s unfortunate there’s not a way to environmentally calibrate these PM sensors as there is for hygrometers (salt test) and CO2meters (fresh air). Something like a can of compresssed particulate air with a known dirtyness :grin:

1 Like

Well, much more interested in joining this community now that my high rise condo was doing work on the building today and I found myself seeing AQI of 500 inside using a portable sensor (and yes it smelled like a forest fire - I am pissed….”Don’t worry if you smell smoke, it’s just the building work “ ah…no!)

I see the DIY has what looks like a usb power connection. @AirGradient, can it

  1. Be powered by something like a LiIon power bank like you might carry around for your phone
  2. Be flashed in that scenario as you suggest above?

a) Yes no problem with power bank. I do that often.
b) Not sure what you mean exactly here.

@AirGradient Thanks for your response. I understand the AirGradient can be powered by a portable battery. I would use that to power it outside and calibrate CO2 there. But, can it be flashed while powered by battery? Referring to your quote above:

I would think so, but seems like I always read warnings against flashing firmware on battery power w/r/t other devices. I recognize that may just be a precaution against a battery going dead during flashing but I’m not knowledgeable about hardware so thought I’d check.

@N_Ko maybe you can help me. From your comment here:

…it sounds like you did a manual calibration by
a) plugging the USB power cable into your laptop - thus it was effectively battery powered (albeit by your laptop’s battery)
b) running some software on said laptop - which I don’t currently understand but believe I could learn once I have an airgradient and start following instructions, researching posts etc.

Is that right?

All of this is moot to me if ABC can’t be turned off. Perhaps ABC works for many people, but I live in a relatively airtight development. Using an aranet4, I typically don’t see CO2 below 550 unless I’m gone for several days…and even then, 500 was lowest I saw.

I’ve reached out to Sensair to see just how ABC could be turned off. Some pages I’ve found so far imply to me it cannot be done writing a few lines of code - only by the purchaser using a development kit which has both hardware and software components. I’ll report back with what I learn.

That’s right, the board was powered via USB using the laptop. The sketch example is available in the library I mentioned. Essentially you are just uploading a piece of firmware to the board that is built to recalibrate the sensor, there is a decent tutorial on the setup of a diy air gradient board somewhere on their site.

1 Like

OK. If @N_Ko’s method for manual calibration worked using the S8_UART library, I’m going to assume that ABC can also be turned off, because that’s also referenced in the library here (line 147)..

Thanks to @N_Ko for documenting his experience and answering my question! I have ordered AirGradient Pro. :partying_face:

My AirGradient Pro Soldiered is up and running and I can confirm the S8’s CO2 ABC can be turned off using the examples in the S8_UART library. Will come back to post a little more instructions but it’s very figure-outable if I did it without any prior knowledge of Arduino IDE :slight_smile: