WD10EZEX Festplatte reparieren: PCB-Tausch, SPI-ROM flashen und der Fehler den ALLE machen
Von einem Profi für Profis — und alle die es werden wollen.

Die Ausgangssituation
Eine Western Digital WD10EZEX-60ZF5A0 (1TB, SATA) liegt im Schrank. Backup-Platte, funktionierte einwandfrei — bis der Motor-Controller auf dem PCB durchgebrannt ist. Klassischer Überspannungsschaden. Der Chip hat einen runden Brandfleck in der Mitte, die Platte ist tot.

Die Daten sind wichtig. Also: PCB-Tausch.
Klingt einfach. Ist es nicht.
Dieser Artikel beschreibt den kompletten Weg — inklusive aller Fehler, Sackgassen und der überraschenden Lösung am Ende. Denn genau da steckt das Wissen das wirklich zählt.
Was du brauchst
- MiniPRO TL866 (oder CH341A, aber MiniPRO ist deutlich zuverlässiger)
- SOIC-8 Clip (für In-Circuit-Lesen, optional)
- Lötstation mit Heißluft
- Isopropylalkohol 99%
- Wattestäbchen
- Multimeter
- AsProgrammer oder Xgpro Software
- CrystalDiskInfo
- Geduld. Viel Geduld.
Schritt 1: Original-ROM sichern — BEVOR du irgendetwas tust

