[Problem] Freetz auf F!B 4020 - Push_Firmware

AltesHaus97

Neuer User
Mitglied seit
28 Mai 2014
Beiträge
6
Punkte für Reaktionen
0
Punkte
1
Hallo zusammen,
ich möchte gerne auf einer F!B 4020 mit OS 6.83 Freetz aufspielen. Leider funktioniert das nur noch mit signierter Firmware. Ein älteres AVM Image habe ich im Netz nicht gefunden. (Hat jemand evtl. noch eine 6.50 Version für die 4020, die er mir bereitstellen könnte?) EDIT: Das Image habe ich jetzt bei AVM unter Downgrades gefunden.
Ich habe versucht mit Push_Firmware das erstellte Image auf die Box zu spielen, leider ohne Erfolg.
Folgende Ausgabe wird mir gegeben:

Code:
Debugging on (debug=1).
---> TYPE I
---> MEDIA FLSH
---> PASV
---> STOR mtd1
---> REBOOT
---> QUIT


Die F!B leuchtet auch zwischendrin auf der Info rot, welches dann nach dem Reboot in der Ausgabe wieder verschwindet und die Power Leuchte der Box leuchtet anschließend dauerhaft. Die Box ist im Anschluss allerdings nicht mehr ansprechbar.

Leider habe ich den debug=1 Befehl nicht lauffähig hingebracht.

Wie bekomme ich das Freetz Image am besten auf die Box?
Die eva-to-memory-Methode kann ich ja nicht anwenden, da die 4020 an eine Box mit NOR-Flash ist, oder?

//edit by stoney; [CODE] TAG [/CODE] gesetzt
 
Zuletzt bearbeitet von einem Moderator:
Ich habe versucht mit Push_Firmware das erstellte Image auf die Box zu spielen, leider ohne Erfolg.
nur damit wir sicher sind,
Du hast ein FB4020 FW 06.50 Image mit Freetz gemodded und dann mit push_firmware geflashed; dabei sind Probleme bei Booten aufgetreten ?
oder sind die Probleme beim Flashen der 6.50 Imagedatei per push_firmware aufgetreten ?
 
Vollzitat entfernt


Danke für den Link! Der ist jetzt dauerhaft gespeichert... :)

Vollzitat entfernt


Anhand deiner Beschreibung ist die zweite Alternative meine Vorgehensweise gewesen.
Ich bekomm in der Ausgabe nur die oberen Zeilen:
Code:
Debugging on (debug=1).
---> TYPE I
---> MEDIA FLSH
---> PASV
---> STOR mtd1
---> REBOOT
---> QUIT

Während des Flashens leuchtet die Info LED allerdings auch rot... Es sollte auch ein Reboot erfolgen, dieser erfolgt leider nicht. Wenn der Stecker raus und wieder reingesteckt wurde, bootet die Box allerdings nicht mehr. Müsste Sie nicht mehr als den MTD1 beschreiben?

//edit by stoney: [CODE] TAG [/CODE] gesetzt
 
Zuletzt bearbeitet von einem Moderator:
Schneide doch einfach mal das Recovery-Programm mit, wenn es irgendeine andere Version auf der Box installiert. Die "Festlegung" in EVA auf "mtd1" für das kombinierte MTD (für Kernel und Filesystem) ist ja nicht zwingend - ich habe auch gerade keine Idee (und nichts zum Nachschlagen), wie die 16 MB NOR-Flash in der 4020 aufgeteilt sind.

Wobei m.W. Freetz auf der Basis der 06.83 ohnehin auf der 4020 nicht funktioniert ... ich denke nicht, daß sich am Status in diesem Ticket etwas geändert hat in den letzten 8 Monaten: https://freetz.org/ticket/2772#comment:22

