cancel
Showing results for 
Search instead for 
Did you mean: 

[ATT]12127

John Tukash
Associate
Posted on May 08, 2018 at 13:21

VL53L1x ROI change does different distance measurements

Hi, all!

maybe someone can explain me why when I change ROI (range of interest) parameter of VL53L1x sensor then I got different distance to the same object (for example to table plane)? If I use 16x16 ROI settings then distance is correct but if I change ROI to smaller then 16x16 then results is unpredictable for different ROI's and distance varies between 5-40%.

For ROI changing I'm using library source code function: set_custom_roi

Maybe need to do something more if I changing ROI that the distance measurement will be correct?

Here I below I provide the results when I changed the ROI to 4x4 and moved this square in different places in the 16x16 matrix:

  81      92      77      64    

  76      85      60      44    

  52      77      73      50    

  57      78      89      73   

Distance provided in millimeters. For this test I used these settings:

 

status

=

VL53L1_SetDistanceMode

(

Dev

,

VL53L1_DISTANCEMODE_SHORT

)

;

 

status

=

VL53L1_SetMeasurementTimingBudgetMicroSeconds

(

Dev

,

200000

)

;

 

status

=

VL53L1_SetInterMeasurementPeriodMilliSeconds

(

Dev

,

250

)

;

I'm little bit shocked about the results.

I got similar results when used official VL53L1X_Gui software. Please see attached files with 3 different ROI settings (full_roi.jpg, middle_roi.jpg, small_roi.jpg)

Measurements environment is in measurement_setup.jpg photo.

Real distance to object was 6.1cm

The question is why have such bad distance results when changing ROI?

Maybe need to do something more after changing ROI settings to have correct distance measurement?

P.S. for tests I used X-CUBE-53L1A1 + NUCLEO-F401RE

1 REPLY 1
John E KVAM
ST Employee
Posted on May 11, 2018 at 19:53

In Section 3.6 of the datasheet, it shows a +/- 20mm error range. At short ranges this seems like a huge error, but at the chip's max range of 1.7M for a 4x4, the +/- 2cm doesn't seem like much.

Offset Calibration?

But that doesn't help you.

At your range of 61mm you should have gotten numbers between 41-81.

You got an average range of 70.5, with an excursion of 44 to 92. Spec would allow 50-90, so you are about right there.

You might account for some of the error with an offset calibration. With the offset calibration, your average should approach the actual. Did you do that?

(Offset calibration accounts for the changes the chip goes through when being soldered onto the board.)


If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.