Instrukcja jest ogólna. Zerknij jak można sprawdzić jakiej nazwy pliku oczekuje Twoje pudełko: https://wiki.openwrt.org/toh/tp-link/tl … p_recovery
Pod windowsem możesz użyć wiresharka do tego. Ewentualnie możesz znaleźć w googlerce oczekiwaną nazwę pliku.

Mam jeszcze jeden pomysł. Jeśli masz w miarę nowy uboot, to możesz spróbować go oszukać za pomocą trybu recovery dostępnego w uboot i podać mu stary fw przez tftpd. Nie jestem pewien, czy masz recovery w uboot, czy nie, jednak wydaje mi się, że warto sprawdzić ten pomysł. Jak nie zadziała to konsola szeregowa albo programator.

Konsola szeregowa i z poziomu bootloadera wgrywasz fw po tftp. Ewentualnie wgraj fw opensource i potem wróć do starszego oryginalnego fw.

154

(36 odpowiedzi, napisanych Sprzęt / Hardware)

Dobrze widzieć, że działa.
Nie wiem jak inni, ale ja flashe kupiłem na aliexpressie.
----edit----
Jeśli chodzi o ram, to możesz kupić nówki kości z ali albo kupić moduł sodimm i wylutować.

155

(36 odpowiedzi, napisanych Sprzęt / Hardware)

Ok, wygląda na to, że wiesz co robisz. Tutaj masz partycje art z trzech urządzeń, które jakiś czas temu przerabiałem:
https://www.easypaste.org/file/s2QO1r5P/art.zip?lang=pl
2x mr3020 oraz wr741 v4

156

(36 odpowiedzi, napisanych Sprzęt / Hardware)

Mam nadzieję, że nie lutujesz i nie odlutowujesz w kółko flasha, tylko, że wgrywasz art przez tftp (uboot od tplinka) albo przez www (uboot kolegi pepe2k). Jesteś pewny, że w hex edytorze wstawiasz art pod odpowiedni offset? Dlatego pisałem, żebyś wystawił gdzieś swój wsad, aby szło do niego zajrzeć.

To jest wersja zwykła czy hilink? Co zwraca cat /proc/bus/usb/devices ?

---edit---

Ehh, Cezary mnie ubiegł.

158

(25 odpowiedzi, napisanych Inne)

Nic nie rozumiem z tego co napisałeś. Na kat. 5e, jeśli kabel jest nieuszkodzony, osiąga się po 1Gb/s (ok. 120MB/s)w każdą ze stron - zgodne ze standardem i sprawdzone wielokrotnie w rzeczywistości.

---edit---

Miałem na myśli to, że zmiana na kat. 6 Ci nie pomoże. Jednak zmiana na inny kabel (inny egzemplarz) może pomóc jeśli ten kabel jest uszkodzony. Jeśli na drugim kablu kat. 5e/6 nie wynegocjuje się link na 1Gb, to wina tkwi w urządzeniach dopiętych do tego kabla.

159

(36 odpowiedzi, napisanych Sprzęt / Hardware)

Co wypluwa konsola szeregowa? Wklej tutaj. Udostępnij wsad, to może będzie dało się coś wywróżyć.

axpersky napisał/a:

Jestem tylko młody i głupi, nic nie znaczący i denerwujący, to @gegu chciałeś napisać, czyż nie?

To Ty napisałeś.
Poprostu kręcisz, jak chorągiewka na wietrze. Czytając Twoje posty można odnieść wrażenie, że wyrażasz swoje zdanie poparte praktyką, a gdy ktoś się z nie zgodzi (nieważne czy słusznie), to zmieniasz front na przeciwny, powodując poruszenie wśród osób, które mogą mieć coś mądrego do powiedzenia.
Zamiast czytać i się uczyć od innych, którzy dzielą się swoją wiedzą (pepe2k, Cezar, autor tematu, itd.) i doświadczeniami (które kosztowały dużo czasu i nerwów), to wrzucasz autora wraz z jego pomysłem do szamba, bo żal mu (w Twoim mniemaniu) 10zł na kość flash. Zaraz potem stwierdzasz, że oszczędność to jest to co lubisz. Zdecyduj się.
Widzisz, niektórzy czerpią satysfakcję z grzebania w czymkolwiek, dla samego grzebania, żeby zobaczyć, czy się da. Autor tematu podał swój przepis na mały wsad z dużą funkcjonalnością, zachęcając jednocześnie do dzielenia się swoimi doświadczeniami przez innych. A jaki jest Twój wkład w dyskusję? Nie musisz mi odpowiadać, odpowiedz sobie.