Ich würde hier - um das überhaupt erst einmal zum Laufen zu kriegen - zunächst kleinere Brötchen backen und nur das Dateisystem ersetzen ... auch wenn ich nicht weiß, was Du genau alles von Freetz machen läßt. Aber meine Idee wäre es, in ein originales AVM-Image einfach einen Shell-Zugang einzubauen und dann Kernel und Dateisystem so ersetzen (wenn sie nicht ohnehin schon so ausgerichtet sind), daß das Dateisystem an einer "erase line" beginnt (die dürfte bei NOR-Flash bei 4 KB liegen) und man es damit komplikationslos austauschen kann, während der Kernel intakt bleibt.

Jedenfalls dürfte bei der 4020 noch einiges an Arbeit zu investieren sein, damit die wirklich mit der 06.83 sauber läuft ... das "EXPERIMENTAL" ist sicherlich kein Scherz.
 
ansonsten sind als weitere Inputs für Diagnose bei Problemen im Zusammenhang mit Freetz hilfreich:
.config-Datei
"fmake -c" eingeben und Logfile fmake.log posten
 
Hallo zusammen,
ich habe das Recover Tool genutzt, um die Box wieder auf das OS 6.83 zu recovern. Folgende Ausgabe hat das Tool mir gegeben:

Code:
FRITZ!Box 4020 suchen an: 192.168.178.1
Eine Anlage gefunden! - Ermitteln der aktuellen Version.
Version erfolgreich ermittelt!
    Hardware:   FRITZ!Box 4020
    Urlader:   3779
    Firmware:   147.06.83
Flashbereich (mtd1)
    Lösche   Flashbereich (mtd1)
    Restauriere   Flashbereich (mtd1)
    Überprüfe   Flashbereich (mtd1)
    Erfolgreich
Flashbereich (mtd3)
    Lösche   Flashbereich (mtd3)
    Restauriere   Flashbereich (mtd3)
Flashbereich (mtd4)
    Lösche   Flashbereich (mtd4)
    Restauriere   Flashbereich (mtd4)
FRITZ!Box 4020 erfolgreich wiederhergestellt!

Weiterhin werde ich mein Vorhaben der Installation von Freetz auf der 4020 Abstand nehmen. Das ist mir dann mit einer Experimental Version doch zu kompliziert. Trotzdem Danke für eure Tipps! :)

//edit by stoney: [CODE] TAG [/CODE] gesetzt
 
Zuletzt bearbeitet von einem Moderator:
ich möchte gerne auf einer F!B 4020 mit OS 6.83 Freetz aufspielen.
Weiterhin werde ich mein Vorhaben der Installation von Freetz auf der 4020 Abstand nehmen. Das ist mir dann mit einer Experimental Version doch zu kompliziert.
die Frage ist, was möchtest Du mit Freetz erreichen ?
geht es um Telnet-Shell-Zugang ?
oder um div. Zusatzapplikation, z.B. dropbear ?
oder geht es um Kernel-Modding usw. ?

davon abhängig ist der Weg mehr oder weniger steinig oder kompliziert.
 
die Frage ist, was möchtest Du mit Freetz erreichen ?
geht es um Telnet-Shell-Zugang ?
oder um div. Zusatzapplikation, z.B. dropbear ?
oder geht es um Kernel-Modding usw. ?

Guten Morgen,
da ich mich aktuell in einem Studentenwohnheim befinde, wollte ich mit dem Freetz ein openvpn zum laufen bekommen. Die Box in der Heimat (7490) läuft bereits mit Freetz inkl. openvpn Paket. Das funktioniert auch alles. Test ist schon erfolgt.
Ein weiteres Ziel war noch alle LED's an der Box mit Freetz komplett auszuschalten. Mit dem AVM-LED-Tool, welches im Netz rumkursiert, bekomme ich alle LED's bis auf die Internet LED ausgeschaltet. Zum Hintergrund: Ich nutze die 4020 aktuell mit einem LTE Stick und die zeigt an, wenn der Stick mit dem Internet verbunden ist.
 
