Покупка Xiaomi MiWiFi mini и прошивка его в XRMWRT (Padavan) своими силами.

Тема в разделе "Проблемы наших компьютеров", создана пользователем seal, 16 дек 2015.

  1. seal

    seal Администраторы Команда форума

    Регистрация:
    19 апр 2006
    Сообщения:
    5.808
    Симпатии:
    5.411
    Хочу поделить опытом покупки и прошивки минироутера Xiaomi MiWiFi mini.

    [​IMG]

    Так получилось что стал я обладателем сего чудо девайса. я всегда относился с уважением к бренду xiaomi хотя никогда не пользовался их техникой. ребята в какой то степени новаторы. устройства отличаются качеством и невысокой ценой.

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

    Характеристики:
    Процессор MT7620A 580MHz;
    ROM: 16MB SPI Flash;
    ОЗУ: 128MB DDR2;
    Нет встроенного HDD (можно подключить по USB внешний);
    2.4 Ghz WiFi 2x2 (до 300 Мбит/сек);
    5 Ghz WiFi 2x2 (до 867 Мбит/сек);
    WAN (до 100 Мбит/сек);
    LAN х2 (до 100 Мбит/сек);
    Внешние двухдиапазонные ненаправленная антенны - 2 шт.

    Итак что в нем хорошего кроме цены в 30$:
    - это поддержка 802.11ac 5 Ghz WiFi 2x2 (до 867 Мбит/сек);

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

    Силами энтузиастов были собраны версии OpenWRT (PandoraBox) и XrmWRT (Padavan) для этого роутера.

    Так же есть допиленные до английского языка стоковые прошивки. Мне был интересен вариант XrmWRT (Padavan).

    Почему: (Сравнение прошивок)

    1. Стоковая прошивка:
    Плюсы:
    • Предустановлена и работает;
    • Имеет возможность управления через приложение на смартфон.
    Минусы:
    • Китайская и только китайская;
    • Нет поддержки USB модемов;
    • Нет нормальной поддержки L2TP;
    • Нет поддержки IGMP (IPTV);
    • Сильно нагружает процессор.

    2. OpenWRT (PandoraBox)
    Плюсы:
    • Гибкая и при наличии терпения может быть допилена с помощью установки дополнительных пакетов.
    Минусы:
    • Требует получения доступа по SSH, и некоторой настройки.

    3. XRMWRT (Padavan)
    Плюсы:
    • Прекрасно работает и легко настраивается;
    • Отличная скорость и стабильность;
    • Всё идёт сразу в комплекте;
    • Изначально на русском.
    Минусы:
    • Не распространяется в открытом доступе, требует самостоятельной сборки;
    • Требует получения доступа по SSH.

    Не знаю почему Padavan нельзя распространять в собранном виде, но будем уважать авторов и выполнять их требования. Потому прошивку соберем самостоятельно.

    Описанные ниже действия требуют базовых навыков и опыта работы с ос Linux. В частости я использовал Ubuntu 14.04

    Я не буду описывать и рассказывать что такое vmware, где его брать, как с ним работать и что это такое. Вы должны знать это сами. Может вы линуксоид и вам вообще не нужна виртуальная машина…

    Итак, виртуальная машина готова. Заходим в консоль.

    вот моя версия убунты.

    vvs@vpn:~$
    vvs@vpn:~$ uname -ri
    3.13.0-24-generic x86_64
    vvs@vpn:~$
    vvs@vpn:~$
    vvs@vpn:~$ lsb_release -a
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description: Ubuntu 14.04.3 LTS
    Release: 14.04
    Codename: trusty
    vvs@vpn:~$

    доставляем пакеты с зависимостями необходимыми для сборки прошивки.

    sudo apt-get -y --force-yes install build-essential gawk texinfo pkg-config gettext automake libtool bison flex zlib1g-dev libgmp3-dev libmpfr-dev libmpc-dev git zip sshpass mc

    ждем пока все поставится.

    Пока не грех почитать доки на гитлабе где живут исходники Падавана.

    https://gitlab.com/Track/xrmwrt/wikis/home

    но можно сразу перейти к сборке.

    Устанавливаем репозиторий.

    git clone https://gitlab.com/Track/xrmwrt.git

    потом заходим в свою дир /opt и делаем в ней симлинк

    vvs@vpn:/opt$
    vvs@vpn:/opt$ ls -la
    total 12
    drwxr-xr-x 3 root root 4096 Dec 11 14:10 .
    drwxr-xr-x 22 root root 4096 Jul 6 09:50 ..
    lrwxrwxrwx 1 root root 17 Dec 11 14:10 xrmwrt -> /home/vvs/xrmwrt/
    vvs@vpn:/opt$

    только вы ж понимаете что vvs это мой home. у вас он будет свой.

    далее
    cd ~/xrmwrt/trunk
    и если надо изучаем и меняем что либо в конфиге прошивки.

    nano .config

    в частности надо убедиться что параметр CONFIG_TOOLCHAIN_DIR указывает на правильный путь к тулчейну который мы сейчас будем собирать.
    у меня он

    CONFIG_TOOLCHAIN_DIR=/opt/xrmwrt/toolchain-mipsel

    (вспоминаем про симлик который сделали выше)

    собираем тулчейн

    cd ~/xrmwrt/toolchain-mipsel
    ./build_toolchain


    поехали. как долго будет идти этот процесс зависит только от русурса и мощности вашей виртаулки.

    будем надеяться что все прошло успешно.

    теперь переходим к сборке самой прошивки.

    Для начала сборки прошивки выполните скрипт build_firmware

    cd ~/xrmwrt
    ./build_firmware


    процесс долгий. сразу предупреждаю.Viam supervadet vadens.

    В случае успеха получаем что то похожее на такое:

    LZMA 4.43 Copyright (c) 1999-2006 Igor Pavlov 2006-06-04
    # Padded Kernel Image Size
    1171280 /home/vvs/xrmwrt/trunk/images/zImage.lzma
    # Original RootFs Size
    21120937 /home/vvs/xrmwrt/trunk/romfs
    # Compressed RootFs Size
    6574444 /home/vvs/xrmwrt/trunk/images/ramdisk
    # Padded Kernel Image + Compressed Rootfs Size
    7745724 /home/vvs/xrmwrt/trunk/images/zImage.lzma
    # !!! Please make sure that Padded Kernel Image + Compressed Rootfs size
    # can't bigger than: flash size - storage partition size -
    # uboot_hdr(64B) - mtd0(192KiB) - mtd1(64KiB) - mtd2(64KiB) !!!
    #===========================================
    # Pack final image and write headers
    # For No padded, need write kernel size in image header
    # to correct mount partition in mtd drivers address
    img file: /home/vvs/xrmwrt/trunk/images/MI-MINI_3.4.3.9-097.trx
    Product ID: MI-MINI
    Created: Fri Dec 11 16:48:01 2015
    Image Type: MIPS Linux Kernel Image (lzma compressed)
    Data Size: 7745724 Bytes = 7564.18 kB = 7.39 MB
    Load Address: 0x80000000
    Entry Point: 0x802AA6C0
    Kernel Size: 0x0011DF90
    Kernel Ver.: 3.4
    FS Ver.: 3.9
    make[2]: Leaving directory `/home/vvs/xrmwrt/trunk/vendors/Ralink/MT7620'
    make[1]: Leaving directory `/home/vvs/xrmwrt/trunk/vendors'
    vvs@vpn:~/xrmwrt/trunk$
    vvs@vpn:~/xrmwrt/trun

    vvs@vpn:~/xrmwrt/trunk/images$ ls -l
    total 24908
    -rw-rw-r-- 1 vvs vvs 7745788 Dec 11 16:48 MI-MINI_3.4.3.9-097.trx
    -rw-r--r-- 1 vvs vvs 6574444 Dec 11 16:47 ramdisk
    -rwxrwxr-x 1 vvs vvs 3427460 Dec 11 16:47 zImage
    -rw-rw-r-- 1 vvs vvs 7745724 Dec 11 16:48 zImage.lzma
    vvs@vpn:~/xrmwrt/trunk/images$


    собственно MI-MINI_3.4.3.9-097.trx и есть та прошивка ради которой мы прошли весь этот долгий путь.

    Но и это далеко не все :)

    Теперь нам ее надо прошить в роутер, а для этого надо получить к нему доступ по ssh.

    Делается это тоже через одно место.

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

    Я выбрал версию miwifi_r1cm_all_ace8a_0.6.40.bin. Почему даже не знаю.

    Скачиваем это прошивку, переименовываем ее в miwifi.bin и записываем на флэшку предварительно отформатированную в FAT32. Сразу скажу что флэшку лучше всего использовать не большого объема.

    Выключаем роутер от сети, Вставляем флешку, зажимаем reset, чем-нибудь тонким;
    Включаем роутер, ждем пока лампочка спереди замигает, отпускаем reset, если загорелась красная лампочка:
    а) неверно выбрана прошивка,
    б) не верно выбрана флешка (лучше до 4Гб));
    Отдыхаем, пока не загорится синий цвет;

    Так. девелоперская прошивка прошита.

    Далее регистрируем аккаунт на сайте Xiaomi: http://account.xiaomi.com/

    Теперь наша задача привязать роутер к аккаунту.

    Я пользовался тулзой Xiaomi MiWiFi которая есть в Google маркете под андроид телефоны, есть в AppStore для IOS и на самом сайте Xiaomi для Windows и Mac OS. Это хрень нужна для управления и настройки устройствами Xiaomi по WIFI.

    подключаем роутер к интернету! подключаемся любой тулзой описанной выше через wifi роутера xiaomi! а не кого либо другого ! вводим ваш емейл и пароль для аккаунта xiаomi!


    [​IMG]

    теперь ваш роутер привязан к аккаунту! :) вот такой вот геморрой.

    После этого (через любой вайфай) зайти на страницу http://d.miwifi.com/rom/ssh, указав свой аккаунт Xiaomi к которому привязывали роутер;

    Скачать файл miwifi_ssh.bin и запомнить пароль для Root, записать файл на флешку желательно небольшого объёма, отформатированную в FAT32;

    прошиваем роутер способ описанным выше для девелоперской прошивки.

    дело сделано! теперь у вас есть роутер прошитый девелоперской прошивкой и доступ к нему по ssh.

    дело сделано. но это еще не все :) дальше будет еще веселей :)

    ставим себе на комп такие могучие штуки как putty и winscp (это если вы под виндой)

    используя winscp подключаемся к 192.168.1.1 с логином root и паролем что вы получили на сайте выше.

    копируем прошивку что мы собрали miwifi_r1cm_all_ace8a_0.6.40.bin на роутер в директорию /tmp

    используя putty заходим на роутер, и прошиваем прошивку :)

    mtd -r write /tmp/miwifi_r1cm_all_ace8a_0.6.40.bin firmware

    ждем пока прошивка запишется. процесс быстрый.
    и далее

    reboot

    [​IMG]

    (только командой ребут а не дерганием питания на роутере)

    вуаля!

    чистим кэш браузера! обязательно!

    В списке доступных wifi сетей появится две новые сетки ASUS и ASUS 5 Гц! это и есть ваш новый роутер!

    [​IMG]

    Пароль к роутеру по wifi - 0123456789

    Telnet / ssh - admin/admin


    Но для того чтоб получить telnet / ssh надо подключиться к роутеру по wifi, входим в админку роутера: Дополнительно => Администрирование => Сервисы => Терминальные сервисы => "Включить Telnet-сервер?" "Включить SSH-сервер?", включаем и применяем;

    вы думаете это все? ан нет :)

    Теперь необходимо отпатчить EEPROM нашей уже установленной прошивки :)

    Китайцы накосячили в EEPROM, из-за чего на прошивке XRMWRT было неправильное отображение RSSI. В версии начиная с билд 096 это исправлено, но осталась проблема с уровнем приSма сигнала с периферийных устройств из-за неправильной настройки коэффициента усиления.

    Заходим в PUTTY и подключаемся к роутеру по IP: 192.168.1.1 по протоколу Telnet, после входа он спросит логин и пароль вводим admin и пароль admin

    Делаем дамп mtd2 в бинарный файл

    cp /dev/mtd2 /tmp/mtd2.bin

    Запускаем WinSCP для того чтоб вынуть или запихнуть нужный файл в папку tmp: протокол – SCP, хост - 192.168.1.1, порт – 22, логин и пароль как указанно выше, скачиваем созданный ранее файл на компьютер;

    Обязательно делаем резервную копию где-нибудь на случай, если что-то пойдет не так и можно будет все вернуть назад;

    Патчим mtd2 через специально для вас созданный сервер http://mi.freize.org (оставляем второй способ, особой разницы нет, но люди говорят что так прием лучше), или если он вдруг не работает:

    Скачиваем отпаченный mtd2, переименовываем например в mtd2p.bin и тем же WinScp запихиваем его назад на роутер в путь /tmp

    используя putty заходим на роутер и зашиваем патченный файл

    mtd_write write /tmp/mtd2p.bin Factory

    перегружаем роутер

    reboot

    ВОТ ТЕПЕРЬ ВСЕ :) Радуемся тому что практически без геморроя за 30 баков вы получили отличную рабочую железяку :)

    Спасибо форуму 4Pda

    Ну и конечно же всем создателям XRMWRT (Padavan)

    Disclaimer!

    Хочу сразу предупредить, никто не несет никакой ответственности за то что вы убьете свою железяку. Никто кроме вас самих.

    Все вопросы в личку - особенно с просьбами дать готовую прошивку будут проигнорированы. Если есть вопросы - пишем в тему. Постараюсь помочь.
     

    Вложения:

    Последнее редактирование: 16 дек 2015
  2.  
  3. seal

    seal Администраторы Команда форума

    Регистрация:
    19 апр 2006
    Сообщения:
    5.808
    Симпатии:
    5.411
    сразу хочу написать в догонку. любителям купить все подешевле посвящается.

    есть такой чудный китайский интернет магазин как aliexpress на котором все можно купить дешевле. так вот - роутера дешевле чем 29 доллярей я на нем не находил.

    тут главное не проколоться.

    вот например полная версия xiaomi mini


    а вот так называемая Youth Version Xiaomi ! стоит 17 баков.

    разница в одном - тут нет USB разъема и 5G, будьте внимательны!

    а есть еще xiaomi nano version который тоже очень похож внешне на mini.

    одном словом будьте внимательны. сперва читайте а потом делайте свой выбор.
     
  4. metpas

    metpas Профи в Сат-ТВ

    Регистрация:
    7 окт 2013
    Сообщения:
    467
    Симпатии:
    40
    Оффтоп. Падаван - велик, но для Зюхеля я таки пользую кинопт...
     
  5. seal

    seal Администраторы Команда форума

    Регистрация:
    19 апр 2006
    Сообщения:
    5.808
    Симпатии:
    5.411
    простите темного, а что это ? :)
     
  6. metpas

    metpas Профи в Сат-ТВ

    Регистрация:
    7 окт 2013
    Сообщения:
    467
    Симпатии:
    40
    http://keenopt.ru/ Не знаю, возможно ли портировать сие на сабжевую балалайку. Хотя и гит, и репозитории у них есть. А Падавановские прошивки хороши для очень подготовленного юзера, ИМХО...
     
  7. seal

    seal Администраторы Команда форума

    Регистрация:
    19 апр 2006
    Сообщения:
    5.808
    Симпатии:
    5.411
    metpas, да че там портировать. падаван очень хорош. хотя для себя я бы ставил openwrt.
     
  8. metpas

    metpas Профи в Сат-ТВ

    Регистрация:
    7 окт 2013
    Сообщения:
    467
    Симпатии:
    40
    seal, suum cuique...
     

Поделиться этой страницей