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 sensorcontract. This backend predates that interface and is consumed through the
drivers.TSL2591.TSL2591wrapper.drivers.TSL2591.TSL2591.TSL2591: Oizom wrapper exposing asimplified facade over this backend.
Attributes¶
Clears ALS and no persist ALS interrupt |
|
Clears ALS interrupt |
|
Clears no persist ALS interrupt |
|
ALS Interrupt Enable. When asserted permits ALS interrupts to be generated. |
|
ALS and No Persist Interrupt Enable. |
|
No Persist Interrupt Enable. When asserted NP Threshold conditions will generate an interrupt. |
|
High gain (428x) |
|
Low gain (1x) |
|
Max gain (9876x) |
|
Medium gain (25x) |
|
100 millis |
|
200 millis |
|
300 millis |
|
400 millis |
|
500 millis |
|
600 millis |
|
Classes¶
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'¶