[Frage] FBF 7390: DSL Modem FW von Labor-Firmware in Firmware 05.52 packen?

REigner

Neuer User
Mitglied seit
24 Sep 2005
Beiträge
66
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,

ist es mit Freetz möglich die DSL Modemfirmware zu tauschen? Wenn ja wie würde das gehen?
Die Firmware die in der letzten Laborversion funktioniert an meinem VDSL As augenscheinlich am besten,
allerdings gibt es mit dieser FW bei mir Probleme mit WLAN. Daher bin ich nach einigem ausprobieren wieder
auf die 5.50 und jetzt 5.52 zurück. Allerdings war hier der Errorcounter nach drei Stunden bereits 7stellig :(

Daher würde ich gerne, frei nach der Phrase "best of both worlds", die Modemfirmware der Laborversion in
das 05.52-Release packen und hoffen, daß dann WLAN und VDSL sauber funktioniert. Ansonsten soll die
Box bleiben wie sie ist, also keine extra Freetz-Oberfläche o.ä.
Bei Cisco konnte ich unabhängig vom IOS auch die Modemfirmware selbst tauschen, aber habe von AVM
leider noch keine Antwort bekommen, ob es eine ähnliche Möglichkeit gäbe.

Danke und Gruß
 
Nein, entweder oder.

Zu dem WLAN Problem gibt es in dem Labor Thema doch schon Lösungsansätze.

Und wenn du so schnell viele Fehler hast prüfe sonst auch mal Kabel, TAE ect.
 
Hallo zusammen,
ist es mit Freetz möglich die DSL Modemfirmware zu tauschen? Wenn ja wie würde das gehen?
Nach langem lurken - plötzlich ein Posting!

Ich hab das aktuell wie folgt gelöst, folgender Ansatz:
  1. Lademechanismus für Firmware
    Die Firmware-Dateien der verschiedenen Hardwarekomponenten werden meist beim Laden des jeweiligen Kernel-Moduls (= Treiber) angefordert.
    In moderneren Linux-Versionen liegen die entsprechenden Dateien unter /lib/firmware, bei AVM immer noch unter
    Code:
    /lib/modules
    Das jeweilige Kernel-Modul fordert dabei stets einen bestimmten Dateinamen an.
  2. Firmware-Kompatibilität
    Die Firmware kann, muss aber nicht zwischen Kernel-Modulversionen kompatibel sein.
    Wenn sich das Interface zur Firmware ändert, geht das daneben. Insofern ist austauschen ein Fall für trial'n'error.
  3. Firmware besorgen
    An die Firmware-Dateien kommt man am einfachsten, wenn man das jeweilige Image mit dem Freetz-eigenen
    "fwmod" entpackt. Beispiel:
    Code:
    user@host:~/devel/freetz.git/dl/fw$ ../../fwmod -u FRITZ.Box_Fon_WLAN_7390_Labor.84.05.55-25667.image
    STEP 1: UNPACK
    unpacking firmware image
    Skipping 0 Bytes garbage...removing AVM SquashFS junk bytes
    Junk header found, inspecting ...
    Junk header found at V1 offset 0xBE0000
    Image size encoded in junk block matches real file size, removing junk bytes ... done.
    splitting kernel image
    unpacking filesystem image
        Reading a different endian SQUASHFS filesystem on FRITZ.Box_Fon_WLAN_7390_Labor.84.05.55-25667.image.mod/original/kernel/kernelsquashfs.raw
        5406 inodes (5803 blocks) to write
        created 4730 files
        created 364 directories
        created 589 symlinks
        created 87 devices
        created 0 fifos
    unpacking var.tar
    done.
    
    detected firmware 7390_de 84.05.55-BETA rev25667 (17.06.2013 15:04:55)
    
    FINISHED
    Die Verzeichnisangaben sind im Beispiel relativ, das Image wird ins aktuelle Verzeichnis entpackt - also ggf. anpassen.
    Die gesuchten Dateien liegen dann unter:
    Code:
    user@host:~/devel/freetz.git/dl/fw$ ls -1 FRITZ.Box_Fon_WLAN_7390_Labor.84.05.55-25667.image.mod/original/filesystem/lib/modules/
    2.6.28.10
    6320_Default_EEPROM.bin
    6842F1_Default_EEPROM.bin
    adsp0_firmware.bin
    adsp1_firmware.bin
    bitfile.bit
    dectfw_firstlevel_488.hex
    dectfw_secondlevel_488.hex
    eeprom_db120
    eeprom_k2
    eeprom_osprey
    eeprom_scorpion2g
    eeprom_wasp
    pm_info.in
    release-Vx180Code.bin.bsdiff
    release-Vx180Code.bin.md5sum
    Vx180Code.bin.gz
  4. Firmware Dateien anpassen
    Freetz modelt die original-Dateien etwas um und ersetzt die Symlinks "eeprom_k2" (-> 6320_Default_EEPROM.bin) und "eeprom_wasp" (-> 6842F1_Default_EEPROM.bin) durch die echten Dateien. Bei mir sieht das Zielverzeichnis dann so aus:
    Code:
    adsp0_firmware.bin
    adsp1_firmware.bin
    bitfile.bit
    dectfw_firstlevel_488.hex
    dectfw_secondlevel_488.hex
    eeprom_db120
    eeprom_k2
    eeprom_osprey
    eeprom_wasp
    pm_info.in
    release-Vx180Code.bin.bsdiff
    release-Vx180Code.bin.md5sum
    Vx180Code.bin.gz
    Welche Dateien für was gebraucht werden ist teilweise aus den Dateinamen ersichtlich, bei DSL geht es vermutlich "nur" um die Vx180 Dateien. Ich habe aktuell alle getauscht, das spart die Sucherei. Ich vermute dass die eeprom* für WLAN, die adsp für den DSP (VoIP), die bitfile.bi für ein FPGA, dect* für DECT sind. Da gibt's diverse Wikis, die das im Detail schildern ;)
  5. Firmware als Paket bereitstellen
    Am einfachsten drauf zu bekommen sind die Dateien, in dem man sie in das Beipiel-Package "own-files-0.1" integriert und das aktiviert.
    Dadurch werden die originalen (von Freetz integrierten) Firmware-Dateien beim Zusammenbau des Images schlichtweg überschrieben.
    Um das zu machen, wie folgt vorgehen:
    A)
    Mit einem Texteditor in der Datei addon/static.pkg im freetz-Buildroot das '#' vor own-files-0.1 entfernen.
    Vorsicht, das muss nach jedem "make dirclean" neu gemacht werden, "make clean" lässt die Datei in Ruhe.
    B)
    mkdir addon/own-files-0.1/root/lib/modules
    C)
    Dateien der Wahl in addon/own-files-0.1/root/lib/modules reinkopieren.
    Prinzipiell sollten die Dateien root:root gehören und world-readable sein, praktisch ist das aber egal, da die Firmware eh von root geladen wird und der darf alles ;)
  6. Image bauen
    Freetz mit "make" anschmeißen, genießen, flashen.

