Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use VL53LOX - Original: Examples, Pinouts, and Specs

Image of VL53LOX - Original
Cirkit Designer LogoDesign with VL53LOX - Original in Cirkit Designer

Introduction

The VL53LOX is a time-of-flight (ToF) distance sensor manufactured by Adafruit Industries. It utilizes laser technology to measure distances with high accuracy and speed. This sensor is capable of measuring distances ranging from 30mm to 2 meters, making it ideal for applications requiring precise distance measurements.

Explore Projects Built with VL53LOX - Original

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino UNO with A9G GSM/GPRS and Dual VL53L1X Distance Sensors
Image of TED CIRCUIT : A project utilizing VL53LOX - Original in a practical application
This circuit features an Arduino UNO microcontroller interfaced with an A9G GSM/GPRS+GPS/BDS module and two VL53L1X time-of-flight distance sensors. The A9G module is connected to the Arduino via serial communication for GPS and GSM functionalities, while both VL53L1X sensors are connected through I2C with shared SDA and SCL lines and individual SHUT pins for selective sensor activation. The Arduino is programmed to control these peripherals, although the specific functionality is not detailed in the provided code.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO-Based GPS Tracker with LoRa Communication and ADXL345 Sensor
Image of lora project: A project utilizing VL53LOX - Original in a practical application
This circuit integrates an Arduino UNO with a LoRa Ra-02 SX1278 module for wireless communication, a GPS NEO 6M module for location tracking, an ADXL345 accelerometer for motion sensing, and a buzzer for audio alerts. The Arduino UNO serves as the central controller, interfacing with the LoRa module via SPI, the GPS module via serial communication, and the ADXL345 via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO R4 WiFi Laser Module with Distance Sensor
Image of KIT 1: SENSOR KIT: A project utilizing VL53LOX - Original in a practical application
This circuit features an Arduino UNO R4 WiFi connected to a VL53L0X distance sensor via I2C for distance measurement. Additionally, a tube laser module is powered by a battery case and controlled through a rocker switch, with a terminal block connector completing the circuit.
Cirkit Designer LogoOpen Project in Cirkit Designer
Cellular-Enabled IoT Device with Real-Time Clock and Power Management
Image of LRCM PHASE 2 BASIC: A project utilizing VL53LOX - Original in a practical application
This circuit features a LilyGo-SIM7000G module for cellular communication and GPS functionality, interfaced with an RTC DS3231 for real-time clock capabilities. It includes voltage sensing through two voltage sensor modules, and uses an 8-channel opto-coupler for isolating different parts of the circuit. Power management is handled by a buck converter connected to a DC power source and batteries, with a fuse for protection and a rocker switch for on/off control. Additionally, there's an LED for indication purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with VL53LOX - Original

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of TED CIRCUIT : A project utilizing VL53LOX - Original in a practical application
Arduino UNO with A9G GSM/GPRS and Dual VL53L1X Distance Sensors
This circuit features an Arduino UNO microcontroller interfaced with an A9G GSM/GPRS+GPS/BDS module and two VL53L1X time-of-flight distance sensors. The A9G module is connected to the Arduino via serial communication for GPS and GSM functionalities, while both VL53L1X sensors are connected through I2C with shared SDA and SCL lines and individual SHUT pins for selective sensor activation. The Arduino is programmed to control these peripherals, although the specific functionality is not detailed in the provided code.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of lora project: A project utilizing VL53LOX - Original in a practical application
Arduino UNO-Based GPS Tracker with LoRa Communication and ADXL345 Sensor
This circuit integrates an Arduino UNO with a LoRa Ra-02 SX1278 module for wireless communication, a GPS NEO 6M module for location tracking, an ADXL345 accelerometer for motion sensing, and a buzzer for audio alerts. The Arduino UNO serves as the central controller, interfacing with the LoRa module via SPI, the GPS module via serial communication, and the ADXL345 via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of KIT 1: SENSOR KIT: A project utilizing VL53LOX - Original in a practical application
Arduino UNO R4 WiFi Laser Module with Distance Sensor
This circuit features an Arduino UNO R4 WiFi connected to a VL53L0X distance sensor via I2C for distance measurement. Additionally, a tube laser module is powered by a battery case and controlled through a rocker switch, with a terminal block connector completing the circuit.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of LRCM PHASE 2 BASIC: A project utilizing VL53LOX - Original in a practical application
Cellular-Enabled IoT Device with Real-Time Clock and Power Management
This circuit features a LilyGo-SIM7000G module for cellular communication and GPS functionality, interfaced with an RTC DS3231 for real-time clock capabilities. It includes voltage sensing through two voltage sensor modules, and uses an 8-channel opto-coupler for isolating different parts of the circuit. Power management is handled by a buck converter connected to a DC power source and batteries, with a fuse for protection and a rocker switch for on/off control. Additionally, there's an LED for indication purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Robotics for obstacle detection and navigation
  • Drones for altitude measurement and collision avoidance
  • Industrial automation for object detection
  • Consumer electronics for gesture recognition
  • IoT devices for proximity sensing

