Updating Samsung SSD firmware without Windows
My attempts to update Samsung 840 EVO to new EXT0BB6Q firmware kept failing with "WDOSX Win32 subsystem: Abort from unhandled exception" error message. This seems to be due outdated FreeDOS Samsung uses. Old version is probably incompatible with newer motherboard or something.
I got updater working by creating USB stick with bootable FreeDOS 1.1 and firmware files from Samsung.
I got updater working by creating USB stick with bootable FreeDOS 1.1 and firmware files from Samsung.
# Below assumes your USB stick is /dev/sdj. DOUBLE CHECK THIS! # Unmount any partitions OS might have automounted from this USB device mkdir -p /tmp/foo cd /tmp/foo # Get FreeDOS image, unpack, write to USB wget http://dump.asiantuntijakaveri.fi/le_bueno_dumpo/FreeDOS-1.1-USB-Boot.img.bz2 bunzip2 FreeDOS-1.1-USB-Boot.img.bz2 dd if=FreeDOS-1.1-USB-Boot.img of=/dev/sdj bs=4k # Refresh Linux partition table list and mount USB # This WILL fail if you don't unmount automounted filesystem first partprobe mkdir mnt mount /dev/sdj1 mnt # Download firmware update wget http://www.samsung.com/global/business/semiconductor/samsungssd/downloads/Samsung_SSD_840_EVO_EXT0BB6Q.iso # Unpack and copy to USB mkdir tmp # Mount ISO image mount Samsung_SSD_840_EVO_EXT0BB6Q.iso tmp -o loop # Mount floppy image stored inside ISO image losetup /dev/loop0 tmp/isolinux/btdsk.img mkdir tmp2 mount /dev/loop0 tmp2 # Copy files from floppy image to USB stick cp -av tmp2/AUTOEXEC.BAT tmp2/License.txt tmp2/samsung/ mnt/ # Sync changes sync # Unmount USB as we're done umount mnt
Hey man, gonna try this when I get home. Thanks for the info.
ReplyDeleteThanks! With your hint, I could update the firmware of my Samsung SSD 840 PRO. :-)
ReplyDeleteTheir old FreeDOS gave three different errors on two machines!
Great, thanks!
ReplyDeleteWorked perfectly when adding "sudo" before most of the commands. The standard Samsung ISO only failed with several different computers.
Great, thanks!
ReplyDeleteWorked perfectly!
I have a Dell Optiplex 780DT with a Samsung 840 EVO (FW EXT0BB0Q) and Ubuntu Studio 14.04.1-LTS on it, using LVM. So I decided to upgrade the SSD firmware to EXT0BB6Q and loaded the "Windows ISO" from http://www.samsung.com/global/business/semiconductor/samsungssd/downloads/Samsung_SSD_840_EVO_EXT0BB6Q.iso but it gave the "unhandled exception" error mentioned above.
ReplyDeleteI simply mounted the ISO and the btdsk.img within its isolinux folder and copied over the "samsung" folder and all its contents (several subfolders) onto my DOS-bootable HBCD USB stick. I could then boot the stick, navigate to the folder "samsung/DSRD" and execute "DSRDGUI0.EXE" from there.
ATTENTION: It checked the drive and offered the FW update but warned me it would clear the whole drive and I should make a backup before. Which I did (using Clonezilla). Afterwards I booted with the stick again, updated the firmware, and used Clonezilla to put my Ubuntu Studio system back onto the drive.
All good. Now I'm using 4 of these Samsung 840 EVOs, in several machines, all with the same firmware on them. I can't yet see any great performance improvements (the system was quite fast before), but at least I'm happy to have all my Samsung SSDs "on the same level".
Thank's a lot!
ReplyDeleteP.S. Just for info.
I have some trouble in process, fixed:
# losetup /dev/loop0 tmp/isolinux/btdsk.img
losetup: tmp/isolinux/btdsk.img: failed to set up loop device: Device is busy
just use /dev/loop1:
# losetup /dev/loop1 tmp/isolinux/btdsk.img