Benutzer-Werkzeuge

Webseiten-Werkzeuge

010011010110100101100011011010000110000101100101011011000010000001010111011000010110001101101000011101000100110101101001011000110110100001100001011001010110110000100000010101110110000101100011011010000111010001001101011010010110001101101000011000010110010101101100001000000

English: This is a discription of the serial interface on the USRobotics USR 5461 router. If you need an english version please send me an email. If I have the time, I will try to translate it.

Serielle Konsole auf dem USR 5461

Neulich musste ich den Router USRobotics USR 5461 eines Freundes reparieren. Vor einigen Jahren habe ich ihm DD-WRT auf den Router geflasht, damit er ihn als Wireless-Client verwenden konnte. Mittlerweile ist das Passwort in Vergessenheit geraten und ich sollte den Router wieder zum Laufen bekommen.

Der USR 5461 von vorne  und von hinten

Das Problem

Nun ist die Standard-Prozedur DD-Wrt auf den Auslieferungszustand und damit das Passwort zurückzusetzen hier genau beschrieben. Allerdings funktioniert dies beim USR5461 wie hier beschrieben nicht. Aber die Lösung wird auch gleich angegeben: Die Original-Firmware flashen, dann auf Werkseinstellungen zurücksetzen und dann wieder DD-WRT flashen.

Also eben schnell tftp auf meinem Linux-Rechner installiert, feste IP gesetzt, beim Aufruf von tftp einen blöden Fehler gemacht (siehe unten) und schon funktionierte (fast) nichts mehr. Erste Versuche zeigten, dass der Bootloader noch läuft. Es ließen sich auch die verschiedenen Firmwares flashen, aber keine bootete.

Pinout

USR5641 - Inside In solchen Fällen hilft meistens eine Serielle Konsole, die bei vielen Geräten wie diesem Router irgendwo auf der Platine abzugreifen ist. Schnell war diese Seite gefunden, aber das wichtigste, die Pinbelegung, war nicht angegeben.

Nun musste ich die Pinbelegung selbst rausfinden. Also habe ich das Gehäuse geöffnet (unter den Füßen sind auch noch Klammern) und habe mir die Platine angeschaut. Da dies nicht das erste Gerät dieser Art ist, mit dem ich mich beschäftigte, fiel mir sofort der nicht bestückte Jumper J5 auf. 4 Pins, lötfreundlicher 2,54mm Pinabstand - das muss die serielle Schnittstelle sein.

Eine serielle Schnittstelle benötigt mindestens die Signale GND (Masse), TxD (Sendedaten) und RxD (Empfangsdaten). Häufig ist auch noch die Versorgungsspannung herausgeführt.

Der GND-Pin ist ziemlich eindeutig Pin 4 (der weiß hinterlegte Pin ist Pin 1), da er direkt mit den großen Masseflächen auf der Platine verbunden ist. Um die Datenpins zu finden habe ich dann mein Oszilloskop angeschlossen und gesehen, dass an Pin1 gelegentlich ein Rechtecksignal anliegt. Also musste das der TxD-Pin sein. Bei der Gelegenheit habe ich auch noch gleich die Frequenz nachgemessen - 115200 hz. Also gebräuchliche Parameter für eine Serielle Schnittstelle. An Pin2 war nichts zu erkennen und an Pin3 lagen dauerhaft 3.3V - also die Versorgungsspannung. Bleibt für Pin2 nur die Empfangsleitung übrig.

USR5641 - Pinout

Pin Signal
1 TxD
2 RxD
3 Vcc (3,3V)
4 GND

Nun habe ich eine Buchse aufgelötet und ein Kabel zum Anschluss an eine kleine Platine mit einem MAX2323CPE gebastelt. Der MAX2323CPE ist ein Pegelwandler, der die 3,3V-TTL-Pegel in richtige +-12V RS232-Pegel wandelt so dass die serielle Schnittstelle an einem PC damit klar kommt.

Der Fehler beim Flashen

Nachdem ich nun Zugriff auf die serielle Schnittstelle hatte, konnte ich den Flash-Vorgang über TFTP genau beobachten. Es erschien eine Fehlermeldung

Could not load flash0.os:: Error

Hierzu lieferte dieser Forenpost gleich die passende Antwort :

Things that might make the difference:
1 - setting rexmt to 1
2 - using binary mode/not text

Also nun den tftp-Transfer binär durchgeführt - zunächst die original-Firmware, dann DD-WRT und nun funktioniert wieder alles.

Übrigens ist die original-Firmware auf der seriellen Konsole viel geschwätziger. Unter DD-WRT kommt nichts mehr, sobald der Linux-Kernel gestartet wird. Als letztes steht dann

Entry at 0x80001000
Closing network.
Starting program at 0x80001000

auf der seriellen Konsole.

Weitere Links:

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
projekte/usr_5461.txt · Zuletzt geändert: 09.07.2015 19:23 von michael

010011010110100101100011011010000110000101100101011011000010000001010111011000010110001101101000011101000100110101101001011000110110100001100001011001010110110000100000010101110110000101100011011010000111010001001101011010010110001101101000011000010110010101101100001000000
Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki