Updating Micron 1100 Series SSD firmware on Linux

I’ve had quite a number of performance-related issues with Micron 1100 Series M.2 SATA SSDs in various constellations over the last 18 months. My ASUS notebook started feeling more and more sluggish until I found out the read speed of its 256 GB SSD had dropped to 40 Megabytes per second. Another of these 256 GB SSDs I had just put in an external USB 3.1 enclosure was also slow. Sometimes it would even stop responding for multiple seconds. A third 512 GB SSD in my new work notebook had similar issues.

Since no one just makes good products anymore and even SSDs need regular firmware updates now, I went looking for a more recent firmware. The version installed on all three devices was M0MA020. Micron offers a nice GUI tool for both Windows and Linux called Storage Executive, which reported M0MA020 to be the latest available version in all three cases. Rather unhappy with that, I kept looking around for a bit.

After a while I came across a PDF file on a special Micron website aimed specifically at Dell customers. It mentioned a “required” update for Micron 1100 Series SSDs to new firmware versions M0MU031 and M0MA031. The document had already been published on September 13, 2017. But in late 2018 the GUI tool still didn’t know anything about it. Luckily the more recent firmware can be downloaded from the website and applied manually. Here is the link, look for “1100 SSD M0MA031 Firmware Release – Firmware Update Package (ZIP)”.

How to check the firmware version

There are several ways to check the current firmware version.

    • If you’re using GNOME, you can use the GNOME Disks utility. When you select the drive, the version will be displayed at the top of the window after the model number.
    • The pseudo file /sys/block/sd[x]/device/rev contains the firmware revision. With these Micron SSDs it doesn’t contain the full firmware version string, but just the second half (e.g. A020 or A031).
    • If you have the smartctl tool installed, smartctl -a /dev/sd[x] will return the firmware version among other information.
Sample output of the smartctl command, showing firmware version M0MA020.

How not to flash your Micron 1100 Series SSD

In theory one should be able to manually force the Micron Storage Executive GUI tool to apply the downloaded Firmware Upgrade ZIP file. The tool is written in Java and looks and behaves the same on both Windows and Linux. Just install, run, switch to the “Firmware Updates” tab, choose the ZIP file and press “Update Firmware Now”.

Except that it didn’t work, neither on Linux nor on Windows. The tool would hang for a very long time and then happily announce a successful firmware update. But the drive would still report the old version.

What worked

The Linux version installs an additional command line tool to /opt/MicronTechnology/MicronMSECLI/msecli which can also update the firmware. Once everything is downloaded and installed, the actual update is easy:

  1. Unpack the Firmware Upgrade ZIP file to some location, e.g. ~/Downloads.
  2. Apply the update using the following command:sudo /opt/MicronTechnology/MicronMSECLI/msecli -U -i /home/mr2515/Downloads/1100_M0MA031_M0MA031\ 2T_Storage_Executive_fwbin_v2/ -n /dev/sd[x]-i specifies the path to the unpacked ZIP file, -n the block device file.

The result should look like this:

A successful firmware update of a Micron 1100 Series SSD using the command line.

After the update, performance of all my Micron 1100 SSDs was restored to the expected levels. Also compatibility with external USB enclosures seemed to have improved.

Sadly the tool only works with internal SATA drives and refuses to accept external USB enclosures. So in the worst case you might have to find a device with an M.2 slot, boot a Linux Live Image and install the Storage Executive inside the Live environment to perform the update.

