Changing your standard voice to a more pleasant or fun one is one of the most popular ways to personalize your smart home. Xiaomi and Roborock robot vacuum cleaners often come with a basic set of phrases that can sound monotonous or have unnatural pronunciation. Fortunately, the ecosystem allows you to replace these files with custom versions recorded by enthusiasts or created yourself.
The process of replacing the voice packet varies depending on the device model and firmware version. In some cases, it is enough to use the standard features of the Mi Home application, while other models will require deeper intervention in the file system. It is important to understand that any manipulation of system files carries certain risks, so accurate follow-up to the instructions is critical to preserve the warranty and health of the gadget.
Before you start downloading new files, make sure your device is fully charged and connected to a stable Wi-Fi network. An unstable connection can damage the voice module, causing the vacuum cleaner to stop making sounds or stop responding to commands. Below we will discuss all available methods, from simple in-app settings to advanced methods through ADB.
Official methods of changing the language in the Mi Home app
The easiest and safest way to change voice is to use the built-in features of the Mi Home app. Developers often add new language packages through updates, so the first thing to do is check the available options in the device menu.This method does not require special knowledge and is suitable for most users who want to simply switch from Chinese or English to Russian.
To start, open the app and go to the home page of your vacuum cleaner. Click on the three dots in the upper right to enter the advanced settings. In the options list, look for the Voice Package or Voice Package. If there is no such option, it is possible that your model does not support the official change of voice or requires updating the firmware to the current version.
- 📱 Open the Mi Home app and select your vacuum cleaner from the list of devices.
- ⚙️ Go to the settings menu (three dots) and find the voice control section.
- 📥 Select the available language or download an additional package from the list offered.
It's worth noting that official packages are often limited to standard cleaning status and error phrases, and you can't add your own phrases or download third-party voices through this interface, but that's usually enough for basic localization, and if the language you want isn't on the list, you'll have to resort to more sophisticated methods.
⚠️ Note: If after changing the language in the application, the robot continues to speak the previous one, try to completely remove the device from the application (Delete) and re-attach it, selecting the desired region and language when initially configuring.
If standard methods do not give the desired result, you will have to look for third-party voice packets. Xiaomi’s user community actively creates and distributes files with improved sound quality, changed tone, or even phrases from popular movies, which can be found on specialized forums, Telegram channels, or GitHub repositories dedicated to the smart home. Voice files are usually.pkg or.bin and are archives containing audio formats that are comprehensible to vacuum cleaners. It is critical to download files only from trusted sources, as a corrupted file can cause a cyclical reboot of the device. Before downloading, make sure the version of the package matches your robot model (e.g., files for Roborock). S5 It may not be suitable for Xiaomi Vacuum Mop). Vacuum model File Type Installation method Risk of Xiaomi Vacuum error 1 (S50).PKG Through Mi Home (older versions) Low Roborock S5 Max.pkg /.bin ADB / Local server Average Xiaomi Mijia 1C.PKG Only Official Low Roborock S6/S7.pkg ADB / Access Token Medium After downloading the file, save it in an accessible place on your computer or smartphone. If you plan to use the method with a local server, the file will need to be placed in the root folder of the web server. ADB The file must be renamed according to the system requirements, often current.pkg or the name specified in the documentation for a particular model. 💡Always check the checksum (MD5/SHA1) downloaded file, if provided by the author of the package, this ensures that the file was not corrupted during download and does not contain malicious code.
Installation via local server and Mi Home
One of the most common ways to install custom voices is to use local voices. HTTP-The idea is to make the Mi Home app believe that the new voice packet is being downloaded from an official server, when in fact the file is being taken from your computer, and that would require a PC connected to the same Wi-Fi network as the vacuum cleaner.
First, you need to run a simple web server on your computer, you can use built-in Python tools or special utilities like Simple HTTP Server. Place the downloaded voice packet in the folder that the server will serve. Then in the Mi Home application you will need to change the address of the update server, this is done through changing the DNS or using special modified versions of the application, although the latter option is less secure.
- 💻 Run a local server on your PC (for example, a python command) -m http.server 8000).
- 📂 Put the voice file in the server folder and copy it. IP-computer.
- 📲 In the Mi Home app, specify the path to the file on your local IP.
Once the path is specified, a new option should appear in the voice selection menu that matches your file. When you select this item, the vacuum cleaner will download the file from your computer and install it. The process can take several minutes, during which the indicator on the device can flash. Do not turn off the vacuum cleaner or interrupt the server until the installation is completed.
⚠️ Warning: Windows Antivirus or Firewall can block incoming connections from the vacuum cleaner. Temporarily disable protection or add an exception rule for port 8000 (or other port used).
Advanced method: installation via ADB
For those with a command-line experience, the Android Debug Bridge (ADB) installation method is available, giving full control of the device’s file system and allowing system files to be replaced directly, and is particularly useful for models where the server method is already closed by manufacturers in new firmware versions.
The first step is to get your device’s access token, and the token is a unique key that is needed to authorize any external commands, which can be obtained through browser plugins (such as Chrome or Firefox), by intercepting the Mi Home app traffic, or using Python utilities such as miio. Without the token, you can’t connect to the vacuum cleaner.
miio token --ip 192.168.1.50 --token YOUR_TOKEN_HEREAfter receiving the token and installing ADB On your computer, connect to the vacuum cleaner over the network. IP_ADRES DUST. Once you're connected successfully, you'll have access to the shell of the device, and then you'll have to copy the voice file to the system directory, which is usually the shell of the device. /data/voice/ or a similar folder, and rename it according to the expectation of the system.
☑️ Checklist before installation through ADB
Once you copy the file, you'll need to restart the audio service or the device itself. The adb shell reboot command will reboot. If done correctly, the next time you turn on the robot will speak in a new voice. This method requires care, because an error in the path or file name can lead to the robot being left without a voice.
What if the ADB can’t see the device?
Creating your own voice package
For those who want to be as unique as possible, it's possible to create their own voice packet, which requires a microphone, a computer, and a basic knowledge of audio file formats, so you can write down your phrases or use speech synthesis (TTS) to generate text, and then assemble them into the desired format.
The structure of a voice packet is usually an archive containing a plurality of short audio files (e.g., a voice packet, start_cleaning.wav, error_01.wav). File names are strictly regulated by firmware. You will need to find the source package for your model, unpack it and replace the audio files with your own, retaining the original names and encoding format (often this is the case). OGG or ADPCM).
- 🎙️ Write down phrases in a quiet room for maximum quality.
- 🔊 Convert the audio to the desired format (bitrate and sampling frequency must match the original).
- 📦 Pack files into the archive, saving the folder structure of the original package.
The hardest part is to follow the time stamps and compression format. If the audio file is too long or has the wrong title, the vacuum cleaner can play it with distortion or miss it altogether.
⚠️ Note: Using copyrighted content (fragments of movies, songs) in voice packets may violate copyright. Create content yourself or use materials with a Creative Commons license.
Possible problems and solutions
The process of installing custom voice voice voice is not always smooth, users can experience various errors, from the device's refusal to accept the file to the complete silence of the robot, and understanding the causes of these problems will help quickly return the device to working condition without going to the service center.
One of the common problems is that the firmware version and voice package are incompatible. Manufacturers often change the structure of files in updates. If after installing a new voice, the robot stopped talking, try returning the original file or updating the firmware to the version for which the package is intended.
If the robot makes strange sounds or stutters, check the integrity of the file. Damaged sectors during recording or download errors can disrupt the audio structure. Repeat the boot procedure, making sure the network is stable and free of interference. In rare cases, it may be necessary to flash the device through official recovery tools.
💡
The rule of modification is to always save the original files of the system, which is the only guarantee that you can return the device to its original state in the event of a failure.