2022-02-22 08:29 AM
Is it possible to have a computer ask the sensor for only certain pixels when it is needed?
From what is posted by your vendor Sparkfun, the data array can be 4x4 or 8x8, and repetition rate can be 1, 15, or 60Hz. Are these options set by the approximately 90 KB of firmware sent to the sensor on power up? Are details of the firmware available?
Thanks
Solved! Go to Solution.
2023-07-12 02:01 PM
The sensor is going to report a fixed buffer every time you ask for the data. If you dig into the platform.h file there are some bits of data you can disable.
The structure elements you can set are below.
Decide which elements you can eliminate and you can reduce the structure size.
look at the attached structure size spreadsheet and you can work out the packet size.
Setting | ||
Nb of targets per zone | ||
Nb of sensors | ||
Output - ambient rate enabled ? | ||
Output - nb targets detected enabled ? | ||
Output - SPAD nb enabled ? | ||
Output - signal rate enabled ? | ||
Output - sigma mm enabled ? | ||
Output - distance mm enabled ? | ||
Output - reflectance enabled ? | ||
Output - target status enabled ? | ||
Output - motion indicator enabled ? |
2022-03-28 04:43 PM
The firmware comes up in a configuration by default. But if you want to lower the communication traffic, there are functions that will switch to 4x4 mode, to change the repetition rate and other things.
Just call them prior to issuing the start.
You should also look into only reporting 1 target. This is the biggest traffic saver.
2022-03-29 06:30 PM
Thanks, I read about those options, but also wonder if it is possible to instruct the VL53L5CX to only send a single row or column of sensor data.
Also as long as we are talking about this chip, is it possible to get more information about the gestures that can be recognized, and examples of how the gesture recognition is done in software. For example a mockup of a thermostat was demonstrated, but I did not find how the swipe or push/pull were implemented.
Thanks,
Mark
2023-07-09 09:11 AM
Hello MBres,
I am just starting my journey into the VL53L5CX and I have identified similar problem.
Now I have not implemented this idea yet but this is the way I am think of heading.
https://www.st.com/resource/en/user_manual/dm00797144-a-guide-to-using-the-vl53l5cx-multizone-timeofflight-ranging-sensor-with-wide-field-of-view-ultra-lite-driver-uld-stmicroelectronics.pdf
Looking at the above page 10 and 11 I believe you can instruct the VL53L5CX to home in on the object that is likely to be most troublesome to your robot. From the sharpness data you can use the status byte
(measurementData.target_status) to get the cell address. You could use these to compute a rectangle.
Bottom Left X,Y Top Right X,Y which you can squeez into two bytes then have a third byte for the object distance.
Hope that helps imk
2023-07-12 02:01 PM
The sensor is going to report a fixed buffer every time you ask for the data. If you dig into the platform.h file there are some bits of data you can disable.
The structure elements you can set are below.
Decide which elements you can eliminate and you can reduce the structure size.
look at the attached structure size spreadsheet and you can work out the packet size.
Setting | ||
Nb of targets per zone | ||
Nb of sensors | ||
Output - ambient rate enabled ? | ||
Output - nb targets detected enabled ? | ||
Output - SPAD nb enabled ? | ||
Output - signal rate enabled ? | ||
Output - sigma mm enabled ? | ||
Output - distance mm enabled ? | ||
Output - reflectance enabled ? | ||
Output - target status enabled ? | ||
Output - motion indicator enabled ? |