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.
Legal Ways to Change Voice Alerts
Before resorting to risky methods, check the official customization options:
- 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
| Method | Supported models | The risk of blocking | Difficulty |
|---|---|---|---|
| Changing language at Mi Home | All models. | No. | β |
| Third-party annexes | S10, S12, 2 Pro | Low. | ββ |
| Custom firmware | Only 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%-->
- 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.
- 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
- 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.pkgThe 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.pkgNow 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?
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:
- Connect to the vacuum cleaner by SSH (instructions on valetudo.cloud).
- Upload audio files to /opt/valetudo/audio.
- 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 guarantee | 90% | Return the original firmware before contacting the service |
| Error 12 (sound) error | 70% | Check the parameters of audio files |
| Rejection of updates | 100% | Use Valetudo with manual update |
| Vacuum cleaner breakdown | 10% | 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.