Method miio info error on socket receive ошибка

Method miio info error on socket receive ошибка * Если названия вашего робота нет в первой строчке данной темы, то значит вам в другую тему. В данной теме обсуждается только процесс прошивки, возникающие при этом проблемы и недокументированное использование возможностей в следствии рутования. Xiaomi Mi Robot Vacuum-Mop (1С) прошить в данной теме нельзя, профильная […]

* Если названия вашего робота нет в первой строчке данной темы, то значит вам в другую тему.
В данной теме обсуждается только процесс прошивки, возникающие при этом проблемы и недокументированное использование возможностей в следствии рутования.

Xiaomi Mi Robot Vacuum-Mop (1С) прошить в данной теме нельзя, профильная тема: ссылка.
Xiaomi Mi Robot Vacuum-Mop (2С) ссылка.
Для Mop P (STYJ02YM) ссылка.
Для Xiaomi Mijia G1 Sweeping Vacuum Cleaner (Mop essential MJSTG1) ссылка.

Робот-пылесос Xiaomi Mi Robot Vacuum оснащен малошумным бесщеточным мотором, поставляемым японской фирмой NIDEC. Вентилятор дает максимальное давление в целых 1800 Па, которая обеспечивает большую мощность при работе с жесткой грязью.

Mi Robot Vacuum также оснащен тремя процессорами: четырехъядерным процессором Allwinner, сопроцессором STMicroelectronics ARM и процессором обработки изображения Texas Instruments LDS. Трио помогает пылесосу получать данные в режиме реального времени от россыпи из 12 различных типов датчиков (датчик определения расстояния LDS, ультразвуковой радар, датчик расстояния до стены, датчик крупной грязи, датчик падения, гироскопы, акселерометры и так далее). Лазерный дальномер и ультразвуковой радар сканируют окружающее робота пространство на все 360 градусов с частотой замеров 1800 раз/сек. Эта технология похожа на ту, что мы можем видеть в современных беспилотных автомобилях.

Встроенная батарея емкостью 5200 мАч составлена из аккумуляторов повышенной емкости типа 18650 от LG и Panasonic и гарантирует 2,5 уборку от одного заряда батареи.

Кастомные прошивки:
Важно: Обе версии робота прошиваются одинаково, то есть все инструкции по прошивке подходят к обеим версиям! Для 3 поколения только офф. пакеты через моды МиХоум или напрямую со смартфона XVacuum Firmware

Вопрос/ Ответ:
В: Зачем?
О: После получения рут прав вы получаете полноценный дистрибутив Ubuntu внутри пылесоса. Что с этим делать решать вам. После этого только ваша фантазия ограничивает возможности пылесоса, ну и, соответственно, умения работать с Ubuntu.

Для первой версии:
Полный сток (версия 3532) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd v11_003532.fullos_root.pkg.

Модифицированные прошивки
——————
Теперь зональная уборка и отправка в определенную точку работает официально в родном плагине MiHome, больше никаких манипуляций.

Для второй версии:
Ввиду появления региональной блокировки у второго поколения робота используйте модифицированные прошивки

Важно: В роботе языковые пакеты не копятся, в нем всегда только один языковой пакет. Поэтому одновременно установить можно только один языковой пакет. Выбор языка в MiHome никак не связан с тем, что находится в роботе. MiHome лишь дает команду роботу скачать языковой пакет по ссылке, заранее запрограммированной разработчиками. То есть только разработчики могут добавить в MiHome языки. Вы же устанавливаете языковой пакет именно на робота вместо текущего. MiHome об этом ничего не знает и никогда не узнает.

Для 3-го поколения:
*Для третьего поколения русский пакет на данный момент существует всего 1 — официальный. Пакеты для третьего поколения теперь не только зашифрованы, но и подписаны сертификатом. То есть больше никто не может создавать свои пакеты.

Для 1-го и 2-го поколений: (для 3-го они НЕ подходят, подробности в FAQ)
*Языковые пакеты можно ставить на любую прошивку, независимо стоковая (оригинальная) или кастомная.

Обсуждение Xiaomi Mijia G1 Sweeping Vacuum Cleaner — робот-пылесос
Xiaomi Mijia G1 Sweeping Vacuum Cleaner
Обсуждение | Покупка » | Приложение » | Выбор и сравнение пылесосов » |

Это универсальное решение для дома, которое отличается достаточно высокой мощностью всасывания — 2200 Па. Работает устройство на базе двигателя от японского производителя NIDEC.
Производитель заявляет, что за счёт специального тройного фильтра Mijia Sweeping Robot G1 способен всасывать даже очень мелкие частицы. При этом во время уборки робот смачивает пол при помощи специальной губки, на которую равномерно подаётся вода из встроенного резервуара на 200 мл.
Корпус у устройства достаточно компактный, 82 мм в высоту, что позволяет ему легко заезжать под кровати и журнальные столики. Препятствия высотой до 17 мм ему тоже не помеха.
Аккумулятор на 2500 мА·ч обеспечивает до 90 минут автономной работы, после чего робот автоматически вернётся на подпитку к док-станции. Также управлять Mijia Sweeping Robot G1 можно из приложения, где отображается и карта помещения, которую «рисует» робот.

