All times are UTC - 5 hours [ DST ]


Switch to mobile style


Post new topic Reply to topic  [ 351 posts ]  Go to page Previous  1 ... 8, 9, 10, 11, 12, 13, 14 ... 18  Next
Author Message
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 14:20 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
michael chiklis wrote:
Spildit wrote:
To backup firmware with WDR chose read all and WDR will save all modules to work folder selected on settings


Read all?
Where is this option, i can't see it :o


On 6.0 (and 3.0) :

HDD - (Select your HDD)
It will open a window. Right Click on it, chose :
Service - Modules Operation.
It will open another window.
Right click on it, chose :
I/O - Read All and I/O - Check all , etc ....
It will copy the modules to the working directory.

For depoping heads on 6.0 :

Service - Edit Heads Map. Depop Head.
Put on the box the number of the head you want to depop. Press GO

To do it on RAM :

Actions - Change Heads Map in RAM.

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 14:21 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
@ michael ...please let my topic away. go make your own one. :)

now news.

got the programmer today. just for fun..the item arrived in town on 31 march..so I waited 5 days for 5km.

now..

found the problem. see the bricked rom and the original attached. there's a missing block of 512bytes 0x200. 3.0 missed one sector during flash! :shock:

don't know if there's a bug in the 3.0 or perhaps the windows trying to detect the device exactly during the device flashing. that's why it is better to "hide" the drive behind a box. windows won't know about the drive because this is handled by the box.

to remember..the problem was on the donor's pcb, which was bricked during playing with 3.0 while depoping one head.
after flashing a good rom and I was surprised that the donor drive acted like the dead one...changed the PCB from the old drive to the donor and nothing changed (last time I did that..the drive started..so i knew that should work). still dead..I mean..clicking 5 times..not finding SA!. then I said..that's it..the preamp has gone on this drive too. but after putting back its own pcb..I observed that I didn't tighten enough the screws. so I paid a little more attention when screwing and the drive started nicely. this is another possibility for a drive to appear as dead and clicking like not finding the SA.

with the programmer along, I did first test with my flash_write function. It was written some time ago but never tested :) I can say that after the write, the pcb doesn't reboot. so I can read again the flash and compare with the one I flashed..to check if match.

see the log:
Code:
...app\Debug>wdt -test
verifying rom file to be flashed...
rom file ok.
autodetecting flash size...
old firmware assumed
flash type selected as 2. if your rom has more than 192kb you may spec greater types!
erasing Rom firmware
wd_erase_rom_firmware: SUCCEEDED
flashing the rom...please wait
wd_write_rom: SUCCEEDED
verifying flash written.
flash verification complete. flash operation was successful. you may reboot the device.


and finally I attach an image with the programmer. the soic8 clip it's a little difficult to be placed on rom chip, and has the wires soldered in a way not compatible with my ST 25P10 so I had to use some wires to reorder where the pins go.


Attachments:
soic.jpg
soic.jpg [ 2.26 MiB | Viewed 11626 times ]
ROMz.zip [250.53 KiB]
Downloaded 390 times
Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 14:26 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
Look at the pictures attached.
Those are from 5.3 manual. They are present in 6.0 too.
Modules Operations are present at 3.0 too.


Attachments:
3.jpg
3.jpg [ 27.58 KiB | Viewed 11626 times ]
2.jpg
2.jpg [ 71.41 KiB | Viewed 11626 times ]
1.jpg
1.jpg [ 49.79 KiB | Viewed 11626 times ]

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.
Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 14:32 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
louis wrote:
@ michael ...please let my topic away. go make your own one. :)

now news.

got the programmer today. just for fun..the item arrived in town on 31 march..so I waited 5 days for 5km.

now..

found the problem. see the bricked rom and the original attached. there's a missing block of 512bytes 0x200. 3.0 missed one sector during flash! :shock:

don't know if there's a bug in the 3.0 or perhaps the windows trying to detect the device exactly during the device flashing. that's why it is better to "hide" the drive behind a box. windows won't know about the drive because this is handled by the box.

