Корзина
Предметов: 0

Разборка прошивки электросамоката Xiaomi M365

Форум / Электросамокаты Xiaomi / Разборка прошивки электросамоката Xiaomi M365
Форум / Электросамокаты Xiaomi / Разборка прошивки электросамоката Xiaomi M365
Укажите тэги для этой темы: аккумулятор аксессуары амортизация гидроизоляция запчасти кирпичи колеса модернизация мотор наблюдения новости отзывы поломки ремонт свет тормоза

Владимир Лаврулин
Рейтинг: 623
Член клуба
20 февраля 2017 в 14:38
Владимир Лаврулин : 20 февраля 2017 в 14:38
​​​Предлагаю здесь делиться информацией о прошивке и работе приложений для Xiaomi M365. 

Основная задача - сделать аппарат наиболее опциональным.
Чтобы ограничение максимальной скорости было опцией
Чтобы Zero-Start был опцией
​​Ну и т.д. и т.п. :)

Что сейчас есть:
1. История версий прош​​​ивки в txt:
https://electro.club/data/users/2193/files/Xiaomi/CNESCVersion.txt

2. Декомпилированный APK-файл приложения MiHome (одна из версией, распаковалась криво, но много познавательного кода имеется):
https://electro.club/data/users/2193/files/Xiaomi/MiHome_4.0.8_source_from_JADX.rar

1

nicomunet123
Рейтинг: 110
Член клуба
20 февраля 2017 в 22:02
nicomunet123 : 20 февраля 2017 в 22:02
Владимир, попобуйте посмотреть, куда MiHome лезет, когда ищет обновления. Это тоже будет полезно. 
0

Владимир Лаврулин
Рейтинг: 623
Член клуба
03 марта 2017 в 20:54
Владимир Лаврулин : 03 марта 2017 в 20:54
​Прошу прощения за такую задержку :) Никак не доходили руки поставить снифер на роутер.

В общем, лезет он на ​​58.83.160.17/app/home/latest_version
(домен api.io.mi.com)

Скрин во вложении.

Файл для Wireshark:​​​
https://electro.club/data/users/2193/files/Xiaomi/xiaomi-m365-check_firmware_ver.zip

Жду дальнейших инструкций :) Я понимаю, что лучше всего мне откатиться и перехватить все пакеты во время обновления. Но я пока не знаю как откатиться и чем это грозит :)​​
Вложения к сообщению
2

nicomunet123
Рейтинг: 110
Член клуба
03 марта 2017 в 23:32
nicomunet123 : 03 марта 2017 в 23:32
Не уверен я, что можно откатиться...

А пока я приблизительно понял, где запрос на сервер формируется в коде...​​
0

Владимир Лаврулин
Рейтинг: 623
Член клуба
04 марта 2017 в 8:50
Владимир Лаврулин : 04 марта 2017 в 8:50
[quote="nicomunet123"]
А пока я приблизительно понял, где запрос на сервер формируется в коде...​​[/quote]
Так поделитесь, пожалуйста :)
0

Владимир Лаврулин
Рейтинг: 623
Член клуба
07 марта 2017 в 13:52
Владимир Лаврулин : 07 марта 2017 в 13:52
​Откатиться у владельцев NineBot Mini получалось не просто, но получалось. Возможно, к самокату такой же метод подойдет:
http://forum.electricunicycle.org/topic/4257-how-to-downgrade-your-ninebot-xiaomi-nine-9-segway-mini-mini-pro-from-128-to-117-firmware/

Для этого требовалось обмануть приложение, направить на свой сервер и подсунуть любую прошивку под видом последней версии. Просто подняв DNS-сервер и заменив адрес. Все необходимое они собрали в один файл и инструкцию:
https://electro.club/data/users/2193/files/Xiaomi/9BDgrader.rar

И главное! Использовать версию приложения ДО 3.6.0
Приведенные там ссылки на старые версии не работают, постараюсь еще где-то найти.

Инструкцию выложу отдельно:​
https://electro.club/data/users/2193/files/Xiaomi/NineBot%20Mini%20Downgrade%20Readme.pdf​​

Проблема только в том, что самих прошивок нет :) И, кстати, на сайте ninebot.cn все старые прошивки трутся (или они поменяли адрес?). В общем, сейчас их там нет.

На всякий случай дублирую то, что удалось найти nicomunet123 на наш сервер, чтобы никуда не делось :) Но пытаться обновиться до этой версии я не рискну :)
https://electro.club/data/users/2193/files/Xiaomi/ESC_Driver_V1.0.4.zip
0

