The TOF0200C Laser Distance Sensor Module is a high-precision Time-of-Flight (ToF) distance measurement sensor capable of measuring distances up to 200 cm . Using advanced laser technology, it provides fast, accurate, and stable distance readings regardless of object color or surface reflectivity.
With an I2C communication interface , the TOF0200C is easy to integrate with Arduino, Raspberry Pi, ESP32, and other microcontrollers . Its compact size, low power consumption, and reliable performance make it ideal for robotics, obstacle avoidance, smart devices, automation systems, and distance detection applications .
🔹 Key Features
Time-of-Flight (ToF) laser distance measurement
Measuring range up to 200 cm
High accuracy and fast response
I2C communication interface
Compact and lightweight design
Low power consumption
Stable performance under different lighting conditions
Compatible with Arduino, Raspberry Pi, ESP32
🔹 Specifications
Model: TOF0200C
Sensor Type: Laser Time-of-Flight (ToF)
Measuring Range: Up to 200 cm
Interface: I2C
Operating Voltage: 3.3V – 5V
Measurement Speed: Fast response time
Accuracy: High precision distance measurement
Power Consumption: Low
Operating Temperature: -10°C to +60°C
Applications: Robotics, obstacle detection, automation, smart devices
Pin Connections Table 1
Board Sensor Pin Connection TOF0200C VCC/GND/SDA/SCL 3.3V / GND / board SDA / board SCL
TOF0200C Laser Distance Sensor Module - 200cm I2C - Arduino Uno
TOF0200C Laser Distance Sensor Module - 200cm I2C - Arduino Nano
TOF0200C Laser Distance Sensor Module - 200cm I2C - Arduino Mega
TOF0200C Laser Distance Sensor Module - 200cm I2C - ESP32
TOF0200C Laser Distance Sensor Module - 200cm I2C - ESP8266
TOF0200C Laser Distance Sensor Module - 200cm I2C - STM32
TOF0200C Laser Distance Sensor Module - 200cm I2C - Raspberry Pi Pico
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Arduino Uno: A4=SDA, A5=SCL. VCC->3. 3V or 5V per module label, GND->GND.
6 #include <Wire.h>
7 #include <Adafruit_VL53L0X.h>
8
9 Adafruit_VL53L0X lox = Adafruit_VL53L0X();
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!lox.begin()) {
15 Serial.println ("VL53L0X not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 }
19
20 void loop () {
21 VL53L0X_RangingMeasurementData_t measure;
22 lox.rangingTest(&measure, false);
23
24 if (measure.RangeStatus != 4 ) { // 4 = out of range
25 Serial.print ("Distance: "); Serial.print (measure.RangeMilliMeter); Serial.println (" mm");
26 } else {
27 Serial.println ("Out of range");
28 }
29
30 delay (200 );
31 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Arduino Nano: A4=SDA, A5=SCL. VCC->3. 3V or 5V per module label, GND->GND.
6 #include <Wire.h>
7 #include <Adafruit_VL53L0X.h>
8
9 Adafruit_VL53L0X lox = Adafruit_VL53L0X();
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!lox.begin()) {
15 Serial.println ("VL53L0X not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 }
19
20 void loop () {
21 VL53L0X_RangingMeasurementData_t measure;
22 lox.rangingTest(&measure, false);
23
24 if (measure.RangeStatus != 4 ) { // 4 = out of range
25 Serial.print ("Distance: "); Serial.print (measure.RangeMilliMeter); Serial.println (" mm");
26 } else {
27 Serial.println ("Out of range");
28 }
29
30 delay (200 );
31 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Arduino Mega: D20=SDA, D21=SCL. VCC->3. 3V or 5V per module label, GND->GND.
6 #include <Wire.h>
7 #include <Adafruit_VL53L0X.h>
8
9 Adafruit_VL53L0X lox = Adafruit_VL53L0X();
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!lox.begin()) {
15 Serial.println ("VL53L0X not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 }
19
20 void loop () {
21 VL53L0X_RangingMeasurementData_t measure;
22 lox.rangingTest(&measure, false);
23
24 if (measure.RangeStatus != 4 ) { // 4 = out of range
25 Serial.print ("Distance: "); Serial.print (measure.RangeMilliMeter); Serial.println (" mm");
26 } else {
27 Serial.println ("Out of range");
28 }
29
30 delay (200 );
31 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for ESP32: GPIO21=SDA, GPIO22=SCL. VCC->3. 3V or 5V per module label, GND->GND.
6 #include <Wire.h>
7 #include <Adafruit_VL53L0X.h>
8
9 Adafruit_VL53L0X lox = Adafruit_VL53L0X();
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!lox.begin()) {
15 Serial.println ("VL53L0X not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 }
19
20 void loop () {
21 VL53L0X_RangingMeasurementData_t measure;
22 lox.rangingTest(&measure, false);
23
24 if (measure.RangeStatus != 4 ) { // 4 = out of range
25 Serial.print ("Distance: "); Serial.print (measure.RangeMilliMeter); Serial.println (" mm");
26 } else {
27 Serial.println ("Out of range");
28 }
29
30 delay (200 );
31 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for ESP8266: D2(GPIO4)=SDA, D1(GPIO5)=SCL. VCC->3. 3V or 5V per module label, GND->GND.
6 #include <Wire.h>
7 #include <Adafruit_VL53L0X.h>
8
9 Adafruit_VL53L0X lox = Adafruit_VL53L0X();
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!lox.begin()) {
15 Serial.println ("VL53L0X not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 }
19
20 void loop () {
21 VL53L0X_RangingMeasurementData_t measure;
22 lox.rangingTest(&measure, false);
23
24 if (measure.RangeStatus != 4 ) { // 4 = out of range
25 Serial.print ("Distance: "); Serial.print (measure.RangeMilliMeter); Serial.println (" mm");
26 } else {
27 Serial.println ("Out of range");
28 }
29
30 delay (200 );
31 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for STM32: PB7=SDA, PB6=SCL (Blue Pill / F103C8). VCC->3. 3V or 5V per module label, GND->GND.
6 #include <Wire.h>
7 #include <Adafruit_VL53L0X.h>
8
9 Adafruit_VL53L0X lox = Adafruit_VL53L0X();
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!lox.begin()) {
15 Serial.println ("VL53L0X not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 }
19
20 void loop () {
21 VL53L0X_RangingMeasurementData_t measure;
22 lox.rangingTest(&measure, false);
23
24 if (measure.RangeStatus != 4 ) { // 4 = out of range
25 Serial.print ("Distance: "); Serial.print (measure.RangeMilliMeter); Serial.println (" mm");
26 } else {
27 Serial.println ("Out of range");
28 }
29
30 delay (200 );
31 }
1 //ekostra.com
2 //electronics store in egypt
3 //+201008896258
4
5 // I2C wiring for Raspberry Pi Pico: GPIO4=SDA, GPIO5=SCL. VCC->3. 3V or 5V per module label, GND->GND.
6 #include <Wire.h>
7 #include <Adafruit_VL53L0X.h>
8
9 Adafruit_VL53L0X lox = Adafruit_VL53L0X();
10
11 void setup () {
12 Serial.begin (115200 );
13 Wire.begin();
14 if (!lox.begin()) {
15 Serial.println ("VL53L0X not found - check wiring!");
16 while (1 ) delay (10 );
17 }
18 }
19
20 void loop () {
21 VL53L0X_RangingMeasurementData_t measure;
22 lox.rangingTest(&measure, false);
23
24 if (measure.RangeStatus != 4 ) { // 4 = out of range
25 Serial.print ("Distance: "); Serial.print (measure.RangeMilliMeter); Serial.println (" mm");
26 } else {
27 Serial.println ("Out of range");
28 }
29
30 delay (200 );
31 }
Project Notes: I2C time-of-flight distance sensor (VL53L0X-compatible register set).