ich versuche meine 7520 wie folgt mit dem neuen fritzflash.py zu flashen: sudo python3 fritzflash.py --dev enp1s0 --initramfs ./openwrt-ipq40xx-generic-avm_fritzbox-7530-initramfs-uImage.itb --sysupgrade ./gluon-ffs-3.2.1+2024-12-18-g.297f8be7-s.1180dfa-avm-fritz-box-7530-sysupgrade.bin
Die Box connected auch korrekt, allerdings scheint sie die FRITZ7530.bin nicht zu finden:
did set ip to 192.168.178.2/24
Trying to autodiscover! Abort via Ctrl-c.
FritzBox found at 192.168.178.1
Autodiscovery succesful!
-> Device detected at 192.168.178.1.
Starting automatic image-selection!
-> Establishing connection to device!
--> Try 1 of 10
'['ptest']' is not a tuple, ignoring
-> Automatic image-selection successful!
--> Will flash uboot-fritz7530.bin
-> Establishing connection to device!
--> Try 1 of 10
-> Flash image
-> Image write successful
Starting TFTP flash process for FB 7530/7520, FR 1200 or FR 3000
TFTP Server started listening on Port 69, serving openwrt-ipq40xx-generic-avm_fritzbox-7530-initramfs-uImage.itb under name FRITZ7520.bin
FRITZ7530.bin was requested
FRITZ7530.bin was requested
FRITZ7530.bin was requested
Im gleichen Ordner wie die fritzflash.py sind natürlich auch die restlichen Dateien:
Hi @zentakel ,
Spannend, klingt soweit alles korrekt.
Scheint so, als wäre der Output der Hardware-Revision nicht korrekt.
Diese wird hier abgefragt im Skript:
Für Openwrt musst du die Fritzbox eigentlich nicht auf 7530 umstellen - dem Openwrt image ist das egal. Was hast du dort denn als HWRevision eingetragen?
Du kannst bei dir mal in der Zeile vor meiner markierten ein print(hwrevision) eintragen, dann wissen wir was der versucht.
Eventuell muss dann noch was passendes in dem tftp_serve_file mapping hinzugefügt werden.
@fmaurer: noch einmal eine etwas genauere Rückmeldung: Ich hatte ja echt etwas Respekt, eine FritzBox 7520 zu flashen, mit der FritzBox 4040 hatte ich inzwischen gewisse Routine, aber das mehrstufige Verfahren bei der 7520 schien mit deutlich anspruchsvoller.
Kompliment und vielen Dank für die Erweiterung der fritz-tools, damit war das Vorgehen sehr elegant automatisiert und lief gut durch.
Zwei Dinge haben mir allerdings etwas Kopfzerbrechen gemacht. Erstens dass (siehe oben) der falsche Dateiname angefordert wurde FRITZ7520.bin wurde offenbar vom tftp-Server bereitgestellt, FRITZ7530.bin jedoch angefordert. Das habe ich unschön entschärfen können - siehe oben.
Nulltens hatte ich noch einen aktiven TFTP-Sever auf dem Rechner, der verhindert hat, dass sich fritzflash.py an Port 69 binden konnte. Die Fehlermeldung war für mich erst sehr verwirrend (weil recht lang und für einen nicht wirklichen Python-Kenner wie mich schwer zu parsen).
Da ein aktiver TFTP-Server auf dem Rechner bei Leuten, die Dinge flashen nicht eine ganz exotische Situation ist, wäre es vielleicht hilfreich, zu überprüfen, ob an Port 69 gebunden werden kann und gegebenenfalls eine eindeutigere Fehlermeldung auszugeben.