2024-08-22 11:08 PM
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)
2024-08-26 08:37 AM
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
2024-08-29 03:09 AM
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
we just focus the closest objects, so is there any settings to do with the driver?
2024-08-29 09:26 AM
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?