hi,
after 10 years of service, my Hitachi microdrive died.
- Hitachi HMS360404D5CF00, 4GB
No problem, I have the full backup of the rootfs, the problem is just replacing the broken disk with a new one.
I bought exactly the same model on eBay, but... surprise surprise it is not recognized by my C1000.
Then I returned the drive to the seller and tried a new one. Same behavior,
HMS360404D5CF00 not recognized.
Then I tried a Seagate ST1,
ST650211CF, which exhibits even stranger behavior:
it responds correctly to the ATA identify command, but panics on every ATA sector read command
my-mon/mips, v3.1, Feb 2025
# disk_probe
pATA drive probing ... true
00000000: 84 8a 25 da 00 00 00 10 7e 00 02 00 00 3f 00 95 | ..%..........?..
00000010: 0a 60 00 00 20 20 20 20 20 20 20 20 20 20 33 4d | .`.. 3M
00000020: 45 34 4e 58 59 43 20 20 00 03 01 00 00 04 33 2e | E4NXYC ......3.
00000030: 30 34 20 20 20 20 53 54 36 35 30 32 31 31 43 46 | 04 ST650211CF
00000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |
00000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 80 10 | ..
00000060: 00 00 0a 00 00 00 02 00 00 00 00 03 25 da 00 10 | ............%...
00000070: 00 3f 0a 60 00 95 01 00 0a 60 00 95 00 00 01 00 | .?.`.....`......
00000080: 00 03 00 00 00 00 00 78 00 78 00 00 00 00 00 00 | .......x.x......
00000090: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000000a0: 00 00 00 00 70 69 50 0c 40 00 70 69 10 0c 40 00 | ....piP.@.pi..@.
000000b0: 00 00 00 00 00 00 40 40 00 00 40 0d 80 80 00 00 | ......@@..@.....
000000c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000000d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000000e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000000f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000140: 81 4a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .J..............
00000150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
00000190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000001a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000001b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000001c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000001d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000001e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
000001f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
LBA28={0..9767519} blocks
disk_blocks=9767520
disk_size~=4G 673M
model number : ST650211CF
# disk_read 0
disk_ata_read(),LBA=0
disk_ans=false
# disk_probe
no sign of life from CF drive
(this is a firmware I wrote for a MIPS32/le router, it has a 3.3V CF, exposing the same behavior I see on my C1000)
Some "OEM Only" drives use the CompactFlash form factor but only provide a 5V IDE/ATA interface.
These will not work in readers or devices which expect a 3.3V interface and full CompactFlash functionality
looking at the Seagate ST1 datasheet, I verified it's LBA28 capable.
I don't see any weird pre-init ATA commands.
macmini2-intel ~ # badblocks -svw /dev/sdd
Checking for bad blocks in read-write mode
From block 0 to 4883759
Testing with pattern 0xaa: done
Reading and comparing: done
Testing with pattern 0x55: done
Reading and comparing: done
Testing with pattern 0xff: done
Reading and comparing: done
Testing with pattern 0x00: done
Reading and comparing: done
Pass completed, 0 bad blocks found. (0/0/0 errors)
(The Seagate 5GB on the CF_usb adapter passed all the badblocks tests!)
So I put both the two new MicroDrive into a USB_CF adapter, to check them with GNU/Linux, and ... surprise both perfectly worked with the USB_CF adapter, which operates at 5V. Badblocks passed, zero error reported!
My guess...the
Zaurus C1000 CF module must be 3.3V, while
these two microdrives only operate at 5V!
The Seagate datasheet vaguely says 3.3V/5V, however ... on the back of the Seagate microdrive it clearly says "+5V", and in fact it does not work on machines with CF powered at 3.3V.
There is no extra label on the Hitachi HMS360404D5CF00
Comparing the microdrive that worked for 10 years on the C1000 with the new one that is not even recognized (does not respond to the Identify command), no difference is noticeable, same production number, same label...
My guess is there are actually two versions
- Hitachi HMS360404D5CF00, 4GB, 3.3V/5V
- Hitachi HMS360404D5CF00, 4GB, 5V-only
According to Google, not only there are also OEM versions ... but also custom IBM-made versions for their MIPS WinCE-v1.0 laptop (only sold in Japan), marked "IBM Microdrive" but made with Hitachi parts, who also made the Apple iPod drive, and whatever Apple, IBM or Hitachi microdrive you look at ...
... they are not easy to identify as "OEM" or "non-OEM", as there is no indication on the label!
Some Hitachi microdrives made for Apple iPod have a log on the front, usually the Apple logo, which means it is an OEM drive, 5V only, True-IDE only,
but other Hitachi microdrives have no indication at all.
- - -
is there a list or something about the microdrive compatibility with Zaurus PDA?