drivers.TSL2591.adafruit_tsl2591

Vendored Adafruit CircuitPython backend for the AMS TSL2591 light sensor.

Register-level driver for the AMS TSL2591 high-dynamic-range ambient light sensor. Exposes gain and integration-time configuration, ALS and no-persist interrupt machinery, raw channel readout, and a calculated lux property. This module is vendored from the upstream Adafruit CircuitPython library and is intentionally kept close to the upstream source – modify with care.

Example

>>> import board
>>> from drivers.TSL2591 import adafruit_tsl2591
>>> i2c = board.I2C()
>>> sensor = adafruit_tsl2591.TSL2591(i2c)
>>> sensor.gain = adafruit_tsl2591.GAIN_MED
>>> sensor.integration_time = adafruit_tsl2591.INTEGRATIONTIME_100MS
>>> sensor.lux
42.0

Note

The TSL2591 sits at fixed I2C address 0x29. Gain enums are GAIN_LOW (1x), GAIN_MED (25x), GAIN_HIGH (428x) and GAIN_MAX (9876x). Integration-time enums are INTEGRATIONTIME_100MS through INTEGRATIONTIME_600MS in 100 ms steps. Lux calculation uses the AMS counts-per-lux model cpl = (atime * again) / LUX_DF with LUX_DF = 408.0.

See also

SensorBase.SensorBase.GenericSensor: Oizom abstract sensor

contract. This backend predates that interface and is consumed through the drivers.TSL2591.TSL2591 wrapper.

drivers.TSL2591.TSL2591.TSL2591: Oizom wrapper exposing a

simplified facade over this backend.

Source:

Adafruit CircuitPython TSL2591

Attributes

Classes

TSL2591

AMS TSL2591 high-dynamic-range ambient light sensor.

Module Contents

drivers.TSL2591.adafruit_tsl2591.CLEAR_ALL_INTERRUPTS = 7

Clears ALS and no persist ALS interrupt

drivers.TSL2591.adafruit_tsl2591.CLEAR_INTERRUPT = 6

Clears ALS interrupt

drivers.TSL2591.adafruit_tsl2591.CLEAR_PERSIST_INTERRUPT = 10

Clears no persist ALS interrupt

drivers.TSL2591.adafruit_tsl2591.ENABLE_AIEN = 16

ALS Interrupt Enable. When asserted permits ALS interrupts to be generated.

drivers.TSL2591.adafruit_tsl2591.ENABLE_NPAIEN = 144

ALS and No Persist Interrupt Enable.

drivers.TSL2591.adafruit_tsl2591.ENABLE_NPIEN = 128

No Persist Interrupt Enable. When asserted NP Threshold conditions will generate an interrupt.

drivers.TSL2591.adafruit_tsl2591.GAIN_HIGH = 32

High gain (428x)

drivers.TSL2591.adafruit_tsl2591.GAIN_LOW = 0

Low gain (1x)

drivers.TSL2591.adafruit_tsl2591.GAIN_MAX = 48

Max gain (9876x)

drivers.TSL2591.adafruit_tsl2591.GAIN_MED = 16

Medium gain (25x)

drivers.TSL2591.adafruit_tsl2591.INTEGRATIONTIME_100MS = 0

100 millis

drivers.TSL2591.adafruit_tsl2591.INTEGRATIONTIME_200MS = 1

200 millis

drivers.TSL2591.adafruit_tsl2591.INTEGRATIONTIME_300MS = 2

300 millis

drivers.TSL2591.adafruit_tsl2591.INTEGRATIONTIME_400MS = 3

400 millis

drivers.TSL2591.adafruit_tsl2591.INTEGRATIONTIME_500MS = 4

500 millis

drivers.TSL2591.adafruit_tsl2591.INTEGRATIONTIME_600MS = 5

600 millis

drivers.TSL2591.adafruit_tsl2591._TSL2591_ADDR = 41
drivers.TSL2591.adafruit_tsl2591._TSL2591_AIHTH = 7
drivers.TSL2591.adafruit_tsl2591._TSL2591_AIHTL = 6
drivers.TSL2591.adafruit_tsl2591._TSL2591_AILTH = 5
drivers.TSL2591.adafruit_tsl2591._TSL2591_AILTL = 4
drivers.TSL2591.adafruit_tsl2591._TSL2591_COMMAND_BIT = 160
drivers.TSL2591.adafruit_tsl2591._TSL2591_ENABLE_AEN = 2
drivers.TSL2591.adafruit_tsl2591._TSL2591_ENABLE_POWEROFF = 0
drivers.TSL2591.adafruit_tsl2591._TSL2591_ENABLE_POWERON = 1
drivers.TSL2591.adafruit_tsl2591._TSL2591_LUX_COEFB = 1.64
drivers.TSL2591.adafruit_tsl2591._TSL2591_LUX_COEFC = 0.59
drivers.TSL2591.adafruit_tsl2591._TSL2591_LUX_COEFD = 0.86
drivers.TSL2591.adafruit_tsl2591._TSL2591_LUX_DF = 408.0
drivers.TSL2591.adafruit_tsl2591._TSL2591_MAX_COUNT = 65535
drivers.TSL2591.adafruit_tsl2591._TSL2591_MAX_COUNT_100MS = 36863
drivers.TSL2591.adafruit_tsl2591._TSL2591_NPAIHTH = 11
drivers.TSL2591.adafruit_tsl2591._TSL2591_NPAIHTL = 10
drivers.TSL2591.adafruit_tsl2591._TSL2591_NPAILTH = 9
drivers.TSL2591.adafruit_tsl2591._TSL2591_NPAILTL = 8
drivers.TSL2591.adafruit_tsl2591._TSL2591_PERSIST_FILTER = 12
drivers.TSL2591.adafruit_tsl2591._TSL2591_REGISTER_CHAN0_LOW = 20
drivers.TSL2591.adafruit_tsl2591._TSL2591_REGISTER_CHAN1_LOW = 22
drivers.TSL2591.adafruit_tsl2591._TSL2591_REGISTER_CONTROL = 1
drivers.TSL2591.adafruit_tsl2591._TSL2591_REGISTER_DEVICE_ID = 18
drivers.TSL2591.adafruit_tsl2591._TSL2591_REGISTER_ENABLE = 0
drivers.TSL2591.adafruit_tsl2591._TSL2591_SPECIAL_BIT = 224
drivers.TSL2591.adafruit_tsl2591.__repo__ = 'https://github.com/adafruit/Adafruit_CircuitPython_TSL2591.git'
drivers.TSL2591.adafruit_tsl2591.__version__ = '0.0.0+auto.0'