to remember..the problem was on the donor's pcb, which was bricked during playing with 3.0 while depoping one head.
after flashing a good rom and I was surprised that the donor drive acted like the dead one...changed the PCB from the old drive to the donor and nothing changed (last time I did that..the drive started..so i knew that should work). still dead..I mean..clicking 5 times..not finding SA!. then I said..that's it..the preamp has gone on this drive too. but after putting back its own pcb..I observed that I didn't tighten enough the screws. so I paid a little more attention when screwing and the drive started nicely. this is another possibility for a drive to appear as dead and clicking like not finding the SA.

with the programmer along, I did first test with my flash_write function. It was written some time ago but never tested :) I can say that after the write, the pcb doesn't reboot. so I can read again the flash and compare with the one I flashed..to check if match.

see the log:
Code:
...app\Debug>wdt -test
verifying rom file to be flashed...
rom file ok.
autodetecting flash size...
old firmware assumed
flash type selected as 2. if your rom has more than 192kb you may spec greater types!
erasing Rom firmware
wd_erase_rom_firmware: SUCCEEDED
flashing the rom...please wait
wd_write_rom: SUCCEEDED
verifying flash written.
flash verification complete. flash operation was successful. you may reboot the device.


and finally I attach an image with the programmer. the soic8 clip it's a little difficult to be placed on rom chip, and has the wires soldered in a way not compatible with my ST 25P10 so I had to use some wires to reorder where the pins go.


Very cool and thanks for sharing.
Good to know that you have your testing drive ready for more fun :)
Also i like the programmer and clip. Keep up with the good work.

In the future it will be a thing to take intro consideration when flashing ROM on PCB .... Do not power down the device when you finish flashing, read again and compare if it's indeed flashed as it should :)

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 14:33 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
Very cool piece of code :)

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 15:05 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
Spildit wrote:
louis wrote:
In the future it will be a thing to take intro consideration when flashing ROM on PCB .... Do not power down the device when you finish flashing, read again and compare if it's indeed flashed as it should :)


I've already put that in one function. Imagine that if it's not done automatically..You'd have to dump the rom..open a hexeditor..search the dir where the dump lies..search the original..compare..see the result :wink:


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 15:14 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
louis wrote:
Spildit wrote:
louis wrote:
In the future it will be a thing to take intro consideration when flashing ROM on PCB .... Do not power down the device when you finish flashing, read again and compare if it's indeed flashed as it should :)


I've already put that in one function. Imagine that if it's not done automatically..You'd have to dump the rom..open a hexeditor..search the dir where the dump lies..search the original..compare..see the result :wink:


Not really, i would do a MD5 hash on the original and compare with the md5 of the downloaded copy after flashing. And i would do that only on drives with masked ROM on MCU.
At any rate its a good function to have :)

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 15:18 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
why do md5 hash since I compare byte by byte..the write_from buffer with the buffer holding the flash read after a successful write.

here I do exactly that, I mean..download the flash and compare it with what I wrote.
Code:
verifying flash written.
flash verification complete. flash operation was successful. you may reboot the device.


any good programmer's software has this option...to automatically check the flash after write.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 16:13 
Offline

Joined: July 18th, 2011, 5:40
Posts: 101
Location: Serbia
@Louis

What's the situation with H1 ?


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 5th, 2013, 17:22 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
H1 of the donor..still dead :)

however, having now 2 hdd to plug into controller I have learned how to send commands to any of them. I implement functions but I test them and fix them as I have the occasion.

Code:
wdt -scan
Scanning Controller 0 at Port: 0x1F0:    Type : 0 (Master)
        ==>Hard Disk [0:0]: WDC WD2000JD-60KLB0 (16383/16/63 - 0 sectors) LBA:YES - DMA:YES
Scanning Controller 0 at Port: 0x1F0:    Type : 1 (Slave)
        ==>Hard Disk [0:1]: WDC WD1600JD-00GBB0 (16383/16/63 - 0 sectors) LBA:YES - DMA:YES
Scanning Controller 1 at Port: 0x170:    Type : 0 (Master)
        Nothing found
Scanning Controller 1 at Port: 0x170:    Type : 1 (Slave)
        Nothing found

Debug>wdt -did 00

