
VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 1
VL53L0X Distance Sensor
User Manual
OVERVIEW
VL53L0X Distance Sensor is a Time-of-Flight (ToF) ranging module based on the
VL53L0X from ST, with accurate ranging up to 2m, it is controlled through I2C
interface, and pretty low power consumption.
The VL53L0X is a ToF sensor which embeds the ST’s second generation
FlightSense patented technology.
Unlike conventional ranging sensors, the VL53L0X is able to provide accurate
distance measurement whatever the target color and reflectance, achieves better anti-
interference capability.
FEATURES
⚫ I2C communication interface, control the module on/off via IO pins
⚫ Onboard voltage translator, compatible with 3.3V/5V operating voltage
⚫ Comes with development resources and manual (examples for Raspberry
Pi/Arduino/STM32)
SPECIFICATIONS
➢ Operating voltage: 3.3V/5V
➢ Dimension: 20mm × 24mm

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 2
➢ Mounting holes size: 2.0mm
➢ Ranging distance: 30 ~ 2000mm
➢ Ranging accuracy: ±5% (high speed mode), ±3% (high accuracy mode)
➢ Ranging time (min): 20ms (high speed mode), 200ms (high accuracy mode)
➢ Field of view: 25°
➢ Laser wavelength: 940nm
➢ Operating temperature: -20 ~ 70°C
PINOUTS
VCC: 3.3V/5V power input
GND: ground
SDA: I2C data pin
SCL: I2C clock pin
SHUT: shutdown control, connects to IO pin
INT: interrupt output, connects to IO pin

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 3
HARDWARE
VL53L0X
VL53L0X Time-of-Flight (ToF) ranging sensor is ST’s second generation laser-
ranging module housed in the smallest package on the market today. The VL53L0X is
a fully integrated miniature module which integrates embedded infrared ranging
sensor, VCSEL (Vertical Cavity Surface-Emitting Laser), couples with internal physical
infrared filters and a leading-edge SPAD array (Single Photon Avalanche Diodes). The
VL53L0x embeds ST’s second generation FightSense
TM
patented technology, has
longer ranging distance, higher rate and accuracy, opening the door to various new
application
VL53L0X can measure absolute distances up to 2m t whatever the target
reflectances unlike conventional technologies. It’s ultra-Low designs supports for
wireless and IOT application.
Features:
⚫ Fully integrated miniature module
– 940 nm laser VCSEL
– VCSEL driver
– Ranging sensor with advanced embedded micro controller
– 4.4 x 2.4 x 1.0 mm
⚫ Fast, accurate distance ranging
– Measures absolute range up to 2 m

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 4
– Reported range is independent of the target reflectance
– Advanced embedded optical cross-talk compensation to simplify cover glass
selection
⚫ Eye safe
– Class 1 laser device compliant with latest standard IEC 60825-1:2014 - 3rd
edition
⚫ Easy integration
– Single reflowable component
– No additional optics
– Single power supply
– I2C interface for device control and data transfer
– Xshutdown (reset) and interrupt GPIO
– Programmable I2C address
Pictures:
For more details, please read the datasheet

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 5
USING WITH DEMO CODES
WORKING WITH RASPBERRY PI
The demo code is based on open-source project on github:
https://github.com/cassou/VL53L0X_rasp
HARDWARE CONNECTION
The connection is based on Raspberry Pi 3 Mode B+
COMPILING AND RUNGING
1. Download demo code from Wiki

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 6
2. Unzip and copy the code of Raspberry Pi to your Pi (Recommend put on
/home/pi/)
3. Enter the path of the demo code on Terminal and run this compiling command
sudo make clean && sudo make && sudo make examples
4. After compiling, enter bin folder and list the files as below:
5. Execute command to run the code
vl53l0x_SingleRanging_Long_Range_Example
:

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 7
6. Execute the command to run code
vl53l0x_ContinuousRanging_Example
:
WORKING WITH ARDUINO
HARDWARE CONNECTION
The connection is based on Waveshare UNO PLUS

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 8
RUNING
Copy the VL53L0X-Arduino-Library folder which is under Arduino demo code
directory to Arduino IDE’s Libraries directory which is under the installation directory
of your IDE. Then Open Arduino IDE, and choose File->Examples-> VL53L0X-Arduino-
Library

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 9
Compiling and run 5 examples for test as below:
1. high_accuracy_ranging: High accuracy ranging which will cost more times
2. high_speed_ranging: Fast ranging, cost less time and low accuracy
3. long_distance_ranging: Long distance ranging, with bigger measure rang

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 10
4. single_ranging: Single ranging mode
5. continuous_ranging: Continuous ranging mode
For more information about different ranging modes, please read VL53L0X API

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 11
WORKING WITH STM32
HARDWARE CONNECTION
This connection is based on XNUCLEO-F411RE/ NUCLEO-F401RE:
XNUCLEO-F411RE/NUCLEO-F401RE
RUNNING VL53L0X_GUI
1. Connecting sensor to NUCLEO-F401RE board as Hardware connection above
2. Install ST’s VL53L0X_GUI software and run it. The software will write the test
firmware to NUCLEO board automatically. (Note: for this example, you need to
use the NUCLEO-F401RE development board, and it is not an open-source
code)
3. Switch to Low-Power Automous, Distance Mode choose Short, then click Start.
Distance curve will be showed on the software

VL53L0X Distance Sensor User Manual
Version: V1.0.0, Date: 2018.06.27 12
For more information about STM32 examples VL53L0X, please visit ST website.