9

Is it possible to use non-certified hard drives in a Dell MD3220 storage array? I ended up getting 3 new drives that were the EXACT same model number as the existing ones. Then I bought the drive caddies to go with them.

The drives I'm working with:

Manufacturer: TOSHIBA
Product ID: AL13SEB600
Serial number: (varies)
Speed: 10,500 RPM
Current data rate: 6 Gbps
Logical sector size: 512 bytes
Physical sector size: 512 bytes
Physical Disk firmware version: (varies)
Date of manufacture: Not Available

Once the new drives arrived I mounted them on the caddies and inserted them into my storage array to see an Incompatible status. They have all the same specs. The only difference is the firmware. Still oblivious as to what was going on I started the standard process of upgrading the firmware. The firmware on the drives I received was 1701 and all my other existing drives were DE09.

During the Upgrade Physical Disk Firmware process...

enter image description here

I end up getting this error...

enter image description here

After looking into it on the web it seems that it's a common practice for vendors like Dell to lock down their software to only support DELL BRANDED hardware! Even though the drives are the exact same drive (same model and everything both made by Toshiba).

Now I'm stuck with these three drives that I only bought because Dell wouldn't sell them to me (I guess they no longer make them). Not to mention the caddies I bought elsewhere. My question is, is it possible to somehow flash the firmware on these drives so that Dell's software/hardware will accept them?

UPDATE 2019.01.24

Just to add if it helps others, I wanted to post where I was able to find the firmware for my drives. Dell does not make it easy to get to. I had to check each version release of the firmware packs to find the firmware I needed for my drive. Suggestion, don't download each one, use the README (they include for each firmware pack) to search for the firmware you are looking for then download the large pack of firmware. Mine happen to be A19 that contained the DE09 firmware I was looking for.

Go to (this page) and note the red boxes... enter image description here

After clicking on older versions it opens another window showing you the following... enter image description here

You will need to look at each one to determine what package (in my case A19) that you need to download.

UPDATE 2019.01.29

Well it has been a few days now and my struggle continues. Even with the help of @Freddy's answer I'm still trying to make this a reality.

I have managed to get over a few hurtles but now I'm not able to move forward. I have edited the firmware (DE09.fwh) enough so that it does two important things...

  1. It gets past the device ID check to green light my disk. Before, the firmware would check for id 29747 (AL13SEB300) or id 29748 (AL13SEB600) or id 29749 (AL13SEB900). My drive was showing up as id 00000 (AL13SEB600). So I edited the FW to account for the 00000 id. This worked great!
  2. It bypasses the minimum required firmware version (because my new drives have version 1701 on them) before it tries to update. So now instead of looking at drives with firmware DE01 and above, it looks for drives with 1701 and above (because version 1701 is lower than DE01).

So after trying many different approaches. I have found that there are really three tools to use to flash the drive's firmware...

  1. SASDUPIE.exe
  2. The Dell Powervault Modular Disk Storage Manager
  3. The Dell SAS Hard Drive Firmware Utility

SASDUPIE.exe

When trying to use SASDUPIE.exe on (*.fwh) files such as DE09.fwh, I get a new error (since I have hacked the firmware) when trying to flash...

The operation failed due to an invalid image file.

and

Error Code: "WriteBuffer: Return code from ProcessLibCommand = 2d."

Dell Powervault Modular Disk Storage Manager

This is the normal way that Dell wants you to update the firmware. It takes firmware packages (*.df) such as Toshiba_AL13SEB600_DE09.df. I thought that I could try to just hack the firmware and use this tool to update the drives. But with this tool it first reads the drives and determines that are in Bypassed or Offline status and make the drives inaccessible. This happens before you can even get to the Download Physical Disk Firmware window. So unfortunately this was a bust.

Dell SAS Hard Drive Firmware Utility

