MT-06
6m range sensor, tiny size, for indoor & outdoor use

MT-06 Range Finder Sensor
Tiny size, powerful range, works in sunlight. Supports multiple protocols, excellent choice for Ardupilot/PX4
Specifications
- Interface Mode: UART(115200); I2C;
- Protocol: Micolink/ Mavlink(Default)/ MSP/ I2C/ I2C_NOOPLOOP
- Output Rate: 50Hz
- Firmware Supported: Ardupilot/PX4/INAV/FMT
- TOF Range: 6m@90% reflectance/10KLux;
- Center Wavelength: 940nm
- Dead Zone: 2cm
- Ranging Accuracy: 4cm(<2m@90% reflectance); 1.5%(>2m@90% reflectance)
- Power Consumption: 100mW
- Supply voltage: 5V
IIC Protocol
The MT-06 can be switched to I2C mode using MicoAssistant and supports two I2C protocols: one is customized by MicoAir, and the other is the NOOPLOOP protocol, which is directly supported by ArduPilot (RNGFNDx_TYPE=40).
Important: The module does not have built-in pull-up resistors. For the I2C to work properly, external pull-up resistors are necessary.
FAQ: “When the module is in I2C mode, how could I connect it to MicoAssistant to change it back to UART mode?”
When the module is switched to I2C mode, it will no longer be able to communicate and configure it normally via the serial port. Special steps are required to re-establish communication.
- Connect your USB-TTL module to your computer. Do not connect the sensor to it yet.
- Open the MicoAssistant software. Find the correct port for your USB-TTL module, set the baud rate to 115200, and click “Connect.”
- While MicoAssistant remains connected to the port, plug the MT-06 module into the USB-TTL module. At this point, MicoAssistant should correctly recognize the module information.
- If you experience device refresh/port disconnection issues when connecting the sensor to the TTL module, adding a large capacitor in parallel with the TTL module’s 5V output might resolve the problem.
IIC (MicoAir)
In this mode, the module’s 7-bit I2C address is 0x32 + ID. The ID defaults to 0 and can be set from 0 to 0x1F, giving the module an I2C address range of 0x32 to (0x32 + 0x1F).
You can use MicoAssistant to modify the module ID to different values, allowing the flight controller to connect to multiple MT-06 modules simultaneously.
IIC_NOOPLOOP
In this mode, the module’s 7-bit I2C address is 0x08 + ID. The ID defaults to 0 and can be set from 0 to 0x1F, giving the module an I2C address range of 0x08 to (0x08 + 0x1F).
In Ardupilot, you should set:
- RNGFNDx_ADDR=8 (default address)
- RNGFNDx_ORIENT = (The same as the module, default value is 25/DOWN)
- RNGFNDx_TYPE = 40
Physical
- Dimensions: 16 x 12 x 10mm
- Weight: 0.8g
In IIC Mode:
- Rx = SDA
- Tx = SCL
Setup Tutorial For Ardupilot(4.1.x-4.6.x)
Step 1:
Configure the MT-06 output protocol as “mav_apm” , by using MicoAssitant.
(Default settings, feel free to skip)
Step 2:
Connect the MT-06 module to the serial port of the flight controller, such as Telem2 on pixhawk.
Step 3:
Configure these parameters in the Mission Planner
SERIALn_BAUD 115
SERIALn_OPTIONS 1024 (don’t forward)
SERIALn_PROTOCOL 1
RNGFND1_TYPE 10
n depends on which serial port the MTF-01 connected, for example, n=2 when it connect to Telem2.
Step 4:
After that, we need to reboot the flight controller or just refresh the parameters in Mission Planner.
And then these parameters need to be configured.
RNGFND1_MAX_CM 600
RNGFND1_MIN_CM 2
RNGFND1_ORIENT 25
When you complete the above steps, you should be able to observe the range sensor data on the Mission Planner’s “Status” page. The “rangefinder1” should have some value.
Setup Tutorial For PX4
PX4(1.11.x – 1.13.x):
MAV_1_CONFIG TELEMn
(n depends on which serial port you connect to)
Reboot the flight controller
MAV_1_MODE Normal
SER_TELn_BAUD 115200 8N1
EKF2_RNG_AID Range aid enable
EKF2_HGT_MODE Range sensor
PX4(1.14- )
MAV_1_CONFIG TELEMn
(n depends on which serial port you connect to)
Reboot the flight controller
MAV_1_MODE Normal
SER_TELn_BAUD 115200 8N1
EKF2_RNG_CTRL Enabled
EKF2_HGT_REF Range sensor