Timing configuration difference between VL53L1X ULD and API
We are currently investigating an issue with corrupted measurement results of an VL53L1X using the ULD API in short range mode. The sensor delivers results with status ok but completelely wrong ranging values at target distances exceeding the range of 1.4m (e.g. at 2.3m). This holds true especially for the lowest timing budget of 15ms, and becomes more unlikely with larger timing budgets.
When looking at the timing values which are configured by the full API some differences occured (please see the following picture for details).
Especially the register values VL53L1_MM_CONFIG__TIMEOUT_MACROP_A and VL53L1_MM_CONFIG__TIMEOUT_MACROP_B differ, while others are identical.
The values of the two registers VL53L1_RANGE_CONFIG_TIMEOUT_MACROP_A and VL53L1_RANGE_CONFIG_TIMEOUT_MACROP_B are close for larger timing budget values, but differ by a large amount for low timing budget values.
Why do ULD and full API use different values for the same timing configuration ? Are the ULD values not correct and might explain the measurement corruption for low timing budget values ?