Для настройки пылесоса устанавливаем приложение Mi Home, в настройках выбрать регион Китай для китайской версии робота, для глобальной выбирать свой регион.
Пылесос работает в сетях Wi-Fi 2.4 ГГЦ. Если ваш роутер настроен на работу в сетях 5 ГГц, нужно выбрать режим 2.4 ГГЦ / 5 ГГЦ
Китайскую версию удастся русифицировать только путем замены пары — Процессор+ПЗУ

Звуковой языковой пакет не меняется

В теме нет куратора. По вопросам наполнения шапки обращайтесь к модераторам раздела через кнопку под сообщениями, на которые необходимо добавить ссылки.
Если в теме есть пользователь, желающий стать Куратором и соответствующий Требованиям для кандидатов, он может подать заявку в теме Хочу стать Куратором (предварительно изучив шапку темы и все материалы для кураторов).

Сообщение отредактировал podolsk26 — 26.12.22, 09:03

Добавь сразу в шапку. Чтобы ми хоум приконектился к роботу, нужно поставить в настройках приложения регион — Китай.

Сообщение отредактировал drelarin — 19.06.20, 14:48

Источник

Method miio info error on socket receive ошибка

* Если названия вашего робота нет в первой строчке данной темы, то значит вам в другую тему.
В данной теме обсуждается только процесс прошивки, возникающие при этом проблемы и недокументированное использование возможностей в следствии рутования.

Xiaomi Mi Robot Vacuum-Mop (1С) прошить в данной теме нельзя, профильная тема: ссылка.
Xiaomi Mi Robot Vacuum-Mop (2С) ссылка.
Для Mop P (STYJ02YM) ссылка.
Для Xiaomi Mijia G1 Sweeping Vacuum Cleaner (Mop essential MJSTG1) ссылка.

Робот-пылесос Xiaomi Mi Robot Vacuum оснащен малошумным бесщеточным мотором, поставляемым японской фирмой NIDEC. Вентилятор дает максимальное давление в целых 1800 Па, которая обеспечивает большую мощность при работе с жесткой грязью.

Mi Robot Vacuum также оснащен тремя процессорами: четырехъядерным процессором Allwinner, сопроцессором STMicroelectronics ARM и процессором обработки изображения Texas Instruments LDS. Трио помогает пылесосу получать данные в режиме реального времени от россыпи из 12 различных типов датчиков (датчик определения расстояния LDS, ультразвуковой радар, датчик расстояния до стены, датчик крупной грязи, датчик падения, гироскопы, акселерометры и так далее). Лазерный дальномер и ультразвуковой радар сканируют окружающее робота пространство на все 360 градусов с частотой замеров 1800 раз/сек. Эта технология похожа на ту, что мы можем видеть в современных беспилотных автомобилях.

Встроенная батарея емкостью 5200 мАч составлена из аккумуляторов повышенной емкости типа 18650 от LG и Panasonic и гарантирует 2,5 уборку от одного заряда батареи.

  • Внимание! Партии с новыми прошивками (4004 и выше — для первого поколения, 1910 и выше — для второго поколения) в разделе восстановления, у вас нет возможности ставить кастомные прошивки на таких роботов.
  • В новых ревизиях второго поколения роботов, выпущенных начиная с 03.2019, а также в прошивках, начиная с 02.2019, появилась проверка принадлежности робота к региону. То есть робот для китайского рынка (в России тоже часто такие продают под видом европейского) больше не работает в России. Прошить себя не дает и т.д.

Кастомные прошивки:
Важно: Обе версии робота прошиваются одинаково, то есть все инструкции по прошивке подходят к обеим версиям! Для 3 поколения только офф. пакеты через моды МиХоум или напрямую со смартфона XVacuum Firmware

Вопрос/ Ответ:
В: Зачем?
О: После получения рут прав вы получаете полноценный дистрибутив Ubuntu внутри пылесоса. Что с этим делать решать вам. После этого только ваша фантазия ограничивает возможности пылесоса, ну и, соответственно, умения работать с Ubuntu.

Для первой версии:
Полный сток (версия 3532) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd v11_003532.fullos_root.pkg.

  • Полный сток (версия 3.3.9_003514) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 3.3.9_003506) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 3.3.9_003416) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 3.3.9_003254) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 3.3.9_003194, начиная с этой версии появилась зональная уборка) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 3.3.9_003132) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.

Модифицированные прошивки
——————
Теперь зональная уборка и отправка в определенную точку работает официально в родном плагине MiHome, больше никаких манипуляций.

Для второй версии:
Ввиду появления региональной блокировки у второго поколения робота используйте модифицированные прошивки

  • Полный сток (версия 001792) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd
  • Полный сток (версия 001780) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 001632) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 001518) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 001414) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 001408) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 001344) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 001228) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.
  • Полный сток (версия 001168) с рутом, вход по ssh, логин и пароль cleaner, после входа можно/нужно поменять пароль на свой с помощью команды passwd.

Важно: В роботе языковые пакеты не копятся, в нем всегда только один языковой пакет. Поэтому одновременно установить можно только один языковой пакет. Выбор языка в MiHome никак не связан с тем, что находится в роботе. MiHome лишь дает команду роботу скачать языковой пакет по ссылке, заранее запрограммированной разработчиками. То есть только разработчики могут добавить в MiHome языки. Вы же устанавливаете языковой пакет именно на робота вместо текущего. MiHome об этом ничего не знает и никогда не узнает.

Для 3-го поколения:
*Для третьего поколения русский пакет на данный момент существует всего 1 — официальный. Пакеты для третьего поколения теперь не только зашифрованы, но и подписаны сертификатом. То есть больше никто не может создавать свои пакеты.

