VL53L0X Quick Start Guide Version 1.1 History Version Date Comments 1.0 6 June 2016 Initial 1.1 24 June 2016 SW Pre-requisites slide moved before SW deliverables description 2 A color code is used in the document for each component of the eco-system VL53L0X eco-system X-CUBE-53L0A1 (STM32Cube) User Manual – UM2046 VL53L0X GUI User Manual - Embedded X-NUCLEO-53L0A1 (HW) User Manual – UM2047 Documentation STSW-LINK009 X-CUBE-53L0A1 package VL53L0X Eval GUI - STSW-IMG006 Get ranging live curves on your PC Change key settings of the device Data logging capabilities VL53L0X API User Manual - UM2039 STSW-LINK007 Full integration in STM32 MCU (real-time) All source code provided Full access to product settings Data logging capabilities Ranging and Gesture detection demo VL53L0X C API package – STSW-IMG005 Discover API Source code VL53L0X Datasheet – DS11555 VL53L0X Quick Start Guide Applications Notes VL53L0X : Miniature ToF Ranging & Gesture Sensor Hardware P-NUCLEO-53L0A1 X-NUCLEO-53L0A1 3 VL53L0X Main Page VL53L0X documentation • DB2846 - Data brief • DS11555 - Datasheet • UM2039 - API user manual • Quick start guide • Application notes Link • API software API documentation (STSW-IMG005) • DB2903 - Data brief API software STSW-IMG005 X-NUCLEO-53L0A1 documentation • DB2901 - Data brief • UM2047 – User manual (Hw) • Quick start guide st.com site map X-CUBE-53L0A1 documentation • DB2902 - Data brief • UM2046 – User manual X-NUCLEO-53L0A1 documentation • Quick start guide Link • X-CUBE-53L0A1 software Link • X-NUCLEO-53L0A1 Link • P-NUCLEO-53L0A1 X-CUBE-software Link • PC GUI software P-NUCLEO-53L0A1 documentation • DB2905 - Data brief X-NUCLEO-53L0A1 documentation • UM2047 – User manual (Hw) • Quick start guide Link GUI documentation (STSW-IMG006) • DB2904 - Data brief • User manual PC-GUI software STSW-IMG006 • PC GUI software Link • 53L0-SATEL-I1 Link • X-CUBE-53L0A1 software 53L0-SATEL-I1 documentation • DB2912 - Data brief As for all X-NUCLEO boards, LINK007 and LINK009 STM32 software are accessible from P-NUCLEO-53L0A1 and X-NUCLE0-53L0A1 web pages 4 VL53L0X eco-system glossary & links Name Definition Links VL53L0X ST’s FlightSense Time-of-Flight ranging and gesture detection sensor • Search for vl53l0x on st.com to go to the product main page. VL53L0X Quick Start Guide This document • Search for VL53L0X Quick Start Guide on st.com VL53L0X Datasheet VL53L0X product datasheet • Search for DS11555 on st.com VL53L0X API Set of C functions to control VL53L0X and get ranging data • Search for STSW-IMG005 on st.com VL53L0X API User Manual Document describing VL53L0X API in details • Search for UM2039 on st.com 5 VL53L0X eco-system glossary & links Name Definition Links NUCLEO (F401 or L476) STM32-based board which can be combined with an expansion board for evaluation purpose • Search for nucleo on st.com X-NUCLEO-53L0A1 Nucleo expansion board with VL53L0X sensor plus optional VL53L0X satellites • Search for X-NUCLEO-53L0A1 on st.com P-NUCLEO-53L0A1 Hardware pack composed of the X-NUCLEO-53L0A1 expansion board plus one STM32 F401Nucleo board, and 2x VL53L0X satellites • Search for P-NUCLEO-53L0A1 on st.com X-CUBE-53L0A1 Software package containing source code for P-NUCLEO-53L0A1 hardware • Search for X-CUBE-53L0A1 on st.com X-CUBE-53L0A1 User Manual X-CUBE package detailed documentation • Search for UM2046 on st.com VL53L0X Eval GUI PC Graphical User Interface to display ranging data from VL53L0X • Search for STSW-IMG006 on st.com VL53L0X GUI User Manual PC GUI detailed documentation • Install the GUI and open the embedded documentation STSW-LINK009 PC driver to enable Virtual Com Port with Nucleo board (used for data logging, GUI) • Search for STSW-LINK009 on st.com STSW-LINK007 Nucleo STLINK FW upgrade to get best speed performances through Virtual Com Port • Search for STSW-LINK007 on st.com 6 Evaluation tools HW description • VL53L0X Evaluation tools are based on following hardware elements: 1. STM32 F401RE Nucleo board 2. X-NUCLEO-53L0A1 Nucleo Expansion board, which includes: • Two VL53L0X satellites • One cover glass and 3x spacers with different heights • Search for P-NUCLEO-53L0A1 on st.com to order the full pack (1+2) • or search for X-NUCLEO-53L0A1 to get only the Nucleo expansion board (2) • Hardware documentation (schematics) also available on st.com 7 Hardware Description: Removing the protective liner on the sensor • When using the VL53L0X sensor, or the X-NUCLEO expansion board, remove the liner before use ! • Don’t touch too much the sensor with fingers 8 SW pre-requisites : to be done once • API examples, X-CUBE data logging and GUI communicate with Nucleo through Serial com over USB (Virtual Com Port). Following SW packages must be installed • STSW-LINK009 : PC USB driver • STSW-LINK007 : Nucleo ST-LINK FW upgrade • Connect the Nucleo pack to the PC through USB • Wait for the board to be recognized as a mass storage device (some drivers will be installed automatically) • Install ST-Link Virtual Com port drivers on the PC (STSW-LINK009) • Search for STSW-LINK009 on st.com, download, unzip • Launch stlink_winusb_install.bat • Upgrade ST-Link FW on the Nucleo board to get the latest version and benefit from best performances for UART over USB transfers (STSW-LINK007) • Search for STSW-LINK007 on st.com, download, unzip • Connect Nucleo board to the PC through USB • Launch ST-LinkUpgrade.exe, press Device Connect, then Yes 9 VL53L0X API : Purpose • Small SW package containing VL53L0X API source code and few basic examples than can be run on the PC connected with Nucleo hardware pack (P-NUCLEO-53L0A1) • Starting from this software package, user can: • Discover VL53L0X API (browse the code, read Doxygen documentation) • Run simple .exe programs on the PC to do ranging from VL53L0X • Related documentation: • VL53L0X API User Manual • Download from st.com searching for STSW-IMG005 10 X-CUBE-53L0A1 : Purpose • Give a full example of how VL53L0X device is integrated into a MCU sub-system taking benefit from the STM32 Open Development Environment • Starting from this software package, user can: • Run Ranging and Gesture detection demos with a simple drag & drop • Get basic data logging on PC through Virtual Com Port (Teraterm, Putty, etc…) to collect data or build simple PC GUIs • Import a project in his favorite IDE (Keil, IAR or STM32 Workbench) to browse the code, (re) compile, (re)flash Nucleo and debug (breakpoints, step into the code, etc…) • Understand how VL53L0X API has been ported on Nucleo • Get a working and real-time example of interrupt-based ranging mode • Modify the project code to change VL53L0X settings for the targeted application • Related Documentation • X-CUBE-53L0A1 User Manual (UM2046) • Download from st.com searching for X-CUBE-53L0A1 11 VL53L0X GUI : Purpose • PC Graphical User Interface which allows to: • Display (in live) key ranging data (distance, signal rate) • Change key parameters of VL53L0X • Perform calibration phases (offset and xTalk with cover glass) • Get data logging (.csv file) • GUI is running on the PC connected to a P-NUCLEO-53L0A1 pack • VL53L0X API running on the PC side • Run simple .exe programs on the PC to do ranging from VL53L0X • Related Documentation • User Manual embedded in the tool (See the About tab) • Download from st.com searching for STSW-IMG006 • Run the installer with Admin privileges or change default installation directory 12