Skip to main content

CircuitPython library for SHT31-D temperature and humidity sensor.

Project description

Introduction

Documentation Status Discord Build Status Code Style: Ruff

CircuitPython module for the SHT31-D temperature and humidity sensor.

Dependencies

This driver depends on:

Please ensure all dependencies are available on the CircuitPython filesystem. This is easily achieved by downloading the Adafruit library and driver bundle.

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 adafruit-circuitpython-sht31d

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

sudo pip3 install adafruit-circuitpython-sht31d

To install in a virtual environment in your current project:

mkdir project-name && cd project-name
python3 -m venv .env
source .env/bin/activate
pip3 install adafruit-circuitpython-sht31d

Usage Example

You must import the library to use it:

import adafruit_sht31d

This driver takes an instantiated and active I2C object (from the busio or the bitbangio library) as an argument to its constructor. The way to create an I2C object depends on the board you are using.

import board

i2c = board.I2C()

Once you have created the I2C interface object, you can use it to instantiate the sensor object:

sensor = adafruit_sht31d.SHT31D(i2c)

And then you can start measuring the temperature and humidity:

print(sensor.temperature)
print(sensor.relative_humidity)

You can instruct the sensor to periodically measure the temperature and humidity, storing the result in its internal cache:

sensor.mode = adafruit_sht31d.MODE_PERIODIC

You can adjust the frequency at which the sensor periodically gathers data to: 0.5, 1, 2, 4 or 10 Hz. The following adjusts the frequency to 2 Hz:

sensor.frequency = adafruit_sht31d.FREQUENCY_2

The sensor is capable of storing eight results. The sensor stores these results in an internal FILO cache. Retrieving these results is simlilar to taking a measurement. The sensor clears its cache once the stored data is read. The sensor always returns eight data points. The list of results is backfilled with the maximum output values of 130.0 ºC and 100.01831417975366 % RH:

print(sensor.temperature)
print(sensor.relative_humidity)

The sensor will continue to collect data at the set interval until it is returned to single shot data acquisition mode:

sensor.mode = adafruit_sht31d.MODE_SINGLE

Documentation

API documentation for this library can be found on Read the Docs.

For information on building library documentation, please check out this guide.

Contributing

Contributions are welcome! Please read our Code of Conduct before contributing to help this project stay welcoming.

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

adafruit_circuitpython_sht31d-2.3.28.tar.gz (25.8 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file adafruit_circuitpython_sht31d-2.3.28.tar.gz.

File metadata

File hashes

Hashes for adafruit_circuitpython_sht31d-2.3.28.tar.gz
Algorithm Hash digest
SHA256 5988e0bdee209b9b43f41480fd1c45d5f3535c3b04b045e01feff35c643e59a5
MD5 8104a988fd0dd73b9be55902311786eb
BLAKE2b-256 60aa97ee4671586900ed09ee1513efe7d9cc4d2d7a8693c52242e389f4f0d059

See more details on using hashes here.

File details

Details for the file adafruit_circuitpython_sht31d-2.3.28-py3-none-any.whl.

File metadata

File hashes

Hashes for adafruit_circuitpython_sht31d-2.3.28-py3-none-any.whl
Algorithm Hash digest
SHA256 40539b257bf9cb2256f06e67e044e9ca866ede0bbe2943a10b913e103eebe754
MD5 e06aa27a7fd4054e530580982323c55e
BLAKE2b-256 be109fc36db225a2346f75d1893dce0f175862cec630bb57fdefed9e86f27a4e

See more details on using hashes here.

Supported by

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