Для 1-го и 2-го поколений: (для 3-го они НЕ подходят, подробности в FAQ)
*Языковые пакеты можно ставить на любую прошивку, независимо стоковая (оригинальная) или кастомная.

  • 3 типа звуковых пакетов для Roborock

Источник

Adblock
detector

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account


Closed

dnl0319 opened this issue

Feb 16, 2020

· 8 comments


Closed

install — issues with WIN-MIROBO

#122

dnl0319 opened this issue

Feb 16, 2020

· 8 comments

Comments

@dnl0319

Hello,

I’ve tried to install a pre rooted version as described in the guide but I had problems with WIN-MIROBO.
I get the toke from my android phone with the modified Mi Home App. I downloaded the Version root_1898.pkg and placed it into the firmware folder. But the I received the following error:

«WIN-MIROBO INITIALIZATION ERROR
Can not connect to device: Device handshake error on socket receive…»

Does anyone has an idea what I can do?

@rand256

I’d say it could be firewall blocking connections or wrong IP address of a robot specified in configuration.

@dnl0319

Okay, I reset the Wifi of the robot. Then I connected directly to the robot via Wifi with a Win Notebook and disable all firwalls. But now I receive the following error.

«WIN-MIROBO INITIALIZATION ERROR
Can not connect to device: Method ‘miIO.info’ error on socket receive…
Press any key for exit…»

Does someone have an idea what I did wrong?

@lemuba

@dnl0319 I had the same problem on my Gen.1 a couple of days ago, running the original and current Xiaomi firmware (not Valetudo).
It seems that the current Xiaomi firmware blocks flashing, even if you have the token.
So I resetted the robi to the factory firmware and picked up my token. After that I was able to flash Valetudo via rrcc and possible also via WIN-MIROBO.

@ministryofsillywalks

Sorry to go gravedigging but I have the same problem.
After my valetudo rrand robot seemed to once again reset itself I’m back on a chinese speaking robot.
Tried connecting to it with win-mirobo to reflash but I get the error
«WIN-MIROBO INITIALIZATION ERROR
Can not connect to device: Method ‘miIO.info’ error on socket receive…
Press any key for exit…»
Tried completely resetting my robo but the issue persists.
The MiHome App says the robo is on firmware 3.3.9_003088 (and this is after a complete reset.)
Any ideas what I can try to connect to the robo?

@rand256

Try flashing via XVacuum app on the smartphone.

@ministryofsillywalks

XVacuum

«Requested page not found» on XDA when trying to download the apk.
Is the app hosted somewhere else?
nvm found a link

@ministryofsillywalks

no dice.
using the app and connecting directly to the vacuumAP i with the correct token I get:
The server started
Handshaking…
Handshake is successful
The token is got
Trying to get the status (this 50 times)
timeout: Call to the vacuum timed out

Any ideas?

Added the robo to my wifi and its the same. Gets stuck on «Trying to get the status»

@ministryofsillywalks

I’m dumb.
Typo in the token.
Works now

Всем доброго времени суток. Пытаюсь подключить два шлюза Mi Smart Home Gateway 2. Milo их находит оба в статусе онлайн, однако при получении информации пишет Сведения miIO.info не получены. Вероятно, указан неверный токен. Хотя оба токена верные и с Xiaomi Home работают нормально.
Вывод отладки:

Код: Выделить всё

miIO Info 

Connection to device by IP 192.168.1.65 Debug status [1] Socked created Command to send - {"id":1564668742,"method":"miIO.info","params":[]} Checking device status by 192.168.1.65 Timeout SO_RCVTIMEO successfully set »»> Sending hello-packet to 192.168.1.65 with timeout 2 »»> Sent 32 bytes to socket ««< Reply received from IP 192.168.1.65 , port 54321 32 bytes received magic: 2131 length: 0020 —> 32 bytes unknown1: 00000000 devicetype: 07e4 serial: 83fc ts: 0003dd08 —> 253192 seconds —> 1970-01-04 01:19:52 timediff: -1564415550 checksum: 00000000000000000000000000000000 ts_server: 5d42f346 —> 1564668742 seconds —> 2019-08-01 17:12:22 Device 192.168.1.65 available Timeout SO_RCVTIMEO successfully set Incorrect tokent format! »»> Sending packet to 192.168.1.65 with timeout 2 magic: 2131 length: 0060 —> 96 bytes unknown1: 00000000 devicetype: 07e4 serial: 83fc ts: 0003dd08 —> 253192 seconds —> 1970-01-04 01:19:52 timediff: -1564415550 checksum: d661eab6a5666ee027ab1f8d82ace1a0 ts_server: 5d42f346 —> 1564668742 seconds —> 2019-08-01 17:12:22 data: 29c369e9ba1b8712f5cc4f88b0cc09c1db44d23845f2a4ed138ca7574f5ee553aac789a43b29956134f8045e8ad9cc116745f55bfc6ab3221d51cc680a9326ce »»> Sent 96 bytes to socket ««< Reply from IP 192.168.1.65 , port 54321 Read 32 bytes from socket magic: 2131 length: 0060 —> 96 bytes unknown1: 00000000 devicetype: 07e4 serial: 83fc ts: 0003dd08 —> 253192 seconds —> 1970-01-04 01:19:52 timediff: -1564415550 checksum: ffffffffffffffffffffffffffffffff data: Data decrypted: Invalid JSON data. Error: Syntax error Executing trim() Сведения miIO.info не получены. Вероятно, указан неверный токен.