Model:.............WDC WD2000JD-60KLB0
S/N:...............WD-WCAMT131983
FW Rev:............08.05J0
Size:..............390721968 sectors (200.05 GBytes)
Family:............ID_BUCCANEER (91)
Drive Type:........0 (Desktop 3.5 Inch)
Rom Frmw Rev:......08.3AJ
Rom Type:..........5 (Serial Flash)
Platter count:.....2
Heads count:.......4
Heads used:........4
Depop map: H0->H4  1 1 1 1
Zones count:.......21
Servo wedges:......216
SA cyl count:......64
Spindle rpm:.......7204
Used cylinders:....103520
Format ver:........1
Interface Type:....2 (Serial ATA)
PCBA Revision:.....3

Debug>wdt -did 01

Model:.............WDC WD1600JD-00GBB0
S/N:...............WD-WMAES4018073
FW Rev:............02.05D0
Size:..............312581808 sectors (160.04 GBytes)
Family:............ID_POLARIS (73)
Drive Type:........0 (Desktop 3.5 Inch)
Rom Frmw Rev:......02.1SD
Rom Type:..........5 (Serial Flash)
Platter count:.....3
Heads count:.......6
Heads used:........4
Depop map: H0->H6  1 1 0 0 1 1
Zones count:.......21
Servo wedges:......180
SA cyl count:......32
Spindle rpm:.......7200
Used cylinders:....87922
Format ver:........1
Interface Type:....0 (UnKnown)
PCBA Revision:.....0


here's the donor and the other old model I purchased this week.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 6th, 2013, 17:00 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
louis wrote:
H1 of the donor..still dead :)


Here we go.

Now I'm speaking about donor's dead H1, or why I say it's dead. :wink:

why it's dead? attached a zipped file

I managed to read sector 1 and 2 at the beggining of the SA (cyl -1) with defective Head 1... resulting 2 files:
->dump_head1_cyl-1_sec1.bin
->dump_head1_cyl-1_sec2.bin

to obtain the mod_01 (dir module)..you should stick together the first 0x200bytes from both files. compare it to the original H0 mod_01.

I copied the files and called again the function. do the same with the files and compare the results.

you'll have H0 mod_01 (the good one), H1 mod_01, and mod_01_copy

each time I read H1 it will return BOGUS data. although there are some bytes that match the good data...those bytes are not FIXED. so.. it's not a defect on the platter. the data is corrupted somewhere between the [head and preamp].

say it's not like that :)

now you know what this means:

louis wrote:
some errors I have on donor's Head 1 wen trying to read SA on track -1 and other + tracks:
VSC error code decoded: 0x5181 -->> DISK_DAM_ERROR
VSC error code decoded: 0x51A2 -->> DISK_ECU_UNSAFE_ERROR
VSC error code decoded: 0x53E4 -->> DISK_SERVO_ACTUATOR_AI_FATAL_ERROR

plus bad noise :)


Attachments:
badhead.zip [3.14 KiB]
Downloaded 397 times
Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 6th, 2013, 17:54 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
Yes, head is gone for sure :)
I think that i can say that "you have lost your head" this time :)
lolol

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 6th, 2013, 19:14 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
now I try to apply the same method to my dead HD (the one from which I've started this topic), but i get the perm_ovl_not_loaded error. the kernel needs some stuff inside SA to let me exec my function.

so I'm working at load permanent overlay function. my model it's not royl. basically I understand that this load perm overlay..maps the sata module 0x11 to the MCU's ram...it's another method to force loading some modules when they are not available in SA. I tested my implementation on the donor's PCB alone..and it loads its SA dumped mod 11 from a file. when I try the same thing on the dead hdd, I get a complain about "not compatible". obviously I used the donor's mod 0x11.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 6th, 2013, 19:35 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
yeah..the mod 11 holds the zone table described here.

the kernel needs it to know the sectors per track (SPT)..and the lba start/stop for the Zone Zero (SA zone). I have loaded the mod 0x11 to my donor's pcb (not mounted on hdd) and after that I can read the Zone Table.....the kernel doesn't complain with perm_ovl_not_loaded :)