nicomunet123
Рейтинг: 110
Член клуба
07 марта 2017 в 21:17
nicomunet123 : 07 марта 2017 в 21:17
Ответ пользователю Владимир Лаврулин на это сообщение: (показать сообщение)
[цитата nicomunet123] Так поделитесь, пожалуйста :)
[quote="nicomunet123"]
А пока я приблизительно понял, где запрос на сервер формируется в коде...​​[/quote]
Так поделитесь, пожалуйста :)
​Новые все прошивки качаются с сайта Xiaomi. Ну я так понял.
Я просто вбил в поиске по коду строчки из WireShark'a...
Приблизительное место нашел, но потом что-то подзабыл об этом.
(http://electrotransport.ru/ussr/index.php?topic=43910.msg1029960#msg1029960)​​​​
0

OLEG
Рейтинг: 30
09 марта 2017 в 16:25
OLEG : 09 марта 2017 в 16:25
​​Найти Ninebot 3.5.1 не составило труда:
https://electro.club/data/users/2209/files/Ninebot351.rar

С процедурой даунгрейда тоже все понятно.​ Сложно будет разобрать, изменить и собрать прошивку в формате​​ bin. Как вы собираетесь это делать?
0

Владимир Лаврулин
Рейтинг: 623
Член клуба
09 марта 2017 в 16:54
Владимир Лаврулин : 09 марта 2017 в 16:54
Ответ пользователю OLEG на это сообщение: (показать сообщение)
​​Найти Ninebot 3.5.1 не составило труда: https://electro.club/data/users/2209/files/Ninebot351.rar С процедурой даунгрейда тоже все...
​​Найти Ninebot 3.5.1 не составило труда:
https://electro.club/data/users/2209/files/Ninebot351.rar

С процедурой даунгрейда тоже все понятно.​ Сложно будет разобрать, изменить и собрать прошивку в формате​​ bin. Как вы собираетесь это делать?
​Приветствую, OLEG! А мы вот ждем когда к этой затее присоединиться еще и хороший низкоуровневый программист :) У Вас, случайно, нет подобных навыков?

Ну и гугл нам в помощь, конечно...​​
0

OLEG
Рейтинг: 30
09 марта 2017 в 22:03
OLEG : 09 марта 2017 в 22:03
Нет, к сожалению я не по этой части.
0

Владимир Лаврулин
Рейтинг: 623
Член клуба
06 апреля 2017 в 10:22
Владимир Лаврулин : 06 апреля 2017 в 10:22
Ну вот с соседнего форума прилетели логи bluetooth обновления с 1.2.9 до 1.3.0

Снимались по этому методу:
http://stackoverflow.com/questions/23877761/sniffing-logging-your-own-android-bluetooth-traffic

Внутри два лога:
1. Соединение, обновление, отсоединение.
2. Соединение, отсоединение.

Файл копирую на наш диск для сохранности:
https://electro.club/data/users/2193/files/Xiaomi/xiaomi_bt_log.zip
1

lukaville
Рейтинг: 2
Гость
08 апреля 2017 в 0:34
lukaville : 08 апреля 2017 в 0:34
Отписался на этом форуме:
 http://electrotransport.ru/ussr/index.php?topic=42849.msg1058294#msg1058294

Там есть ссылка на прошивку 1.3.0 и на proof-of-concept Android приложение, которое может отправлять запросы на самокат.
2

Владимир Лаврулин
Рейтинг: 623
Член клуба
08 апреля 2017 в 9:23
Владимир Лаврулин : 08 апреля 2017 в 9:23
lukaville, благодарю! :)

Ну и опять-таки, поскольку на электротранспорте все что касается прошивки находится в 10-ти сообщениях и разнесено в сотнях страниц 3-х разных тем, то я продолжаю пытаться соединить все в одно целое в этой теме :)

Перехваченный файл обновления представляет собой ZIP-архив:
https://electro.club/data/users/2193/files/Xiaomi/xiaomi_m365_update_130.zip

Также автором было разработано приложение, которое собирает все возможные значения. Рабочее название "Mijia Scooter Bluetooth Protocol Reverse Engineering" :) Исходники любезно предоставлены общественности:
https://github.com/lukaville/mijia-scooter-reverse-engineering

Вот перехваченный дамп, в котором сверху выделен серийный номер, снизу текущий заряд батареи.
[img]https://electro.club/data/users/2193/files/Xiaomi/xiaomi_bluetooth_data.jpg[/img]https://electro.club/data/users/2193/files/Xiaomi/xiaomi_bluetooth_data.jpg

В целом проделана большая работа в этом направлении, автору однозначный респект! :)
2

Добавить сообщение


27 июля 2017 в 3:49
: 27 июля 2017 в 3:49

Почему я могу писать сообщения даже без регистрации?

Отправить

Вы сможете добавить изображения к сообщению после сохранения

ET-mini carbon
Электросамокат E-Micro one
Проколол переднее колесо, как быть?
Крепление для телефона на Xiaomi
Электросамокат CACTUS CS-ESCOOTER-S2
Провод от заднего крыла
Внимание!..
Рекуперации нет у этого электросамоката при пользовании ручным тормозом
)) То ли смех, то ли слёзы.. ((
Слабое место - крепление рулевой

Владимир Лаврулин139
Mister Big Joe88
gde70060
Deytor51
Alexander51

Cообщение на форуме от Arcady
Извиняюсь, не заметил вопрос: [цитата Владимир...
Комментарий к статье от oska
Замечательная статья, информативная и интересно...
Cообщение на форуме от Базз
Если поднять будет крутиться какое-то время... Если...
Cообщение на форуме от Leo
[цитата Юрий] Если камера протерлась, заклеивать ее...
Комментарий к статье от Чебуратор
Жаль, нельзя раскрыть карты до конца голосования, эх,...
Комментарий к статье от Кулибин
Да, какая то очень знакомая статья. )))
Комментарий к статье от ChpOk
И я :), хороший обзор спасибо. Но лайк не работает, хотя...
Cообщение на форуме от MirON
Разовый момент ценой в 10$ дешевле телефона однозначно.
Cообщение на форуме от Михаил
Спасибо...буду пробовать...
Cообщение на форуме от Чебуратор
Тогда меняйте по гарантии, прямо в магазине, но...
Еще