Skip to main content

LRF10VB UART protocol and integration

LRF10VB Single-Point 9 m DToF LiDAR Sensor for Camera Focusing, Security Monitoring and Smart Devices

Typical applications: Camera autofocus, Security monitoring, Smart devices.

At a glance​

Protocol familyFamily B (5C, streaming)
Default baud460800 bps, 8N1
Frame4 bytes
Distance unit on the wiremillimetres
Measurement range (datasheet)0.05–9 m (90% refl.) · 0.05–5 m

Specification​

Values come from the ERDI datasheet for this model. Where the datasheet gives a condition, it is shown.

ParameterValueCondition
Laser wavelength940 nm
Ranging range0.05–9 m (90% refl.) · 0.05–5 m10% refl.
Ranging accuracy±5 cm (<5 m) · 1% (≥5 m)
Measurement frequency50 Hz
InterfaceUART
Supply voltage4.5–5.5 V DC
Dimensions12 × 7.5 × 9.1 mm
Weight1 g
Laser safety classClass 1
Operating temperature-20 to +60 ℃
Field of view3°
Repeatability±10 mm
Ambient light immunity2 m70 kLux
Peak current4.5 mA5 V
Average current4 mA5 V
Average power consumption< 0.1 W (low-power mode supported)
Wire specification4-pin 1.25 mm terminal, 10 cm tinned stranded wires
CustomizationAvailable in appearance / structure / output protocol

Pinout and wiring​

PINDefinition / Wire ColorUser Interface
1TXRX
2RXTX
3GNDExternal Power -
45VExternal Power +

Cross TX and RX (module TX to host RX), share ground, and power the module from a supply that matches the supply voltage in the specification table. See Wiring and power.

Protocol summary​

  • Data frame: 4 bytes, 5C <dist_lo> <dist_hi> <check>, free-running.
  • Default baud: 460800 bps, 8 data bits, 1 stop bit, no parity.
  • Distance: 2 bytes, little-endian, unit millimetres. The VB series reports millimetres and the H series centimetres, so 5C 02 11 EC is 4.354 m on a VB module and 43.54 m on an H module.
  • Out-of-range marker: the module outputs 65535 when there is no valid target. Treat it as no target, not as a distance.
  • Checksum: bitwise inverse of the 8-bit sum of all bytes between the header and the check byte.
CommandRequest frame
Start ranging5A 0A 02 02 00 F1
Stop ranging5A 0A 02 00 00 F3

The full frame description is in Family B protocol. Try it without installing anything in the browser serial monitor.

Code examples​

pip install erdi-lrf # PyPI, MIT
erdi-lrf --port /dev/ttyUSB0 --model LRF10VB stream --count 20
from erdi_lrf import ErdiLRF

# COM3 on Windows, /dev/ttyUSB0 or /dev/serial0 on Linux
with ErdiLRF("/dev/ttyUSB0", "LRF10VB") as lrf:
for r in lrf.stream():
print("out of range" if r.out_of_range else f"{r.metres:.3f} m", "raw", r.raw)

Platform status​

Only rows with evidence say Verified. See the compatibility matrix for what that means and where the evidence is.

PlatformStatusGuide
Python (erdi-lrf)UntestedPython / Raspberry Pi / Jetson
Arduino / PlatformIONo driver yetArduino / PlatformIO
ESPHome / Home AssistantNo driver yetESPHome
ROS 2No driver yetROS 2
ArduPilot (Lua script)UntestedArduPilot
ArduPilot native driverIn review (PR #34983, not merged)ArduPilot

Known issues​

  • UART logic level is not stated as a separate field for most models. Supply voltage is not the UART voltage: check the module's TX level against your host before wiring, or ask us.

Resources​