This is a tool that can be downloaded from here. It allows you to create a bootable CD or USB thumb drive. You can then boot the CD/USB up to upgrade the drives in a non windows environment. Unfortunately this would not work for me either. When I booted up my R630 Dell server which has a boot drive that's mirrored (2 x 600GB drives), and a data drive (not currently used) that is running a raid 5 array from 4 drives, and has connections to my MD3220 storage unit of course. That makes a total of 6 drives mounted into the R630 server and then I have one I inserted (then set as a NON-RAID drive) to flash the firmware on. When booting up this utility it seems to only show me 4 drives, and two of those drives are the same drives just from different controllers. I have no clue why it's not showing me all the drives. But this does not seem to be working for me at all.

Arvo Bowen
  • 795
  • 5
  • 15
  • 33
  • `My question is, is it possible to somehow flash the firmware on these drives so that Dell's software/hardware will accept them?` - Not that I'm aware of. I've only ever been able to get Dell drives working in a Dell array. – joeqwerty Jan 23 '19 at 23:39
  • HP are the same. Proper pain. – Timothy Frew Jan 24 '19 at 00:26
  • 1
    `Now I'm stuck with these three drives that I only bought because Dell wouldn't sell them to me` Dell doesn't HAVE these to sell to you (except service stock, which is reserved for warranty replacements). Keep in mind this system is old - even its successor, the MD3420, is being EOL'd. I personally would have just purchased 3 x HUC101860CSS204 (p/n P6GJX) used (under $40/ea on eBay). There are 13 different 10K 600GB drives listed in the support matrix: http://downloads.dell.com/Manuals/common/MD32XX_MD36XX_SupportMatrix_en-us.pdf – JimNim Jan 24 '19 at 17:23
  • @JimNim Everyone has their preference. I personally would much rather buy a NEW drive from a website rather than a USED drive from eBay. I think you missed the point of that comment I made. I was simply saying If I picked up the phone right now, called Dell and talked to them about my warranted storage unit they would not sell me one of the drives I currently have in the unit. I was also alluding to the fact that because Dell decided to only allow Dell branded drives (even though they are exactly the same) just so they could over charge their customers, I could not use the drives out of box. – Arvo Bowen Jan 24 '19 at 17:32
  • @JimNim I didn't mean to sound snarky at all though, sorry if I did. Thanks for the comment though, I'm sure it might help users in the same situation. – Arvo Bowen Jan 24 '19 at 17:34

1 Answers1

9

I found a tutorial. Please read Flash Dell Firmware into Seagate Generic Drives.

The procedure should be the same for your Toshiba drive as the same tools are used.

Dell download page: Toshiba SAS AL13SEB300, AL13SEB600 and AL13SEB900 firmware version DE09.

FYI: There is also a newer firmware DE11 available (not tested by me).

I tried to install the 64bit windows package which successfully failed on my lenovo laptop, but I could find the extracted files in my win10 temp dir (C:\Users\ibm\AppData\Local\Temp...).

Command line options of SASDUPIE.exe:

C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672>SASDUPIE.exe /?
========================================================================
Firmware Download Program
Dell Inc - All Rights Reserved.  2005-2007
========================================================================

Usage: -h
        Provides detailed help information

Usage: -v
        Provides program version information

Usage: -i [-o <output filename>] [-debug]
        Provides inventory information of all identified devices.
        -o Specifies the output filename.
        -debug Specifies to create a debug log file.

Usage: -u [-s <image folder>] [-f] [-o <output filename>] [-debug [filename]]
        Downloads the firmware to all devices which are compatible with
        the image file.
        -s Specifies the folder containing the firmware image files. Current
            folder is default Ex. c:    mp (win) or //tmp (linux)
        -f Specifies to download if the same or a newer version is installed.
        -o Specifies the output filename.
        -debug [filename] Specifies to create a debug log file. The default
           filename is debug.log in the current folder.
===========================================================================

