
Security News
Meet Socket at Black Hat and DEF CON 2025 in Las Vegas
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
adafruit-circuitpython-sgp40
Advanced tools
CircuitPython library for the Adafruit SGP40 Air Quality Sensor / VOC Index Sensor Breakouts
.. image:: https://readthedocs.org/projects/adafruit-circuitpython-sgp40/badge/?version=latest :target: https://docs.circuitpython.org/projects/sgp40/en/latest/ :alt: Documentation Status
.. image:: https://raw.githubusercontent.com/adafruit/Adafruit_CircuitPython_Bundle/main/badges/adafruit_discord.svg :target: https://adafru.it/discord :alt: Discord
.. image:: https://github.com/adafruit/Adafruit_CircuitPython_SGP40/workflows/Build%20CI/badge.svg :target: https://github.com/adafruit/Adafruit_CircuitPython_SGP40/actions :alt: Build Status
.. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json :target: https://github.com/astral-sh/ruff :alt: Code Style: Ruff
CircuitPython library for the Adafruit SGP40 Air Quality Sensor / VOC Index Sensor Breakouts
This driver depends on:
Adafruit CircuitPython <https://github.com/adafruit/circuitpython>
_Bus Device <https://github.com/adafruit/Adafruit_CircuitPython_BusDevice>
_Register <https://github.com/adafruit/Adafruit_CircuitPython_Register>
_Please ensure all dependencies are available on the CircuitPython filesystem.
This is easily achieved by downloading
the Adafruit library and driver bundle <https://circuitpython.org/libraries>
_.
On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally from PyPI <https://pypi.org/project/adafruit-circuitpython-sgp40/>
_. To install for current user:
.. code-block:: shell
pip3 install adafruit-circuitpython-sgp40
To install system-wide (this may be required in some cases):
.. code-block:: shell
sudo pip3 install adafruit-circuitpython-sgp40
To install in a virtual environment in your current project:
.. code-block:: shell
mkdir project-name && cd project-name
python3 -m venv .venv
source .venv/bin/activate
pip3 install adafruit-circuitpython-sgp40
.. code-block:: python3
import time
import board
import adafruit_sgp40
i2c = board.I2C() # uses board.SCL and board.SDA
sgp = adafruit_sgp40.SGP40(i2c)
while True:
print("Measurement: ", sgp.raw)
print("")
sleep(1)
For humidity compensated raw gas and voc index readings, we'll need a secondary sensor such as the bme280
.. code-block:: python3
import time
import board
import adafruit_sgp40
import adafruit_bme280
i2c = board.I2C() # uses board.SCL and board.SDA
sgp = adafruit_sgp40.SGP40(i2c)
bme280 = adafruit_bme280.Adafruit_BME280_I2C(i2c)
while True:
temperature = bme280.temperature
humidity = bme280.relative_humidity
# For compensated raw gas readings
"""
compensated_raw_gas = sgp.measure_raw(
temperature=temperature, relative_humidity=humidity
)
print("Raw Data:", compensated_raw_gas)
"""
# For Compensated voc index readings
voc_index = sgp.measure_index(
temperature=temperature, relative_humidity=humidity)
print("VOC Index:", voc_index)
print("")
time.sleep(1)
It may take several minutes for the VOC index to start changing as it calibrates the baseline readings.
The voc algorithm expects a 1 hertz sampling rate. Run measure_index()
once per second.
API documentation for this library can be found on Read the Docs <https://docs.circuitpython.org/projects/sgp40/en/latest/>
_.
For information on building library documentation, please check out this guide <https://learn.adafruit.com/creating-and-sharing-a-circuitpython-library/sharing-our-docs-on-readthedocs#sphinx-5-1>
_.
Contributions are welcome! Please read our Code of Conduct <https://github.com/adafruit/Adafruit_CircuitPython_SGP40/blob/master/CODE_OF_CONDUCT.md>
_
before contributing to help this project stay welcoming.
FAQs
CircuitPython library for the Adafruit SGP40 Air Quality Sensor / VOC Index Sensor Breakouts
We found that adafruit-circuitpython-sgp40 demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Meet Socket at Black Hat & DEF CON 2025 for 1:1s, insider security talks at Allegiant Stadium, and a private dinner with top minds in software supply chain security.
Security News
CAI is a new open source AI framework that automates penetration testing tasks like scanning and exploitation up to 3,600× faster than humans.
Security News
Deno 2.4 brings back bundling, improves dependency updates and telemetry, and makes the runtime more practical for real-world JavaScript projects.