If you were looking for a more sophisticated title like “What did the Samsung HDD say to the TTL cable?” then you came to wrong blog.
A year or so ago I had some data access problems with this Samsung Spinpoint F3 HDD and having heard that a firmware update might help I… well… bricked it.
Recently I started digging up again about ways to revive a dead HDD. Sure, the hardware people will tell you to replace the PCB or harvest the platter and plant it in a working HDD; crazy stuff like that. I almost wanted to the PCB swap thing but then I read that you also need to replace a chip on it with the one from the original board. Not gonna happen with my soldering skills!
So I thought about other ways. And guess what HDDs have a serial console too!
Like pretty much any piece of electronics out there the developers have left themselves a way in for situations where the software no longer works.
Without further ado, here’s where the action’s at:
Green is connected RX and white TX(ummm… I think?). I am using this cable: http://www.adafruit.com/product/954
One of the other 2 pins must be the ground. What I know for sure is that the TX is connected because I can connect via minicom and get data. Haven’t yet tried sending.
The serial console settings are:
Bits per second – 57600
Data bits – 8
Parity – None
Stop Bits – 1
Flow Control – Hardware
I initially found out about this hack from a page like this one: http://hackaday.com/2012/07/30/recovering-from-a-seagate-hdd-firmware-bug/
S_0RV Sensor Circuit Enabled
Shock Sensor Circuit Enabled
RPM at Handoff: 1955
Temp : 36 degC
SK C:130150 H:0
Loaded FIT ( 0: 0: 1)
ServoTable Loaded. Rev: 0x14
Selective MARC NX Loaded
| 115 | MOVLY001 | 1 | 0 | 10 | 1140 |
Ovly loaded to 0x0001CD00
Ovly loaded to 0x1005B800
FdtTable Loaded. Rev:0x02
| 19 | RLIST | 2 | 0 | 256 | 1140 |
Reading Serial Num Pass
Hd: 0 Zn: 0 Avg.:- 131
Hd: 0 Zn: 1 Avg.: 74
Hd: 0 Zn: 0 Avg.:- 131 TgtCyl: 266857 Hd: 0 Zn: 1 Avg.: 74 SVCAL(0080,0000)-->PASS
HDD is still bricked!
I read that you can send Ctrl-Z and then input commands. Will try that next.
OK, so this is a WIP post, alright?