Hexdump of the first 256 bytes of the firmware binary payload/DE09.fwh:

ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/d2a071e4-aa46-4096-8e37-a0359bbdd672$ xxd -l256 payload/DE09.fwh
00000000: 2020 2020 2020 2020 0144 4530 3944 4530          .DE09DE0
00000010: 3178 0200 0000 0000 0000 0000 0000 0000  1x..............
00000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000030: 0000 0000 0000 0000 0000 0000 0000 0003  ................
00000040: 2020 2032 3937 3437 2020 2020 2020 2020     29747
00000050: 2020 2020 2020 2020 2020 2020 2020 2020
00000060: 2020 2020 2020 414c 3133 5345 4233 3030        AL13SEB300
00000070: 2020 2032 3937 3438 2020 2020 2020 2020     29748
00000080: 2020 2020 2020 2020 2020 2020 2020 2020
00000090: 2020 2020 2020 414c 3133 5345 4236 3030        AL13SEB600
000000a0: 2020 2032 3937 3439 2020 2020 2020 2020     29749
000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
000000c0: 2020 2020 2020 414c 3133 5345 4239 3030        AL13SEB900
000000d0: 464d 434c 2020 414c 4441 2020 2020 2020  FMCL  ALDA
000000e0: 2020 2020 4445 4c4c 200d 0a43 6f70 7972      DELL ..Copyr
000000f0: 6967 6874 2843 2954 6f73 6869 6261 2043  ight(C)Toshiba C

According to Dmitri Bobko's manual you should replace "29748" (for AL13SEB600) with the hardware id detected by SASDUPIE.exe -u -s "%cd%\payload" -f -o update.xml -debug debug.log (edit: make sure you run cmd using "Run as administrator") and also replace "DE01" (bytes 14-17=minimum required fw version) with your current firmware revision "1701".

After running the command I could find in debug.log where the fw update would have been triggered (if I had matching hardware).

Snippet of debug.log:

...
<Thu Jan 24 01:32:48 AM>loadImageFile: Match: name:*.fwh dirfilename:DE09.fwh
<Thu Jan 24 01:32:48 AM>ImageFiles::DoesFilenameMatchTemplate: Begin
<Thu Jan 24 01:32:48 AM>DoesFilenameMatchTemplate:filename=DE09.fwh filepattern=*.fwh
<Thu Jan 24 01:32:48 AM>DoesFilenameMatchTemplate:lowercase_filename=de09.fwh lowercase_filepattern=*.fwh
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: filepattern length = 5
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: wildcard index = 0
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: have last part
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: FPart=
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: LPart=.fwh
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: lowercase_filename.length()8
<Thu Jan 24 01:32:48 AM>ImageFiles:DoesFilenameMatchTemplate: pLPart.length()4
<Thu Jan 24 01:32:48 AM>filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload
<Thu Jan 24 01:32:48 AM>adding file seperator charatcter
<Thu Jan 24 01:32:48 AM>filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>loadImageFile: filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>FWSize=831488
<Thu Jan 24 01:32:48 AM>dirFileName=DE09.fwh
<Thu Jan 24 01:32:48 AM>filename=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>loadImageFile: imageFile.m_size=831488
<Thu Jan 24 01:32:48 AM>loadImageFile: imageFile.m_name=DE09.fwh
<Thu Jan 24 01:32:48 AM>loadImageFile: imageFile.m_fullPath=C:\Users\ibm\AppData\Local\Temp\d2a071e4-aa46-4096-8e37-a0359bbdd672\payload\DE09.fwh
<Thu Jan 24 01:32:48 AM>addImage: Creating m_imageFileVector
<Thu Jan 24 01:32:48 AM>loadImageFile: End
<Thu Jan 24 01:32:48 AM>SASHardDriveDUPDevice: Loading file(s) rc =0
<Thu Jan 24 01:32:48 AM>DUPWrapper: Begin loop thru SAS devices
<Thu Jan 24 01:32:48 AM>DUPWrapper:No devicea updated.
<Thu Jan 24 01:32:48 AM>DUPWrapper:Deleting ImageLoader.
...

The generated update.xml only contains info if a reboot is required after the update process:

<?xml version="1.0" encoding="UTF-8"?><SVMExecution lang="en"><RebootRequired>0</RebootRequired></SVMExecution>

Happy hacking!

