OpenWRT @ o2 Box 6431

edgecrusher

Mitglied
Mitglied seit
4 Mai 2008
Beiträge
303
Punkte für Reaktionen
4
Punkte
18
Wer Lust auf ein bißchen basteln, die Erfahrung, das Interesse dazu und die übliche Hardware (Serial TTL Adapter, einen (NOR) Flash-Programmer (wenn mal was schief geht, denn JTAG ist bis jetzt anscheinend nicht gefunden)) hat.

OpenWRT @o2 Box 6431

Wichtig ist natürlich vor allem eine o2 Box 6431 die wirklich Euer Eigentum (es sind Leihgeräte seitens o2) ist. Hier hat sich jemand rangemacht und OpenWrt auf der HW der o2 Box 6431 angepasst/portiert.

Die üblichen Hinweise vorab:

- zieht vorher ein Backup vom kompletten Flash Chip
- zieht jetzt nochmal ein komplettes Backup vom Flash Chip
- prüft ob diese beiden Images exakt Binär übereinstimmen und wenn das nicht der Fall ist, wiederholt die Prozedur so oft, bis dass der Fall ist!

Ohne die 3 genannten Punkte, gibt es KEINEN, ich wiederhole, KEINEN Weg zurück!

Weitere Hinweise:

- stellt nochmal sicher, dass die Box euer EIGENTUM ist und nicht doch noch ein Leihgerät von o2, was man nicht schrotten sollte.
- alles "untested"
- wird vermutlich in Minimal-Image (das verlinkte auf der OpenWRT Wiki-Seite) sein, sprich LUCI nicht drauf usw. (Kenntnisse von OpenWRT sind von Vorteil)


Viel Spaß
Edge
 
Zuletzt bearbeitet:
How-To: openWRT auf die O2 Box 6431 flashen

Moin,

hier mal nach und nach zusammengefasst die Schritte, um openWRT auf die O2 Box 6431 zu bekommen. Stand 17.11.2015