axpersky napisał/a:

No w sumie wymiana to pójście na łatwiznę, a optymalizacja i oszczędność czasu i kasy, TO LUBIĘ!

Śledzę ten wątek i mnie już trafia. Chłopie pojęcia nie masz o tym, a strugasz eksperta i pociskasz ciemnotę.

162

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Aaa, ok. Dziękuję. Całe życie człowiek się uczy i umiera głupi smile To w takim razie powinno wystarczyć wrzucenie pustego miejsca (tak jak w 1.9/cc) i zaprogramować kostkę uzyskanym wsadem.

163

(71 odpowiedzi, napisanych Oprogramowanie / Software)

zigi napisał/a:

Pytanie okołowątkowe:

Wymiana 4M -> 16M w mr3420v1. Czy kopia partycji "firmware" z mniejszej kości (0x20000 - 0x3f0000) może zostać zapisana do większej kości (też pod adres 0x20000) i w ten sposób zachowam zmiany dokonane w ruterze?

Zasadniczo tak i nie smile Jeśli masz gargoyle 1.6 albo openwrt aa/bb to nic nie zyskasz wymieniając flash na większy i kopiując swój stary obraz dla 4MB, bo stare openwrt nie wykrywało rozmiaru flasha ( rozmiar był definiowany w źródłach). Dlatego w takim przypadku musisz zrobić kopię całego obszaru 4MB i wgrać do większej kości ( w kolejności: mtd0, mtd5 i mtd4), jednak wtedy dalej będziesz korzystał tylko z 4MB. Jeśli chcesz przenieść swoje ustawienia z i mieć większy flash, to zrób backup ustawień z poziomu systemu. Przygotuj kostkę z czystym obrazem 1.6 dla 16MB flash (osobny obraz dla routerów z 16MB) i po uruchomieniu routera przywróć ustawienia z backupu. Nie trenowałem tego, ale wydaje mi się, że powinno zadziałać w ten sposób (ewentualnie można podmienić ręcznie pliku z backupu w nowym systemie). W gargoyle 1.9/openwrt cc nie ma tego problemu. Trzeba tylko wkleić puste miejsce pomiędzy partycję mtd3, a mtd4 i zadbać o to, żeby partycja mtd4 znalazła się dokladnie w ostatnich 64KB nowego flasha.
Cezary popraw mnie jeśli coś przekręciłem, ale z tego co pamiętam, to dopiero od openwrt cc jest zrobione tak, że system oczekuje arta na samym końcu flasha (niezależnie od wielkości flasha) i w trakcie pierwszego uruchomienia zaklada file system overlaya na cały dostępnym/wolnym miejscu, aż do napotkania art.

164

(71 odpowiedzi, napisanych Oprogramowanie / Software)

robo1973 napisał/a:

Przeanalizowałem flash i tak
od 00000 do 1FFF0 znajduje się uboot 128 KB /131 072 bajtów/

uboot jest od 0x00000 do 0x1FFFF

od 20000 do 7EFFFF soft 8000 KB /8192000 bajtów/

to się zgadza

od 7f0000 do 7FFFF0 jest ART ostatnie 64 KB  /65536 bajtów/

art jest od 0x7F0000 do 0x800000

Teraz jakbym chciał zmienić na 16 MB

To od jakiego adresu wpisać ART ?
Jaki będzie adres ostatniej komórki ?

Dokładnie tak, jak napisał Cezary.

Widzę, że chyba nie bardzo kumasz, jak przeliczać adres/rozmiar w hex, więc użyj kalkulatora dokładanego gratis do każdego windowsa.
Z tego co pamiętam, to można go przełączyć na tryb programisty i korzystać z konwersji hex do dzięsiętnych.
Obliczenia rozmiaru wykonujesz w bajtach, a potem przełączasz się do hex i gotowe. W drugą stronę też to działa.
Pobaw się na początek przeliczeniem rozmiaru/adresu dla uboota, a potem, dla zbudowanego obrazu 8MB i wtedy zobaczysz zależność pomiędzy rozmiarem poszczególnych partycji i ich offsetem.