Вывод лога:

Код: Выделить всё

17:13:02 0.34057100 Periodic search for devices in the network is finished 
17:13:02 0.33974500 Current count of offline devices 0 
17:13:02 0.33411700 Update the ip address and the token for the device 192.168.1.73 
17:13:02 0.32670900 Update the ip address and the token for the device 192.168.1.65 
17:13:02 0.31890500 Update the ip address and the token for the device 192.168.1.69 
17:13:02 0.31615400 Current count of devices 3 
17:13:02 0.31378900 Reply = {"devices":["{"devicetype":"0f16","serial":"8f56","token":"ffffffffffffffffffffffffffffffff","ip":"192.168.1.69"}","{"devicetype":"07e4","serial":"83fc","token":"00000000000000000000000000000000","ip":"192.168.1.65"}","{"devicetype":"035f","serial":"7995","token":"00000000000000000000000000000000","ip":"192.168.1.73"}"]} 
17:13:02 0.31322100 End miIO-discover command 
17:12:52 0.15015900 Run miIO-discover command

Мое железо и ось:

Код: Выделить всё

 Orange Pi Plus 
Armbian Linux 4.19.59-sunxi 

Куда копать не пойму.

Устанавливаем голосовой пакет на Xiaomi Mi Robot Vacuum Cleaner

Технологии не стоят на месте, с каждым годом появляются новые, полезные гаджеты, которые облегчают нашу жизнь. Самым интересным и полезным в этом году для меня стал робот пылесос Xiaomi Mi Robot Vacuum Cleaner первого поколения, цена на который немного упала к концу 2019 года. Я долго решался с покупкой, но все такие решился и купил, скажу сразу о покупке не жалею, все свои основные функции робот выполняет хорошо, есть конечно небольшие минусы, но об этом немного позже. А сегодня я поделюсь с Вами подробной и понятной инструкцией по установке различных, русских голосовых пакетов, как с помощью телефона Android так с помощью компьютера под управлением операционной системой Windows.  Данная инструкция подойдет для первого поколения и для второго. Начнем с того, что в первой версии Xiaomi Mi Robot Vacuum Cleaner из коробки нет русского официального языка, но это не трудно исправить. После того, как Вы достали пылесос из коробки я посоветую Вам поставить на док станцию для зарядки так, как если заряда меньше 20% языковой пакет не установится. Как только пылесос зарядился, то можем начать установку голосового пакета, у нас есть несколько вариантов для этого, мы начнем с самого легкого.

Установка русского голосового пакета с помощью телефона(Android)

Вариант с автоматическим определением ip адреса и получением токена.

Токен — уникальный идентификатор робота пылесоса(после сброса настроек wifi изменяется).

  • Скачиваем и устанавливаем на телефон программу XVacuum Firmware 4.0.0
  • Скачиваем для примера официальный русский язык ru_official и распаковываем из архива, в результате на телефоне должен находится файл с расширением .pkg
  • Зажимаем на пылесосе две кнопки на несколько секунд пока не прозвучит фраза о сбросе настроек Wifi(скорее всего будет на китайском языке)
Зажимаем две кнопки для сброса wifi
Зажимаем две кнопки для сброса настроек wifi
  • Далее на телефоне желательно отключить мобильный интернет и включить wifi, в списке доступных сетей у нас должна появиться сеть от нашего робота к которой нам и необходимо подключиться.
Подключаемся к wifi сети робота
Подключаемся к wifi сети от робота пылесоса
  • Теперь запускам программу Xvacuum Firmware, выбираем Flash Sound
Xvacuum Firmware flash sound
Xvacuum Firmware нажимаем на кнопку Flash Sound
  • Выбираем голосовой пакет, который перед этим извлекали из архива на телефоне.
Выбираем голосовой пакет
Выбираем голосовой пакет, который скачали ранее
  • Ждем завершения процесса установки.
Процесс установки голосового пакета
Установка голосового пакета

Установка голосового пакета с помощью приложение XVacuum Firmware для iOS

Инструкция и приложение взяты с сайта 4pda.ru, автор приложения .//Hack спасибо ему большое за разработку!

Самым первым делом скачиваем архив с программой XVacuum Firmware 4.0.0 для iOS. Потом извлекаем программу из архива и устанавливаем ее через iTunes. Прошивки и языковые пакеты заливаются также через iTunes (Раздел «Общие файлы»), iTools, iFunbox или любые подобные приложения в приложение в Documents. (поддерживаются только pkg, не 7z, не zip, не rar, а именно pkg, для языковых пакетов wav-файлы в архиве — это не pkg). Избегайте любых символов отличных от английского языка и нижнего подчеркивания в названиях файлов и путях к ним, робот не умеет качать такие файлы. Все остальные действия аналогичны с выше описанной установкой русского голосового пакета с помощью телефона(Android). Отпишитесь пожалуйста в комментариях кому помог этот способ, так, как у меня нет девайся с iOS.

