CPE210 wiederbeleben / unbrick

TP-LINK SafeLoader (Build time: Jun 12 2015 - 09:49:53)
CPU: 560MHz AHB: 225MHz DDR: 64MB
Performing LED check… PASS
Press CTRL+B to enter SafeLoader: 1
Flash Manufacturer: Unknown(0xc8)
Flash Device ID: Unknown(0x4017)
Data flash init failed.
open user-config failed.
open user-config failed.

TFTP server address is 192.168.0.100; our address is 192.168.0.254
Get filename ‚recovery.bin‘.

Retry count exceeded; starting again
faddr is 0x0, fsize is 0x0
reserved is 0x83832c86, load_reserved_size is 0x0
WARNING: Data loaded outside of the reserved load area, memory corruption may oc cur.
##Warning: File is unidentiable. Try downloading

TFTP server address is 192.168.0.100; our address is 192.168.0.254
Get filename ‚vmlinuz‘.

Retry count exceeded; starting again
faddr is 0x0, fsize is 0x0
reserved is 0x83832206, load_reserved_size is 0x0
WARNING: Data loaded outside of the reserved load area, memory corruption may oc cur.
##ERROR: Can’t download image.
Input Password:

STRG+B nimmt er scheinbar nicht an und beim Passwort tut sich auch nicht viel. Ich kann nur zuschauen. Hätte ich einen TFTP-Server am laufen würde er sich noch das IMG ziehen und dann Incorrect File melden.

Hat jemand zu dem Flash Baustein zufällig ein Datenblatt gefunden oder die Pin-Belegung?

Naja, das ist nicht exakt so wie bei mir, aber möglicherweise auf gleiche Art und Weise zu beheben…

Das klappt relativ gut, wenn man ähnlich vorgeht, wie bei meiner Geschichte mit den WR841ern mit 16 MByte Flash.
Einfach mit dem EEPROMer der Wahl auslesen und dann aus dem Dump (als Binärdatei, nicht als Intel Hex) entweder mit dem Tool des EEPROMers oder mit dd den Bereich zwischen 0x0000007f0000-0x000000800000 rausschneiden.

Bei der Gelegenheit auch gleich einmal den unteren Teil des u-boot durch diesen neuen u-boot mit Webinterface ersetzen, dann kann man nämlich auch besser die ART-Partition wieder flashen.

Das Fehlerbild des TE kommt mir aber leider relativ bekannt vor, ich hatte bei meinen 841er-Basteleien auch teilweise die ART-Partition beschädigt (zum Glück mit Backup) woraufhin meine Router auch schon beim Booten Kernel-Panic’ed sind. Evtl. ist hier also auch die ART-Partition beschädigt, nach einem Backup der Originalen könnte man die mal vorsichtig mit der ART-Partition eines anderen CPE210 überspielen.

Viele Grüße,
Manawyrm

Ja in die Richtung ging auch mein Gedanke.

Hast du ne EEPROMMer Empfehlung oder nen dd Befehl zur Hand?

Gruß
Christian

Also der MiniPro TL866, den ich immer nehme ist echt schick, aber es tut auch nen normaler Raspberry Pi mit nen paar Drähten :smile:

Mit dd die Flash-Partition rausstrippen sollte ungefähr so gehen:

dd if=flashdump.bin of=art.bin skip=8323072 bs=1 count=65536

Einfach das 0x7F0000 in dezimal umwandeln und dann count=64 kilobytes.
Vorsicht, ungetestet… Aber wenn du das ganze Flashdump auch aufbewahrst sollte keine allzugroße Gefahr bestehen :stuck_out_tongue:

1 „Gefällt mir“

Skip das hatte ich nicht mehr auf dem Schirm, danke! Ich hab den EZP2010 der tut es auch. Nur die Software ist deutlich beschnittener.

Da meine letzte CPE210 morgen das Haus verläßt habe ich noch schnell einen Flashdump gezogen. Die V1.1 sind nun wirklich verklebt. Ach und ich erinnere bei meiner 1.0er die ich damals mal zerflashed habe, nicht einen Safebootloader geehen zu haben. Es reicht aber wenn man mit einem dünnen Schraubenzieher leicht hinterhebelt. Dabei wird das Gehäuse fast nicht beschädigt.

Sry kam noch nicht zum abschicken… Geht morgen auf Reise :wink:
Ich freu mich. Und wenn es auch schiefgehen sollte, freu ich mich trotzdem! Dann hab ich halt noch ne Sektorantenne, die ich an meinen 841er machen kann oder sowas :smiley:

1 „Gefällt mir“

Ich kann soweit bestätigen, dass dieser Befehl die ART Partition extrahiert. Habe es mal per Hex Editor verglichen, haut hin!

dd if=cpe210v11.bin of=uboot.bin count=131072 bs=1