Code:
SECTOR ZONE DATA TABLE
Format Version = 2
No. of Zones = 21
Zone 0
---------------
First Virt. cyl .. = 0xffffffc0 (-64)
Last Virt.  cyl... = 0xffffffff (-1)
First LBA......... = 0xffe00000 (-2097152)
Last LBA.......... = 0xffffffff (-1)
Sectors per Track. = 0x0384 (900)
Zone 1
---------------
First Virt. cyl .. = 0x0000 (0)
Last Virt.  cyl... = 0x22bf (8895)
First LBA......... = 0x0000 (0)
Last LBA.......... = 0xa41cbf (10755263)
Sectors per Track. = 0x04b9 (1209)


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 6th, 2013, 22:55 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
here's a 10 points question: if the head returns randomly good data...see the previous posts, then how the heck it is able to surf the Servo System...to find its tracks, because this involves reading the disk?

perhaps it tries many times until it finds the servo track...then find data tracks with a lot of work..since it returns a lot of bad bits. let's say..that after some percentage of errors it wouldn't be possible for the head to scroll through the tracks.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 7th, 2013, 11:37 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
perm_ovl_not_loaded

Perm_OVL = Permanent Overlay = Mod 11 .
It will allow you to run the WD HDD when you start in it "safe mode".

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 7th, 2013, 17:20 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
somethings not good.

I put my donor into "safe mode"...(all 4 jumpers set since it's a sata model). power up..it identifies as wdc rom..normally because it's in kernel mode, not spinning. then I load perm overlay. it loads it fine because it's saved from its SA. then I spin it up. then I try to access the SA and it does like the dead hdd. clicks and nothing. it seems that mod_11 isn't enough to let me access read the sa. so what else to do? :?:


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 7th, 2013, 18:18 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
louis wrote:
somethings not good.

I put my donor into "safe mode"...(all 4 jumpers set since it's a sata model). power up..it identifies as wdc rom..normally because it's in kernel mode, not spinning. then I load perm overlay. it loads it fine because it's saved from its SA. then I spin it up. then I try to access the SA and it does like the dead hdd. clicks and nothing. it seems that mod_11 isn't enough to let me access read the sa. so what else to do? :?:


... This is a strange statment ...
What are you using to load perm ovl ?
When it loads to RAM i think drive should start spinning automaticly.
I can test this later.

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 7th, 2013, 18:48 
Offline

Joined: August 22nd, 2011, 15:43
Posts: 214
Location: Romania
no..the donor seems to be dead. remember that I had few previously mentioned situations when the donor...acted like the dead drive. and I tighten the PCB screws and finally started. last night... had the same situation after swapping PCB's for testings..and when almost to give up..it started..but this time the trick with screw tightening...didn't worked

today..I've put all the jumpers at the back..and after that...it started to click..and I posted the situation (my last post). the rom it's fine. perhaps the connections of the PCB with the HSA are damaged since I did a lot of PCB swapping.

what's funny is that I load perm overlay then I call read head function..and then it starts spinning and it does exactly like the dead drive (5 times 3 clicks) and at the end returns success but the file it's filled with 0x00


Top
 Profile  
 
 Post subject: Re: WD2000JD problem
PostPosted: April 7th, 2013, 19:05 
Offline
User avatar

Joined: December 19th, 2006, 8:49
Posts: 11038
Location: Portugal
Now i'm confused.
Can't you test that with a known good drive ?
Because you now have 3 drives.

1 - The original one with assumed dead pre-amp
2 - One donor that is good except for one dead head
3 - One old WD drive.

Are you talking about drive 2, right ?
Are you saying that you re-flashed the ROM on the drive and it didn't revert back to the prior state ? Drive with just one dead head ?

_________________
1Q9xrDTzTddUXeJAFRn37aqh1Yr6buDCdw - (Bitcoin Donations)
paypal.me/Spildit - (PayPal Donations)
The HDD Oracle - Platform for OPEN research on Data Recovery.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 351 posts ]  Go to page Previous  1 ... 8, 9, 10, 11, 12, 13, 14 ... 18  Next

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: Google [Bot] and 73 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group