Micron 5200 firmware bug

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

Stephan

Well-Known Member
Apr 21, 2017
1,139
908
113
Is that Cisco / OEM only
No that 5100 is generic:
9f586bded1f935bcb82a393cc8c6481e2fd8f34320fec5175fb0b20c4765f2cf M5100_D0MU078.bin

When you search on ebay for Micron 5100 SSDs with Cisco labels, usually they have D0MU. But I guess it depends which hardware had them. Server/SAN might be different from networking. I wouldn't know, this is a Mellanox household.

So a 5200 update came from Hetzner.

5300:
12cd559c751fddfdd1b3d35a4c1e983f94c1a583bc8fb1816a1c3e159dfbb0df M5300_D3CN003.bin
dac5a31a7e17cab1296c973183d31c089aefe88b72352d327e0c18b3316450ea M5300_D3MU005.bin

5400 is supposed to work with D4MU and D4CN, because hardware takes both:
3293c9b6357540c2c22724e1f97dcdc8d826f06a6b3b20f09c6b6d1d25542ded M5400_D4CN005.bin

Fixes are around a year old, from August/September 2025. For 5300 this worked:

hdparm --please-destroy-my-drive --yes-i-know-what-i-am-doing --fwdownload fw.bin /dev/sdX

If you have a C400 mSATA, word on the street is they can hang after 80+ days of uptime. Apparently Micron made a firmware that detects the hang and then... just reboots the mSATA card.

You might try running /usr/bin/update-smart-drivedb to see if an updated data file might id those unknown attributes.
I already checked smartmontools/drivedb/drivedb.h at main · smartmontools/smartmontools but nothing. Could be super cap / plp cap status like with Samsung, unknown. There is no documentation because Micron still busy counting money in basement.
 
Last edited:

luckylinux

Well-Known Member
Mar 18, 2012
1,839
611
113
No that 5100 is generic:
9f586bded1f935bcb82a393cc8c6481e2fd8f34320fec5175fb0b20c4765f2cf M5100_D0MU078.bin
So where do you get it from ? Last update on Micron Website for the 5100 is from 2021 and last Time I checked it wasn't on the Hetzner NFS Share ...
 

EffrafaxOfWug

Radioactive Member
Feb 12, 2015
1,490
579
113
I was about to ask the same Stephan - saw you'd referenced the D3MU005 for the 5300 series but this is the first I've seen of this new firmware, and note you've also mentioned a D4CN005 for the 5400 series as well, neither of which appear on Micron's regular download page of course... t'internet is also seemingly very quiet about these and their checksums as well, so this would appear to be highly novel information.

For 5300 this worked:

hdparm --please-destroy-my-drive --yes-i-know-what-i-am-doing --fwdownload fw.bin /dev/sdX
Thanks for confirming - I've always wanted to try that as opposed to msecli but could never get the courage to risk bricking a drive in the process :D
 

Stephan

Well-Known Member
Apr 21, 2017
1,139
908
113
SMART attribute 201 according to latest msecli is "Power Holdup Circuit Failures". Micron's bad caps detector. Older firmware will turn SSD read-only, later will show the problem in SMART and supposedly continue. Edit: Might "just" be a software bug: New Validation against CSCwr08802 by dongqiu1 · Pull Request #348 · datacenter/ACI-Pre-Upgrade-Validation-Script
249 is "Write Amplification". 250 is unknown to msecli version 12.03.032026.00. Maybe moved 196, "number of grown bad blocks".

I made a new /etc/smart_drivedb.h:

