Breathe easy - we finally have an I2C VOC/eCO2 sensor in the Adafruit shop! Add air quality monitoring to your project and with an Adafruit CCS811 Air Quality Sensor Breakout. This sensor from AMS is a gas sensor that can detect a wide range of Volatile Organic Compounds (VOCs) and is intended for indoor air quality monitoring. When connected to your microcontroller (running our library code) it will return a Total Volatile Organic Compound (TVOC) reading and an equivalent carbon dioxide reading (eCO2) over I2C. There is also an onboard thermistor that can be used to calculate the local ambient temperature.
The CCS811 has a 'standard' hot-plate MOX sensor, as well as a small microcontroller that controls power to the plate, reads the analog voltage, and provides an I2C interface to read from.
This part will measure eCO2 (equivalent calculated carbon-dioxide) concentration within a range of 400 to 8192 parts per million (ppm), and TVOC (Total Volatile Organic Compound) concentration within a range of 0 to 1187 parts per billion (ppb). According to the fact sheet it can detect Alcohols, Aldehydes, Ketones, Organic Acids, Amines, Aliphatic and Aromatic Hydrocarbons. We include a 10K NTC thermistor with matching balancing resistor which can be read by the CCS811 to calculate approximate temperature.
Please note, this sensor, like all VOC/gas sensors, has variability and to get precise measurements you will want to calibrate it against known sources! That said, for general environmental sensors, it will give you a good idea of trends and comparisons.Also, AMS recommends that you run this sensor for 48 hours when you first receive it to "burn it in", and then 20 minutes in the desired mode every time the sensor is in use. This is because the sensitivity levels of the sensor will change during early use. Finally, this chip uses I2C clock stretching, and some microcontrollers/computers don't support that (e.g. Raspberry Pi)
The CCS811 has a configurable interrupt pin that can fire when a conversion is ready and/or when a reading crosses a user-settable threshold. The CCS811 supports multiple drive modes to take a measurement every 1 second, every 10 seconds, every 60 seconds, or every 250 milliseconds.
For your convenience we've pick-and-placed the sensor on a PCB with a 3.3V regulator and some level shifting so it can be easily used with your favorite 3.3V or 5V microcontroller.
We've also prepared software libraries to get you up and running in Arduino IDE or CircuitPython with just a few lines of code! Check out our tutorial for more information!
- Software libraries, hookup guide, datasheets, schematic, EagleCAD PCB files, and Fritzing available in the product tutorial!
- Uses I2C address 0x5A
Product Dimensions: 21.0mm x 18.0mm x 3.0mm / 0.8" x 0.7" x 0.1"
Product Weight: 1.2g / 0.0oz
Documentation and Resources:
We deliver Australia-wide with these options:
- $3 for Small Items (4-6 days, not tracked, only available on selected small items)
- $6.95 for Standard Post (2-4 days, tracked)
- $8.32 for Express Post (1-2 days, tracked)
- Pickup - Free! Only available to customers who live in the Newcastle region
International Orders - the following rates are for New Zealand and will vary for other countries:
- $11.49 for Pack and Track (3+ days, tracked)
- $16.50 for Express International (2-5 days, tracked)
If you order lots of gear, the postage amount might increment based on the weight of your order.
Our physical address:
Unit 18, 132 Garden Grove Parade
Please checkout our customer service page if you have other frequently asked questions such as "do we do purchase orders" (yes!) or "are prices GST inclusive" (yes they are!). We're here to help - get in touch with us to talk shop.