165

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Użyłem obrazu 8-16MB, a on zawiera więcej programów/driverów i stąd zajmuje więcej miejsca niż podstawowy obraz dla flasha 4MB. Zobacz sobie rozmiar plików, które łączyłem. Uzyskałeś tyle miejsca ile miał pusty plik zawierający same wartości ff (czyli NORowe zera). Jak chcesz więcej miejsca we flashu, to wgraj obraz dla 4MB  (przez sysupgrade) albo wlutuj większego flasha.

---edit---

Te wolne miejsce raportowane przez konsole, to rozmiar overlaya, czyli tak naprawdę ilość bajtów przeznaczonych na zmiany podstawowej warstwy systemu.

166

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Nie ma problemu.

Teraz ja mam pytanko, a nawet dwa do wszystkich, którzy mają wiedzę na temat uboot.
Pierwsze pytanko dotyczy modelu routera. Zauważyłem, że nie wszystkie routery mają tę informację w uboocie - uboot od robo1973 nie zawiera tej informacji oraz dwie sztuki wr1043nd v1 (v1.7 i v1.8), które wpadły w moje ręce też nie posiadały tej informacji. Pozostałe modele, w których grzebałem (kilka wr740n, wr741n, wr841n, wdr3600, wdr4300 i cała masa mr3020), posiadały zapisany model w drugiej połówce uboota. Mój wr1043nd v1.10 posiadał tę informację. Co jest grane? Czy ktoś już w nich grzebał, czy może we wczesnych wersjach fw, ta informacja nie była umieszczana przez tplinka?

Druga sprawa dotyczy uboot robo1973. Jeśli potraktować uboota poleceniem strings, to wypluje między innymi coś takiego:

bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ar7240-nor0:256k(u-boot),64k(u-boot-env),2752k(rootfs),896k(uImage),64k(NVRAM),64k(ART) REVISIONID

Z czego można by podejrzewać, że uboot ma większy rozmiar niż 128KB.
To samo dla wr1043nd v1.8

bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ar9100-nor0:128k(u-boot),1024k(kernel),4096k(rootfs),64k(art)

Oczywiście sprawdziłem w oryginalnym wsadzie dostarczonym przez robo, że za 128KB znajduje się ciąg

01 00 00 00 4F 70 65 6E 57 72 74

czyli znacznik początku i string OpenWrt, więc uboot ma 128KB i ani bajta więcej.

Od razu dodam, że wiedza ta nie jest mi niezbędna do dalszego życia, ale raczej wolę wiedzieć niż nie wiedzieć smile

167

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Twój wsad: https://megawrzuta.pl/download/59369bf4 … 2aab7.html
md5sum:

30eb2441f8681324fe18b824146bd49e  wsad_8MB.bin

A teraz czary dla potomnych, wykonywane na linuxie.
Generowanie pustego pliku. Rozmiar liczymy: 8388608 - 6684676 - 131072 - 65536 = 1507324

gegu@gegu-laptop:~/Pobrane/robo/flash_Robo$ for i in `seq 1507324`;do echo -en \\xff >> ./plik_ff.bin ; done

Sprawdzamy zawartość i rozmiar

gegu@gegu-laptop:~/Pobrane/robo/flash_Robo$ hexdump plik_ff.bin 
0000000 ffff ffff ffff ffff ffff ffff ffff ffff
*
016fffc
gegu@gegu-laptop:~/Pobrane/robo/flash_Robo$ la
razem 12496
drwxr-xr-x 2 gegu gegu    4096 lut  6 19:40 .
drwxr-xr-x 3 gegu gegu      44 lut  6 19:16 ..
-rw-r--r-- 1 gegu gegu   65536 lut  5 18:29 art.bin
-rw-r--r-- 1 gegu gegu 6684676 lut  6 19:31 gargoyle-1.6.2.2-ar71xx-tl-mr3420-v1-8M-16M-squashfs-sysupgrade.bin
-rw-r--r-- 1 gegu gegu 4194304 lut  5 19:07 odczyt_flash_4 MB
-rw-r--r-- 1 gegu gegu 1507324 lut  6 19:40 plik_ff.bin
-rw-r--r-- 1 gegu gegu  131072 lut  5 18:29 uboot.bin

Kleimy wszystko w całość i sprawdzamy rozmiar