Code:
  { "Micron 5000 Series SATA SSDs",
    "Micron_5100_(EE|MT)FDDA[KV](240|480|960|1T9|3T8|7T6)T(BY|CB|CC)|"
    "Micron_5200_MTFDDAK(240|480|960|1T9|3T8|7T6)TD(C|D|N)|"
    "Micron_5210_MTFDDAK(480|960|1T9|3T8|7T6)QDE|"
    "Micron_5300(HC)?_MTFDDA[KV](240|480|960|1T9|3T8|7T6)TD[STU]|"
    "Micron_5400_(EE|MT)FDDA[KV](240|480|960|1T9|3T8|7T6)TG[ABC](_SED)?",
    "", "",
    "-v 1,raw48,RawReadErrorRate "              // Errors/page
    "-v 5,raw48,RetiredNANDBlocks "             // NAND blocks
    "-v 9,raw48,PowerOnHours "                  // Hours
    "-v 12,raw48,PowerCycles "                  // Cycles
    "-v 170,raw48,ReservedBlocks "              // Blocks
    "-v 171,raw48,ProgramFailures "             // NAND page program failures
    "-v 172,raw48,EraseFailures "               // NAND block erase failures
    "-v 173,raw48,AverageBlockErases "          // Average erase count of all good blocks
    "-v 174,raw48,UnexpectedPowerLosses "       // Unexpected power loss events
    "-v 180,raw48,UnusedReservedBlocks "        // Spare blocks remaining
    "-v 183,raw48,SATAInterfaceDownshifts "     // Downshifts
    "-v 184,raw48,ErrorCorrections "            // Correction events
    "-v 187,raw48,UncorrectableErrors "         // UECC correction failures
    "-v 188,raw48,CommandTimeouts "             // Outstanding commands since last reset
    "-v 194,tempminmax,DriveTemperature "       // Current and lifetime min/max temperature degC
    "-v 195,raw48,CumulativeCorrectedECC "      // Corrected ECC
    "-v 196,raw48,ReallocationEvents "          // Total number of grown bad blocks
    "-v 197,raw48,PendingSectors "              // 512 byte sectors
    "-v 198,raw48,ScanUncorrectableErrors "     // SMART off-line scan uncorrectable errors
    "-v 199,raw48,UltraDMACRCErrors "           // Errors
    "-v 201,raw48,PowerHoldupCircuitFails "     // Power holdup circuit failures
    "-v 202,raw48,PctLifetimeRemaining "        // Percentage lifetime remaining
    "-v 206,raw48,WriteErrorRate "              // Program fails per MB
    "-v 210,raw48,RAINRecoverySuccess "         // TUs successfully recovered by RAIN
    "-v 211,raw48,IntegrityScanCompleted "      // Periodic data integrity scans completed
    "-v 212,raw48,IntegrityScanFolding "        // Integrity scan folding events
    "-v 246,raw48,HostWriteSectors "            // 512 byte sectors
    "-v 247,raw48,HostProgramPages "            // NAND page
    "-v 248,raw48,FTLProgramPages "             // NAND page
    "-v 249,raw48,WriteAmplification "          // Count
    "-v 250,raw48,Unknown "                     // Unknown, maybe grown bad blocks
  },
 
Last edited:

nasbdh9

Active Member
Aug 4, 2019
255
167
43
Some comments. After upgrade, a few SMART attributes are removed or moved:

Code:
 Device Model:     Micron_5300_MTFDDAK960TDT
-Firmware Version: D3MU001
+Firmware Version: D3MU005
User Capacity:    960.197.124.096 bytes [960 GB]

-196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       0
+201 Unknown_SSD_Attribute   0x0032   100   100   000    Old_age   Always       -       0
+249 Unknown_Attribute       0x0022   100   100   000    Old_age   Always       -       1
+250 Read_Error_Retry_Rate   0x0032   100   100   000    Old_age   Always       -       0
For 5100 there is D0MU078.

If your Micron 5x00 drive goes into read-only mode, try to measure PLP buffer caps (LCR meter). If suspicious, solder new ones. Worth a try at current prices.
Where can get firmware version D3MU005?
 

EffrafaxOfWug

Radioactive Member
Feb 12, 2015
1,490
579
113
I assume they were very recently uploaded by an enterprising soul :)

5300-d3mu005-d3cn003.zip and 5400-d4cn005.zip both look to contain variants for cisco (presumably CN = Cisco Networking with MU being the more generic Micon) and there's a few strings in the firmwares themselves that look like they reference some cisco-specific bugs, but no specific mention of the 65k hour bug in there that I could see. Time will tell I guess...
 

