2018-10-23 12:21 AM
Though the maximum range of the VL53L1X is 400cm, it gives random readings within 400cm when it is directed to open space. The VL53L0X gives a value about 8.1m for out of range measurements so that we can filter out them. But in VL53L1X there is no way to identify out of range readings. Here are some readings I got when it is directed to the free space. (4.156,3.568,1.240,3.568,1.165). Any idea to fix this issue?
2019-01-07 04:15 AM
I do not think that interrupt would work with my application as since it is giving me a distance of 60cm, I think it will assume that there is a target within the 4m as the interrupt will make decision based on the distance reading.
Variation in sigma might make it to complex to tune it for different environments I think.
Also to make things a bit more precise I am using the VL53L1X on a pcb that has a microcontroller that does the basic settings for me and only transmits me the data via UART. Its called GY-53 for VL53L1X. So i only have the basic options for the parameter setting which include time budget and measurement mode.
The RangeStatus number is defined like this in the GY-53 datasheet:
0: indicates that the distance value is reliable;
1: indicates the ambient light effect;
2: indicates that the returned signal is weak;
4: indicates that the measurement range is exceeded;
5: indicates a hardware failure;
7: Indicates that there is interference noise in the surrounding environment;
8: overflow or overflow of internal algorithms;
14: Invalid measurement.
Attached document is a translated version of the orignal in Chinese. If you would suspect the readings from the controller are wrong I even did it with a raw I2C and had somewhat similar results in VL53L0X. Also to note is that the indicators in the GY-53 have been proved reliable in the practical tests that I have done.
Let me know if you need any other kind of information.
2019-01-08 02:06 AM
Hi Ameer,
"So i only have the basic options for the parameter setting which include time budget and measurement mode. " - Do you mean distance mode or is there some implemented functions in GY-53?
As you have jitter by measuring an object above max. sensor range you should make use of ResultStatus. It might be wrong, but as i remember the jitter returns ResultStatus 4 is the target outside the range and ResturnStatus 7 could be interesting too, to make decision about the measured values.
Disabling the "No Target" Interrupt should help you to ignore any objects outside defined threshold modes.
"Yes i also have the indication of the range status which i get as 3 (which is weak return signal) and the problem is that i can not discard Weak return signal (RangeStatus = 3) " -
"2: indicates that the returned signal is weak;
4: indicates that the measurement range is exceeded;" -
Make sure you have ReturnStatus 3. As you mentioned above the weak signal stays for status 2.
If you have many weak signal measurements that means that you have low % of target reflectance (for ex. 17% grey). If you look in Datasheet of VL53L1x sensors 3.4 and 3.5.1 p. 16, your max. range is changed for dark & light conditions.
You can try to get another target with better reflectance (white 88%) and try dark ambient light. Or maybe try another sensor. You can also try to clear the sensor surface.
Regards
2019-04-11 04:32 PM
Could it be that you are using a cover glass? Reflections from the glass can sometime be interpreted as a 'ghost image'. Solution is to calibrate the cover glass. And if you still have an issue, increase your calibration a touch.
Another way to reduce the ghost is to decrease the sigma threshold. By demanding the photons be more grouped, you will eliminate the really weird situations.
All Lidar and Radar systems are subject to Aliasing. Aliasing is where photons from range A return AFTER range B is started. When this happens you the real distance will be the received distance + the wrap-around distance (5M). We sort of have to live with it. Only really happens with highly reflective objects as generally object that far away don't reflect enough signal to get an answer.
2019-04-22 11:31 AM
The Best way to figure out what the chip is doing is to check the RangeStatus after each range. It has a combination of warnings and errors that can clue you in to what is going on. Prior chips returned the max distance (8192 minus the error number). This sensor returns a 'best guess', but depending on the RangeStatus that best guess might be completely wrong.
This device uses a direct method rather than a phase shift. (Think radar from some old movie.) But the short range number you get at 500cm is indeed an aliasing effect identical to the phase shift described above.
The only solution to the RangeStatus=3 (weak signal) is to increase the timing budget, or brighten up the target. And I realize you might not be able to do either.
The physics of the situation and the need to keep the device eye-safe limits the number of photons the device sends out and thus how many are returned.
By having a brighter target or more time to range, you can get a larger photon count, and a better answer.