gegu@gegu-laptop:~/Pobrane/robo/flash_Robo$ cat ./uboot.bin ./gargoyle-1.6.2.2-ar71xx-tl-mr3420-v1-8M-16M-squashfs-sysupgrade.bin ./plik_ff.bin ./art.bin >> ./wsad_8MB.bin
gegu@gegu-laptop:~/Pobrane/robo/flash_Robo$ la
razem 20688
drwxr-xr-x 2 gegu gegu    4096 lut  6 19:41 .
drwxr-xr-x 3 gegu gegu      44 lut  6 19:16 ..
-rw-r--r-- 1 gegu gegu   65536 lut  5 18:29 art.bin
-rw-r--r-- 1 gegu gegu 6684676 lut  6 19:31 gargoyle-1.6.2.2-ar71xx-tl-mr3420-v1-8M-16M-squashfs-sysupgrade.bin
-rw-r--r-- 1 gegu gegu 4194304 lut  5 19:07 odczyt_flash_4 MB
-rw-r--r-- 1 gegu gegu 1507324 lut  6 19:40 plik_ff.bin
-rw-r--r-- 1 gegu gegu  131072 lut  5 18:29 uboot.bin
-rw-r--r-- 1 gegu gegu 8388608 lut  6 19:41 wsad_8MB.bin
gegu@gegu-laptop:~/Pobrane/robo/flash_Robo$ md5sum wsad_8MB.bin >> wsad_8MB.bin.md5sum
gegu@gegu-laptop:~/Pobrane/robo/flash_Robo$ cat wsad_8MB.bin.md5sum 
30eb2441f8681324fe18b824146bd49e  wsad_8MB.bin

---edit---
Przepraszam za zwłokę, ale teraz jest czas kompania i kolacji małych szkodników smile

168

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Zaraz do tego zajrzę.

Nie na 1042nd, na to nie ma alternatywy, bo tam jest soc realteka, jeśli dobrze pamiętam.
Jakby drugi router był na czymś alternatywnym, co daje kontrolę nad vlanami, to bez problemu dało by się to zrobić

170

(71 odpowiedzi, napisanych Oprogramowanie / Software)

robo1973 napisał/a:

Nadpisałem art od 7d0000

Źle. Art ma się znajdować na offsecie 7f0000.

Jak chcesz pomocy przy sklejaniu, to podaj rozmiar obrazu gargoyle w bajtach, a  nie kilobajtach albo megabajtach.

---edit---
7d0000 to rozmiar partycji firmware dla kości 8MB.

---edit2---
A i wy*eb ten hex edytor. Nie używaj tego, bo tylko komplikujesz sobie prostą robotę. Tak jak pisałem użyj copy z command line.

171

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Jak najbardziej zadziała, tylko żeby gargoyle 1.9 /openwrt CC zobaczył wolne miejsce, to po uruchomieniu systemu na nowej kości musisz przywrócić ustawienia fabryczne (już nie pamiętam dokładnie, ale wydaje mi się, że tak to działa, że wtedy file system jest tworzony na wolnej przestrzeni - poprawcie mnie jeśli się mylę). Co do sklejania plików pod windowsem, to można użyć "copy /B". Całą resztę już Ci podpowiedział pepe2k.

172

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Nie!
Uboot jest na offsecie 0 i zajmuje 0x20000 bajtów w hex (128KB), potem przychodzi fw i zaczyna się na offsecie 0x20000 ciągnie się do 0x7f0000 (rozmiar 8192000/0x7d0000 bajtów) w przypadku flasha 8MB, a następnie na samym końcu jest art, aż do 0x80000

---edit---
To odpowiedź na post kolegi robo

173

(71 odpowiedzi, napisanych Oprogramowanie / Software)

To chyba to. Dziękuję jeszcze raz smile

174

(71 odpowiedzi, napisanych Oprogramowanie / Software)

Ooo, super. Dzięki za info.

---edit---

To jeszcze mam pytanko  odnośnie 1043nd v1. Kiedyś, ktoś (wybaczcie, już nie pamiętam kto) portował Twój kod pod v1 i pisał na forum (innym, nie eko), że zrobił pull requesta do twojego repo. Nawet zamieścił skompilowaną wersję, ale jak kiedyś ją sprawdzałem to była niekompletna, znaczy się nie było network konsole i chyba httpd. I teraz pytanie czy nic z tego nie będzie? Jakie są losy tego kodu?

---edit2---
A tak poza tym, to świetna robota z tym ubootem. Dzięki.

Użyj obrazu z wr710n powinno zadziałać. Na mr3020 z większym flashem działa.