Skip to content

Kaputtgeflashten WLAN-Accesspoint wiederherstellen

^ v M ><
Der WR841N v8 von TP-Link ist eigentlich gar kein schlechter Router für seinen Preis. Der Billigstheimer kommt mit ganz tauglicher Hardware daher und die Software ist eigentlich gar nicht sooo schlecht. Allerdings sind die Latenzen doch eher hoch und der Jitter untragbar. Zum Glück unterstützt die neuste Version von OpenWRT auch die neuste Revision des Geräts. Also auf, frische Firmware aufspielen. Nun gibt es zwei Images mit unterschiedlichen Dateisystemen, jffs2 und squashfs. Gemäss der Beschreibung schien mir jffs2 doch die bessere Wahl zu sein. Grosser Fehler, das jffs2-Image bootet nämlich nicht sauber, das Resultat ist ein unbrauchbarer Ziegelstein.

Was tun? Nun, man kann verzweifeln und in anbetracht des lächerlichen Preises ein Ersatzgerät bestellen oder sich vom Ehrgeiz packen lassen und den unbrick-Prozess starten. Dazu mussten als erstes die PINs in den Serial Header gelötet werden. Die Löcher sind praktischerweise schon da, aber die PINs waren wohl zu teuer. Na gut, Lötkolben her und los.

Danach wird das eigentlich für den Raspberry Pi angeschaffte serielle Konsolenkabel angesteckt. Das PIN-Layout ist identisch mit v7, nur um 90° verdreht. D.h. der alleinstehende PIN ist weiterhin TX. Entsprechend wird das Kabel nun angesteckt und mit einem PC verbunden. Da die Versorgung nun über den seriellen Port erfolgt, startet der Router auch sofort und per minicom lässt sich der Bootprozess mitverfolgen:
minicom --device /dev/ttyUSB0 -b 115200


Scheinbar hängt der Bootprozess beim laden der USB-Module (ohci_hcd). Das lässt sich verhindern, indem man in den Failsafe-Mode bootet. Dazu muss man, wenn der Prozess für ca 1s steht und die entsprechende Meldung anzeigt, rasch f[enter] eintippen. Schon erhält man eine root-Konsole und kann mit debugging loslegen.

Tatsächlich löste sich das Problem nun recht simpel. eth0 war unter 192.168.1.1 verfügbar, allerdings war eth0 der blaue WAN-Port, keiner der gelben LAN-Ports. Ausserdem schien der DHCP-Server nicht in Betrieb zu sein, so dass dem angeschlossenen Computer manuell eine IP-Adresse vergeben werden musste:
ifconfig eth0 192.168.1.2 netmask 255.255.255.0
. Anschliessend musste auf dem Router noch die Weboberfläche gestartet werden:
/etc/init.d/uhttpd start
und schon konnte bequem per Klickibunti das korrekte Firmware-Image (squashfs) aufgespielt werden.

Das Resultat: ein superflotter WLAN-Router mit relativ tiefen und stabilen Latenzen - zum Spottpreis.

Und vermutlich wäre der Lötkolben gar nicht mal nötig gewesen. Scheinbar kommt man auch in den Failsafe-Mode, indem man direkt nach dem Einschalten den Reset-Knopf drückt. Konsolenzugriff erhält man in diesem Fall per Telnet.