Вариант с ручным прописанием ip адреса и токена

  • Скачиваем и устанавливаем XVacuum Firmware 4.0.0 если еще не установили
  • Потребуется установить на телефон модифицированный Mi Home vevs,  через который можно посмотреть ip адрес и токен, если до этого использовали MiHome из PlayMarket, то его необходимо будет его удалить.
  • Скачиваем официальный русский языковой пакет ru_official  и извлекаем его из архива, файл должен быть в формате .pkg
  • Открываем модифицированный MiHome, добавляем Ваш пылесос, потом снизу открываем Профиль и выбираем Доступ, далее Доступ к устройству, токен будет ниже названия Вашего пылесоса, выделяем его долгим тапом и копируем, а IP-адрес можем найти нажав на сам пылесос, потом в правом верхнем углу нажимаем на три точки->Руководство пользователя->Серийный номер и там будет пункт с IP адресом вашего пылесоса.
Узнаем токен и ip адрес пылесоса
  • Открываем приложение Xvacuum Firmware и нажимаем натри горизонтальных  полосы в правом верхнем углу, перед нами откроется меню в котором выбираем Settings,
Открываем настройки в приложении Xvacuum
  • В поле IP вписываем IP-адрес нашего роутера, который запоминали на предыдущем шаге, а в поле Token вставляем Token скопированный с модифицированного приложения Mi Home и нажимаем на кнопку Save
Вводим ip адрес и токен
  • Перезапускам приложение Xvacuum Firmware
  • У нас должны стать активными кнопки FLASH FIRMWARE и FLASH SOUND, сейчас нас будет интересовать кнопка FLASH SOUND нажимаем на нее
Xvacuum Firmware flash sound
Xvacuum Firmware нажимаем на кнопку Flash Sound
  • Далее нам необходимо выбрать распакованный языковой пакет в формате .pkg, который был извлечен из архива ранее на телефоне.
Выбираем распакованный голосовой пакет
  • Ждем окончания прошивки, на этом установка языкового пакета завершена.

Установка русского голосового пакета с помощью компьютера с операционной системой Windows (win-miribot)

  • Ставим пылесос на док станцию для зарядки, заряда должно быть не менее 20%, в противном случае прошить языковой пакет не удастся.
  • Узнаем IP-адрес робота и токен, проще всего через модифицированный MiHome, процесс получения IP-адреса и токена описан немного выше, в 4 пункте.
  • Теперь нам необходимо скачать win-mirobo-1.1.0-min  на компьютер и распаковать архив
  • Открыть блокнотом файл win-mirobo.ini и ввести свой IP-адрес и токен, обязательно сохраняем файл после изменения.
вводим ip и токен в win mirobo.ini
Вводим свой ip адрес и токен в файл win mirobo.ini
  • Скачивание необходимый голосовой пакет и помещаем его в папку voicepacks. Голосовой пакет может быть, как в формате .pkg так и папка с файлами в формате wav (по умолчанию в папке лежит официальный русский голосовой пакет).
  • Запускаем файл win-mirobo.bat
  • Если все сделали правильно, то увидим на экране под пунктом два надпись Flash voice package, для ее выбора нам необходимо ввести с клавиатуры цифру 2 и нажать на enter
Для прошивки голосового пакета выбираем второй пункт
  • Далее у нас должны отобразиться доступные голосовые пакеты, те которые вы поместили в папку voicepacks, каждый будет под определенным номером, поэтому вводим с клавиатуры необходимый номер и нажимаем на кнопку enter
Выбираем голосовой пакет
  • Ждем около минуты, пока установится голосовой пакет.
Дожидаемся окончания установки голосового пакета
  • Установка голосового пакета завершена.

Хочу подвести небольшой итог, сегодня мы с Вами рассмотрели несколько различных способов по установке голосового пакета на робот пылесос от фирмы Xiaomi, как видим установить голосовой пакет очень легко, с этим справится даже не подготовленный пользователь. В статье старался все подробно описать и показать на скриншотах, все выше описанные способы были протестировать лично мной, всё прошло без каких либо проблем, после проделанных манипуляций мой робот пылесос стал говорить на понятном мне языке. Попробовал много различных озвучек и сделал для себя небольшой вывод, что самая подходящая для меня озвучка — это официальная русская, конечно можно установить любую другую, существует множество разных, выбирать только Вам. Спасибо за внимание, кому не сложно прошу оценить мои старания с помощью нашего рейтинга на сайте и поделиться записью с друзьями в социальных сетях. Помогите стать нам немного популярнее. Если у Вас возникли вопросы задавайте их в комментариях. Надеюсь кому-то из Вас помог.

Голосовой пакет  «Кожаные ублюдки» от @bartwell с увеличенной громкостью.

Голосовой пакет «Максим» от Stepik

Голосовой пакет «Кузя» от cokkto

Голосовой пакет «Винни Пух»

Голосовой пакет «Языковой пакет с фразами из к/ф «Операция Ы», «Иван Васильевич», «Джентльмены удачи»»

Голосовой пакет «Дроид BB-8 из Star Wars»

Украинский официальный голосовой пакет с нормализацией и лёгкой компрессией, автор ArgedarrI

Голосовой пакет для Xiaomi Mi Robot Vacuum Cleaner 1S

Для Xiaomi Mi robot vacuum cleaner 1s существует только один официальный русский голосовой пакет, скачать его можно по ссылке ниже. Голосовые пакеты от первого поколения не подходят. Установка производится точно также, как описано в посте выше. Перед установкой не забывайте извлечь файл из архива.

Русский официальный голосовой пакет для Xiaomi mi robot vaccum cleaner 1s

Up. Статья обновлена 01.06.2020

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1

(35 голосов, в среднем: 4.4 из 5)

Mostalk