Getestet und im Einsatz habe ich o.g. Beispiel, also die Labor-Firmware mit dem 5.52er Release-Image, das funktioniert einwandfrei - sogar die Firmware-Version wird korrekt angezeigt.
Außerdem habe ich das bei diversen Speedport W920V / FB7570 gemacht, hier nutze ich die DECT/WLAN Firmware der letzten 7270v2 Version 4.xx um die Boxen "aufzupeppen".
 
Zuletzt bearbeitet:
Hi!

@qwertz12

Danke für diese ausführliche Anleitung :)
Eine Frage hätte ich aber noch (nein ich heiße nicht Columbo):
Nachdem ich außer der Modem FW nichts geändert haben möchte, habe ich zunächst die Labor FW 05.55-25409 entpackt (fwmod -u -d unpack laborfw.image). Das Gleiche nochmal mit der 05.52. Dann habe ich von der Laborfirmware /filesystem/lib/modules die von Dir vermuteten Vx-Dateien in den filesystem Pfad der 05.52 kopiert und dann wieder eingepackt (fwmod -p -d unpack fw0552.image). Die FBF frisst zwar das fw Image aber die Modem FW ist die Gleiche geblieben.
Funktioniert das so wie ich es beschrieben habe überhaupt - oder muß ich die Schritte von Dir durchführen (own-files, modify, pack), was dann auch bedeuten würde, daß ich die Freetz Website etc. mit installiere - was ich ja nicht möchte...


