EasyLoader (beta)

Current Product Don't Have Test Firmware

Note: pls, use PC chrome/edge browser, if can't connect, refresh the webpage.

1. Click connect button

2. After connected successfully, pick a firmware

3. Click the burn button

4. After burning successfully, Unplug the device and restart.





LidarBot is a powerful development kit for Automated Guided Vehicles(AGVs). Comes with a 360 Lidar sensor, 4 Mecanum wheels, M5 Core, RGB Bars and a remote controller with Joystick panel and more。In addition, a trace kit is attached for the identification of black or white track line. With 4 Mecanum wheels, you can make it move to any direction, forward, backward, to left and to right. The Lithium polymer Batteries empower the Robot to run long-hours. You can display the map data, that obtained from the lidar sensor, on the screen or upload somewhere else thru Wi-Fi and program it into any format. We have implemented Real-time communication via ESP-NOW between robot and remote, Mazing-running , self-tracing and more. If you are interest in AGV development, We especially encourage you to modify the open source code we have offered on github and enhance it yourself.

Product Features

  • EAI YDLIDAR X2 radar ranging speed: 8m @ 7Hz
  • Programming Support
  • ESP-NOW Remote
  • With tracking function
    • Arduino
    • UIFlow (Blockly)
    • Python
  • ESP-NOW communication
  • Mecanum wheels
  • Compatible LEGO


  • 1x LidarBot
  • 1x TRACE Kit
  • 1x Remote Control Handle
  • 2x Battery(1300mAh @ 11.1V)
  • 1x Power Charger
  • 1x Type-C USB Cable


  • Indoor Navigation
  • Autonomous walking maze
  • Route plan
  • Autopilot


Resources Parameter
Net weight 1980g
Gross weight 2140g
Product Size 142*117*120mm
Package Size 208*208*167mm

Protocol for CarBottomBoard

Protocol Format: Data Header ( command type ) + Data Packet + Data Tail

Control Target Protocol Format Example Function
Wheels 0xAA,SpeedX(-7 ~ 7),SpeedY,SpeedZ,SpeedA,0x55 0xAA, 5, 5, 5, 5, 0x55(Go ahead, speed: 5) ControlWheel(5, 5, 5)
One RGB 0xAB,LedIndex,R(0 ~ 254),G,B,0x55 0xAB, 3, 20, 50, 100, 0x55(3th RGB displays specific color) setLedColor(3, 20, 50, 100)
Front RGB Bar 0xAC,R(0 ~ 254),G,B,0x55 0xAC, 20, 50, 100, 0x55(Front LED Bar displays specific color) setFrontLedBar(20, 50, 100)
Back RGB Bar 0xAD,R(0 ~ 254),G,B,0x55 0xAD, 20, 50, 100, 0x55(Back LED Bar displays specific color) setBackLedBar(20, 50, 100)
All RGB 0xAE,R(0 ~ 254),G,B,0x55 0xAE, 20, 50, 100, 0x55(All LED display specific color) setLedAll(20, 50, 100)
ServoMotor0 0xAF,Angle(0 ~ 180),0x55 0xAF, 100, 0x55(Servo 0 turns angle 100 degree) setServo0Angle(100)
ServoMotor1 0xB0,Angle(0 ~ 180),0x55 0xB0, 100, 0x55(Servo 1 turns angle 100 degree) setServo1Angle(100)


  • The size of LidarBot: 142mm x 117mm x 120mm
  • Communication Parameter
    • M5Core <-> Lidar (U1RXD(GPIO16) <-> Lidar sensor) Serial Configuration: "115200bps, 8, n, 1"(8 bits data, no parity, 1 stop bit)
    • M5Core <-> Bottom Board (U2TXD(GPIO17) <-> Bottom Board) Serial Configuration: "115200bps, 8, n, 1"(8 bits data, no parity, 1 stop bit)
  • PinMap
    • ServoMotor0 <-> A0(MEGA328)
    • ServoMotor1 <-> A1(MEGA328)
    • RGB LED <-> 11(MEGA328)


click to download EasyLoader/Bottom

click to download EasyLoader/Remote

1.EasyLoader is a simple and fast program burner. Every product page in EasyLoader provides a product-related case program. It can be burned to the master through simple steps, and a series of function verification can be performed.

2.After downloading the software, double-click to run the application, connect the M5 device to the computer via the data cable, select the port parameters, and click "Burn" to start burning.

3.The CP210X (USB driver) needs to be installed before the EasyLoader is burned. Click here to view the driver installation tutorial

Connect And Pair

If you have no map on the screen of your remote, reconnect it.

Control and Display

where the radar cart and handle have matched, Radar car and handle can send messages to each other through EspNow, radar information of radar car can be displayed to handle, handle can also control the trolley movement through EpNow.

  • Normal control mode: move the handle rocker, the trolley will realize forward backward and steering.

  • Omnidirectional Control Mode: Press and hold the handle A key that is the most left on in the handle screen three ons, and then move the rocker to achieve the right and left sideways, but the front and back direction is the other way around.

Connection and Matching

In the unconnected state or if one party is not connected to the other party, there may be problems with the display or control, and we all need to make a new connection.

  • Radar car hold down the C key without putting down the M5Core power on, wait for the screen to restart the end release C on to enter the broadcast mode, all the slave will receive a signal from the host.

  • In the case of the radar vehicle into broadcast mode, we hold down the handle C key and then press the handle power on, wait for the handle restart complete and then release C on to view the current broadcast host on the screen. We select up and down through the A / C key, then press B to determine the Mac address of the host we want to connect to, The host's Mac address can be accessed from your phone or computer to view nearby Wi-Fi, beginning with lidar followed by the host Mac's address.

  • After confirming the host, the host that is the radar car screen will receive the confirmation signal from the slave, also through the ABC key to select and determine the address of the slave. When the B key is pressed, the communication configuration between the radar vehicle and the handle is completed. The two sides can send messages to each other to realize the display of radar map and control of the handle.