In template:
Use miiocli device --ip <ip address> --token <token>.

But it’s gives an error:
Error: Missing command.

Correct comand:
Use miiocli device --ip <ip address> --token <token> info.

KrX3D

skymkmk

This issue is translated by DeepL from Chinese.

Describe the bug

When I try to control cuco.plug.v3 using this project, the following error is thrown:

pydantic.error_wrappers.ValidationError: 5 validation errors for DeviceModel
services -> 3 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 3 -> properties -> 1 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 12 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 12 -> properties -> 1 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 13 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)

I’ve never used pydantic, so I googled and found that this thing seems to include the ability to validate schema, so I tried removing all the gatt-access fields from the cache and after that it was back to normal and I could control my device normally.

Version information (please complete the following information):

  • OS: Windows 11 22H2 and Rocky Linux 8.7
  • python-miio: 0.6.0.dev0

Device information:

  • Model: cuco.plug.v3
  • Hardware version: ESP32C3
  • Firmware version: 1.0.6

To Reproduce

Steps to reproduce the behavior:

All commands and api that use genericmiot.

Expected behavior

No exception are thrown.

Console output

ERROR:miio.click_common:Exception: 5 validation errors for DeviceModel
services -> 3 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 3 -> properties -> 1 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 12 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 12 -> properties -> 1 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 13 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)
Traceback (most recent call last):
  File "D:projectsremote-boot.venvLibsite-packagesmiioclick_common.py", line 54, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesclickcore.py", line 1055, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesclickcore.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesclickcore.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesclickcore.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesclickcore.py", line 760, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesmiioclick_common.py", line 314, in wrap
    result_msg = result_msg_fmt(**kwargs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesmiiodevice.py", line 45, in _info_output
    dev = DeviceFactory.create(result.ip_address, result.token, force_generic_miot=True)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesmiiodevicefactory.py", line 101, in create
    dev.info()
  File "D:projectsremote-boot.venvLibsite-packagesmiioclick_common.py", line 184, in _wrap
    self._fetch_info()
  File "D:projectsremote-boot.venvLibsite-packagesmiiointegrationsgenericmiotgenericmiot.py", line 344, in _fetch_info
    self.initialize_model()
  File "D:projectsremote-boot.venvLibsite-packagesmiiointegrationsgenericmiotgenericmiot.py", line 206, in initialize_model
    self._miot_model = miotcloud.get_device_model(self.model)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:projectsremote-boot.venvLibsite-packagesmiiomiot_cloud.py", line 66, in get_device_model
    return DeviceModel.parse_obj(spec)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "pydanticmain.py", line 527, in pydantic.main.BaseModel.parse_obj
  File "D:projectsremote-boot.venvLibsite-packagesmiiomiot_models.py", line 436, in __init__
    super().__init__(*args, **kwargs)
  File "pydanticmain.py", line 342, in pydantic.main.BaseModel.__init__
pydantic.error_wrappers.ValidationError: 5 validation errors for DeviceModel
services -> 3 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 3 -> properties -> 1 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 12 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 12 -> properties -> 1 -> gatt-access
  extra fields not permitted (type=value_error.extra)
services -> 13 -> properties -> 0 -> gatt-access
  extra fields not permitted (type=value_error.extra)

Aljutor

Is your feature request related to a problem? Please describe.
It is possible to have some type of release schedule for minor updates like bug fixes and new simple devices?

Describe the solution you’d like
A once in month minor release would be nice to have.
But I don’t trying to push you, and life sometimes hits hard, take your time.

Additional context
it’s 5 months from last public release. And there was same type of a problem already #1463

RichieRogers

Hi,
I’ve got a couple of Xiaomi G1 vacuums, which I can connect to via the python-miio CLI, but I can’t figure out how to use the API.
Even a basic bit of code from the docs:

from miio import DeviceFactory

dev = DeviceFactory.create("192.168.x.xxx", "my-token-here")
print(f"Status: {dev.status()}")

Returns the following:

Traceback (most recent call last):
  File "c:pythontestxiaomitest.py", line 2, in <module>
    from miio import DeviceFactory
  File "C:UsersUserAppDataRoamingPythonPython311site-packagesmiio__init__.py", line 12, in <module>
    from miio.device import Device, DeviceStatus  # isort: skip
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:UsersUserAppDataRoamingPythonPython311site-packagesmiiodevice.py", line 8, in <module>
    import click
ModuleNotFoundError: No module named 'click'

I’ve also had a look at #817, but that seems to be designed for HomeAssistant, so package names/locations don’t match up.

UPDATE:
Actually persevered and can get the model returned with this:

from miio.device import Device 
dev = Device("192.168.x.xxx", "my-token-here")
print(f"Status: {dev.model}")

Although that is on linux, Windows seems to still generate the errors above.
So, probably still need help/advice, but will also keep on prodding the code :)

Thanks,
Richie

rytilahti

It would be useful to allow creating device instances directly from the cloudinfo objects to make the onboarding simpler.
This could be done either by adding a new method to the cloudinfo class, or alternatively allow passing a cloudinfo object to devicefactory.

Spotted in #1717 (comment)

53l3cu5

Device information:

  • Name(s) of the device: Dreame D10Plus
  • Link: https://www.amazon.fr/gp/product/B09TWBQH53

Use miiocli device --ip <ip address> --token <token> info.

  • Model: dreame.vacuum.r2205
  • Hardware version: Linux
  • Firmware version: 4.1.8_1078

