1

Temat: xiaomi mi3rg & breed & powrót do openwrt

Koledzy czy zablokowałem sobie możliwość wgrania openwrt przez wgranie Breed?

Jak kupiłem ww router to wg instrukcji tu z forum wgrałem Lede od Cezarego.
Jakiś czas router poleżał i ostatnio zabrałem się za niego ponownie.
Najpierw wgrałem Breed - od tego momentu nie umiem wgrać openWrt.
1. Próbowałem z połączeniem plików wynikowych wg znalezionych tu na forum opisów - firmware się nie uruchamia, wraca do breed.
2. Wgranie prometeus udaje się - wygląda że działa ok
3. Wgranie OFW udaje się - wygląda OK
4. Chciałem na oryginalnym firmware z odblokowanym (w Breed SSH) wgrać jak kiedyś openWRT - tu jest problem:
Podanie hasła które mam wygenerowane i użytkownika root zwraca mi informacje że jest nieprawidłowe.
No to próbowałem wgrać mój miwifi_ssh.bin które kiedyś użyłem ale:
skoro mam Breed'a to mogę sobie trzymać reset z tyłu włączać zasilanie i czekać na bursztynową diodę - tylko że tu uruchamia mi się Breed.
z poziomu Breed nie da się wgrać miwifi_ssh - więc stanąłem.

Jakieś rady?

2

Odp: xiaomi mi3rg & breed & powrót do openwrt

Masz breeda, wgraj prometeusa. On ma ssh? Jeżeli tak to masz dostęp do partycji, więc wgraj mu pliki we flash.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3 (edytowany przez IceG 2019-07-14 23:01:03)

Odp: xiaomi mi3rg & breed & powrót do openwrt

Kiedyś w sieci natrafiłem na coś takiego.. ale jeszcze nie miałem okazji osobiście testować czy działa.. możesz spróbować czy poleci opcja instalacji Breed --> OpenWrt.

OpenWRT-v18.06.1-MiR3G-ForBreed_Full.bin
Hasło:1234567890

Używasz moich pakietów/obrazów z github?
Chcesz abym dalej je rozwijał i tworzył nowe?
Postaw kawę

4 (edytowany przez spamsool 2019-03-29 13:30:02)

Odp: xiaomi mi3rg & breed & powrót do openwrt

Nie wiem jak to jest w przypadku Xiaomi r3g, ale na swoim Lenovo D-Team Newifi D2 (Newifi3) na mtk7621 normalnie wgrywam OpenWrt pobrany plik sysupgrade od Cezarego przez Breed bezpośrednio, bez żadnych modyfikacji i działa z marszu od razu po wgraniu. W r3g jest jakoś inaczej?

5

Odp: xiaomi mi3rg & breed & powrót do openwrt

Kolego,

Z breed spokojnie to zrobisz. SSL aktywujesz w ustawieniach breeda zmieniając 0 na 1, nie potrzebujesz hasła ani pliku.

6

Odp: xiaomi mi3rg & breed & powrót do openwrt

Po kolei.

@Cezary, chciałem jak poradziłeś wykonać komendy podane na openwrt.org, niestety nie udało mi się.
w prometeusu nie ma mtd jest mtd_write i nim próbowałem (na firmwarze które kiedyś miałem wgrane):
/tmp # mtd_write write luci-snapshot-r5892-2604504-ramips-mt7621-mir3g-squashfs-kernel1.bin kernel1
Could not open MTD device: kernel1

przy okazji takie wyniki daje cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00080000 00020000 "Bootloader"
mtd1: 00080000 00020000 "BootEnv"
mtd2: 00040000 00020000 "Factory"
mtd3: 00040000 00020000 "crash"
mtd4: 00040000 00020000 "crash_syslog"
mtd5: 00040000 00020000 "reserved0"
mtd6: 00400000 00020000 "kernel0"
mtd7: 00140000 00020000 "Kernel"
mtd8: 012c0000 00020000 "RootFS"
mtd9: 00100000 00020000 "Config"
mtd10: 00400000 00020000 "Storage"
mtd11: 06080000 00020000 "RWFS"
mtd12: 01400000 00020000 "Firmware_Stub"

@IceG, faktycznie wgrał się i uruchomiło lede-luci, ale nie dość że po rosyjsku to do tego z hasłem - i żadne które wpisałem nie zadziałało, (root:password, root:puste etc nie zadziałało). Może znasz hasło?

@spamsool, Breed nie przyjmuje pliku bo jest on spakowany.tar, w środku są pliki kernel i root - no nie wiem co bym miał z nich wgrywać i chyba wolę nie ryzykować.