Hallo!
Seit März 2018 habe auch ich damit gekämpft, die F!B 4020 zu freetzen, bis letzte Woche ohne Erfolg. Nachdem ich eine Verbindung zur Seriellen Schnittstelle auf dem Board aufgebaut hatte, musste ich feststellen, dass die kompilierten Images einen Fehler hatten. Nach Flash und Neustart der Box wurden immer wieder Fehler angezeigt die "__ctype_b_loc" enthielten, zuletzt mit freetz-devel-14779. Gestern habe ich dann nochmal neu kompiliert mit freetz-devel-14793. Ergebnis: das Image läuft.

Viele meiner genutzten Informationen habe ich aus diesem Board, darum möchte ich meine Erfahrungen mit diesem auch an andere weitergeben.

FritzOS 147.06.50, mit der die Box bei mir ausgeliefert wurde, erlaubt nur noch signierte Images. Ältere Recoverys standen mir leider nicht zur Verfügung. Darum habe ich mit Hilfe der Seriellen Schnittstelle und eines USB-Sticks das erste nicht signierte Image instaliert. Zur Verbindung habe ich Putty benutzt. Einstellungen: -> serial [COM-Port] 115200 - 8-N-1 keine Parität, keine Flusskontrolle, -> Session serial und "Open". Schon steht die Verbindung. Nun den USB-Stick mit dem Image reinstecken.
Jetzt bin ich so vorgegangen, wie auf
http://wiki.freetz.org/wiki/help/howtos/development/firmware_update_details
beschrieben. Hier verzichte ich auf weitere Erklärungen.
Achtung: Alle Programme nur vom Root-Verzeichnis / aus aufrufen!

1. Befehl: /bin/prepare_fwupgrade start
2. Befehl: tar -xf /var/media/ftp/[USB-Stick-Name]/[freetz-Image]
Wenn keine Fehlermeldung kommt, sind alle notwendigen Programme dort entpackt, wo sie hinmüssen.
3. Befehl: /bin/prepare_fwupgrade end
4. Befehl: /var/install
5. Befehl: reboot

Abwarten bis fertig geflasht ist und anschließend freuen, dasss es funktioniert. Dank der Konsole kann man den Fortschritt (oder Fehler) sehen.

Dafür, dass es bei Euch so funktioniert, wie bei mir, kann ich natürlich keine Garantie geben. Aber bei mir läuft das allseits gewünschte OpenVPN auf der Box seit gut einer Woche fehlerfrei.
 
Weicht der Bootloader bei der 4020 tatsächlich so weit vom "üblichen Verhalten" ab, daß es nur über die Serielle funktioniert?