Additional context

  • In full charge and no activity:
    miiocli dreamevacuum —ip —token status

    WARNING:miio.device:Found an unsupported model ‘dreame.vacuum.r2205’ for class ‘DreameVacuum’. If this is working for you, please open an issue at https://github.com/rytilahti/python-miio/
    WARNING:miio.miot_device:Unable to find mapping for dreame.vacuum.r2205, falling back to dreame.vacuum.mc1808
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown ChargingStats (0)
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown model for cleaning mode (dreame.vacuum.r2205)
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown FaultStatus (100)
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown OperatingMode (None)
    Battery level: 13
    Brush life level: None
    Brush left time: None
    Charging state: None
    Cleaning mode: None
    Device fault: None
    Device status: Sweeping
    Filter left level: None
    Filter life level: None
    Life brush main: None
    Life brush side: None
    Life sieve: None
    Map view: None
    Operating mode: None
    Side cleaning brush left time: None
    Side cleaning brush life level: None
    Time zone: None
    Timer enabled: None
    Timer start time: None
    Timer stop time: None
    Voice package: None
    Volume: None
    Water flow: None
    Water box attached: None
    Cleaning time: None
    Cleaning area: None
    First clean time: None
    Total clean time: None
    Total clean times: None
    Total clean area: None

  • At 92% of charge and in cleaning mode:
    miiocli dreamevacuum —ip —token status

    WARNING:miio.device:Found an unsupported model ‘dreame.vacuum.r2205’ for class ‘DreameVacuum’. If this is working for you, please open an issue at https://github.com/rytilahti/python-miio/
    WARNING:miio.miot_device:Unable to find mapping for dreame.vacuum.r2205, falling back to dreame.vacuum.mc1808
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown ChargingStats (0)
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown model for cleaning mode (dreame.vacuum.r2205)
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown FaultStatus (92)
    ERROR:miio.integrations.vacuum.dreame.dreamevacuum_miot:Unknown OperatingMode (None)
    Battery level: 1
    Brush life level: None
    Brush left time: None
    Charging state: None
    Cleaning mode: None
    Device fault: None
    Device status: Idle
    Filter left level: None
    Filter life level: None
    Life brush main: None
    Life brush side: None
    Life sieve: None
    Map view: None
    Operating mode: None
    Side cleaning brush left time: None
    Side cleaning brush life level: None
    Time zone: None
    Timer enabled: None
    Timer start time: None
    Timer stop time: None
    Voice package: None
    Volume: None
    Water flow: None
    Water box attached: None
    Cleaning time: None
    Cleaning area: None
    First clean time: None
    Total clean time: None
    Total clean times: None
    Total clean area: None

Lazybone

Device information:

  • Name(s) of the device: Xiaomi WalkingPad A1 Pro
  • Link:

Use miiocli device --ip <ip address> --token <token>.

  • Model: ksmb.walkingpad.v1
  • Hardware version: MTK7697
  • Firmware version: 2.0.5

Additional context

rytilahti

Expose DeviceInfoUnavailableException directly through miio module, and check also that other exceptions are exposed properly.

Mostalk

Model: yeelink.light.colorb
Hardware version: esp8266
Firmware version: 2.0.8_0010

All features work correctly

WarleyGabriel

Hi guys, I’m new at this smart home world.

I would like to know how can I update my home assistant to use the git master from this repo instead of the last version 0.5.12?

Currently I’m getting on Home Assistant:

2023-02-01 01:32:52.825 WARNING (SyncWorker_1) [miio.device] Found an unsupported model 'dreame.vacuum.mc1808' for class 'RoborockVacuum'. If this is working for you, please open an issue at https://github.com/rytilahti/python-miio/
2023-02-01 01:33:08.875 ERROR (SyncWorker_1) [miio.miioprotocol] Got error when receiving: {'code': -9999, 'message': 'user ack timeout'}

I saw this issue which seems like the same problem.
I’m using this HA integration and I don’t know how can I update to master branch and see if it works.
image

jack5mikemotown

Found an unsupported model ‘roborock.vacuum.a01’ for class ‘RoborockVacuum’. If this is working for you, please open an issue.

This is the Roborock E4. Not sure if there’s any other information you’d like.

63OR63

Device information:

  • Name(s) of the device: Xiaomi Smart Air Purifier 4

  • Model: zhimi.airp.mp4

  • Hardware version: esp32

  • Firmware version: 2.2.1

Could not be used due to error:
Found an unsupported model ‘zhimi.airp.mp4’ for class ‘AirPurifierMiot’

rytilahti

Accessing choices_attribute of the enumsettingdescriptor may cause an exception.

DEBUG:miio.miioprotocol:192.168x.x:54321 >>: {'id': 207, 'method': 'get_multi_maps_list', 'params': []}
DEBUG:miio.miioprotocol:192.168x.x:54321 (ts: 2023-01-30 13:09:12, id: 207) << {'id': 207, 'result': 'unknown_method'}
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/tpr/code/python-miio/miio/device.py", line 349, in sensors
    self._initialize_descriptors()
  File "/home/tpr/code/python-miio/miio/device.py", line 236, in _initialize_descriptors
    self._settings = self._setting_descriptors_from_status(status)
  File "/home/tpr/code/python-miio/miio/device.py", line 201, in _setting_descriptors_from_status
    setting.choices = retrieve_choices_function()
  File "/home/tpr/code/python-miio/miio/integrations/roborock/vacuum/vacuum.py", line 388, in _map_enum
    maps = self.get_maps()
  File "/home/tpr/code/python-miio/miio/click_common.py", line 185, in _wrap
    return func(self, *args, **kwargs)
  File "/home/tpr/code/python-miio/miio/integrations/roborock/vacuum/vacuum.py", line 380, in get_maps
    self._maps = MapList(self.send("get_multi_maps_list")[0])
  File "/home/tpr/code/python-miio/miio/integrations/roborock/vacuum/vacuumcontainers.py", line 112, in __init__
    for map in self.data["map_info"]:
