f0425e7abd
- changes to use the same source code with ESP8266 (esp-open-rtos) and ESP32 (ESP-IDF)
57 lines
2.3 KiB
Markdown
57 lines
2.3 KiB
Markdown
# CCS811 Driver Examples
|
|
|
|
These examples demonstrate the usage of the CCS811 driver with only one sensors.
|
|
|
|
## Hardware setup
|
|
|
|
Most examples use only one CCS811 sensor. Following figure shows the hardware configuration if no interrupt is used.
|
|
|
|
```
|
|
+------------------------+ +--------+
|
|
| ESP8266 Bus 0 | | CCS811 |
|
|
| GPIO 5 (SCL) -----> SCL |
|
|
| GPIO 4 (SDA) <----> SDA |
|
|
| GND -----> /WAKE |
|
|
+------------------------+ +--------+
|
|
```
|
|
|
|
If *nINT* interrupt is used to fetch new data, additionally the interrupt pin has to be connected to a GPIO pin.
|
|
|
|
```
|
|
+------------------------+ +--------+
|
|
| ESP8266 Bus 0 | | CCS811 |
|
|
| GPIO 5 (SCL) -----> SCL |
|
|
| GPIO 4 (SDA) <----> SDA |
|
|
| GPIO 2 <----- /nINT |
|
|
| GND -----> /WAKE |
|
|
+------------------------+ +--------+
|
|
```
|
|
|
|
In examples where CCS811 sensor is used in conjunction with a SHT3x sensor, the hardware configuration looks like following:
|
|
|
|
```
|
|
+------------------------+ +--------+
|
|
| ESP8266 Bus 0 | | CCS811 |
|
|
| GPIO 5 (SCL) ---+----> SCL |
|
|
| GPIO 4 (SDA) <--|-+--> SDA |
|
|
| GND ---|-|--> /WAKE |
|
|
| | | | +--------+
|
|
| | | | | SHT3x |
|
|
| | +----> SCL |
|
|
| | +--> SDA |
|
|
+------------------------+ +--------+
|
|
```
|
|
|
|
## Example description
|
|
|
|
__*ccs811_one_sensor*__
|
|
|
|
Simple example with one CCS811 sensor connected to I2C bus 0. It demonstrates the different approaches to fetch the data. Either the interrupt *nINT* is used when new data are available or exceed defined thresholds or the new data are fetched periodically. Which approach is used is defined by the constants ```INT_DATA_RDY_USED``` and ```INT_THRESHOLD_USED```.
|
|
|
|
__*ccs811_plus_sht3x*__
|
|
|
|
Simple example with one CCS811 sensor connected to I2C bus 0 and one SHT3x sensor to determine ambient temperature. New data are fetched peridically every 2 seconds.
|
|
|
|
__*ccs811_temperature*__
|
|
|
|
Simple example with one CCS811 sensor connected to I2C bus 0. It demonstrates how to use CCS811 with an external NTC resistor to determine ambient temperature.
|