4 Calibration functions
To benefit from the full performance of the sensor, the VL53L1X_ULD driver includes two calibration functions
(offset and crosstalk) which need to be run once at the production line. These calibration procedures have to be
run to compensate for device-to-device variation (i.e. when the absolute measured distance is not the same from
one device to another) and the presence of the cover glass that may affect the device ranging performances.
Calibration data, stored in the host system, have to be loaded in the VL53L1X sensor at each startup using a
dedicated driver function.
The calibration sequence order is important. Offset calibration should be run first followed by crosstalk calibration.
The two calibrations may be run sequentially one after the other, or may be run individually. When run individually,
make sure the offset data have been programmed into the sensor before running crosstalk calibration.
4.1 Offset calibration
Use the VL53L1X_CalibrateOffset () function to run offset calibration.
VL53L1X_CalibrateOffset () finds the offset, applies the offset, and returns the offset correction value.
The offset correction value returned by VL53L1X_CalibrateOffset () must be stored in the host system and writen
to the sensor during boot up with VL53L1X_SetOffset ().
4.1.1 Offset calibration procedure
Place a target, 17 % gray, at 140 mm from the sensor and call the VL53L1X_CalibrateOffset (dev, 140, &offset)
function.
The calibration may take a few seconds. The offset correction is applied to the sensor at the end of calibration.
4.1.2 Getting offset calibration
The function VL53L1X_GetOffset () returns the current offset correction applied to the sensor.
A value of zero means no offset has been applied.
4.1.3 Setting offset calibration
The function VL53L1X_SetOffset () applies the offset value in millimeters to the sensor.
The user may use this function to apply, to the sensor, the offset found during calibration which is stored in the
host system.
4.2 Crosstalk calibration
In imaging, crosstalk is defined as the amount of return signal received on the sensing array which is due to
VCSEL light reflection inside the protective window (cover glass) added on top of the module for aesthetic and
protective purposes.
Depending on the cover glass quality, the amount of return signal may be significant and may affect sensor
performance. The VL53L1X has a built-in correction that allows the user to compensate for this crosstalk
phenomenon.
Crosstalk calibration is used to estimate the amount of correction needed to compensate for the effect of a cover
glass added on top of the module.
4.2.1 Crosstalk calibration function
Use the function VL53L1X_CalibrateXtalk () to perform crosstalk calibration.
The VL53L1X_ CalibrateXtalk () finds the crosstalk compensation value, applies the correction, and returns the
crosstalk correction value.
The crosstalk compensation value returned by VL53L1X_CalibrateXtalk () must be stored in the host system and
applied to the sensor during boot up using VL53L1X_SetXtalk ().
UM2510
Calibration functions
UM2510 - Rev 1
page 10/26