Xiaomi Vacuum Mop firmware with custom voice packages: how to make a vacuum cleaner β€œscold”

Owners of Xiaomi Vacuum Mop robots (including the S10, S12, 2 Pro and others) often look for ways to personalize their devices. One of the most unusual requests is firmware with alternative voice packets, where standard messages like β€œCharge complete” are replaced with humorous or even β€œscolding” lines. But before turning your assistant into a β€œrebel,” it’s worth realizing: this is not just a sound swap, but a deep interference with system software that can lead to a warranty loss or a device fails.

In this article, we will discuss legitimate and non-obvious methods of changing voice packets, assess the risks, and show how to return the vacuum cleaner to factory settings if the experiment does not go according to plan. Importantly, Xiaomi does not officially support custom firmware, and any manipulation of firmware you perform at your own risk.

Why the vacuum cleaner β€œscolds”: the technical side of the question

Voice alerts in Xiaomi Vacuum Mop are stored in a separate firmware section called audio pack. Standard files are.wav or.mp3 format with hard-defined parameters: bitrate, sampling frequency and duration. Replacing these files with custom requires:

  • πŸ”§ Unpacking the original firmware (.pkg or.bin file).
  • 🎀 Creating new audio files with identical technical characteristics.
  • πŸ–₯️ Flashing the device through special utilities (for example, MiHome Hack or Valetudo).
  • πŸ”„ Compatibility checks – not all models support voice packet replacement.

The main difficulty is protection against modifications. New versions of Xiaomi Vacuum Mop (for example, S15 or X20) use signed firmware that blocks the installation of unofficial software, which can only be avoided through exploits or rollbacks to the old version of firmware.

πŸ“Š What Xiaomi Vacuum Mop Model Are You Using?
S10/S12
2 Pro/2 Ultra
X10+/X20
Another model
I don't know.

Before resorting to risky methods, check the official customization options:

  1. Change the language in the Mi Home app. Some models support up to 10 languages, including English with an accent or even a pirated voice (available in regional firmware).To activate: Open Mi Home β†’ Device β†’ Settings β†’ Voice Alerts β†’ Select language
MethodSupported modelsThe risk of blockingDifficulty
Changing language at Mi HomeAll models.No.⭐
Third-party annexesS10, S12, 2 ProLow.⭐⭐
Custom firmwareOnly the old versions.High-pitched⭐⭐⭐⭐

If the legal methods don't work, you'll have to move to the informal firmware, but it's important to understand that after this manipulation, the vacuum cleaner can:

  • 🚫 Stop updating with Mi Home.
  • πŸ”‹ Discharge quickly due to energy errors.
  • πŸ€– Behaving unpredictable (e.g. ignoring commands).

πŸ’‘

Before you run the firmware, back up the original software, and download the official firmware for your model from miuirom.org and save it to your PC.

Preparation for firmware: what will be needed

Replacement of voice packets will require:

Download the original firmware (.pkg) for your model |

Install Python 3.8+ and pycryptodome Library|

Prepare a USB-OTG adapter (for some models) |

Create a backup of settings in Mi Home|

Charge the vacuum cleaner to 100%-->

  1. It's the original firmware. You can find it on forums like this. 4PDA or XDA Developers. Look for files marked original or stock. For example, for Xiaomi Vacuum Mop 2 Pro current version at the moment 2026 year-end β€” 3.5.8_0042.
  2. Unpacking tools, you'll need a utility. unpack_firmware.py (It allows you to extract audio files from the firmware. Set it up using the command: pip install pycryptodome git clone https://github.com/Maxmudjon/com.xiaomi.miio.git
  3. New audio files. Voice alerts must match the parameters: 🎡 Format: WAV (PCM, 16 bit, 16 keto). ⏱️ Duration: no more 3 seconds. πŸ”Š Loudness: normalized to -16 dB.

⚠️ Note: If you use audio files with the wrong parameters, the vacuum cleaner may issue an Error 12 error (sound packet incompatibility) and stop turning on.

Step-by-step instructions for replacing voice packets

This method is suitable for models based on the Realtek RTL8710BN chip (for example, Xiaomi Vacuum Mop S10). For new devices (for example, X20), a different approach will be required - see the section "Alternative methods".

Step 1: Unpacking the firmware

Download the original firmware file (for example, vacuum_mop_2_pro_3.5.8_0042.pkg) and unpack it:

python unpack_firmware.py vacuum_mop_2_pro_3.5.8_0042.pkg

The output folder will have a file structure where we are interested in /audio directory.

Step 2: Replace audio files

