

The VL53L5CX-SATEL is a state-of-the-art time-of-flight (ToF) distance sensor module developed by STMicroelectronics. It leverages advanced laser technology to measure distances with high precision and speed. The sensor features a wide field of view (FoV) and supports multi-target detection, making it ideal for applications requiring spatial awareness and object detection.








The following table outlines the key technical details of the VL53L5CX-SATEL:
| Parameter | Value |
|---|---|
| Manufacturer | STMicroelectronics |
| Part Number | VL53L5CX |
| Measurement Range | 0.1 m to 4 m (typical, depending on target reflectance and conditions) |
| Field of View (FoV) | 45° x 45° |
| Resolution | 8x8 zones (64 zones) |
| Accuracy | ±1 cm (typical, depending on conditions) |
| Operating Voltage | 2.8 V to 3.3 V |
| Interface | I²C (up to 1 MHz) |
| Power Consumption | 5 mW (typical in low-power mode) |
| Operating Temperature Range | -30°C to +85°C |
| Dimensions | 6.4 mm x 3.0 mm x 1.5 mm |
The VL53L5CX-SATEL module has the following pinout:
| Pin Name | Type | Description |
|---|---|---|
| VIN | Power | Input voltage (2.8 V to 3.3 V). Powers the sensor. |
| GND | Ground | Ground connection. |
| SDA | I²C Data | Serial data line for I²C communication. |
| SCL | I²C Clock | Serial clock line for I²C communication. |
| GPIO1 | Digital I/O | General-purpose I/O pin (can be used for interrupts or other functions). |
| GPIO2 | Digital I/O | General-purpose I/O pin (optional, configurable). |
| XSHUT | Input | Shutdown pin. Pull low to put the sensor in shutdown mode. |
| INT | Output | Interrupt pin. Indicates when data is ready or an event has occurred. |
XSHUT pin to control the sensor's power state.GPIO1 and GPIO2 pins for additional functionality if needed.0x52. Ensure no address conflicts if multiple devices are on the same bus.Below is an example of how to interface the VL53L5CX-SATEL with an Arduino UNO using the I²C protocol:
#include <Wire.h>
#include <VL53L5CX.h> // Include the VL53L5CX library (install via Arduino Library Manager)
// Create an instance of the VL53L5CX sensor
VL53L5CX sensor;
void setup() {
Serial.begin(9600); // Initialize serial communication for debugging
Wire.begin(); // Initialize I²C communication
// Initialize the VL53L5CX sensor
if (!sensor.begin()) {
Serial.println("Failed to initialize VL53L5CX sensor!");
while (1); // Halt execution if initialization fails
}
Serial.println("VL53L5CX sensor initialized successfully.");
}
void loop() {
// Read distance data from the sensor
uint16_t distances[64]; // Array to store distances for all 64 zones
if (sensor.getDistances(distances)) {
Serial.println("Distance readings (in mm):");
for (int i = 0; i < 64; i++) {
Serial.print(distances[i]);
Serial.print(" ");
if ((i + 1) % 8 == 0) Serial.println(); // Print 8 zones per line
}
Serial.println();
} else {
Serial.println("Failed to read distances.");
}
delay(500); // Wait 500 ms before the next reading
}
Sensor Not Detected on I²C Bus:
0x52) and ensure no conflicts with other devices.Inaccurate Distance Measurements:
Sensor Initialization Fails:
XSHUT pin is not held low during initialization.Interference from Multiple Sensors:
Q1: Can the VL53L5CX-SATEL detect multiple objects simultaneously?
Yes, the sensor supports multi-target detection and can measure distances for up to 64 zones within its field of view.
Q2: What is the maximum range of the sensor?
The typical maximum range is 4 meters, depending on the target's reflectance and environmental conditions.
Q3: Can the sensor operate in outdoor environments?
Yes, but performance may be affected by strong sunlight or extreme temperatures. Ensure the sensor is shielded from direct sunlight for optimal results.
Q4: Is the VL53L5CX-SATEL compatible with 5V microcontrollers?
The sensor operates at 3.3V logic levels. Use a level shifter if interfacing with a 5V microcontroller like the Arduino UNO.
Q5: How can I reduce power consumption?
Use the XSHUT pin to put the sensor into shutdown mode when not in use, or configure it to operate in low-power mode.