Каталог товаров
Каталог
Что с заказом?
Заказать обратный звонок Бесплатный звонок по России
Мы уже так долго вместе. Все ли устраивает Вас на сайте?

Как изменить голосовое сопровождение у робота-пылесоса Xiaomi с китайского на русский?

Создатели робота-пылесоса Сяоми оснастили аппарат встроенным голосовым ассистентом. Пользователь может выбрать несколько вариантов голосов, однако есть один не самый приятный момент: все звуковое сопровождение идет на китайском языке. Соответственно, от него проку мало.

Как же отключить звук у пылесоса Xiaomi Mi? Если покопаться в настройках, то становится очевидным: его отключение возможно только вместе с деактивацией режима уборки. Однако есть способы, с помощью которых можно установить русскую озвучку, просто для этого придется осуществить перепрошивку программного обеспечения гаджета.

Вариант №1

Для того чтобы воспользоваться этим способом, следует сначала произвести закачку языкового пакета, например, путем надиктовки собственных фраз на диктофон и сохранения их в формате WAV с разбивкой на отдельные файлы.

Затем перейдите в режим разработчика:

  • Зайдите в «Настройки» и выберите пункт «О телефоне». В открывшемся меню вы найдете номер прошивки, на который требуется нажать несколько раз.
    Последовательность действий для входа в режим разработчика для телефона Ксиаоми
    После этого станет доступными режим «Для разработчиков», где активируются такие опции, как «Отладка по USB», «Отладка по USB (Настройки безопасности)» и «Отладка по USB»;
  • Скачайте и установите на свой компьютер программу Java, причем следует воспользоваться последней версией;
  • Синхронизируйте телефон с ПК;
  • На этом этапе осуществляется активация приложения MiToolkit, для его нужно выбрать «Режим от имени Администратора». Обычно меню представлено на немецком языке, однако есть возможность изменения его на английскую версию. Коснитесь «Extract Token»;
  • После этих мероприятий гаджет запросит разрешение, чтобы создать резервную копию. Соглашайтесь и позаботьтесь об отсутствии пароля, это очень важно;
  • Вы увидите в меню устройства с прописанным для каждого из них IP-адресом и TOKEN. Найдите в списке робот-пылесос Ксиаоми, после чего сохраните его данные в любом текстовом редакторе;
  • Для проведения дальнейших операций следует убедиться в том, что уровень зарядки пылесоса Xiaomi составляет не менее 20%;
  • В той папке, где находится выбранный голос, требуется скопировать WAV-файлы и отправить их в папку voicepacks. Программой в автоматическом режиме будет выполнено создание pkg файла;
  • В документ win-mirobo.ini, в верхнюю строчку, внесите сведения об IP-адресе и TOKEN нашего прибора (ip=, token=), затем сохраните и закройте его;
  • Запуск «win-mirobo.bat» производится от имени администратора, а затем выбирается второй пункт и нажимается «Ввод»;
  • Подождите пару минут, пока не появится «ОК».

После этого пылесос Сяоми будет говорить вашим голосом!

Вариант №2

Второй способ подразумевает использование возможностей библиотеки python-miio, а также начальные знания такого языка программирования, как Python 3.

Внешний вид робота-пылесоса Сяоми

Первый этап

Обязательным условием установки является libffi-dev libssl-dev. Для этого требуется выполнить: «pip3 install -U setuptools» и «pip3 install python-miio».

Второй этап

Для получения токенов устройств лучше всего воспользоваться приложением Mi Home. Его нужно скачать, установить и добавить в список используемых устройств наш робот-пылесос Xiaomi.

Если вы являетесь пользователем смартфона на базе iOS, то выполняйте следующие действия:

  1. Создание незашифрованного бэкапа посредством iTunes;
  2. Его открытие, для чего потребуется софт iBackup Viewer. Выбирается функция просмотра файловой системы (raw files), где нужно найти Ми Хоум (com.xiaomi.mihome). Отсюда извлекается файл «цифры_mihome.sqlite»;
  3. Для открытия извлеченной базы данных можно использовать DB Browser for SQLite, что позволяет найти файл ZTOKEN;
  4. После открытия «Терминала» следует выполнить «echo '0: <извлеченный_токен>' | xxd -r -p | openssl enc -d -aes-128-ecb -nopad -nosalt -K 00000000000000000000000000000000».

Обладателям гаджетов на базе Android потребуется совершить такие операции, как:

  1. Сделать резервную копию базы» adb backup -noapk com.xiaomi.smarthome -f backup.ab»;
  2. Для извлечения данных потребуется инструмент ADB Backup Extractor "java -jar Android Backup Utilities/Android Backup Extractor/android-backup-extractor-20171005-bin/abe.jar unpack backup.ab unpacked.tar»;
  3. Распаковка осуществляется с помощью «tar -xvf unpacked.tar»;
  4. Достать токен (поле ZTOKEN) можно путем использования DB Browser for SQLite;
  5. Можно просматривать БД вручную, а можно применить инструмент из библиотеки python-miio «miio-extract-tokens <файл_бд>».

Третий этап

Отличным вариантом будет применение готовых скриптов. Копируем понравившийся скрипт, для чего вам нужно будет папка «dustcloud/devices/xiaomi.vacuum/audio_generator». Редактирование скрипта generate_audio.py можно проводить посредством Маке.

Для внесения правок воспользуйтесь «84.  os.system("say -v <голос> -o " + path + " --data-format=LEI16@22050 " + text)».

Просматривать списки доступных голосов можно в «Терминале» - «say -v ?».

Если после внесения изменений робот-пылесос Ксиаоми отказывается разговаривать, т.е. молчит, то рекомендуется провести проверку аудиофайлов. У них обязательно должны быть одинаковые свойства. Если параметры разняться, то нужно поправить скрипты.

В папке «./language» вы можете найти списки фраз. Выбираем понравившуюся, изменяем ее название на «audio_ru.csv» и вносим собственные изменения с последующим запуском скрипта «./generate_audio.py».

Интерактивный режим понадобится для выбора «audio_ru.csv» и tts-движка, в результате чего окажется доступным документ ru.pkg.

Его заливка на гаджет от Ксиаоми производится путем применения команды «mirobo install_sound ./ru.pkg». Только не забудьте заранее выполнить «export MIROBO_TOKEN=<токен>» и «export MIROBO_IP=».

На этом процесс переозвучки завершается. Теперь ваш пылесос Сяоми будет “разговаривать” на русском языке, благодаря чему вы будете понимать все, что он скажет.