In /audio you will find files like:

  • start_cleaning.wav β€” clean-up,
  • low_battery.wav β€” low-grade,
  • error_obstacle.wav β€” hurdle.

Replace them with your files, keeping the original names.

Step 3: Packaging and firmware

Collect the firmware back with the command:

python pack_firmware.py output/ modified_firmware.pkg

Now run the vacuum cleaner through MiHome Hack or Valetudo (see instructions for these tools below).

What if the vacuum cleaner does not turn on after the firmware?
If after firmware the device does not respond to the buttons and does not charge, try: 1. Reset settings - press the power button for 10 seconds. 2. Swipe through UART - you will need a soldering iron and a USB-to-TTL cable. 3. Contact the service - if the warranty is still valid, do not mention custom firmware.

Alternative methods for new models

Xiaomi Vacuum Mop X10+, X20 and later use a secure bootloader that blocks unofficial firmware.

Method 1: Use of Valetudo

Valetudo is an open source alternative firmware that replaces standard Xiaomi software.It supports custom voice packs and runs on most modern models.

For installation:

  1. Connect to the vacuum cleaner by SSH (instructions on valetudo.cloud).
  2. Upload audio files to /opt/valetudo/audio.
  3. Reboot the device with the command sudo reboot.

Method 2: Exploitation with Mi Home Token

If you have a vacuum cleaner access token (can be accessed through Mi Home Token Extractor), you can send voice commands directly through the API, for example, to play customized sound:

curl -X POST "http://[IP_ vacuum cleaner]/miio/speaker"


-H "Content-Type: application/json" \




-d '{"token":"YOUR_TOKEN","method":"play_sound","params":{"name":"custom_error.wav"}}'

⚠️ Note: Using the token violates Xiaomi's user agreement.Account can be blocked for "suspicious activity».

πŸ’‘

Valetudo is the most reliable way to use new models, but requires skills in Linux and SSH.

Risks and how to minimize them

The firmware of custom voice packets is always a compromise between functionality and stability.

Problem.Probability.How to avoid
Loss of guarantee90%Return the original firmware before contacting the service
Error 12 (sound) error70%Check the parameters of audio files
Rejection of updates100%Use Valetudo with manual update
Vacuum cleaner breakdown10%Switch through stable power (not via USB)

To reduce the risks:

  • πŸ”„ Make a backup of the original firmware.
  • πŸ”Œ Use a Uninterruptible Power Supply (UPS) firmware.
  • πŸ“‘ Check the compatibility of audio files in forums.

If the vacuum cleaner starts to behave strangely after the firmware (for example, does not see the base or does not build a map), the most likely problem is the damaged configuration files, in which case only a complete reset to the factory settings will help.

FAQ: Frequent questions about Xiaomi Vacuum Mop firmware

Can I return the original voice alerts after the firmware?
Yes, you need to flash the device back to the stock version of the software. Download the official firmware for your model from Xiaomi and install it through MiHome or Valetudo. If the vacuum cleaner does not respond to commands, try resetting the settings with the Reset button (usually located under the cover).
What Xiaomi Vacuum Mop models support voice replacement?
The most compatible models: πŸ”Ή Xiaomi Vacuum Mop S10/S12 β€” full-time. πŸ”Ή Xiaomi Vacuum Mop 2 Pro/2 Ultra - only via Valetudo. πŸ”Ή Xiaomi Vacuum Mop X10+ β€” Partial support (requires unlocking the bootloader) New models (X20, X30) Not yet supported due to hardware limitations.
Can I use a vacuum cleaner without a computer?
Theoretically, yes, but in practice, it's extremely difficult. To replace voice packets, you need access to the device's file system, which is only possible through ADB or SSH. Some enthusiasts use Termux on Android, but this method requires root rights on a smartphone and does not guarantee success.
Is it legal to use custom voice packs?
From a legal point of view, modifying your device software does not violate the law if you: πŸ“œ You do not distribute the modified software (for personal use only). πŸ”’ You don't get around. DRM-Protection (for example, do not hack the loader). 🚫 You do not use pirated audio files (such as voices from movies without permission), however, Xiaomi may cancel the warranty if it detects unofficial changes.
Where to download ready-made "scolding" voice packets?
Ready-made sets of audio files can be found on forums: πŸ”— 4PDA (section β€œRobot vacuum cleanersΒ»). πŸ”— GitHub Valetudo (in the section of custom-audio). πŸ”— Telegram channel MiHome Hack. ⚠️ Note: Download files only from trusted sources – some archives may have viruses or damaged audio tracks that will β€œkill” the vacuum cleaner.