@HabNeFritzbox

Ich habe das Forum schon mal durchstöbert, habe aber nicht wirklich was gefunden... Hättest Du evtl. nen Link für mich?
Mehr Optimierung beim Kabel sind nicht mehr möglich (im EVz habe ich die entsprechenden Litzen geschirmt, die Kabel neu verdrillt
und ein geschirmtes TAE-Kabel besorgt). Die Downloadrate (LAN) liegt bei 48 MBit/s, also nicht schlecht für den langen Kabelweg (4. Stock).
Bei der Laborfirmware treten diese Fehler ja gar nicht auf (100 Fehler nach 2 Wochen vs. 14.000.000 in 12 Stunden). Also entweder
sind die Zähler bzw. deren Zählweise verändert oder die Modem-FW verbessert. Die Zähler sind auch bei der Laborversion 25667 ein ganzes Stück höher,
daher habe ich die Dateien aus der Laborversion 25409 genommen.

Danke euch!
 
Hi!
@qwertz12

Nachdem ich außer der Modem FW nichts geändert haben möchte, habe ich zunächst die Labor FW 05.55-25409 entpackt (fwmod -u -d unpack laborfw.image). Das Gleiche nochmal mit der 05.52. Dann habe ich von der Laborfirmware /filesystem/lib/modules die von Dir vermuteten Vx-Dateien in den filesystem Pfad der 05.52 kopiert und dann wieder eingepackt (fwmod -p -d unpack fw0552.image). Die FBF frisst zwar das fw Image aber die Modem FW ist die Gleiche geblieben.

Hmm, das ist ne gute Frage. Wenn ich dich richtig verstehe, hast du "nichts" mit Freetz gemacht, lediglich ausgepackt, Firmware getauscht und wieder eingepackt?
Das hab ich so noch nicht probiert, ich baue immer komplette Images mit neuem Kernel etc.pp.

Ich muss mir das mal genauer ansehen, ggf. auch testen - das wird aber vermutlich erst irgendwann am WE, unter der Woche brauche ich meine Fritte produktiv (und ich habe nur die eine 7390).

Schuss ins Blaue: Hast du alle "*Vx*" Dateien kopiert? (In der ursprünglichen "Anleitung" war ich etwas ungenau, was die Dateinamen-Muster angeht...)
Ich denke, dass wenigstens die "bsdiff" zusätzlich notwendig ist um AVMs "patches" zur Firmware einzuspielen (oder auf die "letzte DSL Version" zu wechseln??) und die "md5sum" wird vermutlich auch nicht sinnlos mitgegeben werden, keine Ahnung ob die beim Laden prüfen ob der md5-Hash passt.
Es kann natürlich auch sein, dass da noch Dateien fehlen, wie gesagt, ich habe bei mir alle getauscht...

