Skip to main content
Visitor II
January 15, 2025
Solved

Sometimes VL6180 is not recognized the object (feat. drift)

  • January 15, 2025
  • 1 reply
  • 530 views

Hi ST team,

I'm developing the device which is using VL6180. 

Sometimes ToF(VL6180) is not recognized the object. 

And sometimes it is not recognized first and then becomes recognized again. But I don't know why this happened. 

I'm trying to find the reason but kept failing.

My question's are..

1. Could this phenomenon(1. not recognized 2. not recognized first and then becomes recognized again) occur when repeatedly recognizing a very short distance (<10mm) due to drift? 

According to the datasheet, drift is affected by temperature and voltage. But there is no mention about repeated recognizing. That's why I'm asking.

2. Or is there something suspicious that could be causing this phenomenon?

- In terms of hardware, software, and mechanical aspects

 

Thank you

Best answer by John E KVAM

The drift due to temperature will affect the distance. But it does not affect the ability to see an object. 

What affects the ability to 'see' a target is that target's reflectivity, the distance and ambient sunlight. 

If you have a dull target at a far range with some sunlight coming in through a window, you have the worst case.

If you increase the amount of time you give the sensor to do a detection, you might do better. 

But the first thing to do is check the Status Return. Not the function return, but there is a StatusReturn register that tells you what went wrong. And read out the signal strength and ambient as well. 

Between those 3 you will know what is going on.

- john 

1 reply

John E KVAM
John E KVAMBest answer
ST Employee
January 15, 2025

The drift due to temperature will affect the distance. But it does not affect the ability to see an object. 

What affects the ability to 'see' a target is that target's reflectivity, the distance and ambient sunlight. 

If you have a dull target at a far range with some sunlight coming in through a window, you have the worst case.

If you increase the amount of time you give the sensor to do a detection, you might do better. 

But the first thing to do is check the Status Return. Not the function return, but there is a StatusReturn register that tells you what went wrong. And read out the signal strength and ambient as well. 

Between those 3 you will know what is going on.

- john