Im Prinzip geht man nach der Anleitung im openWRT Wiki vor: https://wiki.openwrt.org/toh/arcadyan/vgv7510kw22
Ich habe hier noch einige Details mit genannt, auch zusammengetragen und hoffentlich alle Quellen genannt, die die Sache hoffentlich verständlicher machen... Vielen Dank an die Leute von OpenWrt, dasss das überhaupt möglich ist, und Danke an alle, die beim Auslesen der Zugangsdaten mitgewirkt haben!


  • Voraussetzungen
    1. eine O2 Box 6431 die euch gehört - Wenn ihr die von O2 verwendet, sollte man sich schon sehr sicher sein, nichts kaputt zu machen. Ansonsten könnte man vielleicht vor dem Problem stehen, gar nicht mehr ins Internet zu kommen...
    2. Ein USB-TTL Adapter - ich habe mir einen besorgt mit nem CH340G-Chip, gibs bei eBay ab nem guten Euro. Meiner hat 6 Pins und noch einen Schiebeschalter für 3,3 oder 5 Volt, aber das ist gar nicht nötig, wir brauchen nur 3,3V. Wenn Ihr die Daten der O2 Box bereits ausgelesen habt, dann den Adapter einfach weiter verwenden. Außerdem Kabel zum Verbinden mit dem Router, s.u.
    3. Eine Linux-Kiste in einer VM (oder in echt), an der der USB-TTL-Adapter angeschlossen wird - ist am praktischsten. Bestimmt würde es mit Windows auch klappen, aber es ist einfacher, das per Linux zu machen, die Treiber für den USB-Adapter sind da schon drin zum Beispiel. Per Vmware funktioniert dies, indem der USB-Adapter an die Maschine weitergeleitet wird. Bei VirtualBox klappt das wohl auch. Im Prinzip könnte man auch den Raspberry PI dafür verwenden.
      Installierte Pakete auf dem Linux-System mit apt-get (oder dem entsprechenden für das verwendete System) ggf. installieren mit
      apt-get update
      apt-get install minicom python-serial bspatch tftpd-hpa tftp
    4. OpenWrt und Bootmanager-Images herunterladen und in einen Ordner stecken (z.B. in einen separaten 'Box'-Ordner):
      1. openwrt-lantiq-vgv7510kw22_brn-u-boot.img via Link (via OpenWrt Wiki)
      2. openwrt-lantiq-vgv7510kw22_brn-u-boot-soc12.img via Link (via OpenWrt Wiki)
      3. openwrt-15.05-lantiq-xrx200-VGV7510KW22NOR-uImage via Link (OpenWrt 15.05 Release)
      4. openwrt-lantiq-vgv7510kw22_nor-u-boot.img via Link (via OpenWrt Wiki)
      5. openwrt-15.05-lantiq-xrx200-VGV7510KW22NOR-squashfs.image via Link (OpenWrt 15.05 Release)
      6. Oder die nötigen Images via https://downloads.openwrt.org/latest/lantiq/xrx200/ besorgen - dort werden immer die aktuellsten gelistet.
  • Verbindung mit dem Router per Konsole herstellen
    1. Genau wie zum Auslesen der Zugangsdaten die Verbindung zur Box herstellen. Am einfachsten ist es, den Zugang durch die Lüftungsschlitze zu nehmen, dann braucht man das Gehäuse nicht zu öffnen.
      Als Beispiel habe ich an die Messing-Röhrchen von Conrad noch eine Pfostenleiste gesteckt, und daran die Stecker vom Kabel des Adapters - nun ist auch kein Löten mehr nötig. Man sollte die Röhrchen aber absägen, denn mit den Seitenscheider werden sie zu sehr zugedrückt. Eine Taschenlampe zum Finden der Stiftkontakte in der O2 Box ist zusätzlich hilfreich.
      pfostenleiste_und_roehrchen.JPG
    2. Die Belegung ist, wenn man die Box mit der Buchsenseite von sich weg zeigend mit der LED-Seite auf dem Tisch liegen hat von links nach rechts:
      Pin4GNDan GND des Adapters
      Pin3RXan TX des Adapters
      Pin2TXan RX des Adapters
      Pin1 (mit Pfeil)VCC (3.3V)nicht anschließen!

      Ein Bild zu den Pins findet man im openWRT wiki, allerdings zeigt dies die ganze Platine ohne Gehäuse.
    3. Testen der Verbindung
      Den USB-Adapter an das Linux-System anschließen und ein paar Sekunden warten - nun müssten der Adapter eingebunden sein.
      Anschließend im Terminal mit minicom -D /dev/ttyUSB0 -b 115200 die Ausgaben der Box anzeigen. Hierbei ist ttyUSB0 (GROSS-und kleinsschreibung beachten!) der Name des Adapters. Wenn keine weiteren angeschlossen sind, dann müsste das passen.
      Nun schnell hintereinander wiederholt die Leertaste drücken, und dabei die O2 Box einschalten. Auf dem Bildschirm müsste nun gleich das Bootmenü angezeigt werden. Hierbei die Version des Bootloaders notieren. Im Beispiel unten ist es Version 1.08:

      Code:
       Welcome to minicom 2.7
                            
                  OPTIONS: I18n 
                  Compiled on Jan  1 2014, 09:30:18.
                  Port /dev/ttyUSB0, 21:28:42
                            
                  Press CTRL-A Z for help on special keys
                            
                            
                  ROM VER: 1?
                  ROM VER: 1.1.4
                  CFG 01
                  Tuning DDR begin
                  DDR Access auto data-eye tuning Rev 0.3a
                  DDR size from 0xa0000000 - 0xa3ffffff
                  DDR check ok... start booting...
                            
                            
                            
                            
      =======================================================================
                       Wireless VDSL Gateway VR9 Loader V[COLOR=#CC0000]1.08[/COLOR].01             build Jun 29 2012 11:55:20
                          Arcadyan Technology Corporation 
                  =======================================================================                     
                   MXIC MX29GL128EL top boot 16-bit mode found     
                                
                  Copying boot params.....DONE 
                                
                                
                  Press Space Bar 3 times to enter command mode ...123 
                  Yes, Enter command mode ... 
                                
                                
                  [VR9 Boot]: 
                                
                  ======================  
                  [#] Set Serial Number  
                  [2] Use Normal Firmware    
                  [3] Use ART-Testing Firmware   
                  [9] Taggle ART Firmware Enable/Disable     
                  [A] Set MAC Address 
                  [E] Erase Flash    
                  [G] Run Runtime Code   
                  [H] Set Options    
                  [P] Print Boot Params  
                  [U] Upload to Flash 
                  [V] Set Board Version  
                  ======================  
                                
                  [VR9 Boot]:
  • Backup der originalen Firmware und Flash-Inhalte mit dem brntool erstellen
    1. brntool via github-archiv: https://github.com/rvalles/brntool/archive/master.zip herunterladen und extrahieren, dann in dessen Ordner wechseln mit cd
    2. Nun machen wir manuell eine Schleife mit minicom dem brntool. Die Befehle für das brntool sind folgend aufgelistet
      - dazwischen wechseln wir mit minicom jedes mal wieder ins Bootmenu (es muss angezeigt werden) mit minicom -D /dev/ttyUSB0 -b 115200 , dann Enter, dann Strg+A, z, q und enter.
      ./brntool.py --read=boot.brntool_dump --addr=0xB0000000 --verbose --size=0x40000
      ./brntool.py --read=configuration.brntool_dump --addr=0xB0040000 --verbose --size=0x40000
      ./brntool.py --read=certificate.brntool_dump --addr=0xB0080000 --verbose --size=0x20000
      ./brntool.py --read=special_area.brntool_dump --addr=0xB00A0000 --verbose --size=0x20000
      ./brntool.py --read=primary_setting.brntool_dump --addr=0xB00C0000 --verbose --size=0x20000
      ./brntool.py --read=code_image_0.brntool_dump --addr=0xB00E0000 --verbose --size=0x780000
      ./brntool.py --read=code_image_1.brntool_dump --addr=0xB0860000 --verbose --size=0x780000
      ./brntool.py --read=boot_params.brntool_dump --addr=0xB0FE0000 --verbose --size=0x20000
    3. Achtung: das dauert sehr lange! Gerade die großen Speicherbereiche mit knapp 8MB brauchen jeweils ca. 60 Minuten.
    4. Zur Sicherheit jeweils zwei Image-Dateien erstellen und deren Checksumme vergleichen. Wenn jeweils beide Dateien die selbe Checksumme und Größe haben, dann fortfahren - ansonsten erneut ein Backup des betroffenen Speicherbereiches machen.
  • u-boot von brnboot aus in den Speicher laden
    1. Ist man nun im Bootmenü, dann einmal ein ! eingeben (Ausrufezeichen), somit landet man im Administrator-Menü. Hier gibt es noch mehr Optionen.
    2. Die nächsten Schritte müssen sehr zügig ablaufen: Folgend dann m eingeben und per Entertaste bestätigen. Der Bootmanager wartet nun darauf, dass man ihm Daten sendet. (erneutes Enter bricht dies ab.)
    3. Nun per Strg+A , dann Z, dann Q, dann Enter Minicom beenden. Diesen Weg werden wir noch öfters benutzen.
    4. Anschließend in das Verzeichnis mit den Images wechseln und abhängig von der Version eures Bootloaders eingeben:
      1. Bei Version 1.07:
        sx openwrt-lantiq-vgv7510kw22_brn-u-boot.img < /dev/ttyUSB0 > /dev/ttyUSB0
      2. Bei Version 1.08:
        sx openwrt-lantiq-vgv7510kw22_brn-u-boot-soc12.img < /dev/ttyUSB0 > /dev/ttyUSB0
      3. Dadurch stellen wir das Boot-Image für den u-boot Bootmanager im RAM zur Verfügung. Es sollte mit "Transfer complete" abschließen. Wenn die Meldung "Transfer incomplete" ist, dann scheint es aber auch zu klappen, zumindest bei mir ...!?
    5. Abschließend wieder minicom aufrufen:
      minicom -D /dev/ttyUSB0 -b 115200
      und danach per Enter das Menu erneut anzeigen. Nun y und Enter drücken, sodann startet u-boot. Nun sollte über der Zeile mit dem blinkenden Prompt "ERROR: can't get kernel image!" erschienen sein.
  • Backup der originalen Firmware und Flash-Inhalte von OpenWrt aus erstellen
    1. Dieser Schritt funktioniert zurzeit nicht - zu überspringendes habe ich hellgrau gemacht. Das dafür benötigte Image fehlt entweder oder es klappt etwas anderes nicht...
      Deshalb haben wir das Backup auf die langsame Methode mit dem brntool gemacht, und stellen hier vorerst nur den tftp Server ein.
    2. Wir sind nun am u-boot prompt angekommen und stellen per tftp ein Basis-OpenWrt Image zum Einspielen in den Speicher bereit, mit Hilfe dessen wir Backups des Gerätes ziehen.
    3. TFTP-Server auf dem Rechner einstellen: (Für Windows würde ich das Programm tftpd32/64 empfehlen.)
      1. der TFTP-Server muss die IPv4-Adresse 192.168.1.2 haben - dies statisch einstellen. Als Basis-Verzeichnis das mit den heruntergeladenen Images für OpenWrt wählen:
      2. Per nano /etc/default/tftpd-hpa die Konfigurationsdatei öffnen und IP-Adresse sowie ggf. Pfad anpassen, z.B. so:
        Code:
        TFTP_USERNAME="tftp"
                        TFTP_DIRECTORY="/box"
                        TFTP_ADDRESS="192.168.1.2:69"
                        TFTP_OPTIONS="--secure"
      3. Nun den tftp-server neu laden: service tftpd-hpa force-reload
      4. Zum Schluss prüfen, ob alles stimmt - der Output von service tftpd-hpa status sollte ungefähr so aussehen:
        # service tftpd-hpa status
        tftpd-hpa.service - LSB: HPA's tftp server
        Loaded: loaded (/etc/init.d/tftpd-hpa)
        Active: active (running) since Sun 2015-11-15 14:18:47 CET; 7s ago
        Process: 3225 ExecStop=/etc/init.d/tftpd-hpa stop (code=exited, status=0/SUCCESS)
        Process: 3229 ExecStart=/etc/init.d/tftpd-hpa start (code=exited, status=0/SUCCESS)
        CGroup: /system.slice/tftpd-hpa.service
        └─3235 /usr/sbin/in.tftpd --listen --user tftp --address 192.168.1.2:69 --s...
      5. Nun kann man den Prozess vorher lokal testen:
        cd /tmp
        tftp 192.168.1.2 , anschließend
        get openwrt-15.05-lantiq-xrx200-VGV7510KW22NOR-uImage
        : erfolgreich, wenn die Datei empfangen wurde.
    4. Netzwerkkabel an die O2-Box (Lan1), Switch und den Rechner anstöpseln. Zwischen Box und Rechner sollte sich also ein Switch befinden, ohne klappt es bei mir nicht.
    5. Nun am u-boot Prompt eingeben: tftpboot openwrt-15.05-lantiq-xrx200-VGV7510KW22BRN-uImage-initramfs; bootm
      Wenn nun beim Laden immer T angezeigt wird, dann gibt es ein Netzwerkproblem. Abbrechen mit Strg+C, sicherstellen, dass die O2-Box an einem Switch hängt, der auch 100Mbit beherrscht, und der TFTP-Server die o.g. Adresse besitzt. Mit ping 192.168.1.2 kann man herausfinden, ob die Box überhaupt den Weg zum Rechner findet.
    6. Zur Sicherheit die Backups erneut machen, mit _1 als Suffix, und sicherstellen, dass die Dateigrößen (per ls -l /tmp/ anzeigen) mit denen aus der Liste im OpenWRT-Wiki übereinstimmen.
  • u-Boot als Bootmanager installieren im Flash
    1. Achtung: in diesem Schritt wird der Bootmanager ins Flash geschrieben - wenn dies fehlschlägt und die O2 Box danach nicht mehr bootet, kann man es nur per UART-Boot beheben, wozu es nötig ist, Kabel an der Platine anzulöten - siehe openWRT Wiki.
    2. Nun booten wir erneut in den u-boot Bootmanager wie in Schritt 3 beschrieben.
    3. Im nächsten Schritt laden wir den u-Boot Bootmanager für das Flash in den Speicher:
      tftpboot openwrt-lantiq-vgv7510kw22_nor-u-boot.img
    4. ... und schreiben es ins Flash: run write-uboot-nor
    5. Anschließend Neustart der Box durch reset
  • OpenWrt von u-Boot ins Flash installieren
    1. Variante 1 - per TFTP - wenn das nicht klappt weil kein Netzwerk erkannt wurde, dann Variante 2 probieren
      1. In der Konsole sollte nun nach dem Neustart der Box erneut der Prompt von u-Boot erscheinen, da kein Kernel Image gefunden wurde. Dies kommt nun:
        tftpboot openwrt-15.05-lantiq-xrx200-VGV7510KW22NOR-squashfs.image
      2. Nun den Speicherbereich löschen, wo u-Boot seine Umgebung speicherte:
        erase 0xb0080000 +e60000
      3. Anschließend das OpenWrt Image in den Speicher schreiben:
        cp.b $fileaddr 0xb0080000 $filesize
    2. Variante 2 - per YModem als Alternative, falls die Box keine Netzwerkverbindung bekommt, kann man das Image über die Terminalverbindung aufspielen. Das dauert ca. 8 Minuten länger und geht so:
      1. Eingeben: loady - nun erwartet u-boot, eine Datei per YModem zu erhalten.
      2. Nun, weiterhin in minicom, ctrl-a und z, und dann s drücken, YModen auswählen. Anschließend im ‚Fenster‘ zum Ordner mit dem Image wechseln, das Image in der Liste markieren per Leertaste und mit Enter bestätigen.
        Nun wird die Datei gesendet, wenn die Übertragung erfolgreich war, wird dies am Ende angezeigt.
      3. Nun den Speicherbereich löschen, wo u-Boot seine Umgebung speicherte:
        erase 0xb0080000 +e60000
      4. Anschließend das OpenWrt Image in den Speicher schreiben:
        cp.b $loadaddr 0xb0080000 $filesize
    3. ... und die Box erneut neu starten mit reset
    4. Nun müsste OpenWRT vom Gerät starten, und das sieht man auch in der Konsole.
  • DSL Modem Firmware laden und flashen
    Seit einer früheren Revision von OpenWrt funktioniert die beigelegte Firmware für das integrierte DSL-Modem der O2 Box nicht mehr. Bis das seitens OpenWrt gelöst wird, bleibt nur der Weg, die Firmware selbst zu flashen.
    1. Für Bootmanager Version 1.07 - für 1.08 auch erstmal so probieren:
      1. Via https://xdarklight.github.io/lantiq-xdsl-firmware-info/ findet man ein Archiv mit unter anderem einer passenden Firmware. Diese Datei herunterladen und 2x entpacken.
      2. Im Ordner dl findet man die Datei dsl_vr9_firmware_xdsl-05.04.07.09.01.06_05.04.04.04.01.01.tar.gz. Diese Datei entpacken, und es erscheint neben License.txt die Datei xcpe_hw.bin.
      3. Diese Datei auf das laufende OpenWrt laden, z.B. von einem lokalen Terminal scp /quellordner/xcpe_hw.bin [email protected]:/tmp/xcpe_hw.bin
      4. auf den Router cat /proc/mtd | grep dsl ausführen, um die Partition der Firmware zu finden - als Ergebnis sollte mtd6 erscheinen
      5. auf dem Router ins Verzeichnis /tmp wechseln und tar cvz xcpe_hw.bin | mtd write - /dev/mtd6 ausführen, anschließend, wenn das erfolgreich lief dann reboot
      6. Nach dem Neustart der Box cd /lib/firmware/lantiq und per ls den dort erscheinenden Dateinamen lesen und kopieren. Magischerweise war das bei mir immer der Dateiname des Images, das eben ins Flash geschrieben wurde.
      7. Nun die Konfigurations-Datei bearbeiten: vi /etc/config/network : im Bereich config vdsl 'dsl' den Pfad anpassen, z.B. zu option firmware '/lib/firmware/lantiq/xcpe_hw.bin'
        Dazu mit den Cursortasten an die Stelle gelangen, dann i drücken, den Text anpassen, mit Esc abschließen und zum Schluss :wq Enter zum Beenden eingeben.
        Achtung: man sollte es wohl wirklich in dieser Reihenfolge machen. Wenn der Dateiname schon vor dem Neustart in der config steht, sind bei mir komische Dinge passiert... :confused:
    2. Per reboot die Box neu starten. Nun müsste es klappen mit der DSL-Synchronisation.
    3. Ob und was für eine Verbindung zu Stande gekommen ist, verrät der Output von
      /etc/init.d/dsl_control status .
  • OpenWrt konfigurieren
    Für Details dazu sei auf das OpenWrt Wiki verwiesen.... Keine Panik, im Prinzip lässt sich alles per Web-Interface einstellen, das zu Beginn unter http://192.168.1.1 erreichbar ist.
    1. Passwort einrichten: durch eingeben eines Passwortes einloggen - Damit landet man auf der Administrations-Seite und gibt dort das Passwort erneut ein. Außerdem sollte man weiter unten einstellen, dass das Web-Interface nur über interne Ports zugänglich ist, also bei "Dropbear Instance" z.B. nur "LAN" ankreuzen. Zum Schluss noch "Save&Apply" drücken.
    2. DSL-Zugang einrichten bei O2 Telekom Resale
      1. zuerst per Web-Interface einloggen http://192.168.1.1 - nun via Network -> Interfaces -> WAN
      2. dort die Eigenschaften des WAN Interfaces editieren:
        Protocol: PPPoE
        PAP/CHAP username: euer Login von den ausgelesenen Daten
        PAP/CHAP password: euer Passwort von den ausgelesenen Daten
        Access Concentrator: (leer lassen)
        Service Name: (leer lassen)
      3. Per Save&Apply die Einstellungen zuweisen
      4. Nun per SSH auf die Box zugreifen, also ssh [email protected]
      5. dort die Netzwerkeinstellungen anpassen via vi /etc/config/network
        Hier mit den Cursortasten folgende Zeilen finden und anpassen, zum Schreiben vorher die i-Taste drücken - bei ifname .7 ergänzen. Dies ist das VLan, mit dem der ganze Datenaustausch stattfinden soll. Falls bei eurem Auslesen andere VLan IDs ermittelt wurden, dann zuerst die probieren... :
        Code:
                    config interface            'wan'                                
        option ifname             'ptm0.7'                       
                    option proto 'pppoe'                    
                    option username '[email protected]'
                    option password            'NUMMER'                                 
        option ipv6 '0'
        Danach ESC drücken, und :wq Enter eingeben, zum Speichern und beenden.
      6. Nun per reboot die Box neu starten. Anschließend müsste es mit der DSL-Verbindung klappen.
    3. IPv6 Verbindung per Tunnelbroker herstellen
      1. per Web-Interface einloggen - http://192.168.1.1 - nun zu Network -> Interfaces -> WAN6 wechseln.
      2. Nun bei den Eigenschaften des Interfaces diese Daten einstellen:
        Protocol: IPv6-in-IPv4 (RFC4213) - damit dies klappt, müssen nun vermutlich noch Pakete installiert werden - grüne Schaltfläche dazu verwenden, wenn sie erscheint.
        Local IPv4 address: (leer lassen)
        Remote IPv4 address: den Wert von Server IPv4 Address eintragen
        Local IPv6 address: den Wert von Client IPv6 Address eintragen
        IPv6 routed prefix: den Wert von Routed /64 in der Tabelle Routed IPv6 Prefixes eintragen
        Dynamic tunnel: Haken setzen
        Tunnel ID: Tunnel-ID des HE.net Tunnels
        HE.net username: Benutzername bei tunnelbroker
        HE.net password: der Updatekey - einzusehen bei Tunnelbroker über das Tab 'Advanced'
      3. Per Save&Apply die Einstellungen zuweisen
      4. ggf. den Router neu starten, damit die Verbindung hergestellt wird.
Häufige Fragen

  1. Warum nicht direkt das BRNboot-Image verwenden?
    Mit uBoot und der verwendeten Partitionierung steht mehr Speicherplatz zur Verfügung, nämlich fast doppelt so viel, weil das zweite Boot-Image entfällt.
  2. Im openWRT Log erscheint 'Timeout waiting for PADO packets'
    Prüfen, ob DSL überhaupt Synchronisierung gefunden hat. Per SSH einloggen und /etc/init.d/dsl_control status - wenn hier nicht UP und Angaben in dB erscheinen, dann eine andere DSL Firmware probieren, Kabel prüfen etc....
  3. OpenWrt lehnt SSH-Verbindung ab
    Per Web einloggen und den SSH Key des eigenen Rechners via 'System -> Administration' im Bereich SSH-Keys (unten) einfügen.
  4. Der 6in4-Tunnel via Tunnelbroker funktioniert nicht, obwohl alles richtig eingetragen ist
    Auf 'Save & Apply' klicken, und danach Box neu starten, und ein paar Minuten warten, dann müsste es klappen.
  5. Openwrt Backup funktioniert, aber wie stelle ich das wieder her?
    Beim Versuch, ein Backup-Archiv zum Wiederherstellen auszuwählen kommt eine leere weiße Seite. Das ist vermutlich ein Bug. Man kann aber die Datei mit den Konfigurationsdateien manuell entpacken/hochladen.
  6. In OpenWrt steckt der Stecker in Lan1 in Port3!?
    In der Tat sind in der Übersicht des internen Routers die Anschlüsse anders benannt als auf dem Gehäuse:
    Port 2 ist LAN2
    Port 3 ist LAN1
    Port 4 ist LAN4
    Port 5 ist LAN3
  7. Und was ist mit dem BRNTOOL?
    Auch mit dem brntool via github-archiv: https://github.com/rvalles/brntool/archive/master.zip kann man ein Backup der Box anfertigen - das dauert allerdings viel länger, da die Verbindung mit 115200 baud nicht gerade schnell ist:
    Code:
    ./brntool.py --read=boot.brntool_dump --addr=0xB0000000 --verbose        --size=0x40000
            ./brntool.py --read=configuration.brntool_dump --addr=0xB0040000        --verbose --size=0x40000
            ./brntool.py --read=certificate.brntool_dump --addr=0xB0080000 --verbose        --size=0x20000
            ./brntool.py --read=special_area.brntool_dump --addr=0xB00A0000        --verbose --size=0x20000
            ./brntool.py --read=primary_setting.brntool_dump --addr=0xB00C0000        --verbose --size=0x20000
            ./brntool.py --read=code_image_0.brntool_dump --addr=0xB00E0000        --verbose --size=0x780000
            ./brntool.py --read=code_image_1.brntool_dump --addr=0xB0860000        --verbose --size=0x780000
            ./brntool.py --read=boot_params.brntool_dump --addr=0xB0FE0000 --verbose        --size=0x20000
  8. Wo bekomme ich denn eine weitere O2 Box 6431 her?
    Beispielsweise via eBay ab 5€, eBay Kleinanzeigen, etc...
  9. Was muss ich konfigurieren, um die Telefon-Buchsen der Box zu verwenden?
    Diese werden im standard-Build nicht unterstützt, man muss schon beim erstellen des openWrt Images die Treiber und Asterisk integrieren. z.b. im OpenWrt Forum geht es um das Thema hier.
  10. ...
 
Zuletzt bearbeitet:
Moin,

also als ersten Versuch habe ich das brnboot image über das brnboot recovery interface hochgeladen und geflasht.
Dabei habe ich an der Konsole zugeschaut, und es schien mir als Nicht-Fachmensch so auszusehen, als ob es gut geklappt hätte.
Dann per recovery web-interface neu gestartet - und schon konnte ich dem openwrt ein Passwort geben. Luci ist also mit dabei in dem 4MB image. Das sieht doch gut aus!

ABER:
dann habe ich mich hier und dort umgeschaut in openwrt und danach den Router neu gestartet: Das sah schon an der Konsole verdächtig anders aus, und in der Tat: die olle O2 Firmware läuft jetzt wieder automatisch.
Das ist mir doch sehr suspekt, muss ich sagen. Ich hätte ja gedacht, dass sie beim flashen überschrieben worden sei... Und wo ist das openwrt nun geblieben?

##edit
aha: man muss das Gerät danach kurz stromlos machen, dann bleibt das image erhalten.
Nun wird immer openwrt gebootet. Allerdings gibt es nun das Problem, dass die Netzwerkports nicht mehr aktiv werden möchten.
Code:
[   11.800000] PCI: Enabling device 0000:00:0e.0 (0000 -> 0002)
[   11.804000] rt2800pci 0000:00:0e.0: failed to load eeprom property
[   11.812000] ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM data from 'RT3062.eeprom'.
[   11.820000] rt2800pci 0000:00:0e.0: Direct firmware load for RT3062.eeprom failed with error -2
[   11.828000] rt2800pci 0000:00:0e.0: Falling back to user helper
[   11.928000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 3572, rev 0223 detected
[   11.932000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0008 detected
ioctl ATM_SETESI: No such device
[   19.008000] PTM 1.0.27    PTM (E1) firmware version 0.30
[   19.012000] ifxmips_ptm: PTM init succeed
[   20.692000] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   20.708000] device eth0.1 entered promiscuous mode
[   20.712000] device eth0 entered promiscuous mode
[   20.724000] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   23.356000] jffs2: notice: (1091) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xda.
[   32.584000] random: nonblocking pool is initialized



BusyBox v1.23.2 (2015-06-02 14:45:26 CEST) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (15.05-rc2, r45918)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@OpenWrt:/#

Da es ja auf der openwrt-Seite einen Hinweis zu neueren Versionen gibt, dass in denen die DSL-Firmware manuell ausgetauscht werden muss, habe ich auch das RC2 (s.o.) ausprobiert - mit dem selben Ergebnis. Sehr rätselhaft mal wieder....
 
Zuletzt bearbeitet:
ich glaube nicht, dass das stabil laufen wird.. warum tust du dir das eigentlich an? aber halt uns auf dem laufenden :)
wieso nicht lieber ein Modem + pfSense auf ner APU?
 
Ich habs damals nur gefunden und nie ausprobiert (mangels 6431), ich kann da leider nichts zu sagen.
 
So, Endlich: Erfolgsmeldung! Ich habe das ganze Programm durchgezogen (außer das UART flashen, aber Kabel schon drangelötet), wie auf der openWRT Seite beschrieben. Im Prinzip ganz einfach. Ich dachte, die zusätzlichen Tools muss man erst herrunterladen oder so, aber die gibt's alle per apt-get.

Das Problem war wohl, dass ich bei den ersten Versuchen keine passende DSL Firmware für den das Lantiq Modem reingeladen hatte, und so gab es auch keine Synchronisation - da kann man natürlich in der Netzwerk-Konfig probieren, was man möchte :D
Nun läuft es auf der Box:
Line Speed: 25.088 Mb/s / 5.056 Mb/s
Line Attenuation: 17.4 dB / 0 dB
Noise Margin: 17.6 dB / 20.5 dB
Inklusive IPv6 Tunnel via HE.net. Das war mir am wichtigsten.

Übrigens: als DSL-Einwahldaten habe ich diesmal die Daten genommen, die ich aus der eigenen O2 Box 6431 ausgelesen habe. Im O2 Forum konnte man sie auch per PN Anfrage an einen Moderator in einem speziellen Thread erhalten - aber es waren andere. Interessanterweise funktionierte mit diesen Daten der Login mit der Fritzbox super. Aber da ich nur eine alte 7570 (immerhin mit DECT) habe, die bei dem VDSL2 hier immer die Synchronisation verliert, konnte ich auf die O2 Box nicht verzichten. Vielleicht weil ich einen Telekom Resale Anschluss habe?
Na mal gucken, wie sie sich jetzt im längeren Betrieb schlägt...
 
Zuletzt bearbeitet:
hallo, ich möchte auch open-wrt auf diese box bringen, und diese dann an einem o2 "altvertrag" nutzen. Kannst du mir sagen, ob die telefonie danach mit "herkömmlichen" voip-daten funktioniert. Bisher kann man in dieser box ja nur diesen pincode von "neuverträgen" (alice) eingeben, und genau diesen code gibt es aber bei o2 altverträgen nicht, was die box derzeit etwas nutzlos macht (surfen geht immerhin).
 
Hallo wbk,

ich werde mal nach und nach die Schritte zum Umstieg in das Post am Anfang einarbeiten, damit der Weg dahin einfacher wird.

Zu VoIP mit der O2 Box 6431 unter openWRT kann ich aber leider noch nichts sagen. Ich benutze eine Fritzbox dafür (mit Dect, dahinter als Client), und müsste ein Gerät mit TAE-Stecker erst noch auftreiben, um das überhaupt zu testen. Man müsste openwrt-seitig vermutlich Asterisk installieren, aber ob das dann alles gut klappt?

Übrigens: zwischenzeitlich hatte ich mir die Box total kaputtkonfiguriert, sodass sie nicht mehr per Netzwerk zugänglich war. Dabei hatte ich am WLan etwas herumprobiert. Nun benutze ich das WLan der Box erstmal nicht.
Und: experimentieren würde ich lieber mit einer separaten Box. Nicht, dass man sich die eigene O2-Box zerschießt, und dann klappt gar nix mehr.

viele grüße
 
hallo sammy, mega anleitung inzwischen - wow. Würde ich mir direkt mal zutrauen... Kannst du inzwischen schon was zur voip-telefonie sagen? Gibts da eine sektion im open-wrt, wo die zugangsdaten rein können? Das wäre sehr wichtig für mich! danke nochmal im voraus!
 
Moin,

also ich muss sagen, dass ich mir zwar ein altes Gerät mit TAE-Stecker organisiert habe, aber bei der Konfiguration in OopenWrt für SIP überhaupt nicht durchblicke.
Ich habe also Asterisk und das Luci Interface dazu (via Luci) installiert, außerdem PBX, und jetzt gibt es einmal Asterisk mit hunderten Optionen via Dienste-Menü, und dann noch als separates Menü mit Phones, Trunks, Voicemail, Meetme und Call Routing. Das schien mir auf den ersten Blick sinnvoll, aber jetzt verwirrt es um so mehr.
Bei 'Phones' gibt es schon zwei Einträge (Dummy, oder die zwei TAE-Anschlüsse?) nämlich PAP2T und PAP2T2, wo man allerdings auch Benutzer und Pass, Ports etc. einträgt.
Bei Trunks gibt es schon einen Eintrag 'Providerphone' mit allerdings sehr wenig Optionen. Dahinter habe ich zuerst vermutet, dass ich hier Sipgate einrichte - aber das habe ich nicht so hinbekommen, dass es funktioniert.

Alles an Doku, was ich gefunden habe, bezieht sich aber auf die Kommandozeile (also eher weniger schnell zu verstehen meinerseits) und ist meist auch noch viel älter als das aktuelle OpenWrt Release.

viele grüße
 
Hallo,
Ich würde gerne wissen, ob es mit den O2 Box 6431 und Openwrt möglich ist eine IP über LAN1 (wie bei zb. Fritzbox) zu bekommen. Die Frage ist, ob es einen internen Switch hat. Ich brauche für meine Zwecke die DSL Anbindung nicht.
Eine weitere Frage ist, ob der ganze Prozedur mit brntool auch mit ttyACM anstatt ttyusb funktioniert? Ich nutzte nämlich Arduino als Converter.
Viele Dank im Voraus
 
Moin,

also ich würde behaupten, dass das geht. Der Port heißt dort WAN, und man kann einige verschiedene Zugangsarten darüber auswählen, siehe Bild. Für dich wäre wohl entweder DHCP oder Static Adress das Ziel:
Bildschirmfoto 2016-06-17 um 23.50.59.png

Zum Thema switch gibt es einen eigenen Menüpunkt, der aber für VLAN-Einstellugnen gedacht ist.
Die Funktionalität, dass das Ding keine IP-Adressen vergibt bzw. keinen Router mit NAT macht müsste man dann wohl bei DHCP und DNS einstellen und auch die entsprechenden Dienste deaktivieren...

Zu ttyACM kann ich leider überhaupt nichts sagen. Aber ohne Experte auf dem Gebiet zu sein, vermute ich mal, dass es nur drauf ankommt, dass man eine Verbindung hinbekommt - wenn man also beim Booten das Log mitlesen kann, und auch gesendetes ankommt, dann müsste es klappen...

viele grüße
 
Hallo zusammen,

ich hab mich an die Anleitung gehalten und konnte alles bisher bis einschließlich Schritt F erfolgreich durchführen. Das heißt u-boot ist installiert und bootet jedes Mal.
Nach dem Reset in Schritt F bekommt die o2 Box jedoch auf keinem Switch Port einen Link zum Switch. Auch ein Ping von u-boot auf die 192.168.1.2 schlägt fehl.

Obwohl gerade ein Kabel an LAN 1 hängt, wird in u-boot Folgendes angezeigt:
Code:
VGV7510KW22 # ping 192.168.1.2
ltq_phy: addr 17, link 0, speed 100, duplex 0
ltq_phy: addr 18, link 0, speed 100, duplex 0
ltq_phy: addr 19, link 0, speed 100, duplex 0
ltq_phy: addr 20, link 0, speed 100, duplex 0
Using ltq-eth device
ping failed; host 192.168.1.2 is not alive

Es handelt sich um eine o2 6431 Box mit ursprünglichem Bootloader 1.08 und somit um Lantiq VRC288 v.1.2.
Hat jemand Tipps, wie ich die LAN-Ports zum Laufen bekomme, um das OpenWRT Image per TFTP laden und entsprechend in den Flash schreiben zu können?

Viele Grüße

buddy101
 
Hallo buddy101,

oh, das ist ja ein komisches Problem. Das einzige, was mir dazu einfällt, ist, die vorherigen Schritte erneut zu probieren. ggf. auch mal diesen und jenen Stecker ziehen, einige Zeit so lassen, und dann wieder verbinden, ggf. andere LAN ports probieren. Aber das hast du bestimmt alles schon probiert...
Das klingt jetzt sehr nach herumstochern im Nebel, und genau so ist es auch meinerseits....

viele grüße
 
Hallo buddy101,

so, es kam wie es kommen musste, und ich stand plötzlich vor dem gleichen Problem. Aber wie es sich herausstellt, kann man auch direkt via USB-Adapter Daten senden - das dauert halt ziemlich lange.
Die Schritte dazu habe ich oben ergänzt - so hat es bei mir geklappt. Um ehrlich zu sein finde ich es auch komfortabler ohne TFTP, weil man sich die Stöpselei mit den Netzwerkkabeln spart....

viele grüße
 
Flash openwrt on o2 box 6431 via Raspberry Pi 2

Hallo zusammen,
ich habe eine solche Box geschenkt bekommen und möchte sie gerne als Switch mit WLAN in meinem Netzwerk verwenden. Das geht prinzipiell auch mit der Original Firmware, jedoch verabschiedet sich dort immer das WLAN.
Ich versuche gerade die Anleitung zu befolgen und verwende einen Raspberry Pi 2.
IMG_20170101_210614.jpg

Um zukünftig an die Pins für die Serielle kommunikation zu kommen, auch wenn ich das Gehäuse wieder geschlossen habe, habe ich zwei Stege der Lüftung auf der Rückseite entfernt. So kann ich ganz normale Jumperkabel benutzen.

Um die GPIO Ports des Raspberry Pi zu nutzen muss muss die Serielle Kommunikation des Raspberry Pi ausgeschaltet werden.
Näheres bei instructables.com: http://www.instructables.com/id/Read-and-write-from-serial-port-with-Raspberry-Pi/

Der Code zum Aufrufen von minicom ändert sich zu:
Code:
[COLOR=#333333][FONT=&amp]minicom -D /dev/ttyAMA0 -b 115200 -w[/FONT][/COLOR]
Die Option -w habe ich ergänzt, das bei mir der Zeilenumbruch nicht zuverlässig angezeigt wird. Die Protokolldatei ist jedoch in Ordnung.

Mein Problem ist, das ich die Leertaste drücken kann so oft ich will, ich komme nicht in das Bootmenü.

Zudem ist mir nicht ganz klar, ob man OpenWrt zwingend über die Serielle Schnittstelle installieren muss, oder ob auch das burnboot recovery genutzt werden kann. https://wiki.openwrt.org/doc/techref/bootloader/brnboot
Nach dem Einschalten des Routers bei gedrücktem Reset-Knopf, kann dort über http://192.168.1.1/undoc_upgrade.stm sowohl ein Bootloader als auch ein Master geflasht werden. Mir ist auch nicht klar welche Dateien dafür ausgewählt werden müssen.

Gruß Martin



- - - Aktualisiert - - -

Eine Suche bei Google nach "Press Space Bar 3 times to enter command mode ..." legt die Vermutung nahe, dass die UART Schnittstelle des Raspberry Pi möglicherweise nicht geeignet ist die Leerzeichen zu übertragen oder nicht so überträgt, dass sie von dem Router verstanden werden.
 
Kann es sein, dass du einen RaspPI3 verwendest? Dann wird /dev/ttyAMA0 von BT verwendet. Dazu einfach mal in der /boot/config.txt die Zeile dtoverlay=pi3-disable-bt ergänzen um BT temporär zu deaktivieren und neu starten. Oder mal speziell nach den geänderten UART des PI3 suchen.

EDIT: Habe überlesen, dass du einen PI2 verwendest, von daher kannst du meinen Beitrag ignorieren. Mahlzeit! :-o
 
Zuletzt bearbeitet:
Was ist der Lohn für diesen Aufwand? Vernichtung von Lebenszeit wird es nicht sein.

Es muß einen Grund geben. Bitte um eine kurze Information.

LG
grauGolz
 
Ich habe es mit einem NodeMCU gemacht, bei dem den Reset mit Ground verbunden habe und so nur die TTL Schnittstelle genutzt habe.
Anschließend hat alles fehlerfrei funktioniert. Vielen Dank für die Anleitung.
Leider war die WLAN Verbindung auch mit OpenWRT nicht besser. Ich konnte andere WLANs erkennen jedoch war die Einrichtung eines Accesspoints nicht möglich.
Ich habe darauf hin der Router entsorgt, da aus meiner Sicht die Wahrscheinlichkeit groß ist, dass die Hardware defekt ist. Zumal es im Internet viele Berichte zu WLAN Problemen mit diesem Router gibt.
Für mich war das aufspielen einer neuen Firmware, der Umgang mit TFTP und seriellem Protokoll trotzdem eine interessante Herausforderung deren Lösung mir viel Spaß gemacht hat.
Gruß
Martin
 
Endlosschleife beim Booten

Moin zusammen,

Also starten in UART funktioniert mittlerweile, und auch ueber cat das uboot-img aufspielen funktioniert. Es startet die commandozeile

Code:
VGV7510KW22 #

Jetzt versuche ich Schritt F zu machen aus sammy's post:

F. u-Boot als Bootmanager installieren im Flash

  1. Achtung: in diesem Schritt wird der Bootmanager ins Flash geschrieben - wenn dies fehlschlägt und die O2 Box danach nicht mehr bootet, kann man es nur per UART-Boot beheben, wozu es nötig ist, Kabel an der Platine anzulöten - siehe openWRT Wiki.
  2. Nun booten wir erneut in den u-boot Bootmanager wie in Schritt 3 beschrieben.
  3. Im nächsten Schritt laden wir den u-Boot Bootmanager für das Flash in den Speicher:
    tftpboot openwrt-lantiq-vgv7510kw22_nor-u-boot.img
  4. ... und schreiben es ins Flash: run write-uboot-nor
  5. Anschließend Neustart der Box durch reset


Da ich tftpboot nicht nutzen kann - mein Laptop hat keine RJ45 Buchse mehr - versuche ich ueber loadx die notwendige Datei ins Memory zu bekommen, und danach zu installieren. Das scheint aber nicht zu funktionieren:

Code:
VGV7510KW22 # loadx                                                             
## Ready for binary (xmodem) download to 0x81000000 at 115200 bps...            
Cs                                                                              
## Total Size      = 0x0003664c = 222796 Bytes                                  
VGV7510KW22 # run write-uboot-nor                                               
.. done                                                                         
Un-Protected 2 sectors                                                          
                                                                                
.. done                                                                         
Erased 2 sectors                                                                
cp - memory copy                                                                
                                                                                
Usage:                                                                          
cp [.b, .w, .l] source target count                                             
VGV7510KW22 #

... da fehlt doch noch was, oder? Auf jeden fall, wenn ich jetzt das 'reset' commando gebe, bootet das Geraet wieder in UART mode. Meine konkrete Fragen:

1. Weiss jemand, was genau schiefgeht und warum?
2. Wenn der file transfer fehlschlaegt: gibt es eine alternative zum lankabelgebundene tftp?

Vielen Dank!

Gerardus




PS: die gesamte Ausgabe des Terminals:

Code:
Welcome to minicom 2.7

OPTIONS: I18n 
Compiled on Feb  7 2016, 13:37:27.
Port /dev/ttyUSB0, 01:03:46

Press CTRL-A Z for help on special keys


ROM VER: 1.1.4
CFG 04
UART
******************************************************************************** ~[COLOR=#0000ff]1~[/COLOR]

U-Boot 2013.10-openwrt4 (Mar 01 2017 - 08:01:38) VGV7510KW22

Board: Arcadyan VGV7510KW22
SoC:   Lantiq VRX288 v1.2
CPU:   125 MHz
IO:    125 MHz
BUS:   125 MHz
BOOT:  UART
DRAM:  64 MiB                                                                   
Flash: 16 MiB                                                                   
Using default environment                                                       
                                                                                
In:    serial                                                                   
Out:   serial                                                                   
Err:   serial                                                                   
Net:   ltq-eth                                                                  
VGV7510KW22 # loadx [COLOR=#0000ff]~2~                                                                    
[/COLOR]## Ready for binary (xmodem) download to 0x81000000 at 115200 bps...                      
C                                                                                         
                                                                                          
                                                                                          
         +-----------[xmodem upload - Press CTRL-C to quit]------------+                  
         |Sending openwrt-lantiq-vgv7510kw22_nor-u-boot.img, 1740 block|                  
         |s: Give your local XMODEM receive command now.               |                  
         |Bytes Sent: 222848   BPS:7978                                |                  
         |                                                             |                  
         |Transfer complete                                            |                  
         |                                                             |                  
         | READY: press any key to continue...                         |                  
         +-------------------------------------------------------------+
C/0(STX)/0(CAN) packets, 1 retries                                                        
## Total Size      = 0x0003664c = 222796 Bytes 
VGV7510KW22 # run write-uboot-nor [COLOR=#0000ff]~3~[/COLOR]                                                         
.. done                                                                                   
Un-Protected 2 sectors                                                                    
                                                                                          
.. done                                                                                   
Erased 2 sectors                                                                          
cp - memory copy                                                                          
                                                                                          
Usage:                                                                                    
cp [.b, .w, .l] source target count                                                       
VGV7510KW22 # reset  [COLOR=#0000ff]~4~[/COLOR]
ROM VER: 1.1.4
CFG 04
UART

Kommentar:
~1~: hier habe ich das uboot image in einem anderen Fenster auf das Geraet geladen mit cat openwrt-lantiq-vgv7510kw22_ram-u-boot.asc > /dev/ttyUSB0
~2~: hier habe ich ueber e ctrl-a,z,s in minicom die Datei openwrt-lantiq-vgv7510kw22_nor-u-boot.img geschickt
~3~: hier habe ich die Datei installiert. Oder versucht zu installieren. Hier geht was schief, denke ich.
~4~: das reset commando dass das Geraet wieder in UART boot bringt.
 
Zuletzt bearbeitet:
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.