12 thoughts on “Updating Micron 1100 Series SSD firmware on Linux

  • Pingback: Updating Micron 1100 Series SSD firmware on Linux – story-aggregator.de

  • 14. March 2019 at 15:32
    Permalink

    Thanks, I needed this! This was Extremely helpful.

    I can’t believe the drive would just go slower and slower and slower, until you figure out to upgrade its firmware! It’s not like it has a wind-up spring inside of it!

    Reply
  • 14. June 2019 at 20:47
    Permalink

    I had the same problem, but i couldn’t find the latest firmware. So thank you for that link!
    At least the GUI Tool in Windows now properly update the firmware, so thats an improvement.

    There seems to be a new firmware update coming in 2019-07-09. But if the Tool still doesn’t recognize these new updates, that would be quite unbelievable.
    [Source: https://media.digikey.com/pdf/PCNs/Micron/PCN_33180.pdf%5D

    Reply
  • 27. July 2019 at 21:33
    Permalink

    The latest version of Micron’s Storage Executive software (3.65.012019.06) will update 1100 series SSDs to the M0MU033 and M0MA033 firmware without issue. Flashing drives connected via a USB to SATA adapter also seems to work okay (tested with a 2TB 1100 series 2.5inch drive and ASMedia USB 3.1 to SATAIII external enclosure). Also, the Momentum Cache feature can be enabled for non-boot drives now, but not for external drives.

    Reply
    • 6. December 2019 at 13:19
      Permalink

      Where would I get the latest updates apart from the Storage Executive application?
      Not that I would want to install that behemoth if I didn’t have to, but apparently it won’t even let me if I tried (Linux distribution ‘not supported’).
      »msecli« works but is of no use without the files?!

    • 13. December 2019 at 13:29
      Permalink

      Good question. I just found the update file by chance.

    • 30. December 2019 at 16:00
      Permalink

      FWIW: MOMA033 finally became available at the original source (micron.com/dell).
      PSA for notebook users: It doesn’t just disable APM on the drive, it makes the feature completely UNAVAILABLE (e.g. can’t be re-enabled)! =/

    • 24. January 2020 at 14:04
      Permalink

      Looking at how many problems there have been with buggy power management implementations on S-ATA drives, disabling it might have been the only stable thing they could do.

  • 28. November 2019 at 14:58
    Permalink

    This helped me immensely, I went from 33MB/s read to 339MB/s 🙂 I couldn’t have done it with just the Micron website, thank you!

    Reply
  • 7. August 2020 at 0:05
    Permalink

    Thanks, I did not notice at 1st, as I have lots of ram and another SSD (OK) that keep the data, by testing my M.2 Micron 1100-M0MA020(MTFDDAV512TBN) it was indeed at 33MB/s read (through gnome-disk-utility and dd command write test on Linux)
    You have to register (login) to https://www.micron.com/support in order to be able to download anything. I found (aug 2020) only latest software Micron Storage Executive Command Line Interface & Micron Storage Executive and only the following ISO (make a CD or USB boot)
    13M – 1100_revM0MU031_bootable_media_update.iso [you burn a CD or make USBstick bootable, then boot on it and it updates automatically ]
    22M – 1100_revM0MU033_bootable_media_update.iso [you better setup your bios to legacy 1st .. automatically = no control no question ]
    it’s not clear from their website for which SSD (many form factor and model number)
    there is no way to extract any firmware form those ISO and from video seen on YT.. it runs.. no question asked.. inch hallah mode…

    I installed Storage Executive and Storage Executive C.L.I. and it would tell me that the disk was at the latest firmware M0MA020
    Checked on Dell/HP/Crucial nothing more for that case I was starting to be pissed off (Micron too mean to keep a 2 MB zip file !!)
    then luckily I found on a French website (TousLesDrivers.com) a binary firmware file (good site for drivers)

    https://www.touslesdrivers.com/index.php?v_page=12&v_code=528
    software Micron Storage Executive Command Line Interface
    software Micron Storage Executive

    https://www.touslesdrivers.com/index.php?v_page=23&v_code=65176
    Firmware Micron 1100 2.5″ CD/USB M0MU033
    1100_revM0MU033_bootable_media_update.iso
    for
    1100 2.5″ 256 Mo (MTFDDAK256TBN)
    1100 2.5″ 512 Mo (MTFDDAK512TBN)
    1100 2.5″ 1 To (MTFDDAK1T0TBN)
    1100 2.5″ 2 To (MTFDDAK2T0TBN)

    https://www.touslesdrivers.com/index.php?v_page=23&v_code=55793
    Firmware Micron 1100 M.2 MSE M0MA031
    1.3M – Micron_1100_M0MA031_Releasefullconcatenatedbinary.bin
    for
    1100 M.2 256 Mo (MTFDDAV256TBN)
    1100 M.2 512 Mo (MTFDDAV512TBN) <= the one i wanted
    1100 M.2 1 To (MTFDDAV1T0TBN)

    Storage Executive would not download update from internet (saying there was not) and would not take the binary bios (requesting for a Zip Archive)
    I was a bit scared to do it as my Micron 1100 being the OS disk on my linux laptop. Thus I did make a bootable USB stick with linux Mint 19.3 XFCE to boot on a live session (swap being on another disk). in the live session I installed Storage Executive C.L.I., checked it was detecting the /dev/sda then ran
    sudo msecli -F -U Micron_1100_M0MA031_Releasefullconcatenatedbinary.bin -n /dev/sda
    it worked successfully, I am now in M0MA031 back to speed ( ~ 340 MB/s)
    I did not want to try on M0MAU33 not being sure it would work for M.2 , but may be someone did already.
    this page is the only page that treat about this subject (hence my addition)
    Good luck

    Reply
  • 21. September 2020 at 1:15
    Permalink

    To update a MTFDDAK512TBN, or another model which only ships firmware updates as an iso, I did the following:

    * Grab the iso (micron.com or that French site in the previous comment, doesn’t matter) – I got it from here (sorry for the fugly link): https://www.micron.com/search-results?searchRequest={“Filters”%3a[{“Ids”%3a[“fbb8ef41-ecfe-47ff-94a4-10e9b21db9b2″%2c”007c1172-0490-498d-b9f5-064d2ce3cc47″%2c”cf9e55a7-9ca0-4035-9093-62727d7b232b”%2c”d7465b55-9f0d-422e-bdc8-468bc8235527″%2c”9de5ff52-8af8-40c3-99ac-bb143934f9f7”]%2c”QueryToken”%3a”doc”%2c”UseLogicalOr”%3afalse}]}

    * Unpack the iso with for instance p7zip:
    7z x 1100_revM0MU033_bootable_media_update.iso

    * In the unpacked iso tree, look for the initrd, which is boot/corepure64.gz, and then unpack that:
    zcat corepure64.gz| cpio -idmv

    * The resulting firmware files can be found in ./opt/firmware
    Now just flash opt/firmware//1.bin

    Like this:

    msecli -F -U boot/opt/firmware/M0MU033/1.bin -n /dev/sda

    I did it for two drives, online, worked like a charm. Far easier than having to fuck around with unnecessary booting from an ISO.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *