adafruit_vl6180x
¶
CircuitPython module for the VL6180X distance sensor. See examples/simpletest.py for a demo of the usage.
Author(s): Tony DiCola, Jonas Schatz
Implementation Notes¶
Hardware:
Adafruit VL6180X Time of Flight Distance Ranging Sensor (VL6180) (Product ID: 3316)
Software and Dependencies:
Adafruit CircuitPython firmware for the ESP8622 and M0-based boards: https://github.com/adafruit/circuitpython/releases
Adafruit’s Bus Device library: https://github.com/adafruit/Adafruit_CircuitPython_BusDevice
- class adafruit_vl6180x.VL6180X(i2c: busio.I2C, address: int = 41, offset: int = 0)[source]¶
Create an instance of the VL6180X distance sensor. You must pass in the following parameters:
- Parameters
i2c – An instance of the I2C bus connected to the sensor.
Optionally you can specify:
- Parameters
address – The I2C address of the sensor. If not specified the sensor’s default value will be assumed.
- property range_from_history: Optional[int]¶
Read the latest range data from history To do so, you don’t have to wait for a complete measurement.
- property range_status: int¶
Retrieve the status/error from a previous range read. This will return a constant value such as:
ERROR_NONE - No error
ERROR_SYSERR_1 - System error 1 (see datasheet)
ERROR_SYSERR_5 - System error 5 (see datasheet)
ERROR_ECEFAIL - ECE failure
ERROR_NOCONVERGE - No convergence
ERROR_RANGEIGNORE - Outside range ignored
ERROR_SNR - Too much noise
ERROR_RAWUFLOW - Raw value underflow
ERROR_RAWOFLOW - Raw value overflow
ERROR_RANGEUFLOW - Range underflow
ERROR_RANGEOFLOW - Range overflow
- read_lux(gain: int) float [source]¶
Read the lux (light value) from the sensor and return it. Must specify the gain value to use for the lux reading: - ALS_GAIN_1 = 1x - ALS_GAIN_1_25 = 1.25x - ALS_GAIN_1_67 = 1.67x - ALS_GAIN_2_5 = 2.5x - ALS_GAIN_5 = 5x - ALS_GAIN_10 = 10x - ALS_GAIN_20 = 20x - ALS_GAIN_40 = 40x