cancel
Showing results for 
Search instead for 
Did you mean: 

VL53L7CH does not recognise the closest object

michaellee202404
Associate

I put a object at about 1100mm, and another object at about 50mm. And use example5 to test vl53l7ch (4x4 resolution, max 2 objects per zone), but found that it does not recognise the closest object. For example, zone 13 output:

[Zone13] (found 1 object), 

object 1 ==> ( range status: 5, distance:1043, signal_per_spad:3, sigma:26)

object 2 ==> ( range status: 14, , distance:32, signal_per_spad:1674, sigma:1)

 

My questions are:

1. What is status code 14? I can not find it in UM3183

2.Why the driver does not put object 2 in the first position after I have called vl53lmz_set_target_order to set target order to VL53LMZ_TARGET_ORDER_STRONGEST

3.why the sensor does not recognise object at "distance:32" (that is object2)  even its signal is more larger than object at "distance:1043"(that is object1) 

1 ACCEPTED SOLUTION

Accepted Solutions
John E KVAM
ST Employee

I think you are asking the wrong question.

The proper way to evaluate the data is, 

If there is a valid target, AND its status is 5, 6, 9, or possibly 12, then look at the results. 

Your data shows 1 valid target. So, what is in target 2 is left over junk from some other range. It's not data.

In your zone 8 you have no valid targets. So, you cannot trust any of that data. The fact that your second target is close to what you want is just luck.

Look at zone 8's signal strength. It's 10 times as large as it neighbors. Something is wrong. 

So the question should probably be, 'What is wrong with zone 8?' 

And I don't know. 

Is your target specular (mirror-like)? Could zone 8 be directly in front of the laser? I cannot account for such a large signal strength. Perhaps the algo gave up for some reason, and the signal strength is invalid as well.

If the issue is fleeting and you get a valid target next range, can you simply roll through this error?


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.

View solution in original post

3 REPLIES 3
John E KVAM
ST Employee

The sensor orders the Valid targets - but 14 is not considered valid. So it's put second. 

14 comes from the 'Glare filter'. 

If you have an object at the same distance as a neighbor but with significantly lower signal we discount the range. 

You get to pick that ratio. It's the 'sharpener' setting. 

If a close object protrudes even a mm into the zone, we need to decide if we want to declare it as in the zone or not. 

So we use the concept of sharpening. 

If you look you will see a neighboring zone at 32mm with a really strong signal. And your the signal per SPAD in your zone is less than S percent of it. (Where S is your sharpener setting.)

But you have a valid point that the 14 should have been documented.

- john


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.

Thank you John

But after I carefully review the log, there is no neighbouring zone at 32mm with strong signal.(we use the default sharpener percent 5%)

 

Here are the log of the case I mention on 2024-08-22

Screenshot 2024-08-29 180512.png

we just focus the closest objects, so is there any settings to do with the driver?

John E KVAM
ST Employee

I think you are asking the wrong question.

The proper way to evaluate the data is, 

If there is a valid target, AND its status is 5, 6, 9, or possibly 12, then look at the results. 

Your data shows 1 valid target. So, what is in target 2 is left over junk from some other range. It's not data.

In your zone 8 you have no valid targets. So, you cannot trust any of that data. The fact that your second target is close to what you want is just luck.

Look at zone 8's signal strength. It's 10 times as large as it neighbors. Something is wrong. 

So the question should probably be, 'What is wrong with zone 8?' 

And I don't know. 

Is your target specular (mirror-like)? Could zone 8 be directly in front of the laser? I cannot account for such a large signal strength. Perhaps the algo gave up for some reason, and the signal strength is invalid as well.

If the issue is fleeting and you get a valid target next range, can you simply roll through this error?


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.