2025-06-18 10:54 PM
Hardware environment: STM32F405 chip and VL53L5CX-SATEL module;
Software environment: Based on the STSW-IMG023 sample code, the code is ported to KEIL5 for use;
Problem description: After completing the sensor initialization (ranging frequency 10hz, ranging continuous mode), use polling to read data, call the vl53l5cx_check_data_ready function to read the sensor data: 0x00, 0x03, 0x01, 0x0D, these four values are considered data not ready after judgment.
I want to know what these four values mean? I checked the documents I know (DS13754, um2884, etc.) and did not find the relevant register description.
Why does this happen, and how should I debug?
Thank you!
Solved! Go to Solution.
2025-06-24 11:44 PM
Hi Philister
About your issue, I suggest checking the I2C link instead of the 4 registers meaning.
can you share you schematic, and platform file which realize the I2C read/write function,
Br
Zhiyuan.Han
2025-06-24 11:44 PM
Hi Philister
About your issue, I suggest checking the I2C link instead of the 4 registers meaning.
can you share you schematic, and platform file which realize the I2C read/write function,
Br
Zhiyuan.Han
2025-06-25 7:02 PM
Hi Zhiyuan,
Thanks for your reply, you are right! I used LA to capture the I2C data and found that there was indeed a problem in the initialization process. The reading of a certain register was always 0, which did not match the expected value. After repeated reading, it timed out, but the program did not handle this erroneous return status. It continued to execute and returned an erroneous value when vl53l5cx_check_data_ready.