ENS160 Air Quality Sensor driver
Project description
ENS160
ENS160 Python library.
This code was tested on a Raspberry Pi 5 at 100kHz I2C clock.
The I2C code is abstracted from the sensor handling and other communication methods could be added.
Tested with Python 3.12
Documentation
The detailed API documentation can be found here.
Install
pip install ens160
Example
See example.py
import sys
from time import sleep
from ens160 import Driver, OpModes
from ens160.i2c import SMBusRetryingI2C
dev = Driver(SMBusRetryingI2C(0x53, 1))
dev.init()
part_id = dev.get_part_id()
if part_id != Driver.PART_ID:
print(f"Part not found, expected {Driver.PART_ID} got {part_id}.")
sys.exit(-1)
print(f"Part Id {part_id}")
print(f"Firmware version {dev.get_fw_version()}")
dev.set_rh_compensation(55.0)
dev.set_temp_compensation_fahrenheit(72.5)
print(dev.get_device_status())
dev.set_operating_mode(OpModes.STANDARD)
print("Operating Mode: ", dev.get_operating_mode())
while True:
status = dev.get_device_status()
print(status)
if status.new_data:
print(
f"AQI={dev.get_aqi()}, eCO2={dev.get_eco2()}ppm, TVOC={dev.get_tvoc()}ppb"
)
else:
sleep(0.1)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ens160-0.0.2.tar.gz
(7.6 kB
view details)
Built Distribution
File details
Details for the file ens160-0.0.2.tar.gz
.
File metadata
- Download URL: ens160-0.0.2.tar.gz
- Upload date:
- Size: 7.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4fb202b7ff54be7cae5894d5a1f6a64956c947b8b3df4de1e3af5c02565d49d |
|
MD5 | 28db0eaab7bee4ecb84f3a605554d12f |
|
BLAKE2b-256 | a73663febda777bd7b0f827dd7c6705478ce7a3a4cfc6e9bf19073662943f971 |
File details
Details for the file ens160-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: ens160-0.0.2-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.19
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 192b2c38f7cd88275515049c756f8e16e8a2bcb7d1ec1c87a34958e56fd51ce8 |
|
MD5 | 1e21e4f6a49d12d5d87ca9c69f62557b |
|
BLAKE2b-256 | 09b102fc2c431699c3b8c5d3d30d897d257f4b000eb6149ead2eb67a8a836e58 |