Spuckt die am Anfang liegende U-Boot Partition aus.

Für die Mitlesenden noch kurz die Syntax-Erklärung:

dd if=Eingabedatei of=Ausgabedatei count=zähle x Bytes bs=Blockgröße in Bytes (für Firmware Images immer 1 nehmen)

skip bedeutet Überspringe x Bytes das gibt den Startpunkt an.
count zählt dann x Bytes nach vorne, so definiert man den Endpunkt.

Mit dem seek Befehl kann man dann mergen und sich sein Image wieder in der gewünschten Reihenfolge zusammenbasteln. Und HEX umrechnen lassen kann man hier.

1 „Gefällt mir“

26 posts were merged into an existing topic: TPlink CPE210 auf Original Firmware zurück nicht möglich

@anon68922371 hast du den Flash-Dump deines CPE210 v1.1 zufällig noch? Dann könnte ich den CPE210 von @Maze, den ich versehentlich gebrickt habe, wiederbeleben. Ansonsten muss ich mir dann selbst einen Dump von einem funktionierenden Gerät ziehen.
Wie bekomme ich denn die passende Seriennummer und MAC-Adresse in den Flash-Dump eines fremden CPE210 eingefügt?

Klar:
http://www.xup.in/dl,20339772/cpe210-flash.7z/

Naja das ist nicht so einfach. Entweder du änderst alles per HEX Editor oder du tauschst die einzelnen Partitionen im Image aus so wie ich es oben beschrieben habe.

Du musst ja im Grunde nur die Image Partition austauschen.

1 „Gefällt mir“

@anon68922371 vielen Dank!

Laut dieses Beitrages sollte sie sich am Offset 0x1FC00 befinden, der Bereich ist allerdings leer. Bei meinem 940Nv3 befindet sich dort die MAC-Adresse, an 0x1FD00 die Modellnummer und an 0x1FE00 die PIN-Nummer.
Ich müsste nun wissen, ob das bei einem CPE210 v1.1 auch so ist, d. h. ob sich an 0x1FC00 die MAC-Adresse befindet, was für eine Modellnummer an 0x1FD00 steht und ob an 0x1FE00 eine PIN-Nummer zu finden ist und falls ja, wo ich die evtl. finden könnte. Falls da eine PIN-Nummer ist, ist die evtl. auch zufällig generiert, am Gerät finde ich jedenfalls keine. Dann könnte ich ja auch einfach eine neue zufällige Nummer nehmen.

Kann jemand mit einem laufenden CPE210 v1.1 mal mtd0 dumpen (cat /dev/mtd0 > /tmp/mtd0) und mit einem Hexeditor nachsehen? Das wäre toll!

Schau mal in die 7z dort ist nicht nur das gesamte Image sondern auch alle Partitionen einzeln.

Ja, habe ich gesehen, aber auch da ist an den Offsets nichts zu finden. Ich habe bisher keinen Hinweis auf die MAC-Adresse finden können :confused:

Update: Die MAC-Adresse befindet sich am Offset 0x8 in mtd2, also an anderer Stelle als in den meisten anderen TP-Link-Routern. Keine Ahnung, wieso ich die dort zunächst übersehen hatte in deinem Flash-Dump @anon68922371.

2 „Gefällt mir“

Gut zu wissen!

20202020

Hab die gleiche Ausgabe bei einen CPE510 - bist du schon weiter gekommen?

Hier ein Flashdump eines CPE210 v 1.1 EU mit der Originalen Firmware 2.1.0
Achtung, vor dem Flashen muss in der Datei bei Offset 0x30000 die MAC Adresse eures Geräts eingesetzt werden.
Die momentane MAC in dieser Datei lautet 58:58:58:58:58:58.
http://www.xup.in/dl,20709384/Flashdump_CPE201_1.1_EU_Original_BlankMAC.bin/

Ich hatte das gleiche Problem wie du. Bei mir lautete die Lösung:
mtd erase kernel
Dann die Original Firmware 1.3.3 über die TFTP Methode wieder einspielen.

ACHTUNG

Beim einspielen eines kompletten flash dumps einer anderen CPE, wird auch die ARP Partition und damit die Antennenkalibrierungsdaten überschrieben.

Die CPE wird dann zwar (wahrscheinlich) wieder booten, jedoch kann es unter Umständen sein, dass die WLAN Leistung negativ oder positiv (nicht gesetzeskonform) beeinflusst wird.

Die alte ARP Partition sollte daher in jedem Fall gesichert und zurückgespielt werden.

3 „Gefällt mir“

Servus.
Würde jemand einen Dump der Originalfirmware (zum einspielen mit einen Flasher) posten, der mit dem neuen U-Boot ausgestattet ist (der mit dem man die ART Partition übers Web-If flashen kann)?
Das wäre toll:-)
hase