Actually, the reason CO2 sensors are used for air quality monitoring instead of oxygen sensors has nothing to do with cost, energy usage, size or how complicated they are (though they are costly). It's because we're not interested in oxygen levels, as it's very difficult to lower the oxygen levels to any appreciable level unless a room is sealed with a lot of people, but CO2 itself is toxic in high concentrations, and it can produce dizziness, feeling tired, and other related symptoms, starting from 1000-2000 ppm (that's only 0.1-0.2 %! At those levels oxygen concentration would, at most, fall from 21 % to 20.8-20.9 %, not near enough for any appreciable effect). Here's a link to a Tom Scott video about that if you want to learn more: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-1Nh_vxpycEA.html.
I am not sure about the whole thing anymore. In submarines with atomic bombs on board and in the Space Station the CO2 level seems to be around 5000 ppm all year round. I hope, these guy do not loose their abilities to think... I would have been interested in the O2 level at the end of his test.
@@AndreasSpiess that is why the have tests before sending people down or up. :-) Another thing. In Soda generator, like Soda Stream, there are CO2 gas tubes. So there you also will have access to pure CO2.
@@AndreasSpiess not sure about subs if they use a hack to compensate like increasing o2 levels or playing with pressure , but for space your o2 expenditure is greatly decreased in low or no gravity situations ,so probably can tolerate much higher co2 concentrations kinda like sick people here with reduced lung capacity might not need supplemental o2 when not doing physical activities. if you use less oxygen your lungs have less gas exchanging to do.
I can't find anyone measuring o2 in different areas: forest, city, dessert, sea, cave, basement, apartment etc. that data could be interesting, why is nobody measuring that?
CO2 levels can go up to 7000 ppm in submarines and space capsules. These levels are tolerable, but the CO2 level is an easily measured proxy for the usually accompanying high levels of VOCs and other air contaminants . We once measured CO2 levels in a crowded art studio. The air was stuffy and oppressive. Levels were 4500 ppm. The room needed more ventilation. I have also measured levels outside when many trees were photosynthesizing. They were just above 300. "Ah, fresh air!" They can get even lower during the day in a growing cornfield. And, your breath might be 40,000 ppm!
Interesting information! I also read about the high levels of CO2 in submarines. This is why I thought, the oxygen level must be important in crowded rooms.
yes just like you say - one of the new buildings where I worked had a CO2 sensor which was supposed to open up outside air dampers to bring in more air. But while the engineers had specified it and the controls company installed it - but they never calibrated it or made sure that it worked properly. So it did not really ever do anything useful. I was on maintenance but that was not my building and we were all just getting up to speed on how the new DDC HVAC systems were supposed to work and also too busy fixing the most blatant screw ups that the controls company left for us. No they never had anyone commission the buildings which did seem really stupid for multi- million dollar buildings. I wish I had seen your video many years ago so I could have fixed that CO2 sensor issue !
Just wanted to reach out and say thank you for the content you are producing. The quality is excellent. You are structured and follow a clear logic in your presentations. Great overall! Keep it up!
Incredible presentation ,as an Environmental Engineer who works with these types of sensors and many others I am highly impressed of your depth of knowledge in this field. Kudos !! you never cease to amaze me you have an incredible grasp of so many fields .
As a German living in Sweden I have to point out that SENSEAIR is a Swedish company. I have recently been involved with them as being an opponent in a thesis defense which deals with the improvement of both their CO2 and CH4 sensors.
I do not seem to find the online version of the thesis... www.miun.se/en/Research/research-centers/stc-researchcentre/news-from-stc-research-center-eng/News-archive/2019-10/bakhram-guynullin-presents-his-licentiate-thesis/
Andreas Spiess I have been involved in a plug-in for ESP-Easy firmware for SenseAir S8 sensor. Look here: github.com/letscontrolit/ESPEasy/blob/mega/src/_P052_SenseAir.ino
Nice coincidence, jist yesterday I started trying out a VOC sensor to make a "fart detector", planned be used to identify when our cat uses the toilet.
As always, nice no BS explanation. I hope in the next video you also explain the best sensor/method to measure air quality on workshop environment. Like source from solder fume, glue gun, 3d filament, etc. Can't wait!!!
Thanks for yet another great video. I have been using the MH-Z19B in exactly this way, to alert when I need to ventilate the room. Has been working for over 2 years now without any problems. However I was not able to make it work on 3.3V, only on 5V. Second thing - i needed to turn off the correction (ABC) - otherwise the values would drift off considerably with time, especially if windows are rarely opened in winter. The SCD40 looks very interesting. Would like to try it out as well, I guess it should also have a reasonable power consumption to use it in battery powered device. Then you can even carry it with you everywhere))
Nice to see that I‘m not alone to point out CO2 monitoring in schools! At the school of my kids I‘ve implemented a project making CO2 traffic light using MHZ19B sensors and RGB LED. After making some prototypes the teachers took over the idea and they made some enhancements as part of a junior academy project. I think I planted something...😀
I did a lot research on Voc sensors. Voc (mox) sensor are heavily influenced by humidity amongst other factors. That's why your sgp30 shows that high value during the night. Even very low changes in humitdy counts for some 100ppm voc. I'm not aware of any single implementation that is able produce values usable over a period for days or weeks. Yes, they respond to changes very good but not on a absolute level. Co2 (mhz19b) must be the primary indicator.
Nice video. You are an inspiration. I just used senserion TVOC and senserion CO2 sensor a couple weeks ago. I actually used your node-red videos as reference. Thanks alot for that btw. Anyways what was shocking for me where the tvoc readings when I 3D printed. They where off the charts, and and for sure not healthy.
Bananas emit ethylene gas. This is why they can be picked before they are ripe and then ripened in stores that circulate the ethylene which helps the ripening process. My wife places unripe pears next to the bananas to help the pears to ripen. Bob
The son of my brother worked in a company where they ripe the bananas for Switzerland's biggest retailer (just in time). I did not believe it first ;-)
It is shocking to see the difference in background CO2 in 6 years from 2018 to 2024. NIWA Baring Head in NZ is 421.5ppm today and Mauna Loa Hawaii is 427.5ppm. So it is likely that the new 2024 calibration point should be around 430ppm for the Northern Hemisphere and 420ppm for the Southern Hemisphere. Your video is , still, extremely helpful. Far more than any other on RU-vid, even recently, related to these inexpensive IAQ sensors. My very cheap (
@ 17:00 "[ ...] without oxygen the fire stops. Problem solved without collateral damage." As long as there are no humans in the same room. Else there will be a lot of collateral damage!
No that’s fine, because a good IT dwarf will send other people (e.g interns) to overlook the most important stuff (read servers, because some cost oriented people didn’t allow you a decent video stream of your puppies) and will monitor its health (obviously I’m talking about servers one). If humans probes eventually returns, everything is fine, it’s means your monitoring is validated by a secondary data flow (just document it). If not a review of your backup plan could be an consideration.
And that is why all such systems that I've seen use an inert mix of gases that are non-toxic (CO2 only would not be good). Some data centres use a reduced oxygen atmosphere (15-16%) which prevents fires from even starting, as the oxygen content is too low. Some people are more affected by this than others, getting more easily exhausted and getting a headache when working there, while others barely notice (luckily I'm in that last group).
I think there's an evacuate alarm that goes off. Gives people a few minutes to get out. I also think it's not just pure CO2, but a mix of stuff, so any occupants would still pass out, but probably not die. Smoke inhalation/fire is probably going to kill them before the CO2 does anyway, but I'm no expert.
HaHa, Back in the day when I worked on large IBM Mainframes, there were Automatic Halon Fire extinguishing systems which would rob the fire of oxygen. Needless to say it would be disastrous if you hung around! Yet, there were posted signs asking the operators to unload all tape drives, label them, then store them carefully in the fireproof and exit the computer room swiftly if possible.(!)
I have to say I like your presentations. A handy video, like most of yours are - I'll have to check out the Raspberry Pi series again! Thanks for doing these :)
We "submariners" in the basements maybe are used to higher dosages. In a submarine the CO2 concentrations are at least 10 times higher than in fresh air!
@@AndreasSpiess I did not know! I learn something new every day from you Andreas! Thank you very much! PS: Can't remember if I asked you also about my kit to make Tesla Coil. It is on my youtube channel: ru-vid.com/group/PLv52A7rm-UViZEOlzZfZOB9Gl8cjS3ze5 the very first, newest video. I don't like to hurt myself or someone else, but it would be nice to make this TC soon. So far no answers from anyone.
I have ordered a PMS5003 air particle sensor and will be trying this once it arrives. I originally wanted to get an SDS011, but I haven't found them locally. Does anyone know which is better? There is also one that does not use a fan, but I couldn't find it last time I looked - the fan will wear out eventually. Unlike Switzerland, South Africa has serious air quality issues in many places. We want to teach school kids about this. Many adults I know are completely unaware of this.
I'm glad you used these higher quality sensors. The MQ-x sensors that come with the starter kits are relatively useless. I just finished taking 120,000 readings of my lab and your video has given me some great information of things I need to check. Thanks for all you do.
The reason lambda sensors are not used indoors, is because they need to be quite hot too work. Around 300 to 600°C hot. Inside the exhaust of an engine this is not too big an issue, but in open air it would take quite a bit of power
Perfect timing. I just hooked up my first MHZ19B 2-3 days ago. Sometimes i get massive co2 value drops that i can't really explain. Like in the middle of the night without opening a window or door. One drop could be the automatic 24h calibration, but the other ones confuse me a little bit. One problem could be that it's still on my breadboard powered by the 5V pin of a D1 Mini, another one could be that 2-3 days are just not enough time to be fully calibrated. But so far it does a much better job than the CCS811 eCO2 i tried a few months ago. Maybe those TVOC Sensors like the SGP30 / CCS811 could be useful for a hobby room with all kinds of gases / particles.
I have now a ESP32 with different sensors reporting. I hope, that I will see a pattern after a few month. I disabled auto calibration to see what they really measure and only will enable it when I know that.
Automotive O2 sensors will only work at high temperatures, not room temperature. Some O2 sensors have built in heaters or rely on the vehicle to heat the sensor as it warms up. The vehicle engine and ECU can run without the O2 sensor, this is called OPEN LOOP when cold. When the engine and O2 is heated, the ECU then runs using the O2 sensor reading, CLOSED LOOP operation.
I am back in school later in life and I agree that we need sensors in each classroom. I always thought there was a reason such as this that you get exhausted after 50 minutes in a class.
i have a sharp air purifier that triggers the fan whenever i fart. it also gets triggered by alcohol fumes, like in anti-bacterial hand wash. it must be almost 10 years old now but the sensor is still very sensitive to changes in the air
Nice coincidence There was a "zukunftstag" at ETH Zurich two weeks ago. We have built CO2 measuring boxes with kids. At the end they could take them home and place them in their classroom now they know when to let some fresh air in.
CO2 levels in outdoor air vary considerably over the day and between seasons. They also vary substantially between locations, even at the same altitude. Using a global average is like using the average of telephone numbers to call somebody. CO2 gas presence is a sign of life... Essential for the carbon cycle that sustains our lives. When CO2 levels decline below about 180ppm, plant life struggles. You could hike up to the treeline on a nearby mountain and calibrate your sensor to a baseline of about 200ppm during daylight hours. CO2 levels can be higher at night due to decomposition of biomass and a slight increase in air pressure... But without sunlight, the higher CO2 is of no use to plants. Exhaled breath contains about 40000ppm ... sometimes higher. If your readings are substantially lower then it's likely that the sensor is wrong. P.S. drowsiness at University lectures was more closely correlated to the acoustic emissions at the front of the theatre than ambient CO2 levels 😀
Nearby, well flushed locations are within about 5ppm. See e.g www.mdpi.com/2073-4433/9/10/367 Globally, variations are wider... IIRC 20ppm variation at sea level between the tropics and temperate regions of the Atlantic, at the same time of day. That was by measurements taken during the 1920's. Proper calibration is only by calibration gas mixtures.
True, but relying on the ABC algorithm started by Senseair in early 90ties tracks and keeps in sensor memory only the lowest such outdoor reading, which is very easy then to correlate to the atmospheric baseline. Temporary local emissions and peaks and other variance over the day/week are don't care. Seasonal variance (green plants in summer vs. autumn and winter bio decay) still apply if there's no added intelligence, but that's not a very big impact to atmospheric baseline and NDIR sensor accuracy. The true strength of ABC is however that any faulty drift offset over the lifetime (15+ years) is naturally delimited to the continuous effective sampling of the atmospheric baseline, so it never spirals out of control compared to dual-channel NDIR sensors that rely on internal reference signal ratios that is "assumed" pristine forever but typically only lasts a few years.
also higher CO2 levels help plants grow faster (and absorb more carbon as a building block)! btw do you have any data on o2 in different areas: forest, city, dessert, sea, cave, basement, apartment etc.?
I deployed MHZ19B and it works like a charm with ESP32 It did not change my life but I am opening the window more often - bills for heating will go up during winter ;-) Btw after researching available sensors I am happy I decided to go for this one - it gives nice and stable readings - going to sleep with 400ppm and in the morning it is 1500 - hmm, now I understand why sometimes I wake up more tired than I went to sleep
@@AndreasSpiess I agree, however OSHA agencies provide "acceptable level < 5000 for long time work (8h or so)" - I believe it is way too high - I set up the alarm in my home assistant at 2000 ;-)
This is similar to my first ESP32 project, an atmospheric monitor/logger that measured particulate and combustible gas concentration with a Shinyei PPD42NS and an MQ-2 sensor. It uses GPS for a reference time signal and a BME280 sensor for reference pressure, temperature, and humidity values. I looked into MQTT communications but got distracted by trying to estimate power requirements (was hoping to add solar panels and battery). The particulate sensor uses a resistor as a heating element to move air and particles past the IR sensor and I believe that dominated the power consumption. Search for apthorpe/aerosniff on BitBucket for the code and Fritzing schematic & circuit diagram if you're interested. Thanks for making ESP32 development so accessible; I wouldn't have been able to do that project without your videos :)
A thing to keep in mind. If it's only about how people feel, measuring CO2 is is right way. Higher CO2 concentrations are what makes us feel bad. But it's not a good indication on wether or not the environment is suitable for you, or healthy. That's a "fun" thing about humans. We indicate if we are suffocating from oxygen depletion by measuring CO2 concentration. You can easily suffocate without noticing if the oxygen get's replaced by something different than carbon dioxide
I think the major problem with lambda sensors is the high operating temperature required (300° to 600° C). I've been in pretty hot meeting rooms before but even this is a bit much.
@17:21 your breath is lethal! ;-) This is a good reason for such a device. In my experience teachers can be extremely boring, and having a poor environment for your brain doesn't help.
Because of this sensor I open world of ESPs and other controllers... But be careful with them - there are 2 versions, and as I understand manual calibration of first one (without B) may "destroy" device - as it need 0 CO2 to calibrate. Second one use more reliable strategy to auto-calibrate and manual calibration assume to 400ppm baseline. And, I have no idea how they differ if you have them in hands...
As always amazing video master Andreas. I think I will try it in my university classroom, because boy in Physics class we are always tired, I am 100% sure it is not because of the boring subjects but because of the high CO2 concentration. I am curious to try multiple VOC sensor, I will try with the bosch BME680 and SGP30, because CO2 is still above my maker budget. Again thanks for the amazing video!
Andreas, Thank you performing the tests that I would otherwise have had to perform myself! By the way, if you want an excellent supply of CO2, you could try Dry Ice, which is nothing but frozen CO2. I believe you can get it from grocery stores, or perhaps from ice cream suppliers. Stay safe!
Thanks for the informative video, just what I needed right now. :-) I’m working on a MQ135 VOC sensor and Sharp infrared dust sensor project. The MQ135 fluctuates a bit in it’s output values so I guess it’s best for short term relative measurements. My program periodically adjusts the “zero” value to compensate.
It always depends on which gases you are interested in. The problem of calibration is the assumption that you know when the values are lowest and how much lowest is. To determine that, you need a proper sensor. Otherwise all is only guesswork...
There were occasions where I considered shooting myself. Fortunately worked for a company once where meetings were forbidden
4 года назад
In case you get the SCD30 - I made a couple of packages to get it running on a Raspberry Pi in Node.js, Node-RED, and a CLI: * www.npmjs.com/package/scd30-node - Node.js TypeScript API * www.npmjs.com/package/scd30-cli - CLI * www.npmjs.com/package/node-red-contrib-scd30 - Node-RED node Thought some of y'all might find this useful.
Heads up for Raspberry Pi users concerning the SCD30 as it mentions I2C Clock Stretching in its documentation which could be a problem for Raspberry Pi users who want to use the SCD30 I2C interface, so you might have to use one of the other SCD30 interfaces with a Pi. Andreas perhaps a good video topic would be I2C clock stretching and the Raspberry Pi.
A nox sensor would be useful to detect the dirty air in cities. Especially in the cold season, there are inversion weather conditions. Poison gases accumulate on the ground, so that it stinks terrible, so you better keep the window closed. Btw. LPG does not release nox and costs less than half its consumption.
yeah i'd like to use induction heating to get the sensor up to temperature, then turn off the hf during a reading... chemical sensors are expensive and need to be replaced fairly regularly
@@coffeecuppepsi You might also consider looking at lambda sensors with built in self regulating heaters, but be aware that they get veeeeeery hot on the inside(up to 700°C) and also quite hot on the outside(the metal outside is only seperated from the 700°C inside by a little piece of ceramic) so you need to isulate them and limit the airflow or you will cool the sensor down too far (because the heater is quite weak on many, as it is only made to hold the temp. of the sensor at high gas- /airflows when the gas is already at a similar temp.) , wich will badly mess up the readings.
I bought a set of 9 cheap gas sensors a while back but just got around to trying them now. It was my first ESP32 project using more than one ADC input, so I was very surprised and disappointed to find out that if you use WiFi on the ESP32, half the ADC inputs are disabled, and in the case of my DOIT ESP32 DEVKIT V1's, the ADC pins labelled VN and VP also don't work, so I was left with 4 usable ADC pins. I'm considering disabling WiFi, and using Serial Comms to get an ESP32 to use an ESSP8266 to do the WiFi comms to my Node.Red server. Or I could just use 2 ESP32's to handle 8 sensors.
We started a project in our school with a small co2 "traffic light" on an e-ink display. We are on our way to setup one sensor (with temp and hum) in every room and show the data in Grafana on a monitor in every floor. The VDE gave us 2000€ for this project. If you are interested in, contact me.
Great video! I would be very interested if you can measure co2 or voc (or air particles?) increase while running your 3d printer. Especially PLA/PETG/ABS which we home-makers can use. Anectdotally I‘ve sometimes felt the „meeting effect“ in the beginning when I had the printer stationed in my bedroom.
@@AndreasSpiess Printing ABS should generate styrene gas which is a VOC - it'd be really interesting to measure the impact of this at various distances from the printer.
Hi Andreas! Do you know the CCS811 VOC sensor? It's the most popular on AliExpress. I've been using it for a while and it is pretty accurate. By the way I have a question, do the sensors you showed need a burn-in for accuracy? Hot plate ones often need a 48hr burn in
That other sensor you showed is not a German company, but a Swedish company SenseAir. The sensor you show is the S11, or Sunrise sensor. You can see the source code to make it working here: github.com/letscontrolit/ESPEasy/blob/mega/src/_P052_SenseAir.ino It supports both the S8 and the S11. The S11 can also be set to I2C using some resistors, so maybe you had it wired incorrectly? About the "calibration" of the sensors. Please keep in mind you need to have the sensor placed in a well ventilated room (not outside) to determine the 400 ppm level. You want to make sure it is in the same conditions as when you use it (room temperature and humidity) and also make sure there is no direct sunlight on the sensor or placed near a source of IR light like a heater.
Thank you for the correction. I got the sensor prewired from a viewer who was able to use it. But I have to investigate further. It is prewired for i2c and it answers...
@@AndreasSpiess I have not yet used the sensor in I2C mode, but I guess it is quite similar to look up register values. If you wire it for UART, you can just use it via Modbus RTU.
Great video and look forward to the update particularly how the eCO2 correlate with CO2 readings on extended runs. I currently use a CCS811 for eCO2 and plan to test the SGP30 for similar reasons. Also not sure if I missed but did you send humidity compensation values into the SGP30? Per the datasheet this affects both eCO2 and tVOC reading
Nice video. One project would be to build a project for detecting carbon monoxide for living rooms , near fireplaces, gas heaters, etc to prevent its toxicity, using VOC and ESP32, and trigger alarm(s)
@@AndreasSpiess I have a question.. Does the VOC sensor is suitable for the carbon monoxide detection? In the video the datasheet or table show CO with a wide range 1 - 1000ppm at 11:30. The idea is to log the data onto web and mass storage device using ESP32 and VOC sensor and implement the alarms
@@AndreasSpiess I don't have any idea actually. They are quite expensive compared to a fire alarm and seem to expire relatively quickly. The price/value ratio is not good enough for my use case where the fireplace is used seldomly and only during some months of the year. I might think differently if I'd have children around.
@andreas spiess I am a biology teacher. And yes air quality is important for staying focused. Would be interesting to build with students. I prefer blynk platform to read data since students can easily work with that. I already have nodemcu + supplies, just need to order the sensor.
I've been waiting for such an episode from you. I recently built a sensor on the SGP30 sensor but I am not entirely satisfied with its operation. How long have you tested your GSP30 sensor? A very interesting episode :-)
@@AndreasSpiess My SGP30 after a few hours of work shows very inflated values. These are certainly not real measurements. You don't know what could be the reason?
Particular Matter sensors have been covered elsewhere and are (hopefully) more a problem of the outside air in crowded areas. Where I live it was boring. Nothing to see...
@@AndreasSpiess I live on a main road; cooking causes most of the pollution in our house even still. I was surprised! The other thing, most people out there on RU-vid are using a particle sensor that doesn't work..the Sharp brand one and equivalents. It's not designed for this job and reads out garbage, but they all use the same code! And it puts out nonsense! The code doesn't work at all. So it's a more interesting topic than it may appear.
@@beware_the_moose Cooking is a big surprise, my PMS5003 goes nuts if I fry bacon and it's not even in the same room. I'm about to get a Sensirion SPS-30 which may give better output for PM2.5/PM10 than Plantower's.
Thanks for the great video Andreas. Any idea how "exposed" the sensor needs to be to read accurately? I'd like to add one to my camper which is a small enclosed space, but I'd likely put it in a small project box in a cabinet or out of site location. Would you think the detector would be useful if it's not out in the open, especially since you mentioned CO2 drops down below air?
@@AndreasSpiessPrima, danke. Habe einen MH-Z19 zum testen gekauft. Werde ihn wohl nicht mit Batterien betreiben können. Aber ich plane ihn in mein bestehendes influxdb/grafana Setup per lora einzubinden. Was denkst du über die Montagehöhe des Sensors. Am besten auf Kopfhöhe der Schüler oder?
Gas bubbles get trapped in ice at the poles which has been deposited at a relatively constant rate. This allows the age to be estimated by the depth of the ice, and then the gas composition can be directly measured.
I would think measuring oxygen levels would be a good idea. Perhaps as a control. If O2 levels are low I would think that would have an effect on CO2 and other gases being.measured. Low 02 means there is a not a good supply of good air coming into a room. A question of why would almost beg for an O2 sensor as well.
Great project, I am also using an SGP30 to measure eCO2. Your values are much smoother than mine. I think my calibration did not go as well- I simply let it run for 12 hours which is what I thought the documentation outlined. What calibration steps did you take to get this good data output?
Is it possible to measure outdoor pollution, for example, traffic pollution in a crowded area? Which sensors could be interesting to use in an ESP32 / LORA project. Thanks for great videos. Being inspired and having fun with them when Sunday's breakfast is enjoyed
I think the problem is that these sensors are specified to be used for indoor applications and the data sheets state that explicitly. With operating and storage temps between 5-50 degree Celsius and negative impacts of high levels of humidity on sensor performance these sensors probably won't last long in harsh outdoor environments. Let me know if you find a good sensor with support for CO2, hydrogen that works in outdoor conditions, is affordable and works at low ppm concentrations.
You find many particular matters sensors using ESP32 online. They are made for outside air. Most of the outside gases are probably not easy to detect and need more expensive sensors.
Thanks, for making this video. There are certain idiot bus drivers who close ac and all windows. The automobile companies should install this kind of sensor in buses