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.

Files for seeed-python-sgp30, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size seeed_python_sgp30-0.1.0-py3-none-any.whl (3.7 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size seeed-python-sgp30-0.1.0.tar.gz (3.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page