Cross-Flashing non-EMC Dell Firmware onto Dell EMC Kioxia PM5 SAS SSDs

Warning

This procedure is risky and will delete all data! Always back up data and double check device paths before flashing.
There’s always a chance cross-flashing could brick the drive. I’m not taking any responsibilities here!

You have been warned!

Background

I use Dell-branded Kioxia PM5 drives (model KPM5XRUG3T84) in my NAS setup for a very specific reason:
Dell actually publically publishes firmware updates.

So when I stumbled over a very cheap pair of brand new Dell PM5s on eBay, I had to get, thinking they’d be just like my existing ones. Big mistake! Turns out they wer Dell EMC branded (still same serial) which aren’t quite the same:

  • They showed up under a different name: P5R3T84A EMC3840
  • They had a different firmware (PA5G)
  • Dell’s standard update tools didn’t recognize them for firmware updates
  • The EMC firmware isn’t available publicly (it’s locked behind Dell EMC entitlement system)

I want to run the latest firmware however. So I was just about to ask for advice here when on a whim I asked ChatGPT first, not expecting anything. It gave me some great pointers however. With a little trial and error I managed to cross-flash Dell’s standard firmware (B02A):

Here’s how I did it.

  1. Install necessary tools:
    sudo apt install sg3-utils lsscsi

  2. Identify the SAS device:
    lsscsi -g
    Look for your PM5 drives and note the corresponding /dev/sgX path.

  3. Extract the firmware:
    Download Dell’s firmware update package for the Kioxia PM5 (e.g. from Dell Support). The raw firmware blob can be extracted from the RHEL installer with the --extract option (Works on other distros, too). It can also be taken from the “Dell PowerVault ME Series Storage HDD/SSD Firmware” package.
    In my case, it was called: B02A.bin

  4. Flash the firmware:
    sudo sg_write_buffer -vvvvv -m 5 --in B02A.bin /dev/sgX
    Replace /dev/sgX with the device path from step 2.
    The -m 5 mode is for “Download Microcode and Save” — this writes and persists the firmware.

  5. Reboot and verify:
    I used “hdsentinel” to confirm the firmware version has been updated. The drives will now show up as “TOSHIBA KPM5XRUG3T84”.

6 Likes

Thanks for posting this. I was able update the same model drive with good sucess. It did wipe all my data, but the array rebuilt.

1 Like

Thanks for the feedback! Glad to hear it worked for you as well. Based on your experience, I’ve revised the warning and moved it to the very top of my post, making it very clear that the process is risky and will erase all data.