@sebastian, chyba chodziło Ci o SSH?, mam odblokowane SSH, ale twojego posta nie zrozumiałem - za mało informacji mi podałeś.

@inne, próbowałem stary firmware od Cezarego połączać zgodnie z tym
https://eko.one.pl/forum/viewtopic.php? … 21#p198221

cp openwrt-snapshot-r5682-b153dbf-ramips-mt7621-mir3g-squashfs-kernel1.bin firmware.bin && truncate --size 4194304 firmware.bin && cat openwrt-snapshot-r5682-b153dbf-ramips-mt7621-mir3g-squashfs-rootfs0.bin >> firmware.bin

kończy się to bootloopem, ciekawe jak połączyli to rosjanie w tym co @IceG podał. Plik OpenWRT-v18.06.1-MiR3G-ForBreed_Full ma rozmiar 23,2MB a ten łączony wg komendy powyżej 9,87MB

Jakieś inne pomysły?

7

Odp: xiaomi mi3rg & breed & powrót do openwrt

Masz kernel0 i Kernel, nie kernel1

PS. To nie mój przepis.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

8

Odp: xiaomi mi3rg & breed & powrót do openwrt

Ok, czyli:
mtd_write write lede-ramips-mt7621-mir3g-squashfs-kernel1.bin Kernel
mtd_write write lede-ramips-mt7621-mir3g-squashfs-rootfs0.bin RootFS
będzie ok? i potem (jesli te komendy są w prometeusu):
nvram set flag_try_sys1_failed=1
nvram commit
reboot

9

Odp: xiaomi mi3rg & breed & powrót do openwrt

Nie mam pojęcia czy to zadziała dla prometeusza, nigdy go nie używałem na dłuższą metę. Po prostu sprawdź.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

10 (edytowany przez IceG 2019-03-30 16:40:18)

Odp: xiaomi mi3rg & breed & powrót do openwrt

r44 napisał/a:

Po kolei.


@IceG, faktycznie wgrał się i uruchomiło lede-luci, ale nie dość że po rosyjsku to do tego z hasłem - i żadne które wpisałem nie zadziałało, (root:password, root:puste etc nie zadziałało). Może znasz hasło?


kończy się to bootloopem, ciekawe jak połączyli to rosjanie w tym co @IceG podał. Plik OpenWRT-v18.06.1-MiR3G-ForBreed_Full ma rozmiar 23,2MB a ten łączony wg komendy powyżej 9,87MB

Jakieś inne pomysły?

Nie wiem co zrobili że im ten obraz się wczytuje. Dobrze że jest bo odpada zabawa Breed --> OFW --> Openwrt. Sam też nie wiedziałem że obraz woła hasło.. musiałem wyciągnąć je z wersji .tar bo nigdzie ani słowa w sieci.
Hasło:1234567890

Obraz ma też język angielski, ale wiadomo.. nie musisz wgrywać nowego obrazu przez GUI.

Używasz moich pakietów/obrazów z github?
Chcesz abym dalej je rozwijał i tworzył nowe?
Postaw kawę

11

Odp: xiaomi mi3rg & breed & powrót do openwrt

Oczywiście,  że miałem na myśli SSH, a nie SSL.

Chodziło mi tez o to, że parę godzin nad tym spędziłem i breed w niczym nie przeszkadza. Jak wiecie z jego poziomu przyjmuje firmware wygenerowane w prometheus, a gargoyle wgrywałem poprzez OFW. Parę takich kółek zrobiłem. Przypuszczam, że openwrt robi się tak samo ,jak gargoyle.
Piszecie dalej, ze ktoś coś z czymś połączył i działa. Nie miałem potrzeby sprawdzać, pewne bym tego nie robił, bo pośrednictwo OFW przy wgranym breed, to tylko dodatkowa minutka roboty.

12

Odp: xiaomi mi3rg & breed & powrót do openwrt

ok, przydało by się zmienić tytuł i dodać SOLVED.

no więc z prometeusa nie udało mi się wgrać openwrt, buło zawsze tak:
/tmp # mtd_write write luci-snapshot-r5892-2604504-ramips-mt7621-mir3g-squashfs-kernel1.bin Kernel
Could not open MTD device: Kernel

ale znalazłem na forum.openwrt.org wątki:
https://forum.openwrt.org/t/xiaomi-wifi … g/5377/886
https://forum.openwrt.org/t/patch-bumpi … r/29599/18
wersja skryptu pod linuksa działa:
--------------
#!/bin/bash