Folgendes habe ich gerade probiert:
Code:
user@host:~/devel/freetz.git/dl/fw$ ../../fwmod -u -d labor FRITZ.Box_Fon_WLAN_7390_Labor.84.05.55-25667.image
STEP 1: UNPACK
unpacking firmware image
<snip>
FINISHED
user@host:~/devel/freetz.git/dl/fw$ ../../fwmod -u -d release FRITZ.Box_Fon_WLAN_7390.AnnexB.84.05.52.image
STEP 1: UNPACK
unpacking firmware image
<snip>
FINISHED
user@host:~/devel/freetz.git/dl/fw$ chmod u+w release/original/filesystem/lib/modules/*
user@host:~/devel/freetz.git/dl/fw$ cp labor/original/filesystem/lib/modules/*Vx* release/original/filesystem/lib/modules/
user@host:~/devel/freetz.git/dl/fw$ ../../fwmod -p -d release/ FRITZ.Box_Fon_WLAN_7390.AnnexB.84.05.52.image
<snip>
STEP 3: PACK
<snip>
packing release//<imagename>.image
done.

FINISHED

Das so gepackte Image (unter "release/<imagename>.image", nicht "FRITZ.Box_Fon_WLAN_7390.AnnexB.84.05.52.image"!) enthält zumindest schon mal die richtigen Firmware-Dateien. Edit 2013-07-06: Die Dateien werden so nicht integriert, sondern es werden die Originalen verwendet.
Echtes ausprobieren ist aber im Moment wie angesprochen definitiv nicht, das muss warten.

Eine Idee noch zum Schluss: Bist du dir eigentlich sicher, das die *Vx180* zwischen den Image-Versionen auch verschieden sind? Nicht das AVM nur das Modul angepasst hat und du zufällig zwei gleiche Firmware-Versionen erwischt hast.

Edit: Ich hab im Original-Post noch mal die "Vx180Code.bin.gz" ins Zielverzeichnis mit reingenommen, die iss mir da irgendwie rausgerutscht. Der bsdiff-Patch funktioniert nur mit exakt der richtigen "Vx180Code.bin.gz" ;)
 
Zuletzt bearbeitet:
Aaalso.
Ich habe heute mal mein mit "fwmod" gepacktes Image geflasht, folgendes Ergebnis:
Code:
user@host:~$ telnet fritz.box
Trying fd00::c225:...
Connected to fritz.box.
Escape character is '^]'.
password: 

BusyBox v1.19.3 (2012-10-12 14:52:09 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

ermittle die aktuelle TTY
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt
# ls -l /lib/modules/
drwxrwxr-x    4 root     root           372 Jun 10 10:30 2.6.28.10
-r-xr-xr-x    1 root     root        859261 Jun 10 10:30 Vx180Code.bin.gz
[snip]
-r-xr-xr-x    1 root     root        271409 Jun 10 10:30 release-Vx180Code.bin.bsdiff
-r-xr-xr-x    1 root     root            56 Jun 10 10:30 release-Vx180Code.bin.md5sum
#
Das sind nicht die Firmware-Dateien, die ich eigentlich in das Image eingebaut haben wollte. Sämtliche anderen Dateien, die ich mir angesehen habe (/etc) haben auch das falsche Dateidatum: 10.06.2013 statt 17.06.2013.
Daraufhin habe ich noch mal im selbst gebauten Image nachgesehen: Ich muss Tomaten auf den Augen gehabt haben, als ich das "geprüft" habe - da sind eindeutig wieder die alten Dateien drin.
Also hab ich noch mal versucht, die Firmware zu integrieren - ohne Erfolg. Ich habe keine Ahnung, was "fwmod" intern macht, vermute aber, dass es die Dateien die im "original" Verzeichnis liegen, auch direkt aus dem originalen Image nimmt, keine Ahnung. Jedenfalls geht der Firmwareaustausch so nicht...
Die von mir beschriebene "addon/own-files-0.1" Methode klappt jedenfalls einwandfrei.
 
Zuletzt bearbeitet:
Hi,

vielen, vielen Dank für Dein Testing. Ja, die FW ist unterschiedlich (05.50: 1.68.22.14; 05.52: 1.68.22.14_1; 05.55-25409: 1.68.23.12).
Wenn ich mal ganz viel Lust habe, werde ich mal einen genaueren Blick in fwmod werfen bzw. als Schnellschuss nur ein modify machen. Evtl. sieht man ob er noch andere Dateien verändert (also durch das own-files).

@HabNeFritzbox
So wie ich das WLAN-Problem lese, tritt das MAC Problem durch den Upgrade auf und ist permanent. Ich verliere jedoch immer dann und wann die Verbindung. Die SSID ist weiterhin sichtbar. Wenn ich mich neu verbinde, ist der Rechner für einen Sekundenbruchteil verbunden und dann wieder getrennt. Durch #96*0* und #96*1* ist das Problem wieder behoben - bis zum nächsten Mal.
Ich setze einen eigenen DHCP Server ein (der in der FBF ist aus). Der ist über einen Switch mit der FBF verbunden. Für mich sieht das aus, als käme der WLAN Teil der FBF irgendwann aus dem Tritt. :(
 
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.