Das ist der wichtigste Schritt überhaupt. Ohne Original-ROM kannst du die Platte nicht retten.
Der SPI-ROM-Chip auf dem PCB enthält:
- Die Firmware (
80.00A80in diesem Fall) - Die ROYL-Module — plattenspezifische Adaptive Parameter für die Schreib-/Leseköpfe
- Head Map mit DCM-Code (
{O{Pbei dieser Platte) - Servo-Kalibrierungswerte
Diese Daten sind einzigartig für jede einzelne Platte. Kein anderes Board hat diese Werte. Ohne sie findet die MCU die Service Area (SA) auf den Magnetplatten nicht → Platte bootet nicht.
ROM auslesen — richtig
Chipbezeichnung identifizieren: Auf dem Original-PCB der WD10EZEX-60ZF5A0 mit MCU 771824-706 sitzt ein Winbond W25Q32JV — 32Mbit = 4MB.
⚠️ Kritischer Fehler: Viele Tools erkennen den W25Q32 automatisch als kleineren Chip und lesen nur 1MB aus. Das reicht zufällig, weil WD den ROM als 4x identische 256KB-Kopien ablegt — aber du weißt es nicht sicher bis du es geprüft hast!
So liest du korrekt aus:
- MiniPRO starten
- Manuell auswählen: Winbond → W25Q32JV
- NICHT automatisch erkennen lassen
- Read → Datei speichern als
original_rom.BIN - Größe prüfen: muss 4.194.304 bytes = 4MB sein
Struktur des WD Tresselb ROM:
0x000000 - 0x03FFFF → 256KB aktiver ROM (Firmware + ROYL)
0x040000 - 0x07FFFF → 256KB Backup-Kopie (identisch)
0x080000 - 0x0BFFFF → 256KB Backup-Kopie (identisch)
0x0C0000 - 0x0FFFFF → 256KB Backup-Kopie (identisch)
Der ROYL-Bereich liegt bei Offset 0x3D000 bis 0x40000 (12KB) innerhalb jeder 256KB-Kopie.
ROM analysieren mit Python
python
with open('original_rom.BIN', 'rb') as f:
d = f.read()
# Prüfe ob alle 4 Kopien identisch sind
q = 0x40000
print("Q1==Q2:", d[0:q] == d[q:2*q])
print("Q1==Q3:", d[0:q] == d[2*q:3*q])
print("Q1==Q4:", d[0:q] == d[3*q:4*q])
# ROYL finden
import re
for m in re.finditer(b'ROYL', d[:0x40000]):
pos = m.start()
block = d[pos:pos+32]
print(f"ROYL @ 0x{pos:05x}: {block.hex()}")
print(f" DCM: {block[0x0c:0x14].decode('ascii','replace')}")
Schritt 2: Das richtige Spenderboard finden
Hier machen 90% aller Hobbyisten den entscheidenden Fehler: Sie kaufen ein Board mit gleicher PCB-Nummer aber falscher MCU.


Was wirklich zählt
Die PCB-Nummer (2060-771824-006) ist nicht ausreichend. Was zählt ist die MCU-Revision auf dem Marvell-Chip.
So liest du die MCU-Revision:
- Dreh das PCB um
- Suche den QR-Code auf dem Marvell-Chip (großer quadratischer BGA-Chip)
- Dort steht z.B.
771824-706undXCET15
Für die WD10EZEX-60ZF5A0 brauchst du:
| Parameter | Wert |
|---|---|
| MCU | 771824-706 |
| Stepping | XCET15 |
| PCB | 2060-771824-006 REV A |
Häufige Verwechslungen:
| MCU | Stepping | Kompatibel? |
|---|---|---|
| 771824-706 | XCET15 | ✅ JA |
| 771824-A06 | XCVS14 | ⚠️ Bedingt* |
| 771824-K03 | XLEU02 | ❌ NEIN |
| 771824-003 | — | ❌ NEIN |
*Mehr dazu weiter unten.
Pro-Tipp beim eBay-Kauf: Verlange immer ein Foto vom MCU-QR-Code. Seriöse Verkäufer liefern das sofort. Wer zögert — nicht kaufen.
Schritt 3: ROM auf Spenderboard übertragen
Option A: ROM-Chip physisch tauschen (empfohlen)
- Original ROM-Chip vom defekten PCB ablöten (Heißluft, 320°C, SOIC-8)
- ROM-Chip vom Spenderboard ablöten
- Original-Chip auf Spenderboard löten
- Pin 1 Orientierung beachten! (kleiner Punkt auf Chip = Pin 1)
- Fertig — kein Flashen nötig
Option B: ROM-Inhalt übertragen (wenn Chip tot)
Wenn der Original-Chip defekt ist, muss der Inhalt auf einen neuen Chip geflasht werden.
Chipauswahl:
- Original war W25Q32JV (4MB)? → Neuen W25Q32JV kaufen (~1-2€)
- Spenderboard hat PM25LD040 (512KB)? → Trotzdem kompatibel! (siehe unten)
Wichtig beim Flashen auf kleineren Chip:
Wenn der Spenderboard-Chip kleiner ist als der Original-Chip, musst du die Datei anpassen:
python
# 4MB ROM auf 512KB kürzen (erste 512KB reichen!)
with open('original_rom.BIN', 'rb') as f:
orig = f.read()
# Prüfe ob ROYL in den ersten 512KB liegt
royl_pos = orig.find(b'ROYL')
print(f"ROYL bei: 0x{royl_pos:x}") # Muss < 0x80000 sein!
# Erste 512KB extrahieren
first_512kb = orig[:0x80000]
with open('rom_512kb.BIN', 'wb') as f:
f.write(first_512kb)
print(f"Größe: {len(first_512kb)} bytes")
print(f"ROYL vorhanden: {b'ROYL' in first_512kb}")
Bei der WD10EZEX-60ZF5A0 liegt ROYL bei 0x3D1B2 — das ist innerhalb der ersten 512KB. ✅
MiniPRO Einstellungen:
- Device:
PM25LD040(manuell auswählen!) - Format: BINARY
- Load mode: Normal
- From File Start Addr: 00000
- Erase → Write → Verify — alle drei Schritte!
- Verify muss 100% sein!
Schritt 4: Testen und Fehlersuche
Symptome und Bedeutung
| Symptom | Bedeutung |
|---|---|
| Platte dreht nicht | PCB tot, kein Boot |
| Klicken (klack klack) | Köpfe finden SA nicht → ROYL falsch |
| Dreht, stoppt nach 20 Sek. | SA-Lesefehler, Timeout |
| Dreht, wird erkannt aber langsam | J1-Kontakte verschmutzt! |
| Dreht, wird erkannt, läuft normal | ✅ Erfolg! |
Der Fehler den alle übersehen: Die J1-Kontakte
Das ist die Lektion dieses Artikels.
Nachdem stundenlang ROM-Dumps analysiert, MCU-Revisionen verglichen und verschiedene Spenderboards getestet wurden — war die eigentliche Ursache des ursprünglichen PCB-Defekts korrodierte Kontaktpads am J1-Anschluss.
J1 ist der Flachbandsteckverbinder zwischen PCB und HDA (Head/Disk Assembly). Über diese Pads kommuniziert die MCU mit dem Preamplifier auf den Leseköpfen.
Wenn diese Pads korrodiert oder verschmutzt sind:
- Preamplifier-Kommunikation instabil
- MCU erhöht Strom → Motor-Controller überlastet → brennt durch
- Neues PCB drauf → gleiches Problem nach kurzer Zeit
Reinigung:
- Isopropylalkohol 99% auf Wattestäbchen
- Alle J1-Pads auf PCB-Seite UND HDA-Seite sanft reinigen
- Trocknen lassen (30 Sekunden)
- Unter Lupe prüfen: Pads müssen blank und glänzend sein
Das klingt trivial. Es ist aber in vielen Fällen der entscheidende Unterschied zwischen Erfolg und Misserfolg.
SMART-Werte interpretieren nach der Reparatur
Nach erfolgreicher Reparatur CrystalDiskInfo öffnen und diese Werte prüfen:
| ID | Name | Was bedeutet es? |
|---|---|---|
| 05 | Wiederzugewiesene Sektoren | Muss 0 sein! |
| 0A | Misslungene Spindelanläufe | Sollte 0 sein |
| BC | Befehlszeitüberschreitung | Kleine Werte OK, hohe Werte = J1 Kontaktproblem |
| C5 | Ausstehende Sektoren | Muss 0 sein! |
| C6 | Nicht korrigierbare Sektoren | Muss 0 sein! |
Wenn BC (Befehlszeitüberschreitung) erhöhte Rohwerte zeigt aber alles andere grün ist → J1-Kontakte nochmal reinigen und direkt per SATA (nicht USB) testen.
Häufige Fehler — Zusammenfassung
❌ Fehler 1: ROM-Chip zu klein ausgelesen
Lösung: Immer manuell den Chip-Typ in der Software auswählen. Nie automatisch erkennen lassen. Größe nach dem Lesen prüfen.
❌ Fehler 2: Falsches Spenderboard (MCU-Revision)
Lösung: PCB-Nummer reicht nicht. Immer MCU-QR-Code prüfen. Für WD10EZEX-60ZF5A0 muss 771824-706 + XCET15 draufstehen.
❌ Fehler 3: Verify nach dem Flashen vergessen
Lösung: Immer Erase → Write → Verify. Alle drei Schritte. Ein stiller Write-Fehler kostet Stunden.
❌ Fehler 4: J1-Kontakte nicht gereinigt
Lösung: Immer J1-Kontakte reinigen bevor das neue PCB montiert wird. Das ist der am häufigsten übersehene Schritt.
❌ Fehler 5: USB-Adapter für den Test
Lösung: Für Diagnosezwecke immer direkt SATA am Mainboard testen. USB-Adapter haben eigene Timeouts und verfälschen das Bild.
Randnotiz aus der Praxis: Bei dieser konkreten Reparatur lief die gerettete Platte zunächst an USB 2.0 mit 39 MB/s — das ist bereits am absoluten Maximum von USB 2.0 (real ca. 35-40 MB/s). Erhöhte SMART-Werte bei „Befehlszeitüberschreitung“ (BC) verschwinden in solchen Fällen oft komplett sobald die Platte an USB 3.0 oder direkt per SATA betrieben wird. Nicht jeder SMART-Alarm ist ein echtes Plattenproblem!
Werkzeug-Empfehlungen
| Tool | Verwendung | Kosten |
|---|---|---|
| MiniPRO TL866A/II | ROM lesen/schreiben | ~40€ |
| SOIC-8 Clip | In-Circuit ohne Auslöten | ~5€ |
| W25Q32JV (SOIC-8) | Ersatz-ROM-Chip | ~2€ |
| CrystalDiskInfo | SMART-Diagnose | Kostenlos |
| Isopropylalkohol 99% | Kontaktreinigung | ~5€ |

Fazit
PCB-Tausch bei Western Digital Festplatten ist machbar — aber nur wenn man die Details kennt. Die MCU-Revision, der korrekte ROM-Dump, die richtige Chip-Auswahl im Programmer, und vor allem: die J1-Kontakte.
Diese Reparatur hat gezeigt: Manchmal ist die Lösung ein Wattestäbchen mit Isopropylalkohol. Nicht ein 300€-Profi-Tool.
Aber ohne das Verständnis der Hintergründe — ROM-Struktur, ROYL-Module, MCU-Kommunikation — wäre man nie auf die richtige Idee gekommen.
Das ist der Unterschied zwischen einem Profi und jemandem der zufällig Glück hat.