if [ $# -ne 2 ]; then

    echo Usage: $0 "kernel1.bin" "rootfs0.bin"

    exit 1

fi

kernel1="$1"

rootfs0="$2"

[ -f "$kernel1" ] || { echo "kernel1 file doesn't exist, aborting: $kernel1"; exit 1; }

[ -f "$rootfs0" ] || { echo "rootfs0 file doesn't exist, aborting: $rootfs0"; exit 1; }

[[ ${kernel1##*/} =~ .*kernel1\.bin ]] || echo "first parameter must be kernel1.bin, aborting"

[[ ${rootfs0##*/} =~ .*rootfs0\.bin ]] || echo "second parameter must be rootfs0.bin, aborting"

tmpfile=$(mktemp tmp.XXXXXX)

truncate -s 8M "$tmpfile"

dd if="$kernel1" of="$tmpfile" conv=nocreat,notrunc status=none oflag=seek_bytes seek=0

dd if="$kernel1" of="$tmpfile" conv=nocreat,notrunc status=none oflag=seek_bytes seek=4M

cat "$rootfs0" >> "$tmpfile"

mv "$tmpfile" openwrt_for_breed.bin

echo "openwrt_for_breed.bin successfully created."
--------------
tworzy plik wynikowy który można wgrać bezpośrednio z Breed. Działa!

@sebastian, ja miałem tego typu problem że nie umiałem wejść z OFW przez SSH na router, choć hasło miałem jak kiedyś 1 raz wgrywałem openwrt.

13

Odp: xiaomi mi3rg & breed & powrót do openwrt

Właśnie też znalazłem ten skrypt i miałem testować smile ale git że działa.

Używasz moich pakietów/obrazów z github?
Chcesz abym dalej je rozwijał i tworzył nowe?
Postaw kawę

14

Odp: xiaomi mi3rg & breed & powrót do openwrt

@IceG, dzięki, twój post mnie naprowadził na to rozwiązanie.

@Cezary, chcę przestawić teraz mój router by był zwykłym AP, zmieniłem konfigurację tak by:
- wyłączyć routing
- zrobić z routera zwykły AP
- nadać temu AP adres 192.168.1.2
- z WAN zrobić LAN i tym eth podłączyć neta z mojego głównego routera 192.168.1.1
config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fdf2:551a:zzzz::/48'

config interface 'lan'
        option type 'bridge'
        option ifname 'eth0.1 eth0.2'
        option proto 'static'
        option ipaddr '192.168.1.2'
        option dns '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config device 'lan_dev'
        option name 'eth0.1'
        option macaddr '50:64:2b:14:xx:xx'

config interface 'wan'
        option ifname 'eth0.2'
        option proto '50:64:2b:14:yy:yy'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option ports '2 3 6t'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option ports '1 6t'
-------------------------------
config wifi-device 'radio0'
        option type 'broadcom'
        option channel '11'
        option hwmode '11g'
        option path 'pci0000:00/0000:00:00.0/0000:01:00.0'
        option htmode 'HT20'
        option disabled '1'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'OpenWrt'
        option encryption 'none'

config wifi-device 'radio1'
        option type 'broadcom'
        option channel '36'
        option hwmode '11a'
        option path 'pci0000:00/0000:00:01.0/0000:02:00.0'
        option htmode 'VHT80'
        option disabled '1'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option ssid 'OpenWrt'
        option encryption 'none'

Niestety to nie zadziałało prawidłowo, wifi mi się wyłączyło, WAN niby się przestawił w LAN, ale do strony www routera już się nie dostałem od strony tego zmodyfikowanego WAN na LAN. I jakimś cudem SSH przestało działać.
Co ustawiłem źle?

Jeszcze jedno pytanie mi się nasuwa. Gdy router nie jest już routerem a AP to czy będzie mi działać AdBlock na tym teraz?
Chciałbym jeszcze uruchomić właśnie Adblocka na routerze i zacząłem się nad tym zastanawiać.

15

Odp: xiaomi mi3rg & breed & powrót do openwrt

Zapomniałeś wywalić sekcję wan, nie ustawiłeś gatewaya w network, nie włączyłeś wifi.

Adblock będzie działał jeżeli router wykorzystywany będzie jako serwer dns (nie dhcp).

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

16

Odp: xiaomi mi3rg & breed & powrót do openwrt

r44 napisał/a:

@sebastian, ja miałem tego typu problem że nie umiałem wejść z OFW przez SSH na router, choć hasło miałem jak kiedyś 1 raz wgrywałem openwrt.

Ja to robiłem tak, że wgrywałem rom developerski (2.25.124) przez breeda, w breedzie zaznaczałem SSH z 0 na 1 i wtedy na tym developerskim miałem dostęp do ssh bez pliku, nie pamiętam co było z hasłem.
Tak czy siak dostawałem się, być może przez hasło, które było do ssh. Wgrywałem wtedy pliki bezpośrdnio do /tmp, bez pendrive. Mam jeszcze jeden mir3g z padavanem, sprawdzę, jak to było.

Ale miło przeczytać, że jest lepszy sposób.

17

Odp: xiaomi mi3rg & breed & powrót do openwrt

tak zmodyfikowałem:

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fde1:c004:zzz1::/48'

config interface 'lan'
        option type 'bridge'
        option ifname 'eth0.1 eth0.2'
        option proto 'static'
        option ipaddr '192.168.1.2'
        option netmask '255.255.255.0'
        option dns '192.168.1.1'
        option gateway '192.168.1.1'

config device 'lan_dev'
        option name 'eth0.1'
        option macaddr '50:64:2b:14:x1:y1'

config device 'lan_dev'
        option name 'eth0.2'
        option macaddr '50:64:2b:14:x2:y2'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option ports '2 3 6t'

config switch_vlan
        option device 'switch0'
        option vlan '2'
        option ports '1 6t'

-----

config wifi-device 'radio0'
        #option type 'mac80211'
        option type 'broadcom'
        option channel '11'
        option hwmode '11g'
        option path 'pci0000:00/0000:00:00.0/0000:01:00.0'
        option htmode 'HT20'
        option country '00'
        option legacy_rates '1'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'mi2'
        option encryption 'psk2'
        option key 'haslo'

config wifi-device 'radio1'
        #option type 'mac80211'
        option type 'broadcom'
        option channel '36'
        option hwmode '11a'
        option path 'pci0000:00/0000:00:01.0/0000:02:00.0'
        option htmode 'VHT80'
        option country '00'
        option legacy_rates '1'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option ssid 'mi5'
        option encryption 'psk2'
    option key 'haslo'


W WIFI zmieniam tylko na option type 'broadcom' ?
w LAN napisałem teraz option gateway '192.168.1.1' z palca, będzie tak ok czy modyfikuje się to tak:
uci set network.lan.gateway=192.168.1.1 (jak to w poradniku napisałeś)
czy tą sekcjedołożyłem poprawnie? (skoro tak jest w LAN to chyba ten interface i mac trzeba tez dopisać?):
config device 'lan_dev'
        option name 'eth0.2'
        option macaddr '50:64:2b:14:x2:y2'

18

Odp: xiaomi mi3rg & breed & powrót do openwrt

Czemu robisz wszystko po swojemu? Miałeś wywalic sekcję wan a nie robić dodatkowy lan_dev.

config device 'lan_dev'
        option name 'eth0.2'
        option macaddr '50:64:2b:14:x2:y2'

Wywal sekcję i nie kombinuj.

option type 'broadcom' jest źle, trzeba było zostawić tak jak jest.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

19 (edytowany przez r44 2019-03-30 20:29:19)

Odp: xiaomi mi3rg & breed & powrót do openwrt

@Cezary
ok, czyli to zostaje:
config device 'lan_dev'
        option name 'eth0.1'
        option macaddr '50:64:2b:14:x1:y1'
a to rozumie jest niepotrzebne, czyli ten mac adres będzie po prostu nie używany tak?
config device 'lan_dev'
        option name 'eth0.2'
        option macaddr '50:64:2b:14:x2:y2'
a sam eth0.2 zostanie podpięty pod '50:64:2b:14:x1:y1'
?

no chyba że powinno to tak wyglądać:
config device 'lan_dev'
        option name 'eth0.1 eth0.2'
        option macaddr '50:64:2b:14:x1:y1'
?

20

Odp: xiaomi mi3rg & breed & powrót do openwrt

Ta sekcja jest po to żeby ustawić właściwy adres na interfejsie zgodny z oryginalnym softem. Ty masz go włączonego do lanu, więc tym się nie przejmuj.

I nie, nie powinno to tak wyglądać. Po prostu zapomnij o tej sekcji, nic nie rób, nic nie dodawaj, nic nie zmieniaj. Udawaj że jej nie ma.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

21

Odp: xiaomi mi3rg & breed & powrót do openwrt

r44 napisał/a:

ok, przydało by się zmienić tytuł i dodać SOLVED.

ale znalazłem na forum.openwrt.org wątki:
https://forum.openwrt.org/t/xiaomi-wifi … g/5377/886
https://forum.openwrt.org/t/patch-bumpi … r/29599/18
wersja skryptu pod linuksa działa:
--------------
#!/bin/bash

if [ $# -ne 2 ]; then

    echo Usage: $0 "kernel1.bin" "rootfs0.bin"

    exit 1

fi

kernel1="$1"

rootfs0="$2"

[ -f "$kernel1" ] || { echo "kernel1 file doesn't exist, aborting: $kernel1"; exit 1; }

[ -f "$rootfs0" ] || { echo "rootfs0 file doesn't exist, aborting: $rootfs0"; exit 1; }

[[ ${kernel1##*/} =~ .*kernel1\.bin ]] || echo "first parameter must be kernel1.bin, aborting"

[[ ${rootfs0##*/} =~ .*rootfs0\.bin ]] || echo "second parameter must be rootfs0.bin, aborting"

tmpfile=$(mktemp tmp.XXXXXX)

truncate -s 8M "$tmpfile"

dd if="$kernel1" of="$tmpfile" conv=nocreat,notrunc status=none oflag=seek_bytes seek=0

dd if="$kernel1" of="$tmpfile" conv=nocreat,notrunc status=none oflag=seek_bytes seek=4M

cat "$rootfs0" >> "$tmpfile"

mv "$tmpfile" openwrt_for_breed.bin

echo "openwrt_for_breed.bin successfully created."
--------------
tworzy plik wynikowy który można wgrać bezpośrednio z Breed. Działa!

r44 łączyłeś sobie obraz tym skryptem? U mnie nic nie tworzy, albo ja coś źle robię. Patrzyłem na pozostałe skrypty i chyba tylko któryś na windows "wypluwa" niby połączony obraz ale wgranie go kończy się bootloopem. neutral

Używasz moich pakietów/obrazów z github?
Chcesz abym dalej je rozwijał i tworzył nowe?
Postaw kawę

22

Odp: xiaomi mi3rg & breed & powrót do openwrt

@Cezary, dziękuję za pomoc. Działa to jak powinno.

@IceG, tak to ten skrypt i mi działa OK, skopiowałem go z mojego dysku.
Nie znam przyczyny dlaczego tobie nie działa to poprawnie.
Ja kompilowałem opnwrt na ten router bo chciałem mieć niby firmowe drivery do WIFI.
To dodałem: https://github.com/Nossiac/mtk-openwrt-feeds
Potem skompilowałem firmware, resztę problemów opisywałem tu na forum.

Jeśli chcesz na próby to nie ma problemu bym udostępnił to co skompilowałem i ten soft po połączeniu sktyptem jak i sam skrypt, możesz sobie wtedy próby porobić. Kompilacja jest robiona na VirtualBox i Ubuntu 16.04.

23

Odp: xiaomi mi3rg & breed & powrót do openwrt

Gdybym nie zadał w życiu miliona głupich pytań, to bym nie poznał miliona mądrych odpowiedzi dlatego zapytam tak : czy własnościowe sterowniki wifi można wkompilować do gargoyle?
Wiem, że nie będzie tak public, rozumiem to, ale trochę mnie kusi takie wyzwanie. Jak by to ogarnąć?

24

Odp: xiaomi mi3rg & breed & powrót do openwrt

@sebastian, możliwe że się da skoro gargolye jest oparty na openwrt (czy się mylę?), @Cezary da się?

Warto się zainteresować tym Gargolye? Koledzy którzy poprzesiadaliście się z openwrt na gargolye, ma on dużo więcej zalet? Jestem na etapie że chcę po testować ten router i w końcu zacząć go używać, jeśli mam się przesiąść na gargolye to najlepiej teraz.

25 (edytowany przez sebastan 2019-03-31 12:53:18)

Odp: xiaomi mi3rg & breed & powrót do openwrt

Czy ma dużo więcej zalet? Zależy kto ocenia, Cezary, czy inni, którzy ogarniają konsolę pewnie go nie potrzebują, ja za rzadko bym to robił by spamiętać komendy, mimo, że od wielu, wielu, wielu lat w czymś grzebię, a to router, a to tuner na linuxie (jeszcze od kart DVB skystar) Mimo to zwykłe partycjonowanie, to muszę korzystać ze ściągi.

Gargoyle używałem od 6-7 lat i jego zaleta to niezwykle user friendly rozwiązania. Mnie to pasuje. Choć nie ukrywam, że padavan też jest całkiem spoko.

Podsumowując - mnie to odpowiada, choć wiem, że to tylko interfejs do obsługi sprzętu, dla mnie jest wygodny i użyteczny. No i Cezary i ten portal jest jakością samą w sobie. Może decydującą nawet.