I too, had a heck of time updating my MacMini 2012 SSD840 firmware.
I have no superdrive and just the 840 plus original 1Tb HD.
For the record the current version is DXT09B0Q.
I was able to get a USB stick to boot up in Syslinux but it would hang and wasn't able to do anything.
I finally got it updated using the following method posted at http://www.ostreff.info/archives/49268 with some mods.
I want to document this procedure here incase that page ever goes down.
So I needed to find a way to be able to boot FreeDOS and run the DSRD1_0.EXE to do the update.
That was where rEFIt came into the picture, which is an EFI boot manager that is more advanced that the standard EFI environment that comes with a Mac (which appears to be an EFI 1.x environment).
And I needed a FreeDOS image I could boot from rEFIt.
I didn’t want the struggle attaching external devices, so I added 2 partitions to my internal HDD:
- A HFS+ partition for rEFIt that can boot SYSLINUX
- A FAT partition for SYSLINUX (needed to boot FreeDOS)
Procedure
Download the required tools and firmware:
Create the extra partitions with Apple’s Disk utility:
- first create a 1G partition with an Apple extended journaled file system for rEFIt, so call it rEFIt for clarity
- then create a 1G partition with a FAT file system for SYSLINUX and a FreeDOS image, just make sure that this partition is within the first 3 partitions (so make sure it is a primary partition), or you won’t be able to boot from it. Name it SYSLINUX
Setup rEFIt:
- Open the rEFIt-0.14.dmg image that you downloaded from the rEFIt site
- Copy the „efi“ directory to newly created rEFIt partition
- Open a command shell and go to /Volumes/rEFIt/efi/refit/ to run the enable.sh script
- cd /Volumes/rEFIt/efi/refit/
- sudo ./enable.sh
Get a bootable FreeDOS image from the UNetbootin site and install it:
- Run the app, provide the superuser password
- Choose „FreeDOS“ as the distribution (version 1.0 at this time)
- Type: USB drive
- Drive: /dev/disk0s4 (or whatever the device you have you SYSLINUX partition on, check with diskutil list)
- It will download FreeDOS and install it on the partition
Next, prepare the firmware:
- Open de iso file, you will find a BTDSK.IMG file
- Open de BTDSK.IMG file, and copy the SSR directory to the SYSLINUX partition, so that you can access the firmware once you have booted in FreeDOS. (( the directory is now called DSRD))
Reboot, and press the Option key while hearing the „BOING“ sound at startup to boot FreeDOS:
- Choose to boot SYSLINUX (rEFIt)
- Choose the default kernel
- Choose 5 to boot FreeDOS Live
- Once you get the A:\> prompt, change to C:
- C:
- cd SSR
- run DSRD1_0.EXE
- Follow the install utility (( The install utility did not run properly and generated and exception code ... grr. So i copied all the files/dirs from the
btdsk.img to SYSLINUX partition on the HD and renamed its .cfg file to Syslinux.cfg))
In my case, I had to power cycle the SATA SSD, but I couldn’t since it was internally, so the version check failed and it said it was unsuccessful.
After a reboot, the firmware version will be refreshed with the newest firmware version.
🙂 🙂