Locked HGST drives: Difference between revisions

Jump to navigation Jump to search
added problems 2 and 3 and fixed up a lot of stuff
(added hardware notes)
(added problems 2 and 3 and fixed up a lot of stuff)
OnSome XXXXtime ago, we purchased ##x~25x 1.2TB HGST HUC101212CSS600 drives off ebayeBay for use in our servers.
 
These disks have three primary issues:
# They have Hitachi Vantara firmware [https://www.reddit.com/r/homelabsales/comments/qazb88/pccan_huc101212css600_12tb_10k_sas_6g_25_drives/hh6frb5/] that locks them to Hitachi VSP systems and doesn't let them work with normal servers.
# They have a lock preventing them from being reflashed with the Dell [https://www.dell.com/support/home/en-au/drivers/driversdetails?driverId=PJ9CD] firmware that would allow them to be used in generic systems.
 
 
== Problem 1: (520-byte sectors) ==
All you need is a "true" HBA in the server that is reformatting the disks. Dell PERC cards and HP Smart Array controllers cannot communicate with 520-byte sector disks whatsoever, even when put into "HBA mode".
 
The cards inside the [[Servers|Kurisu and Okabe]] servers have been flashed towith the "IT mode" firmware, as their PERC cards were old enough to be flashed using [https://fohdeesha.com/docs/perc.html a script]).
 
The sector size of a disk can be reformatted to 512 bytes using <code>sg3utils</code> with the command below:
<code>sg_format -v --format --size=512 --six /dev/sgX</code>
 
Of note, formatting with the ten-byte variant of <code>--sixMODE SENSE</code>+<code>MODE SELECT</code> (the default) versus the six-byte variant (toggled andwith <code>--tensix</code>) will depend on what brand of disk you are're using.
 
Netapp needs ten-byte, while our drives should need six-byte (based on a comment from someone in a ServeTheHome thread (find the link for this)
 
ItWe is likely weprobably won't know for sure which option to use until we unlock the firmware ourselves though.
 
== Problem 2: (Hitachi VSP firmware) ==
The primary issue with these drives is the firmware that only allows them to work with Hitachi VSP systems.
 
They will experience I/O errors when used on a regular system, even after having been reformatted to 512-byte sectors.
 
Apparently it is related to the firmware only accepting <code>SCSI_WRITE_WITH_VERIFY</code> commands [https://wwwold.reddit.com/r/DataHoarder/comments/7raoz8/firmware_for_hgst_10k_sas_huc109090css600/idxmolz/]
 
These exact physical drives are also sold as general consumer and OEM variants that work in generic systems without issue. The only difference between our drives and those drives is the differing firmware.
 
It should be possible to flash the firmware from the OEM-branded variants onto our drives to enable them to work.
 
== Problem 3: (Firmware lock) ==
In addition to the previous problem, the drives also have a lock that prevents rewriting the firmware.
 
The disks require a specific command be sent before they will allow overwriting the firmware.
 
There is a Russian dude who, for the price of ~$10/drive, will RDP into a Windows environment and flash the drives for you. [https://forum.hddguru.com/viewtopic.php?f=22&t=39927&sid=121a6e12d2d1fdaf816fe00eedac1745]
 
From what I've gathered, he runs a custom script he made that uses WD Niagara (an internal Western Digital tool intended OEMs for advanced HDD operations) to unlock the drives, then uses Niagara's built-in "firmware download" to flash the firmware.
 
Should we have the money, this is the easiest route to solve the problem. However, by that point, it makes more sense to just buy new drives.
I don't know which option is correct for our specific drives, may be worth scouring the internet for a report from someone with our drives with the Dell firmware who was able to reformat it.
 
He has uploaded a video of the process to YouTube [https://www.youtube.com/watch?v=mAhS_sk3wKE]
It is likely we won't know for sure which option to use until we unlock the firmware ourselves.
 
According to a Chinese dude who paid for Hydata SCSITools in another ServeTheHome thread, this program can also send the command to unlock the drives and flash the firmware.
 
SCSITools is $2800 for a license, so same as above, at that price it makes more sense to buy different drives.
 
SartenX recommended asking them for a free license as students, I doubt they'd hand out a free license though.
hardware modding nodes:
 
Preliminarily poking at the Windows program, the check for a license key seems really basic.
Smooth L7228: Drive Spindle controller?
 
It just pulls in <code>hasp_windows_102966.dll</code> which is the Sentinel HASP (Hardware Against Software Piracy) all-in-one check that looks for a valid USB hardware key plugged into the computer.
[https://www.ariat-tech.com/parts/samsung-semiconductor/K4T51163QJ-BCE7 Samsung K4T51163QJ-BCF8]: DDR2 memory
 
I doubt fiddling with Sentinel HASP would be easy, it has checks for VMs, emulated dongles, and even WINE for some reason, but the program itself could probably be modded to ignore the check.
LSI TNNKU873 BJR12034 - microcontroller
 
We also considered flashing the drives via the hardware, with a Pomona SOIP8 clip (SOIP8 is the same form-factor as SOP8)
MAXIC 25U40325 M1-126
 
There are pictures of the mainboard in this HDDGuru thread [https://forum.hddguru.com/viewtopic.php?p=292187]
 
We identified the following chips on the drive's mainboard:
copy+paste dump for later:
 
* Smooth L7228: Drive Spindle controller?
* [https://www.ariat-tech.com/parts/samsung-semiconductor/K4T51163QJ-BCE7 Samsung K4T51163QJ-BCF8]: DDR2 memory
* LSI TNNKU873 BJR12034 -: microcontroller
* MAXIC 25U40325 M1-126: the SOP8 ROM (this is the big one)
 
Apparently only disk-specific calibration information is stored on the ROM and not the actual firmware.
 
^ (Josh found a post from someone trying to do exactly what we planned, and came to this conclusion. Post forum link here)
sg_write_buffer -v -I HGST-Ultrastar-C10K1200-HUC101212CSS600-SAS-DELL-U440.LOD /dev/sg3
 
So the hardware route is a dead-end :(
https://www.reddit.com/r/DataHoarder/comments/7raoz8/firmware_for_hgst_10k_sas_huc109090css600/

Navigation menu