CCS811 manufactured by AMS is an digital CO2 and tVoC air quality sensor. Main measurement characteristics:
- equivalent carbon dioxide range is 400ppm up to 29206ppm;
- equivalent Total Volatile Organic Compounds output range is from 0ppb up to 32768ppb;
- internal compensation algorithm using external ambient temperature and humidity data source;
- temperature range for operation -40C to +80C.
More info on: CCS811 datasheet.
In June 2019 we've released 6 new environmental and air quality sensors, including CCS811 I2C sensor breakout and HDC2010 + CCS811 I2C combo sensors breakout, all being part of the s-Sense I2C sensor breakout family.
PN: SS-CCS811#I2C SKU: ITBP-6004 CCS811 I2C sensor breakout info
PN: SS-HDC2010+CCS811#I2C SKU: ITBP-6006 HDC2010+CCS811 I2C combo sensor breakout info
Next, let's kickstart using CCS811 sensor I2C breakout - around 10-15 minutes. Same hardware and software approach may be used for CCS811 + HDC2010 bundle sensors I2C breakout.
Arduino CCS811 sensor hardware integration (basic wiring)First, identify if your Arduino it's 5V or 3.3V compliant! The CCS811 I2C sensor breakout it's shipped in default auto 3.3-5V compliant configuration. Just wire as bellow:
** PAD 6 - CCS811 WAKE signal [placed on PCB bottom side]
- when connected directly to GND, the CCS811 will avoid enter into SLEEP mode [sensor it's always ACTIVE].
- when connected to D5, the MCU host software must be able to control SLEEP/ACTIVE mode switching [implemented in library, see bellow].
Whatever PAD6 [CCS811 WAKE] wiring used, the software will be able to handle sensor data initializing and environmental data readings.
HINT, for some ARDUINO boards:
- SDA (Serial Data) --> A4 on Uno/Pro-Mini, 20 on Mega2560/Due, 2 Leonardo/Pro-Micro
- SCK (Serial Clock) --> A5 on Uno/Pro-Mini, 21 on Mega2560/Due, 3 Leonardo/Pro-Micro
Bellow, sensor wiring examples, left to right, with Arduino UNO and xyz-mIoT
- a. download CCS811 Arduino library from: here.
- b. unzip the library and install in Arduino libraries folder. Restart Arduino.
- c. Make a folder named "ssense_CCS811_example". Download and save the code bellow (right click & save as) - use ssense_CCS811_example.ino as name: CCS811 - read sensor data Arduino code or, use the ssense_CCS811_example from Arduino "File-> Examples", under "ssense-CCS811" library.
- d. Compile and upload the code to your Arduino shield. The sensor data may be seen on Arduino Serial Monitor (set to 19200bps).
CCS811 have some interesting features (read datasheet) like temperature and humidity drift / non-liniarity compensation. In a nut shell, the CCS811 firmware have the ability to use external THS data source for reading compensation algorithm.
To use this feature, in previous Arduino code, just use in line 59 real data supplied by an external THS sensor [I suppose you may like to have our CCS811+HDC2010 combo sensor to add our HDC2010 sensor breakout - HDC2010 sensor integration notes here ;)].
.
TUTORIAL PROVIDED WITHOUT ANY WARRANTY!!!USE IT AT YOUR OWN RISK!!!
Comments