adafruit_veml7700¶
CircuitPython driver for VEML7700 high precision I2C ambient light sensor.
- Author(s): Kattni Rembor
Implementation Notes¶
Hardware:
- Adafruit VEML7700 Lux Sensor - I2C Light Sensor (Product ID: 4162)
Software and Dependencies:
- Adafruit CircuitPython firmware for the supported boards: https://circuitpython.org/downloads
- Adafruit’s Bus Device library: https://github.com/adafruit/Adafruit_CircuitPython_BusDevice
- Adafruit’s Register library: https://github.com/adafruit/Adafruit_CircuitPython_Register
-
class
adafruit_veml7700.VEML7700(i2c_bus, address=16)¶ Driver for the VEML7700 ambient light sensor.
Parameters: -
gain_value()¶ Gain value in integer form. Used for calculating
resolution().
-
integration_time_value()¶ Integration time value in integer form. Used for calculating
resolution().
-
light¶ Ambient light data.
This example prints the ambient light data. Cover the sensor to see the values change.
import time import board import adafruit_veml7700 i2c = board.I2C() # uses board.SCL and board.SDA veml7700 = adafruit_veml7700.VEML7700(i2c) while True: print("Ambient light:", veml7700.light) time.sleep(0.1)
-
light_gain¶ ALS_GAIN_2, ALS_GAIN_1, ALS_GAIN_1_4, ALS_GAIN_1_8.
This example sets the ambient light gain to 2 and prints the ambient light sensor data.
import time import board import adafruit_veml7700 i2c = board.I2C() # uses board.SCL and board.SDA veml7700 = adafruit_vcnl4040.VCNL4040(i2c) veml7700.light_gain = veml7700.ALS_GAIN_2 while True: print("Ambient light:", veml7700.light) time.sleep(0.1)
Type: Ambient light gain setting. Gain settings are 2, 1, 1/4 and 1/8. Settings options are
-
light_high_threshold¶ Ambient light sensor interrupt high threshold setting.
-
light_integration_time¶ ALS_25MS, ALS_50MS, ALS_100MS, ALS_200MS, ALS_400MS, ALS_800MS.
This example sets the ambient light integration time to 400ms and prints the ambient light sensor data.
import time import board import adafruit_veml7700 i2c = board.I2C() # uses board.SCL and board.SDA veml7700 = adafruit_vcnl4040.VCNL4040(i2c) veml7700.light_integration_time = veml7700.ALS_400MS while True: print("Ambient light:", veml7700.light) time.sleep(0.1)
Type: Ambient light integration time setting. Longer time has higher sensitivity. Can be
-
light_interrupt¶ Enable interrupt.
Trueto enable,Falseto disable.
-
light_interrupt_high¶ Ambient light high threshold interrupt flag. Triggered when high threshold exceeded.
-
light_interrupt_low¶ Ambient light low threshold interrupt flag. Triggered when low threshold exceeded.
-
light_low_threshold¶ Ambient light sensor interrupt low threshold setting.
-
light_shutdown¶ Ambient light sensor shutdown. When
True, ambient light sensor is disabled.
-
lux¶ Light value in lux.
This example prints the light data in lux. Cover the sensor to see the values change.
import time import board import adafruit_veml7700 i2c = board.I2C() # uses board.SCL and board.SDA veml7700 = adafruit_veml7700.VEML7700(i2c) while True: print("Lux:", veml7700.lux) time.sleep(0.1)
-
resolution()¶ Calculate the
resolution`()necessary to calculate lux. Based on integration time and gain settings.
-
white¶ White light data.
This example prints the white light data. Cover the sensor to see the values change.
import time import board import adafruit_veml7700 i2c = board.I2C() # uses board.SCL and board.SDA veml7700 = adafruit_veml7700.VEML7700(i2c) while True: print("White light:", veml7700.white) time.sleep(0.1)
-