2020-10-12 08:28 AM
Hi!
My name is Vincenzo.
I studied the ToF sensors VL53L3CX and VL53L1X. A few days ago I decided to study the VL53L1. From a first overview, this sensor seems to possess the main characteristics of both ToFs that I mentioned earlier: VL53L3CX (Multi-object detection, Ranging mode with "handshake" management for better synchronization) and VL53L1X (Autonomous mode without handshake management, criteria are used to choose when to wake the host, programmable ROI), plus other features of their own.
If I understand correctly, the VL53L1 allows me to choose between several working modes:
Autonomous (like VL53L1X);
Ranging mode (like VL53L3CX);
Scanning mode (similar to your 2D LIDAR application with VL53L1X applying the multi zone strategy) .
Studying the VL53L1 I realized I was not clear about one thing.
Which is the difference between Autonomous mode configured without filters and Ranging mode.
The first answer that comes to my mind is: handshake management.
In fact, if I'm not mistaken, handshake management is required for Ranging mode and not for Autonomous, but if I consider the driver functions to be used both in the first case (Autonomous mode without filters) and in the second case (Ranging mode) I don't notice any differences.
For this reason,
Is it possible that Autonomous mode without filters and Ranging mode are the same thing?
I say this because, if I configure Autonomous mode without filters, every measurement made is available and therefore an interrupt will always be raised and I will always wake up the host, and this seems the Ranging mode scenario.
I probably misunderstood the meaning of "Handshake" management, up to now I am considering this handshake as if it were the set of methods that allow me to obtain the data, clean up the pending interrupt and start the new measurement.
Is what I thought correct or are there things I need to understand better?
Thanks in advance for your help and sorry if my way of expressing the doubt is not very clear.
Vincenzo
2022-03-29 07:57 AM
There are 2 major ranging modes. "Standard" ranging means the chip does all the work internally.
"Histogram" mode is where the sensor uploads the raw data to the MCU and it is your MCU that derives the answer.
One can range autonomously in standard mode with or without thresholds. But the MCU gets one range value per range without doing anything except reading the value.
Using histogram mode, autonomous is out of the question because of that handshake, so thresholds makes no sense. But histograms can give you a better answer. (They are immune to crosstalk past 80cm, multiple target distances, longer ranging. and so on.)
The L1CB has another trick, because it gets a handshake at the end of every range, it can configure a new Field of View as part of the handshake. You can do this yourself using the L1X, but having the code do it for you is easier.
I hope this clears it up. We had some issues as the documentation for 'standard' mode was written before we invented the histogram mode. So it didn't occur to us to actually give standard mode a name.