Download Print this page
ST VL53L1X Setup

ST VL53L1X Setup

Laser-ranging sensor
Hide thumbs Also See for VL53L1X:

Advertisement

Quick Links

VL53L1X Setup and Demo
Apr 2018

Advertisement

loading
Need help?

Need help?

Do you have a question about the VL53L1X and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Summary of Contents for ST VL53L1X

  • Page 1 VL53L1X Setup and Demo Apr 2018...
  • Page 2 Agenda • VL53L1X OverView • VL53L1X Software package • Presence HOD demo...
  • Page 3 VL53L1X OverView...
  • Page 4 Change key settings of the device Full access to product settings Data logging capabilities Data logging capabilities Ranging and Gesture detection demo VL53L1X C API package – STSW-IMG007 VL53L1X API Data Brief VL53L1X API User Manual Discover API Source code VL53L1X Data Brief...
  • Page 5: Hardware Description

    Hardware Description • VL53L1X Evaluation tools are all based on the same hardware pack composed of o Nucleo F401RE board o X-NUCLEO-53L1A1 Nucleo Expansion board o Optional two VL53L1X satellites o Several gap spacers and cover glass Search for P-NUCLEO-53L1A1 on st.com to order the pack and get documentation...
  • Page 6 VL53L1X Application • Advanced user detection  Ultra-low-power  Laptop, PC, tablets & IoT, portable handsets. • Drones and Robotic  Take-off and landing phase  Obstacle avoidance  Ceiling detection • Smart building and smart lighting  People detection, gesture control •...
  • Page 7 VL53L1X Mode • Autonomous mode is using sigma delta mechanism to measure distance:  Averages all targets in the full FoV  Allows multiple ROI  This mode is called Timed measurement, means ranging continuously and autonomously with a programmable inter-measurement period.
  • Page 8 Autonomous functionalities Ranging characteristics (tbc) Timing budget • VL53L1X running in low power autonomous mode, • Autonomous ranging with selectable timing no data sharing through I2C, just GPIO level change if budget from 20ms to 1000ms. human / object is detected.
  • Page 9 Timing Budget • Timing Budget and Inter measurement budget statically configured as part of Initialized process. • It allows user to configure timing budget and Inter measurement budget by calling sub sequent API in Application level. • For Example : In Init time, let say default timing budget set to 41ms and inter measurement timing budget set to 500ms.
  • Page 10: Software Package

    Software Package...
  • Page 11 Package • On www.st.com • X-CUBE-53L1A1 : Link • VL53L1X GUI(STSW-IMG008) : Link • VL53L1X API(STSW-IMG007) : Link • Data sheet , User manual and GUI UM can get at st.com.
  • Page 12: Software Flow

    Software Flow VL53L1_WaitDeviceBooted( It ensures that the device is booted and ready. DataInit(): It performs device initialization. Call once only. StaticInit(): It loads device settings. StartMeasurement(): It must called start measurement Waitmeasuremetndataready It polls on the device interrupt status until ranging data are ready.
  • Page 13 VL53L1X Calibration • To gain full performance of the device, calibration functions should run once at the customer production line. Note: X-talk calibration distance chart, same as Ewok.
  • Page 14 • We see software distribution of an application using the X-NUCLEO- 53L1A1 expansion with either the NUCLEO-F401RE or NUCLEO- L476RG board. VL53l1x Driver STM32 Nucleo BSP STM32 HAL Application main.c...
  • Page 15 Ranging Result • Ranging result can by seen by serial communication , either using telnet or tera term.
  • Page 16 • Run the installer with Admin privileges • PC Graphical User Interface to • Display (in live) key ranging data (distance, signal rate) • Change key parameters of VL53L1X • Perform calibration phases (offset and xTalk with cover glass) • Get data logging (.csv file) •...
  • Page 17 VL53L1X - GUI • The “Low-power Autonomous” tab provides ranging distance and signal strength reflected from target. • You can configure various parameters : • Distance mode • Threshold option • Timing budget • Inter measurement period • ROI selection •...
  • Page 18 Source code Files • Drivers: Deal with only following 7 files. • Platform • Application • X-Nucleo-53L1A1...
  • Page 19 Analysis Application file • The released SW package supports • Interrupt mode: an Interrupt pin (GPIO1) sends an interrupt to the host when a new measurement is available. • Polling Mode: Host has to check the status of ongoing measurement by polling API. •...
  • Page 20 Interrupt mode - Threshold • Threshold can be set based on signal or distance or both parameters. • Distance detection mode is governed by CrossMode value. • 4 detection thresholds criteria : • Above High ( CrossMode =1) • Below Low ( CrossMode =0) •...
  • Page 21 VL53L1X - ROI • The receiving SPAD array includes 16x16 SPADs which covers full FoV. It allows to narrow down FoV by programming smaller ROI. Minimum ROI size is 4x4. • In order to set ROI, top left and bottom right coordinates are required.
  • Page 22 VL53L1X – ROI Result • It allows to reduce FoV, but on other hand penalties on ranging distance. Thus, caution to use it. • From the above table, if application consider 15 ° FoV, then sensor can range max ½ of the actual ranging capability.
  • Page 23 VL53L1X – Power consumption...
  • Page 24 • VL53L1X supports THREE different IDES • AC6 (Free to use unlimited code size) • IAR (License limited, 1 year) • Keil-ARM (Limited Code size , 32Kb) , ST agreement License version supports STM32M0XXX series. • • STM32F432XX • STM32L476XX •...
  • Page 25 VL53L1X’s driver Code analysis on IDE • After analyzing VL53L1X driver code (Without Calibration), the ROM size is ~9Kb and RAM is 280 bytes. Detail analysis and map file can be found on attached email , date : March 15, 2018 5:00 PM, subject: VL53L1X Multi sensors.
  • Page 26 Multi Sensor Flow • Initialized each sensor’s I2C address by incrementing 2. Initialized Sensor 2 Sensor 3 Sensor 1 address Address+2 Address +4 Identifies sensor availability Present Present Present Sensor 3 Sensor 1 Sensor 2 Ranging Result Ranging val Ranging val Ranging val...
  • Page 27 Mutli Sensor Example Code • Initialized each sensor’s I2C address by incrementing 2. Program address Set address to sensor...
  • Page 28 Mutli Sensor Example Code • Check present sensor and ranging. Check present Device...
  • Page 29 Mutli Sensor Example Code Interrupt • HW configuration is required to handle multi sensor interrupt mode.
  • Page 30 VL53L1X benefits versus VL53L0X 2x longer distance detection VL53L1 VL53L0 (Autonomous) 2x faster ranging operation Fastest miniature ToF product on the market • 20ms typical ranging timing Laser budget, could further down. Faster “jump to focus” • Run 50Hz frequency...
  • Page 31 Presence HOD Demo...
  • Page 32 HOD Demo outputs • HOD Demo outputs • HOP : Human Occupancy Probability (integer value between 0 and 100) • Human Presence : True/False (based on HOP) • D : Distance of the detected target (object or human) • How to interpret HOD outputs ? Human detected at distance D...
  • Page 33: Getting Started

    Getting Started • Unzip the PresenceHODKit FW package on your PC • Connect hardware to the PC through USB with Nucleo board(please install STLink007 and STLink009 firstly if you are using Win7) • Check hardware is recognized as a mass storage •...
  • Page 34 • Leave the sensor FoV and let a chair (detected by the sensor) • After ~20 sec, Presence flag goes to 0 with HOP converging at 25% • Unzip HODDemo1.0.0.zip and click HODDemo.exe to start ST HODDemo graphical tool see the output of HOP(also distance)
  • Page 36 Q & A...