The webpage displays radar images

After the radar car is started, there is no need to match the radar car with the handle, you can connect to the radar car Wi-Fi hotspot (SSID:X2Lidar:xx:xx:xx, PWD:12345678), and then access via mobile phone or computer browser to see the radar image information.


LidarBot is supported by UIFlow. Welcome to test!


Version Change

Release Date Product Change Note:
2018.12 Initial public release /
2021.5 Use radar model EAI YDLIDAR X2, add sheet metal structural parts SKU K017 -> K017-C Radar ranging speed 8m @ 6Hz -> 8m @ 7Hz


LidarBOT Case


Q1: How do I remove the speaker floor noise when the M5Core is on or running?

Execute the following statement in Setup() of the Arduino program

Q2: How does M5Core2 stack modules?

When M5Core2 is stacked with other M5 modules, you need to remove the battery base of Core2, which does not support module stacking.

Q3: A timeout error is displayed when uploading the program to the device

Reason and solution: The power supply current of the port is insufficient, which can cause the device to not enter the download mode normally. You can try to connect a capacitor (>0.1uF) between the RST pin and the GND pin, or when uploading the program, set the G0 Short-circuit to GND, so that G0 can be set to a low level state normally

Q4: How to solve the phenomenon of automatic signal triggering of M5Core button A

Add the header file #include <driver/adc.h> and the function adc_power_acquire(); in the Arduino program

Q5: M5 device battery life

The battery life of the controller is affected by various factors such as battery capacity, operating status, and load, so there is no fixed value. Reducing the load and adopting a sleep strategy can effectively increase the battery life.

Q6: Can multiple modules with batteries be stacked at the same time?

Support multiple stacks, the total capacity of the batteries in parallel increases, and the voltage remains unchanged. However, since the discharge of each battery is not balanced during use, there is a voltage difference between the batteries, which may cause the battery to charge backwards. .(will lose part of the battery capacity)

Q7: M5 master supports WiFi connection to 5G frequency band

ESP32 module currently does not support WiFi in 5G band, only 2.4G.

Q8: The RS485 device cannot communicate normally/data is garbled. Packet loss, etc.

Confirm whether the TX/RX pin on the TTL side of the pin is correct, try to add two 120Ω terminal resistors at the beginning and end of the device line to reduce signal reflection interference

Q9: The difference between different masters and camera products

Click the link below to view the product comparison table

Q10: M5 camera image blur, how to adjust the focal length

Rotate the lens to adjust the focal length within a certain range

Q11: The control RGB LED pin of FACE II BOTTOM conflicts with the I2S DOUT pin of CORE2


Q1: How to read the programmed firmware?

Use esptool to read the flash content of esp32 and export the bin file. Refer to the detailed operation

Q2: Several solutions for esp32 board download failure in Arduino IDE board management

Restart the Arduino IDE, the computer uses the mobile AP mobile network to download.

Method 3: Download the resource package provided by M5Stack for direct installation, and extract the contents to the board management path of Arduino, such as (C:\Users\Sean\AppData\Local\Arduino15\packages), https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/packages/m5stack_v2.0.0.zip
Q3: Arduino SPIFFS file upload operation

Refer to the Github link below, use arduino-esp32fs-plugin for file upload

Q4: When M5Burner burns firmware, an error pop-up window or exception occurs

Check if the COM of the corresponding device is selected and if the M5Burner is the latest version

Q5: Does the M5 master device support multi-language display (Chinese, English, Japanese, Russian, etc.)?

UIFlow users can switch the Label font to Unicode, Arduino users can use the Chinese font library provided in the M5GFX driver library

Q6: The program cannot load the SD card normally

Confirm whether the SD card format is FAT32, and no partitions exist.

Q7: How to use Bluetooth, HTTP, SD, WebServer, FreeRTOS and other features in Arduino IDE

You can refer to the following link for other ESP32 users to share the case program

Q8: How to download programs for STAMP C3U

STAMP C3U enters program download mode operation: 1. Long press the center button (G9) of STAMP C3U when the power is off. 2. Connect to the computer, after the port is successfully identified, program burning.

Q9: How STAMP C3U defines UART0 output mode

By default, USB CDC is not enabled, the serial port output started by C3U will be output through the default pins (G20, G21) of UART0. If you want to output through USB, please use the IDE to output Its USB CDC option is enabled. (Arduino users can enable it through Tools->USB CDC on Boot-Enabled. For IDF users, please refer to the ESP IDF official documentation.)

Q10: Unable to connect to UIFlow Desktop IDE

Refer to the UIFlow documentation of the corresponding device to check whether the device has entered the USB programming mode.

Q11: NBIoT devices cannot connect to the network normally

Make sure that the NBIoT used is not locked. Frequent device replacement or after activating the IoT card, using traffic in different places may cause the card to be locked. If the above situation occurs, please contact the IoT card supplier. If you are using the IoT card matching M5, please contact M5 after-sales through e-commerce or email. (provide the ICCID of the IoT card)


Q1: Consultation for after-sales problems of products

Describe the problems encountered in detail. Screenshots of the programs involved or files can be added as attachments and sent to M5Stack's official after-sales email

Q2: Code Resources, Cases, User Communication