Update Firmware of Samsung 840 Pro

11,705

Solution 1

Samsung is really, really weird and it took me many hours to figure this one out because it's absolutely counterintuitive.

It turned out that I was right with my skepticism of an image provided by Samsung probably actually being suitable to boot from it. Putting the image they offer you on a thumb drive doesn't work. It's not that it's super fast and you don't notice the update happening like I first thought, it's just that that image isn't bootable which means that nothing happens.

You have to mount that image, find a different image in it, and put that image onto your thumb drive. Because reasons, I guess.

Step-by-Step Guide

  1. Check which firmware your SSD currently has via # hdparm -I /dev/sda. In my case it was Firmware Revision: DXM05B0Q.
  2. Visit this site and under "Firmware" → "Samsung SSD Firmware for Windows Users" download "840 PRO Firmware" which currently has the description "ISO DXM06B0Q".
  3. Mount the ISO file you just downloaded.
  4. From the mountpoint, copy isolinux/btdsk.img to a different location. I'll assume /tmp/btdsk.img for it. This step is actually necessary because root can't read that file but your normal user account can.
  5. Run sudo dd if=/tmp/btdsk.img of=/dev/sdb where /dev/sdb is your thumb drive. Go check whether it's /dev/sdb and make sure it's not mounted before you run the command! You will obviously lose the data stored on your thumb drive with this.
  6. Shut your computer down.
  7. Boot from the thumb drive.
  8. It takes a few seconds, then you'll see the slightly confusing message "Firmware is already updated onto this SSD!". The firmware version is printed above it.
  9. Press a key to continue.
  10. You're shown some kind of shell. I didn't figure out how to reboot the computer from there so I simply killed it via a hard reset. So if you can't figure it out either, just press the power button for 6 seconds. If you figured it out, leave a comment or edit this answer.
  11. Remove the thumb drive.
  12. Boot your OS.
  13. Run # hdparm -I /dev/sda, again, to verify the firmware has been updated. At the time of this writing, it says Firmware Revision: DXM06B0Q.
  14. Burn your thumb drive to get rid of that software. Alternatively, delete its contents and reuse it.

Newer Firmware Versions

ens mentioned in the comments that newer firmware images can directly be copied to the thumb drive via dd without prior extraction from a different image. I have not tested this.

Solution 2

You need version 1.0 instead of 2.0 of the (console) Samsung Magician. Download links for it you can find at https://aur.archlinux.org/packages/samsung_magician-consumer-ssd/ (the Dropbox links).

See the pinned comment at https://aur.archlinux.org/packages/samsung_magician-consumer-ssd/:

Samsung has stopped providing a Linux version of the 'Magician' for Consumer SSDs. The newer v2.0 only works with Enterprise PM863 and SM863 Series. So this is the older version v1.0. It should still be working with most Consumer SSDs but be aware that this is not the latest updated version of this software!

BTW, the notes at https://wiki.archlinux.org/index.php/Solid_State_Drives#Samsung might also be helpful with your endeavor. Good luck! (Back when I tried to do the same for my EVO drive I created myself a Windows OTG flash drive using Rufus.)

Share:
11,705

Related videos on Youtube

UTF-8
Author by

UTF-8

Updated on September 18, 2022

Comments

  • UTF-8
    UTF-8 over 1 year

    I have a Samsung 840 PRO Series SSD and want to update its firmware in order to find an alternative solution for this problem.

    I downloaded "Samsung Magician Software for Enterprise SSD" from this page because Samsung only offers magician for consumer SSDs for Windows. According to the top reply on this reddit post, it should work.

    However, upon trying to determine my SSD's ID, magician claims to have found no Samsung SSDs, even though the one and only storage medium currently attached to my laptop is the SSD mentioned in the first paragraph.

    # ./magician -L
    ================================================================================================
    Samsung(R) SSD Magician DC Version 2.0
    Copyright (C) 2015 SAMSUNG Electronics Co. Ltd. All rights reserved.
    ================================================================================================
    Magician is now configuring the environment for LSI MegaRAID SAS.
    Magician is now configuring the environment for LSI SAS IT/IR Controller.
    Magician is now configuring the environment for LSI SAS IT/IR2 Controller.
    Magician is now configuring the environment for LSI SAS IT/IR3 Controller.
    ----------------------------------------------------------------------------
    | Disk   | Model   | Serial  | Firmware  | Capacity | Drive  | Total Bytes |
    | Number |         | Number  |           |          | Health | Written     |
    ----------------------------------------------------------------------------
    No Samsung SSD found!
    
  • UTF-8
    UTF-8 over 7 years
    I created a bootable thumb drive them the ISO file. My laptop booted normally with the thumb drive attached. Either it only takes a split second to complete and boots the operating system on the HDD right afterwards or it didn't work. USB media definitely are number 1 in the boot order. I booted into a live session using the same laptop and the same thumb drive a few days ago. The image was put onto it the same way both times: Via dd. Is there a way to check whether it worked?
  • UTF-8
    UTF-8 over 7 years
    I think it didn't work because the ISO file is listed as ISO DXM06B0Q on the Samsung website but the output of # hdparm -I /dev/sda contains the line Firmware Revision: DXM05B0Q.
  • UTF-8
    UTF-8 over 7 years
    I tried the native upgrade. The older version of magician actually tells my the device ID. However, it doesn't work: pastebin.com/DR6KKDya
  • ens
    ens about 6 years
    Newer firmware ISO releases, like Samsung_SSD_850_EVO_EMT02B6Q_Win.iso can directly be copied (dd) to the USB stick.
  • UTF-8
    UTF-8 about 6 years
    @ens Thank you. I added a note to the answer.