Rand__

Well-Known Member
Mar 6, 2014
6,722
1,827
113
Are those FWs capacity dependent?

Tried flashing with msecli and hdparm and both failed on my 3.84 drives.
Ai said it might be for the Ciscos and the general 480 drive only (based on strings).

Ok, maybe its Truenas but I got too far for this to be a likely culprit... and nowadays its only Linux anyway.




Code:
./msecli -F -U ./M5100_D0MU078.bin -n /dev/sdb


Trying to update current firmware for /dev/sdb.
Are you sure you want to continue(Y|N):y

Firmware update for /dev/sdb will take a few minutes to complete.
Please wait
........
Device Name  : /dev/sdb
Firmware update operation failed
CMD_STATUS   : Command aborted by the drive
STATUS_CODE  : 12
TIME_STAMP   : Mon Aug 31 17:14:19 2026

Copyright (C) 2026 Micron Technology, Inc.

root@truenas[~/MicronTechnology/MicronMSECLI]# hdparm --fwdownload ./M5100_D0MU078.bin --yes-i-know-what-i-am-doing --please-destroy-my-drive /dev/sdb


/dev/sdb:
fwdownload: xfer_mode=3 min=1 max=255 size=512
....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
FAILED: Input/output error

Code:
strings -a ./M5100_D0MU078.bin | grep -i -E '5100|MTF|D0MU|firmware|micron'
...
<DM> Micron Firmware Header CRC Error
<DM> Current Firmware
<DM> New Firmware
     New Firmware: Customer %x RAIN %x
     OLD Firmware: Customer %x RAIN %x
<DM> Firmware miss compatibility
$URL: ssh://git@bitbucket.micron.com/ssdfw/acadia.git {bugfix/ANACONDA-24077-Cisco-Cap-fail-solution-release-based-D0MU} $
5100MMU0F0HN0730
 D0MU078
MTFDDAK480TCB
Micron 0000000000000-00000
...
 

Stephan

Well-Known Member
Apr 21, 2017
1,139
908
113
Are those FWs capacity dependent?
Yes. You need D0MU4xx but afaik not available, and somewhat unlikely to show up. Example:

Code:
[D0MU075]
drive_model=5100ECO,5100PRO,5100MAX
firmware_type=MU
capacity=240,480,960,1920
display_version=D0MU075
[D0MU445]
drive_model=5100ECO,5100PRO
firmware_type=MU
capacity=3840
display_version=D0MU445
[D0MU845]
drive_model=5100ECO
firmware_type=MU
capacity=7680
display_version=D0MU845
I can confirm Hetzner's M5200_D1MU040.bin works on Micron_5200_MTFDDAK960TDN. No SMART changes here.

I thought I also had a bunch of 5100 MAX, but apparently bought a few SM883 3.84TB in 2022 for really cheap instead to diversify.

Flashed a second Micron_5300_MTFDDAK960TDT from D3MU001 to D3MU005. Out of Microns now. Performance imho reasonable for SATA:

Code:
Sequential Read:  518MB/s IOPS=0
Sequential Write: 503MB/s IOPS=0

Sequential Q32T1 Read:  519MB/s IOPS=16
Sequential Q32T1 Write: 509MB/s IOPS=15

512KB Read:  377MB/s IOPS=755
512KB Write: 410MB/s IOPS=821

4KB Read:  29MB/s IOPS=7500
4KB Write: 131MB/s IOPS=33542

4KB Q8T8 Read:  310MB/s IOPS=79416
4KB Q8T8 Write: 330MB/s IOPS=84524

4KB Q32T1 Read:  309MB/s IOPS=79357
4KB Q32T1 Write: 327MB/s IOPS=83796
 
Last edited:

nasbdh9

Active Member
Aug 4, 2019
255
167
43
successfully updated my all Micron 5300 SSD in NAS and SN3700 switch to firmware D3MU005, everything is currently running normally.