TypeError: string indices must be integers

Originally posted by @rytilahti in #1701 (comment)

g3n3star

Before submitting a new request, use the search to see if there is an existing issue for the device.

Device information:

  • Name(s) of the device: Mi Smart LED Ceiling Light 350mm
  • Link:

Use miiocli device --ip <ip address> --token <token> info.

  • Model: yeelink.light.ceil34
  • Hardware version: esp32
  • Firmware version: 2.1.7_0023

Additional context
If you know already about potential commands or any other useful information to add support for the device, please add that information here.

trackhacs

what must be done to reactivate this device?

#832

rytilahti

Write-only settings generate also setting descriptors with property names.
This is confusing as the property is not really available in the status container, causing KeyError on access.

Potential solutions:

  • Add access information to the settings descriptor
  • Set property to None and leave it for downstreams to check for that

rytilahti

This meta task will track the progress and tasks to do for the next major release, which aims to simplify the use of the library for downstream users and reorganize the organically grown code base to be more maintainable.

This issue will give an overview of the planned changes, which are discussed more in-depth under their corresponding issues linked below as they get written. This meta issue shall serve as a checklist for the changelog, and is open for discussions.


Repository structure

  • Motivation: all source files are currently stored in the main miio directory for historical reasons, making it messy.
  • Goal: by splitting each individual implementation (integration?) and files related to it (e.g., tests and some data files) will clean up the code base.

Tasks

  • Separate integrations and their tests to their own directories under miio/integrations/<name> or miio/integrations/<type of device>/<name>. #1115
  • #1696

«Device factory»

  • Motivation: there is currently no way to construct device instances just by knowing their host and the token, making it necessary for downstreams to import the classes implementing the support and initializing it separately based on model information (or simply supporting a single implementation, like done by homeassistant’s vacuum platform).
  • Goal: allow initializing device-derived objects by simply knowing their host and the token which simplifies downstream implementations.

Tasks

  • Add manifest files to integrations that describe supported models (miIO.info-based and mDNS entries) #1116
  • Add facilities to access information about supported devices, and initialize implementations by using only the host and the token #1117

Common APIs

  • Motivation: adding support for devices of the same device class (e.g., vacuums) is cumbersome as there is no well-defined API among the different implementations.
  • Goal: provide device-type based base classes to make adding support for new device integrations on downstream just a matter of upgrading the python-miio.

Tasks

  • Create base classes for individual device types where it makes sense to make it easier for downstreams to add support for a class of devices.
    • Need replaced partially with introspectable interfaces: #1495
  • Add model detection based on miIO.info to consolidate handling of device-specific differences inside a single integration. #1038
  • Add supported_features or similar feature flags to allow integrations specify which features is supported by the device model. This will allow moving these checks from downstream (homeassistant most prominently) to where this information belongs.
    • Need replaced partially with introspectable interfaces: #1495
  • Make available sensors introspectable (status class properties could be extended to allow defining metadata for available sensors). #1495
  • Make available actions introspectable by exposing @commands.

MiOT support

  • Motivation: all new devices are using miot instead of custom protocols to control devices, so it makes sense to add first class support to the library.
  • Goal: all miot supporting devices can be controlled as long as internet-connectivity is available to fetch the required schema file.

Tasks

  • Create generic miot integration #1581
  • Provide consolidated information (including descriptions, icons, etc.) for standard settings and actions using a yaml metadata file: #1618
  • Add support for actions with multiple input parameters (exposed as custom services in homeassistant?): #1663
  • Add support for write-only properties (exposed as custom services in homeassistant?): #1662
  • Clean up and deprecate old miot integrations that do not provide extra functionality compared to the generic interface

Other changes

  • Clean-up constructors to use an «options» container instead of relying on separate kwarg arguments for special cases. #1156
  • #1683
  • Consolidate out-of-range input values to raise standard exceptions (e.g., ValueError instead of custom exception types) #1558
  • Modify miiocli to save the «options» object much like mirobo does for sequence ids. This would fix the long-standing problems some users are having caused by the id reuse.

rytilahti

Move each integration to their own directory, containing the integration-specific implementation, data and test files.

This allows separate integrations to have their own data files stored without poluting the main package (see, e.g., #1094 for yeelight spec files), and make the integrations partially self-contained.
This also allows adding integration-specific, discoverable manifest files whose pros are discussed in another issue to be linked here.

Each integration should be stored under miio/integrations/<name> which can contain several source files including unit tests and any other data.

Status

  • Yeelight (#1160)

rytilahti

Понравилась статья? Поделить с друзьями:
  • Method get status error on socket receive xiaomi vacuum что делать
  • Method describe failed 451 error
  • Metatrader 5 tester agent authorization error
  • Metal gear solid v the phantom pain как изменить управление
  • Metal gear solid v the phantom pain glowstorm ошибка