2020-10-05 12:58 PM
My application is uses a linear array (18 sensors) for object presence detection at a fixed distance (~70mm). A range threshold setting is used. The range measurement is not read, only the interrupt is used indicating the presence of a moving object. The preferred minimum sample rate would be around 60 Hz, but faster would be better. The sensors are always used indoors but the item to be sensed is black with a relatively reflective surface. I have a working prototype using the VL6180X but looking for a faster sensor.
Which part provides the fastest sample rate for this application?
2020-10-08 11:02 PM
Hi,
You may try the VL53L1X with its ULD driver, setting the distance mode = short and timing budget = 15 ms => 66 Hz. I think it will work fantastically.
Download the X-NUCLEO-53L2A1 from st.com to and have a look on the UltraLiteDriver example.
// status = VL53L1X_SetDistanceMode(dev, 1); /* 1=short, 2=long */
// status = VL53L1X_SetTimingBudgetInMs(dev, 15); /* 15 ms available only in short mode*/
// status = VL53L1X_SetInterMeasurementInMs(dev, 15); /* */
2020-11-21 02:06 PM
Searching on st.com for "X-NUCLEO-53L2A1" does not produce a result. Are you sure about that part number?
2020-11-22 10:42 PM
I found X-CUBE-53L1A1 fast ranging setup, looks like that is 10ms (100Hz) timing budget. Any reason I should not use that driver?
2020-11-24 11:26 AM
I have the Fast Ranging example from X-CUBE-53L1A1 working (setup based on app note AN5623 - Configuring the VL53L1X Time-of-Flight sensor to range up to 100 Hz). However I need to implement a distance threshold setup and I need an example of the parameter configuration setup. The following code does not compile:
detectionConfig.DetectionMode = 1;
detectionConfig.Distance.CrossMode = 0;
detectionConfig.Distance.Low = 80;
status = VL53L1_SetThresholdConfig(Dev, detectionConfig);
The compile error is: 'detectionConfig' does not name a type
Can you provide an exact code syntax for the parameters?
Thank you