Reflashing a Xiaomi scooter is a procedure that can significantly improve its performance, add new features or even bring back a bricked-up machine after a failed upgrade. However, this process requires care: an error at any stage can turn your vehicle into a useless set of spare parts. In this article, we will analyze all the current methods of firmware, from official updates through the Mi Home app to manually implementing custom versions through the STM32CubeProgrammer.
We will focus on the Xiaomi M365, Pro, 1S, 3 and 4 models, because their architecture and update protocols have key differences: you will learn how to prepare a scooter for firmware, where to download verified files, and what to do if after the update the scooter stopped responding to the on button. And for those who are afraid of risks, we will give a security checklist and alternative recovery methods without full flashing.
Why you may need to reflash the scooter Xiaomi
The manufacturer regularly releases updates for its scooters, but not all of them are available through automatic updates.
- π Fixing bugs: Official firmware often contains errors, such as spontaneous motor shutdown or incorrect operation. BMS (Battery management systems: Castile firmware (e.g. ScooterHacking Utility or DownG) fixes these problems.
- π Acceleration and tuning: removal of the speed limit (from 20-25 km / h to 30-40 km / h), increase in engine power or adjust the response of the accelerator.
- π Battery optimization: custom firmware allows you to calibrate BMS to more accurately display the charge or even use batteries with increased capacity (for example, 13S standard 10S).
- π οΈ Recovery after failure: If the scooter stopped turning on after a failed upgrade or physical damage to the board, flashing it through ST-Link can bring it back to life.
However, it is important to understand that any firmware changes will deprive you of Xiaomi warranty (if it is still valid) and can lead to unstable operation. For example, acceleration to 40 km / h increases the load on bearings and battery life, before you start, assess whether the risks are worth the potential benefits.
Preparation of the scooter for firmware: security checklist
Incorrect preparation is the main reason for the "bricking" of scooters. Follow this checklist to minimize the risks:
Charge the battery to 50-80% (not 100%!)
Turn off Bluetooth and Wi-Fi on your phone
Download the firmware from the official source (see table below)
Prepare a USB-C cable (for M365/Pro models) or ST-Link (for manual firmware)
Remove the controller cover (if access to the board is required)
Make a backup of the current firmware (instructions in the next section)-->
Pay special attention to the controller version. Xiaomi scooters have boards based on STM32F103 (old models) and STM32F401 (new ones, for example, Pro 2 or 4). A mismatch between firmware and hardware is guaranteed to cause a failure.
- Through the Mi Home app (section "About the Scooter").
- Visually - on the controller board marked.
- Through the diagnostic cable and the ScooterHacking Utility program.
If you plan to use ST-Link for manual firmware, buy a 3.3V logic adapter (5V can burn the controller!).
π‘
Before you run the firmware, take a picture of all the wires and connectors under the controller lid, which will help you avoid back-assembly errors.
Official ways to update firmware
The safest method is to upgrade through the Mi Home app (or Xiaomi Home for new models), which is suitable for most users and does not require technical skills.
- πΉ Only certified firmware is available (without overclocking and tuning).
- πΉ Updates are delayed (sometimes months).
- πΉ Not all regions are supported (for example, some versions may be blocked for Russia).
Step-by-step:
- Install the Mi Home app (Android/iOS) and log in.
- Connect the scooter to the application via Bluetooth.
- Go to the Device Profile β Update firmware.
- If a new version is available, click Update and wait until it is completed (the scooter will reboot automatically).
If the update doesnβt appear, try:
- π± Change region in the application settings (e.g. Singapore or Germany).
- π Reconnect the scooter to the application.
- π‘ Use it. VPN (Sometimes it helps to unlock new versions).
What to do if the update is suspended?
Manual firmware through ST-Link: a step-by-step guide
This method is suitable for power users and requires direct access to the controller board.
- π§ The scooter will not turn on after a failed update.
- π§ You need to install custom firmware (for example, DownG or ScooterHacking).
- π§ Official Update Not Available for Your Model.
Tools required:
- π οΈ ST-Link programmer V2 (clone).
- π οΈ Wires "dad-mama" (to connect to the board).
- π οΈ Programme STM32CubeProgrammer (Download from STMicroelectronics).
- π οΈ Firmware file in.bin or.hex format.
Step-by-step:
- ST-Link connection to the board: 3.3V β 3.3V on board (power). GND β GND (ground). SWDIO β PA13 (or SWDIO on board). SWCLK β PA14 (or SWCLK).
β οΈ Attention: Don't plug in 5V From ST-Link to the board, it's going to burn the controller. 3.3V.
STM32CubeProgrammer
ST-Link
Connect
Erasing & Programming
.bin
.hex
Start Programming
Turn off the ST-Link, assemble the scooter and turn it on.
If after firmware scooter does not respond to the switch on button:
- Check the correct ST-Link connection (especially GND and 3.3V).
- Try to stitch it again with another version of the firmware.
- If the controller is not detected, perhaps the fuse or the chip itself has burned, a multimeter diagnosis will be required.
π‘
Hand-held firmware via ST-Link is the only way to restore the scooter after "bricking", but it requires soldering skills and risks damaging the board if it is not connected properly.
Where to download firmware for Xiaomi: official and custom sources
The choice of firmware source is critical: unofficial files may contain viruses or incompatible settings, and the table below shows proven resources for different models.
| Model scooter | Official firmware | Custom firmware | Notes |
|---|---|---|---|
| Xiaomi M365 | Mi Home | ScooterHacking | For custom firmware requires ST-Link |
| Xiaomi Pro/Pro 2 | Mi Home | DownG GitHub | DownG firmware supports acceleration to 35 km / h |
| Xiaomi 1S | Mi Home | 4PDA | 4PDA has a Russified version |
| Xiaomi 3/4 | Mi Home | Telegram chat | New models require a Xiaomi developer account |
When downloading custom firmware, pay attention to:
- π Controller version (e.g, STM32F103 or STM32F401).
- π Build Date β Old firmware may not support new features.
- π User reviews on forums (for example, on the 4PDA ordredit).
β οΈ Note: Firmware from unknown sources (for example, torrent trackers) may contain malicious code that will damage the controller or steal your Mi Home account data.
Frequent Firmware Mistakes and How to Avoid Them
Even experienced users have trouble reflashing, and here are the most common mistakes and ways to fix them:
- π Scooter does not turn on after firmware: Reason: incompatible firmware version or interrupted process Solution: Flip back the original firmware through ST-Link.
- π Update via Mi Home freezes 0%: Reason: weak Bluetooth signal or conflict with other devices Solution: disable all other Bluetooth devices and try again.
- β‘ Scooter slowed after firmware: Reason: Custom firmware may limit current for safety Solution: check settings in ScooterHacking Utility or go back to stock firmware.
- π Battery drains too quickly: Reason: Incorrect calibration BMS Solution: Complete the full charge/discharge cycle (3-5 times).
If the scooter makes unusual sounds (squeaking, knocking) or twitches when moving, stop using immediately!
- Damage to the motor due to increased currents (at acceleration).
- Controller malfunction (multimeter diagnostics required).
- Firmware error (for example, incorrect parameters) PID-regulator).
π‘
If after firmware scooter began to behave unstable (for example, spontaneously brakes), try to reset the settings to the factory through Mi Home (section "Reset").
Recovery of the scooter after a failed firmware
If the scooter stopped responding to the switch or only the red light comes on, don't panic, 90 percent of the time it can be restored.
- Check the power: Connect the charger and wait 10 minutes. If the indicator does not light up, the problem may be in the BMS Call the multimeter voltage at the battery terminals (it should be 36β42V for 10S-battery).
- Sweat through ST-Link: If the controller is defined by the STM32CubeProgrammer, fill in the original firmware. If not, check the power circuit (the fuse may have burned on 10A next to the controller).
- Check the connections: Take apart the scooter and check the board for soldered wires or oxidation. Notice the motor connector, which is often oxidized.
Contact the service:
- If self-repair didn't work, you might have a damaged controller or motor, and you'll need to be diagnosed at a service center.