CORVON
CORVON · REV A · 2026-05-29
CV0850
Infrared Ranging Module
Specification Sheet
01 / Product Overview

The CORVON CV0850 is a compact infrared ranging module built on the direct Time-of-Flight (dToF) principle for short-range distance measurement. It ranges from 20 mm to 8 m with a narrow <3° field of view, a 50 Hz measurement rate, and an eye-safe 940 nm light source. Its small 20 mm minimum spot and strong ambient-light immunity suit UAV altitude hold, robot and AGV obstacle avoidance, and proximity sensing in low-power systems. Distance is output over UART or I²C, making it a drop-in fit for PX4, INAV and ArduPilot. The module measures 20.0 × 16.5 × 6.7 mm and weighs about 1.8 g.

02 / Specifications
ModelCV0850
TypeInfrared Ranging Module (dToF)
Measuring Range20–8000 mm
Field of View (FOV)< 3°
Measuring Accuracy±3 cm @ <1 m · ±3% @ ≥1 m
Measurement Frequency50 Hz
Light Source Wavelength940 nm
Minimum Spot Size20 mm
Ambient Light Resistance8000 mm @ 350 lux · 4000 mm @ 100 klux
Operating Voltage3.5–5.5 V
Current Consumption≤ 40 mA @ 5 V
Communication InterfaceUART 115200 · I²C up to 400 K
Operating Temp.0°C – 60°C
Storage Temp.−20°C – 70°C
Dimensions20.0 × 16.5 × 6.7 mm (±0.1 mm)
Weight1.8 g
Firmware SupportPX4 · INAV · ArduPilot
03 / Module Views
CORVON CV0850 infrared ranging module — lens front view
CORVON CV0850 infrared ranging module — back PCB / connector view
Optics · dual dToF lens Data · UART / I²C Power · 3.5–5.5 V
LAT 22.54°N · LON 114.05°E · SHENZHEN
04 / Interface Definition

4-pin connector, UART / I²C selectable. For UART connect module TX to the flight-controller RX and module RX to the flight-controller TX (115200 bps).

PinUARTI²CFunction
1TXSDAUART transmit / I²C data
2RXSCLUART receive / I²C clock
3VCCVCCPower · +5 V
4GNDGNDGround
CORVON CV0850 — connector pin-order diagram
05 / Output Protocol

UART Output Protocol

S/NNameContentDescription
1Header0xDF
2Device ID0x15
3System ID0x00
4Message ID0x55
5Packet Sequence0x00~0xFF
6Payload Length0x0C
7Payload ContentTOF Dist Low ByteTOF Distance (mm)
8TOF Dist High Byte
9TOF Signal Strength0~100
10Reserved
11flow_x_integral Low ByteAccumulated X-pixel displacement over time (radians). Divide by 10000 and multiply by height (mm) to obtain actual displacement (mm).
12flow_x_integral High Byte
13flow_y_integral Low ByteAccumulated Y-pixel displacement over time (radians). Divide by 10000 and multiply by height (mm) to obtain actual displacement (mm).
14flow_y_integral High Byte
15integration_timespan Low ByteTime interval since last optical flow data (µs)
16integration_timespan High Byte
17validStatus: 0=Optical Flow data invalid, 245=Optical Flow data valid
18versionOptical Flow module version number
19Checksum0xXXSum of all preceding bytes

Output Protocol: I2C (The I2C output protocol is proprietary and does not support open-source use.)

Device Address: 0x31 (7-bit)

S/NRegister AddressContentDescription
10x00Device ID0x15
20x01TOF Distance Low ByteTOF distance (mm)
30x02TOF Distance High Byte
40x03TOF Intensity0~100
50x04Reserved
60x05flow_x_integral Low ByteAccumulated X-pixel displacement over time (radians). Divide by 10000 and multiply by height (mm) to obtain actual displacement (mm).
70x06flow_x_integral High Byte
80x07flow_y_integral Low ByteAccumulated Y-pixel displacement over time (radians). Divide by 10000 and multiply by height (mm) to obtain actual displacement (mm).
90x08flow_y_integral High Byte
100x09integration_timespan Low ByteTime interval since last optical flow data (µs)
110x0Aintegration_timespan High Byte
120x0BvalidStatus: 0=Optical Flow data invalid, 245=Optical Flow data valid
130x0CversionOptical Flow module version number
06 / Module Installation Guide
Module Installation Guide image 01