Das kann ich mir kaum vorstellen ... wenn es ein Recovery-Programm für die 4020 gibt (und das gibt es: http://ftp.avm.de/fritzbox/fritzbox...020.de-en-es-it-fr-pl.06.83.recover-image.exe), dann muß das ja auch irgendwie die Firmware installieren können.

Entweder durch direktes Beschreiben des Flash-Speichers (das wäre dann irgendein STOR-Kommando in eine der Partitionen) oder auch durch das Laden in den Speicher mit anschließendem Start, wobei sich die Firmware dann selbst in den Flash-Speicher schreibt. Letzteres spart zuviele "Kenntnisse" über das Beschreiben des Flash-Speichers im Bootloader, weil der Kernel natürlich viel mehr Treiber für alles Mögliche enthalten kann, als der Bootloader mit seiner meist ja doch beschränkten Größe.

Wenn jemand mal die Aktivitäten des Recovery-Programms mitschneidet (z.B. mit Wireshark), dann kann man darin garantiert auch sehen, wie man ein Freetz-Image auch ohne den Zugriff auf die serielle Schnittstelle (nicht jeder mag an der Box herumlöten oder kann das auch nur) installiert. Die 4020 wäre jedenfalls m.W. die erste Box, die schon im Bootloader eine Signaturprüfung vornimmt ... das erscheint gerade beim billigsten Billig-Modell, was AVM im Portfolio hat, doch etwas merkwürdig.

Angesichts des Aufbaus (16 MB SPI-Flash als einziger nicht-volatiler Speicher) wird da bestimmt direkt in die MTD-Partition geschrieben und natürlich gibt es eher kein zweites System bei diesem Modell (außer das System ist wirklich, wirklich klein, was sehr komisch wäre) ... aber für die Installation von Freetz (wenn dieses jetzt per se lauffähig ist, nachdem das locale-Problem beseitigt wurde) müßte wohl schon das "push_firmware"-Skript aus dem Freetz-Projekt ausreichend sein.

Wobei das reine Schlußfolgerung ist und den ersten Interessenten ohne bestückte serielle Schnittstelle natürlich nicht von der Notwendigkeit befreit, einfach mal das AVM-Recovery mitzuschneiden (weil man das prinzipiell nicht auf gut Glück versucht mit dem Speichern nach "mtd1" und zunächst mal die tatsächlichen Abläufe abklärt - auch wenn oben die Ausgabe im Fenster des Recovery-Programms die "mtd1"-Theorie untermauern sollte) - das sollte aber immer noch einfacher sein (für die meisten zumindest), als sich die Hardware für das Bestücken der Seriellen zu besorgen und die Lötarbeiten auszuführen.
 
Die serielle habe ich eigentlich benutzt, um zu sehen, was die Box denn macht. Mittels push_firmware und FB aus - an wollte es partout nicht klappen. Auch andere, hier im Forum beschriebene Möglichkeiten, die ich versucht habe, waren nicht von Erfolg gekrönt. Ich hatte das Gefühl, das ADAM und EVA bei meiner Box geschieden waren ... :(

Und weil ich endlich einen Erfolg sehen wollte habe ich die von mir beschriebene Vorgehensweise zuerst mit dem neuesten (!) AVM-Image getestet. Und es hat funktioniert. Dann habe ich das Gleiche mit meinen freetz-Images gemacht. Und am Ende mit Erfolg. Was will ich mehr?

Ja, löten ist nicht jedermanns Sache. Auch ich kann das nicht mehr (Alter, schlechte Augen etc.) Aber zum Glück habe ich Kinder, die sowas können. :)

Ich habe noch eine 4020, die "Original" (6.83) ist. Wenn ich denn mal Zeit habe (evtl. im Oktober), dann werde ich mal Wireshark bemühen, um zu sehen, warum ADAM und EVA nicht wollen ...;)
 
Ich habe versucht mit Push_Firmware das erstellte Image auf die Box zu spielen, leider ohne Erfolg.
Folgende Ausgabe wird mir gegeben:

Code:
Debugging on (debug=1).
---> TYPE I
---> MEDIA FLSH
---> PASV
---> STOR mtd1
---> REBOOT
---> QUIT

eigentlich sollte push_firmware funktionieren; evtl. lag es an einem fehlerhaften Image;
ist ncftp auf dem LINUX-Rechner installiert ?
==> Kontrolle per
Code:
Freetz_VM:/# which ncftp
Bitte push_firmware nochmals mit neuem funktionierenden Image ausführen,
ggf. mit "bash -x ./push_firmware <fb4020_firmware.image> <ip-addresse> -f " aufrufen und kompletten Befehls-Eingaben/-Ausgaben posten.
 
bei der 4020 könnte das image anders sein als bei anderen boxen.
man kann prima nen openwrt image via adam2 auf die kiste schreiben.
aber: bei ner 4040 braucht man z..b. https://downloads.openwrt.org/relea....1-ipq40xx-avm_fritzbox-4040-squashfs-eva.bin
auf ner 4020 https://downloads.openwrt.org/relea...1xx-generic-fritz4020-squashfs-sysupgrade.bin

