Skip to main content

Python library for the Grove-VOC and eCO2 Gas Sensor(SGP30) is an air quality detection sensor.

Project description

Seeed SGP30

The SGP30 is a digital multi-pixel gas sensor designed for easy integration into air purifier, demand-controlled ventilation, and IoT applications. Sensirion’s CMOSens®technology offers a complete sensor system on a single chip featuring a digital I2C interface, a temperature controlled micro hotplate, and two preprocessed indoor air quality signals. As the first metal-oxide gas sensor featuring multiple sensing elements on one chip, the SGP30 provides more detailed information about the air quality.

This code is for

Dependencies

This driver depends on:

This is easy to install with the following command.

curl -sL https://github.com/Seeed-Studio/grove.py/raw/master/install.sh | sudo bash -s -

Installing from PyPI

On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally from PyPI. To install for current user:

pip3 install seeed-python-sgp30

To install system-wide (this may be required in some cases):

sudo pip3 install seeed-python-sgp30

Usage Notes

First, Check the corresponding i2c number of the board:

(.env) pi@raspberrypi:~ $ ls /dev/i2c*
/dev/i2c-1

Check if the i2c device works properly, 0x58 is the SGP30 i2c address.

pi@raspberrypi:~/Seeed_Python_SGP30 $ i2cdetect -y -r 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- 04 -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- 58 -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 

Next, initialize the sersor object:

import seeed_sgp30
from grove.i2c import Bus
sgp30 = seeed_sgp30.grove_sgp30(Bus(1)) #The default on the raspberry pie is 1, so you can also use Bus()

Reading from the Sensor

To read from the sensor:

data = sgp30.read_measurements()
co2_eq_ppm, tvoc_ppb = data.data
print("\r  tVOC = {} ppb CO2eq = {} ppm  ".format(
                             tvoc_ppb, co2_eq_ppm))

Contributing

If you have any good suggestions or comments, you can send issues or PR us.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seeed-python-sgp30-0.1.0.tar.gz (3.1 kB view hashes)

Uploaded Source

Built Distribution

seeed_python_sgp30-0.1.0-py3-none-any.whl (3.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page