Freddy
  • 1,999
  • 5
  • 12
  • Freddy, this looks great! Thanks for sharing, I'm sure many will benefit from your contribution! I'll confirm this works for me ASAP then accept the answer as soon as I do. You have saved me (and I'm sure many more users) a lot of money. I think Dell (and other various companies) should be shot for forcing us to use only part they sell like this. ESPECIALLY when they wont even provide it to us anymore! Thanks again!! – Arvo Bowen Jan 24 '19 at 13:44
  • I hope it really works and you don't brick any drives with this hack, it was pure luck that I found Dimitri's Blog. But he was successful with a different "SAS Hard Drive Firmware Utility", not with `SASDUPIE.exe`. Does this tool exist for your model? I couldn't find it. And I wonder if you really need to change the "DE01" string. I would suggest you edit the hardware id "29748" first, run the tool, check the logfile and the drive. If nothing changed, go on... Good luck! – Freddy Jan 24 '19 at 14:12
  • O yea and about the new DE11 firmware for my drives... A few things, 1) I wanted to stay on the DE09 only because that's where my old drives are at and they have not given me any problems. Usually the golden rule is don't touch the firmware unless you are having issues. 2) I was able to download the firmware pack without having to use the installer you reference in your answer. I'm updating my question with the way to get to them. – Arvo Bowen Jan 24 '19 at 14:13
  • So far no luck... Still working on it but I can't get past the very first part where he was looking at the debug log to see the different versions being checked. My debug.log looks just like yours. No drives seem to be detected for some reason. – Arvo Bowen Jan 28 '19 at 19:32
  • For anyone else who ran into the same issue I did above, RUN SASDUPIE.EXE AS ADMINISTRATOR! Or rather run cmd as administrator and then run the sasdupie.exe command. – Arvo Bowen Jan 28 '19 at 21:54
  • OK so I have been working at it and I think I finally hit a brick wall. It seems I have edited the firmware enough so that it does two important things. 1) It gets past the device ID check to green light my disk. 2) It bypasses the minimum required firmware version (my new drives had version 1701 on them) before it tries to update. So now instead of looking at drives with firmware DE09 and above, it looks for drives with 1701 and above. But now I get a different error, `The operation failed due to an invalid image file.` or Error Code `WriteBuffer: Return code from ProcessLibCommand = 2d`. – Arvo Bowen Jan 28 '19 at 21:58
  • Updated my answer regarding "run as administrator". So you tried the upgrade from the windows package that I used? Because the firmware file in `A19_MD32xx_MD36xx_HDD_Firmware_with_ReadMe.zip` (`Toshiba/Toshiba_AL13SEB600_DE09.df`) has a different header and there are single update files for AL13SEB300/AL13SEB600/AL13SEB900 which are only different in their "model name string" bytes 65-74 and bytes 45-48. Don't know why there is a difference in 45-48. Could be a checksum, could be nothing... – Freddy Jan 28 '19 at 22:50
  • I just found those old firmware packages but never needed to use them. Those contain `DF` files and they are different then the `FWH` files we are working with. `DF` files are used in the `Modular Disk Storage Manager` to upgrade the physical disk via the Dell GUI. So no, I'm using the DE09 package from https://www.dell.com/support/home/us/en/04/drivers/driversdetails?driverid=5cx8g which has a `FWH` file like what you are used to seeing. – Arvo Bowen Jan 28 '19 at 23:05
  • They are basically the same files except for a different additional header and the fact that they use 3 different files for AL13SEB[3/6/9]00 with the differences described. If the windows update tool is picky, edit the ".df" and try the other tool. – Freddy Jan 28 '19 at 23:27
  • Freddy: https://chat.stackexchange.com/rooms/88983/dell-md3220-storage-array-unsupported-drives – Arvo Bowen Jan 29 '19 at 21:41
  • I never could get this to work on my end and the choice to accept this answer was hard. It was well said, and there was a lot of back and forth that went into it. Even though it did not work for me, it did work for others and that was in the end why I accepted this answer. For me, I ended up taking @JimNim's advice and seeking out some used drives online. I ended up finding them at a discount for around $60 with caddies in my case! For the extremely low cost of the drives and the fact we are working to get back under a service contract with Dell the certified refurbished drives did the trick. – Arvo Bowen Jan 31 '19 at 18:03