snipp
The 4020 doesn't need a separate Image for bootstrapping via EVA. Such an image is also not generated while building OpenWRT for the devicce.
A separate Image is needed for the 4040 as it contains a second bootloader for the device. The 4020 doesn't need such a separate image.
snap

da müsste vlt mal jemand nachsehen ob das für die 4020 im freetz erstellte image auch wirklich im format passt...


hab mal nen issue aufmacht. https://github.com/Freetz/freetz/issues/49
 
Zuletzt bearbeitet:
Dazu müßte man halt immer noch einen Mitschnitt eines Recovery-Programms haben ... der Aufbau in einer "image"-Datei von AVM muß ja noch nicht automatisch auch mit dem übereinstimmen, der für ein direkt per EVA geschriebenes Image korrekt wäre - die VR9-Modelle mit NAND und die GRX-Boxen sind das beste Beispiel für solche "Differenzen".

Vielleicht gelingt es ja doch mal einem der stolzen 4020-Besitzer, so einen Mitschnitt anzufertigen und zur Verfügung zu stellen, solange es noch nicht "pressiert". Ansonsten riskiert man halt, daß andere zur Analyse der Datei gerade dann keine Zeit (oder keine Lust) haben, wenn man es gerade dringend bräuchte, weil man sein eigenes Freetz-Image installieren will.

So etwas wie Freetz (und alle anderen Projekte, die sich mit dem Modifizieren von FRITZ!Boxen befassen) lebt nun mal vom "Mitmachen" ... wenn alle immer nur warten, bis mal ein "Entwickler" Zugriff auf die passende Hardware hat (keiner wird sich alle AVM-Modelle mal so "auf Vorrat" hinstellen, solange das Hobby ist) und sich das dann genauer ansieht, muß man sich auch nicht wundern, wenn neue Technik eher schleppend unterstützt wird bzw. die Umsetzung immer nur "tröpfchenweise" erfolgt.

Um einen solchen Mitschnitt für die 4020 "bettele" ich inzwischen mehr als ein halbes Jahr (hier im Thread seit Ende März) ... vielleicht war ich aber auch nur nicht deutlich genug?

Ich bastele im Moment (auch) an einem neuen FTP-Client für EVA-Zugriffe (irgendwo bei GitHub für "Freetz" gibt es die Diskussion dazu zwischen @er13 und mir, die im Anschluß an die letzten "push_firmware"-Änderungen geführt wurde) und wenn ich die passenden Informationen für die 4020 hätte, könnte ich auch dafür den korrekten Weg des Installierens einer selbst-signierten (bzw. unsignierten) Firmware passend parametrieren - ähnliches gilt für die 4040, denn da ist (m.W.) noch nicht einmal klar, ob die in den 32 MB Flash nun zwei Systeme (halt mal wieder im SPI-Flash) unterbringt oder nur ein (großes) System enthält. Ich habe jedenfalls noch nirgends die Support-Daten einer 4040 hier gesehen und ebenso noch keinen Mitschnitt des Recovery-Programms, wo man wenigstens wieder das Environment und den Aufbau des Images sehen könnte.
 
bekommst du von beiden, sobald ich die nächsten 4020/4040 in den fingern hab...
war mir bislang unbekannt, das das gesucht ist...
 
bei der 4040 hängt openwrt an den originalen bootloader nen uboot hintendrann als second stage loader. dazu das andere image. ( fiel mir gerade ins auge )
@perter: 4020 und 4040 sind jeweils 1 mal unterwegs zu mir, bekommst dem mitschnitt sobald die hier sind ( wohin damit? ). serieller bootlog auch interessant?
 
Zuletzt bearbeitet:
Am besten packst Du es irgendwo bei einem Share-Hoster (ggf. verschlüsselt, weil natürlich MAC-Adressen enthalten sind und das Gerät später anhand dieser Adresse erkannt werden kann) in ein Archiv und schickst mir den Link in einer E-Mail an eine der Adressen aus meinem PGP-Key (im YourFritz-Repo zu finden).