Code:
cumulus@switch-vz7eem:mgmt:~/MicronMSECLI$ sudo ./msecli -L

Device Name          : /dev/sda
Model No             : Micron_5300_MTFDDAV960TDS
Serial No            : 2124
FW-Rev               : D3MU005
Total Size           : 960.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 50

Drive information is retrieved successfully
CMD_STATUS   : Success
STATUS_CODE  : 0
TIME_STAMP   : Tue Sep  1 01:21:26 2026

Copyright (C) 2026 Micron Technology, Inc.
Code:
Device Name          : /dev/sdaa
Model No             : Micron_5300_MTFDDAK960TDS
Serial No            : 2150
FW-Rev               : D3MU005             
Total Size           : 960.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 41

Device Name          : /dev/sdab
Model No             : Micron_5300_MTFDDAK960TDS
Serial No            : 2150
FW-Rev               : D3MU005             
Total Size           : 960.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 41

Device Name          : /dev/sdac
Model No             : Micron_5300_MTFDDAK240TDT
Serial No            : 2307
FW-Rev               : D3MU005             
Total Size           : 240.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 42

Device Name          : /dev/sdad
Model No             : Micron_5300_MTFDDAK240TDT
Serial No            : 2307
FW-Rev               : D3MU005             
Total Size           : 240.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 41

Device Name          : /dev/sdb
Model No             : Micron_5300_MTFDDAK960TDS
Serial No            : 2150
FW-Rev               : D3MU005             
Total Size           : 960.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 39

Device Name          : /dev/sdc
Model No             : Micron_5300_MTFDDAK960TDS
Serial No            : 2150
FW-Rev               : D3MU005             
Total Size           : 960.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 39

Drive information is retrieved successfully
CMD_STATUS   : Success 
STATUS_CODE  : 0 
TIME_STAMP   : Tue Sep  1 01:23:32 2026 

Copyright (C) 2026 Micron Technology, Inc.
 

crlt

Active Member
Jul 12, 2024
95
106
33
Has anyone tried flashing that Hetzner provided 5200 firmware to a drive that currently has Vendor firmware?
 

EffrafaxOfWug

Radioactive Member
Feb 12, 2015
1,490
579
113
Has anyone tried flashing that Hetzner provided 5200 firmware to a drive that currently has Vendor firmware?
Several in this thread have I think, including me. There doesn't seem to be anything Hetzner-specific about the firmware. The below were done gradually over the course of a few weeks to see if any problems presented themselves, none so far.
Code:
root@wug:~# msecli -L

...

Device Name          : /dev/sdb
Model No             : Micron_5200_MTFDDAK7T6TDC
Serial No            : 
FW-Rev               : D1MU840
Total Size           : 7680.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 31

Device Name          : /dev/sdc
Model No             : Micron_5200_MTFDDAK7T6TDC
Serial No            : 
FW-Rev               : D1MU840
Total Size           : 7680.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 30

Device Name          : /dev/sdd
Model No             : Micron_5200_MTFDDAK7T6TDC
Serial No            : 
FW-Rev               : D1MU830
Total Size           : 7680.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 30

Device Name          : /dev/sdf
Model No             : Micron_5200_MTFDDAK7T6TDC
Serial No            : 
FW-Rev               : D1MU840
Total Size           : 7680.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 36

Device Name          : /dev/sdg
Model No             : Micron_5200_MTFDDAK7T6TDC
Serial No            : 
FW-Rev               : D1MU840
Total Size           : 7680.00GB
Drive Status         : Drive is in good health
Sata Link Speed      : Gen3 (6.0 Gbps)
Sata Link Max Speed  : Gen3 (6.0 Gbps)
Temp(C)              : 37

Drive information is retrieved successfully
CMD_STATUS   : Success
STATUS_CODE  : 0

Copyright (C) 2020 Micron Technology, Inc.
I've left one drive above at D1MU830. I've a 3.84TB drive elsewhere that's also received the upgrade, as my oldest it hits its 65k hours son saturday the 5th.
 
  • Like
Reactions: crlt