I. PX4 Configuration

1. Open the tool and select Vehicle Configuration;

Module Installation Guide image 02

2. Set MAV_1_CONFIG to TELEM 2 and save;

Module Installation Guide image 03

3. Click “Tools,” then click “Reboot Vehicle”;

Module Installation Guide image 04

4. Set MAV_1_MODE to Normal and save;

Module Installation Guide image 05

5. Set SER_TEL2_BAUD to 115200 8N1 and save it;

Module Installation Guide image 06

6. Set EKF2_RNG_CTRL to Enabled and save.

Module Installation Guide image 07

7. Set EKF2_HGT_REF to Range sensor and save;

Module Installation Guide image 08

8.After the configuration is completed, restart the flight controller. You should be able to see the DISTANCE_SENSOR and OPTICAL_FLOW_RAD messages in the MAVLink Inspector page of QGC. It's fine as long as there is a change in the values. Note that the messages displayed on the QGC are sent by the flight control. The message frequency is not the same as the data frequency of the sensor. This frequency is determined by the Settings of the flight control and the speed of the data link, and is mainly used for observation. The number of the message frequency is not important.

Module Installation Guide image 09
Module Installation Guide image 10
Module Installation Guide image 11

II. APM Configuration

1. In Mission Planner, set the corresponding serial port baud rate SERIAL4_BAUD to 115(115200), the value SERIAL4_OPTIONS to 0, and set the serial port protocol value SERIAL4_PROTOCOL to 1(Mavlink1). Click "Write Params" to save;

Module Installation Guide image 12

2. Set the optical flow FLOW_TYPE value to 5 and save it;

Module Installation Guide image 13

3. Set the RNGFND1_TYPE value to 10 and save it;

Module Installation Guide image 14

4. Restart the flight controller, set the RNGFND1_MAX_CM value to 800, the RNGFND1_MIN_CM value to 1, and the RNGFND1_ORIENT value to 25, and save them.

Module Installation Guide image 15

5. On the status page, you can see the values of rangefinder1, opt_m_x, opt_m_y, and opt_qua.

Module Installation Guide image 16

III. INAV Configuration

1. Open the Ports interface, enable the MSP function for the corresponding serial port (we are connected to UART4), select a baud rate of 115200, save, and restart.

Module Installation Guide image 17

2. In the Configuration interface, set the Rangefinder option and the Optical flow option to MSP, save and restart. If the configuration is correct, you can see that the Sonar indicator light and the Flow indicator light on the main interface are on.

Module Installation Guide image 18

3. Set the Debug data to optical flow data in the CLI interface;

set debug_mode = FLOW_RAW

Entering the "save" command will save and restart.

Module Installation Guide image 19

4.In the Sensors interface, check the Sonar option and the Debug option; If configured correctly, it can be seen that the waveform and the X value are changing.

Module Installation Guide image 20
07 / Safety Notice

Thank you for choosing a CORVON product. Please read this disclaimer carefully — by using this product you acknowledge and agree to the following. Because we cannot control how this product is installed, used, or maintained, we accept no liability for any loss or damage arising from its use, and any unauthorized modification is undertaken at your own risk.

Keep the optical window clean and unobstructed — dust, smudges, or a covering film will degrade ranging accuracy. Although the 940 nm source is eye-safe, do not stare into the lens at close range for extended periods. Mount the module rigidly with the lens facing the target surface, and observe correct wiring and polarity on the connector — reversed or mis-wired connections can permanently damage the module. Highly reflective, transparent, or strongly light-absorbing surfaces can affect readings; validate behavior in your environment before relying on it for flight.