CPCSupport:Cheap CO2 Monitors: Difference between revisions

From discuss.online Wiki
Jump to navigation Jump to search
(finish)
(remove draft)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
'''DRAFT'''
Let's step aside from respirators for a bit...
Let's step aside from respirators for a bit...


Line 102: Line 100:
* Probably costs less than NDIR!
* Probably costs less than NDIR!
|
|
* Slow. Real slow.
* Slow. Very slow.
* Quite inaccurate.
* Quite inaccurate.
|}
|}

Latest revision as of 20:09, 28 June 2024

Let's step aside from respirators for a bit...

20+ years ago, if you wanted a portable NDIR CO2 monitor that you didn't have to lug around, you had to go to a company like TSI/Alnor Instruments, and potentially shell out thousands for a CompuFlow, Q-Check, or IAQ-Calc. Later, cheaper sensors started emerging, and were incorporated into newer instruments sold by companies like TSI, with maybe some more competitors driving the price down, but they were super niche and uncommon outside of industry.

The solution in the past would've be to say: screw it, let's just estimate CO2 using some other, cheaper sensor. Or forgo measuring CO2 in our buildings altogether. But thanks to sensor competition in the late 2010s by companies like Sensirion, the cost of actually-usable CO2 sensors has come way down, but still cost hundreds of dollars, right? You may be surprised. Here, I'll review three different ways of measuring CO2 reliably and cheaply.

Bear in mind that this is not an invitation to stop wearing your respirator because the CO2 has dropped below 1000 ppm. Whatever device you choose is going to be mostly informational, since SARS is exceptionally durable now, sometime even out of doors. It is useful for discovering how contaminated a room might after everyone has left, since reports indicate that the inactivation of SARS in a 3000 PPM+ environment may plateau, potentially putting you at risk even when an empty room should be ostensibly safe.

Device 1: CO2e via VOC

A couple years before the pandemic in 2020, a bit before CO2 monitors became widespread, I got a JSM-131 a "CO2" sensor that actually measures VOCs. And you can tell it's estimating CO2, because a bit of alcohol will cause the estimated CO2 to skyrocket. And helpfully, the JSM-131 is old enough that it has displays for VOCs and formaldehyde to confirm this. And since the pandemic, these devices have seemingly flooded the market.

While accounts say some models have been reportedly accurate at estimating CO2, I've never really been able to get a good CO2 reading this way. It always seems to be an order of magnitude off, like 500 ppm out of doors, and around the same indoors with an air purifier turned on. A bit problematic, since air purifiers can't remove CO2.

That being said, they're cheap. You could find these devices for around $20 five years ago, and they've since fallen to below $10 on Aliexpress, with sensors presumably costing next to nothing. Although worryingly, some people are paying prices well above $10 for these things.

Summary:

Pros Cons
  • You can measure VOCs?

(if the device allows)

  • You can correctly estimate CO2 sometimes?

(If the manufacturer put in the effort, unlikely)

  • It's cheap

(If you didn't overpay)

  • Usually not accurate at measuring CO2

in many circumstances

Device 2: Cheap NDIR

Most companies cheap enough to sell you dodgy eCO2 sensor aren't going to put in the effort to try and sell you an NDIR CO2 sensor, and the reputable companies know this. That's why you can see companies like Aranet selling them in the $150-$250 range.

But let's say you want to pay less than that. Provided you're well versed with contemporary operating systems, for $60, you can get an Sensiron SCD-30 sensor from Adafruit. Then get an FT232H and an I2C cable.

From there, getting this thing to work is a bit cryptic, but here's a very rough idea if you're on Desktop Linux:

  • Make sure i2c is enabled on your FT232H.
  • Setup a Python virtual environment.
  • Use your Python package manager to install Adafruit-Blinka, and Adafruit-Circuitpython-scd30.
  • Set up these udev rules.
  • Set environment variable BLINKA_FT232H=1.
  • Import adafruit_scd30, busio, and board. You may want to also import time to slow down Python execution. Word is, 2 seconds is the best.
  • Bryan Siepert's code called busio.I2C with the parameters board.SCL, board.SDA, frequency=1000. From there, you can use that object to call adafruit_scd30.SCD30, and assign it to a variable, like... 'scd'.
  • There is an auto calibration feature, but I find it's best disabled by setting scd's self_calibration_enabled parameter to False.
  • It's better to just force a recalibration to 425 ppm (our current average CO2 concentration) by setting forced_calibration_reference in scd to 425.

If you didn't bother Googling any of that, this might not be for you. But that's okay: for ~$100, you could get Nukit's NDIR CO2 controller for controlling an outlet based on CO2. (Disclaimer: I have not tested this.)

Other CO2 detectors can be found here.

There is the obvious disadvantage of only being able to measure one room at a time with Nukit's solution, since it's not designed to be moved around. But, in any case, assuming you got a NDIR sensor somehow, what is the sensor like to use?

As far as I can tell, once you have them calibrated and locked onto a certain CO2 reference, they tend to stay put. So, if you set it at 425 ppm outdoors, and come back the next day, provided it's not over cast, it will usually be back at 425 ppm, which is actually considerably better than the +/- 10 ppm estimate from Sensiron. And they're generally pretty quick at adjust to CO2 changes too.

However, if you happen to purchase the bare-bones version of this sensor from, say, Adafruit, be careful not to point it towards the sun. Short term, you'll get erroneous CO2 readings and you might need to recalibrate. Long-term, the damage is supposedly permanent. So, make a paper enclosure, or similar, and don't point this sensor toward the sun.

And as far as I can tell, despite the existence of considerably cheaper NDIR CO2 sensors described on Breathsafe's website, this might be most expensive sensor of the three.

So, here's the summary:

Pros Cons
  • Most accurate of the three
  • Rock-solid calibration
  • Most expensive of the three
  • Cannot be pointed towards the sun

Device 3: Photoacoustic

In the last, well, year or so, Sensiron has come out with the SCD-40. The SCD-40, mode of operation, apparently, is to use acoustics to detect CO2 concentration.

Adafruit has one, and Temtop has one: the C1. Presumably, coming from a reputable manufacturer, it should perform better than one of those no-name NDIR detectors, right?

Well, it isn't quite that simple. Photoacoustic sensors are painfully slow. Sometimes they detect an increase in a few tens of seconds or so, and other times it takes 10 minutes.

Not to mention, the accuracy of these things is +/- 40 ppm. That's like... almost a 100 ppm range describing reality. As a result, you might find yourself calibrating more often.

But hey, it's cheaper than NDIR, it actually detects CO2 (albeit somewhat badly), and you don't have to worry about the sun!

Pros Cons
  • Actually detects CO2!
  • Don't have to worry about the sun!
  • Probably costs less than NDIR!
  • Slow. Very slow.
  • Quite inaccurate.

Conclusion

So there you have it. CO2 detection is not that expensive now. Even the Aranet can be found under $200 at times now... and so long as you aren't in industry, these cheap CO2 detectors are probably fine. (Keep wearing your respirator though!)