Die serielle Konsole kann zusätzliche Erkenntnisse ergeben ... braucht man zur "Bestandsaufnahme", was da nun wirklich verbaut ist (auch die Hardware-Liste von @qwertz.asdfgh hat da mehr Fragezeichen als Antworten) aber nicht unbedingt. Wobei die eine oder anderen Treiber-Message (beim Laden) halt auch hilfreich sein kann ...
 
Und ich hab's soeben geschlossen. Inwieweit aus der Tatsache, dass openwrt für 4020 und 4040 unterschiedliche "first flashing images" verwendet, die Tatsache folgt, dass das Freetz-Image für 4020 falsch sei, ist mir ein Rätsel. Aber vielleicht übersehe ich etwas.

Ich nehme mal an, Du bist nicht der programminghoch10, der das Ticket 43 erstellt hat. Er hat in Bezug aufs allererste Flashen gar nichts gesagt, von daher gehe ich davon aus, dass es kein Problem für ihn gewesen ist und die übliche "NOR Boxen"-Vorgehensweise (z.B. mittels push_firmware oder eben zu Fuß) funktioniert.

Wobei so wie sich #12 liest, könnte @Jott-Emm der programminghoch10 sein. @Jott-Emm: ist es so?
 
es sieht IMHO nach Image-Packing-Problem aus:
==> No NMI vector found

Freetz-Image:
Code:
freetz@freetz_vm:~/freetz-trunk$ ./fwmod -u -d test_unpack_freetz images/4020_06.83-freetz-devel-14828.en_20180821-130538.image
STEP 1: UNPACK
unpacking firmware image
removing NMI vector from SquashFS
No NMI vector found
WARNING: NMI vector not found. Assuming Freetz or Freetz-repacked image.
splitting kernel image
unpacking filesystem image
    Reading a different endian SQUASHFS filesystem on test_unpack_freetz/original/kernel/kernelsquashfs.raw
    Filesystem on test_unpack_freetz/original/kernel/kernelsquashfs.raw is lzma compressed (3:76)
    Parallel unsquashfs: Using 1 processor
    3141 inodes (3568 blocks) to write
    created 2569 files
    created 232 directories
    created 486 symlinks
    created 86 devices
    created 0 fifos
unpacking AVM plugins
    webcm_interpreter image
unpacking var.tar
done.

detected firmware 4020_de-es-fr-it-pl 147.06.83 rev43440 (01.03.2017 16:56:38)

FINISHED
freetz@freetz_vm:~/freetz-trunk$

beim Orginal-Image:
==> NMI vector v3 found at offset 0xBE0000
Code:
freetz@freetz_vm:~/freetz-trunk$ ./fwmod -u -d test_unpack_orig dl/fw/FRITZ.Box_4020.de-en-es-it-fr-pl.147.06.83.image
STEP 1: UNPACK
unpacking firmware image
removing NMI vector from SquashFS
NMI vector v3 found at offset 0xBE0000, removing it ... done.
splitting kernel image
unpacking filesystem image
    Reading a different endian SQUASHFS filesystem on test_unpack_orig/original/kernel/kernelsquashfs.raw
    Filesystem on test_unpack_orig/original/kernel/kernelsquashfs.raw is lzma compressed (3:76)
    Parallel unsquashfs: Using 1 processor
    2912 inodes (3347 blocks) to write
    created 2393 files
    created 190 directories
    created 433 symlinks
    created 86 devices
    created 0 fifos
unpacking AVM plugins
    webcm_interpreter image
unpacking var.tar
done.

detected firmware 4020_de-es-fr-it-pl 147.06.83 rev43440 (01.03.2017 16:56:38)

FINISHED
freetz@freetz_vm:~/freetz-trunk$

ist das ggf. die Ursache des vermeindlichen Boot-Problems ?
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.