
4Available features
The VL53L8CX ULD API includes several functions, which allow the user to tune the sensor, depending on the
use case. All the functions available for the driver are described in the following sections.
4.1 Initialization
Initialization must be done before using the VL53L8CX sensor. This operation requires the user to:
1. Power on the sensor (VDDIO, AVDD, CORE_1V8, and LPn pins set to High
2. Call the function vl53l8cx_init(). The function copies the firmware (~84 Kbytes) to the module. This is done
by loading the code over the I2C/SPI interface, and performing a boot routine to complete the initialization.
4.2 Sensor reset management
To reset the device, the following pins need to be toggled:
1. Set pins VDDIO, AVDD, and CORE_1V8 pins to low.
2. Wait 10 ms.
3. Set pins VDDIO, AVDD, and CORE_1V8 pins to high.
Note: Toggling only I2C_RST pin resets the I2C communication.
4.3 Resolution
The resolution corresponds to the number of available zones. The VL53L8CX sensor has two possible
resolutions: 4x4 (16 zones) and 8x8 (64 zones). By default the sensor is programmed in 4x4.
The function vl53l8cx_set_resolution() allows the user to change the resolution. As the ranging frequency
depends on the resolution, this function must be used before updating the ranging frequency. Moreover, changing
the resolution also increases the traffic size on the I2C/SPI bus when results are read.
4.4 Ranging frequency
Ranging frequency can be used to change the measurement frequency. As the maximum frequency is different
between 4x4 and 8x8 resolutions, this function needs to be used after choosing a resolution. The minimum and
maximum allowed values are listed in the following table.
Table 2. Minimum and maximum ranging frequencies
Resolution Min ranging frequency [Hz] Max ranging frequency [Hz]
4x4 1 60
8x8 1 15
Ranging frequency can be updated using function vl53l8cx_set_ranging_frequency_hz(). By default, the ranging
frequency is set to 1 Hz.
UM3109
Available features
UM3109 - Rev 1 page 9/20