Technical Specifications

The VL53LOX is a compact and efficient sensor with the following key specifications:

Parameter Value
Operating Voltage 2.6V to 3.5V
Communication Interface I²C
Measurement Range 30mm to 2000mm (2 meters)
Accuracy ±3%
Field of View (FoV) 25°
Operating Temperature -20°C to +70°C
Power Consumption 20mW (typical)
Dimensions 4.4mm x 2.4mm x 1.0mm

Pin Configuration and Descriptions

The VL53LOX sensor module typically comes with the following pinout:

Pin Name Description
VIN Power supply input (2.6V to 5V)
GND Ground connection
SDA I²C data line
SCL I²C clock line
XSHUT Shutdown pin (active low, used to reset the sensor)
GPIO1 Interrupt output (optional, configurable)

Usage Instructions

How to Use the VL53LOX in a Circuit

  1. Power the Sensor: Connect the VIN pin to a 3.3V or 5V power source and the GND pin to ground.
  2. I²C Communication: Connect the SDA and SCL pins to the corresponding I²C pins on your microcontroller (e.g., Arduino UNO).
  3. Optional Connections:
    • Use the XSHUT pin to reset or enable/disable the sensor.
    • Connect the GPIO1 pin if you need interrupt functionality.
  4. Pull-Up Resistors: Ensure that the I²C lines (SDA and SCL) have pull-up resistors (typically 4.7kΩ) if not already present on the module.

Important Considerations and Best Practices

  • Ambient Light: Avoid direct exposure to strong ambient light sources, as they may interfere with the sensor's accuracy.
  • Reflective Surfaces: Highly reflective or transparent surfaces may affect distance measurements.
  • I²C Address: The default I²C address of the VL53LOX is 0x29. If using multiple sensors, you must change their addresses using the XSHUT pin.
  • Mounting: Ensure the sensor is mounted securely and aligned properly for accurate measurements.

Example Code for Arduino UNO

Below is an example of how to use the VL53LOX with an Arduino UNO. This code requires the Adafruit VL53L0X library, which can be installed via the Arduino Library Manager.

#include <Wire.h>
#include <Adafruit_VL53L0X.h>

// Create an instance of the VL53L0X sensor
Adafruit_VL53L0X lox = Adafruit_VL53L0X();

void setup() {
  Serial.begin(115200); // Initialize serial communication at 115200 baud
  Serial.println("VL53LOX Test");

  // Initialize the sensor
  if (!lox.begin()) {
    Serial.println("Failed to initialize VL53LOX. Check connections!");
    while (1); // Halt execution if initialization fails
  }
  Serial.println("VL53LOX initialized successfully.");
}

void loop() {
  VL53L0X_RangingMeasurementData_t measure;

  // Perform a distance measurement
  lox.rangingTest(&measure, false);

  // Check if the measurement is valid
  if (measure.RangeStatus != 4) { // 4 indicates an out-of-range error
    Serial.print("Distance (mm): ");
    Serial.println(measure.RangeMilliMeter);
  } else {
    Serial.println("Out of range");
  }

  delay(100); // Wait 100ms before the next measurement
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. Sensor Not Detected on I²C Bus:

    • Ensure the SDA and SCL lines are connected correctly.
    • Verify that pull-up resistors are present on the I²C lines.
    • Check the sensor's power supply voltage.
  2. Incorrect or Fluctuating Distance Measurements:

    • Ensure the sensor is not exposed to strong ambient light.
    • Avoid measuring highly reflective or transparent surfaces.
    • Verify that the sensor is mounted securely and aligned properly.
  3. Multiple Sensors on the Same I²C Bus:

    • Use the XSHUT pin to reset individual sensors and assign unique I²C addresses.

FAQs

Q: Can the VL53LOX measure distances beyond 2 meters?
A: No, the maximum range of the VL53LOX is 2 meters. For longer ranges, consider using other ToF sensors.

Q: Is the VL53LOX compatible with 5V logic?
A: Yes, the module includes level-shifting circuitry, making it compatible with 5V logic systems like the Arduino UNO.

Q: How do I change the I²C address of the VL53LOX?
A: Use the XSHUT pin to power down the sensor, then reinitialize it with a new I²C address using the appropriate library functions.

Q: Can the VL53LOX detect transparent objects?
A: The sensor may struggle with transparent objects due to the way laser light interacts with such surfaces.