Apple Mac Pro 4,1 Firmware Upgrade to 5,1 in 2024

As is fairly known, an Apple Mac Pro 4,1, also know as the Early 2009 model, is nearly identical to a Mac Pro 5,1, known as a Mid-2010 model. For a long time now it has been possible to flash the firmware or bootROM of a 4,1 to that of the 5,1. Unfortunately it has become harder and harder in 2024 to go through this process due to offline resources and outdates processes. In this article I will cover a workaround and explain step by step what to do in order to flash your Mac Pro 4,1 to a 5,1 today.

YouTube Video

If you are interested, I also created a YouTube video from this blogpost. If you prefer classic text, you can just follow the rest of this article:

Introduction

There are quite some advantages in flashing an Apple Mac Pro 4,1 with the firmware of a Mac Pro 5,1. It enables native support for newer macOS versions, up to Mojave instead of El Capitan, adds additional features like booting from NVMe and probably the most important: it enables support for 6-core CPUs and 1333Mhz DDR3 memory. This opens the door to a whole next level of upgrades and it is one of the reasons why this machine became and still is popular.

The process to flash or upgrade the firmware has been pretty straightforward. Back in 2011, user MacEFIRom posted a simple tool called “Mac Pro 2009-2010 Firmware Tool” on the netkas.org forum which made it very easy to upgrade a 4,1 to 5,1 firmware or go back to the original 4,1 firmware. This tool has been working for a long time and never let me down till now…

Unfortunately the netkas.org forum has been long gone and the tool seems unmaintained for an even longer time. As the tool requires internet access to download certain data I assume some of the online resources have moved or there are issues with TLS/SSL connectivity due to outdated certificates or increased security requirements. As a result, at least in my recent attempts, although it looks like everything is working, I do not longer manage to flash a 4,1 system with 5,1 firmware.

The problem

What I normally do when I want to flash a 4,1 system to a 5,1 is to go through the following steps:

  1. Perform a clean install of macOS El Capitan (the latest supported macOS version for a 4,1)
  2. Disable SIP (System Integrity Protection) by booting in recovery mode
  3. Download the 5,1 firmware from Apple’s website (MacProEFIUpdate.dmg)
  4. Download/copy the Mac Pro 2009-2010 Firmware Tool
  5. Open the downloaded MacProEFIUpdate.dmg to mount it
  6. Run the Mac Pro 2009-2010 Firmware Tool which would use the mounted .dmg
  7. Do the actual firmware flash by shutting down the machine then holding the power button until the power LED flashes and you hear a long tone
  8. Wait for the CD/DVD drive to open and the progress bar on the screen completes
  9. After this, the machine should reboot and the firmware is flashed to 5,1.

This has always been working but what I saw recently when I tried to go through these steps is that everything looked as if it worked and there were no error messages when running the tool. But when trying to apply the actual update by holding down the power button, the power LED was flashing and I did hear the tone but instead of seeing a progress bar, macOS started to boot as normal and the firmware did not get updated.

To try and overcome this issue, I did an extensive search, lots of reading and tried all of the following to no avail:

  • Used different memory (as I suspected a bad/wonky module)
  • Replaced the CR2032 battery (as this apparently is a known cause of this issue)
  • Tried to do a clean install of OS X Mavericks and run the tool
  • Tried to do a clean install of OS X Yosemite and run the tool
  • Tried to do a clean install of OS X El Capitan on an Apple HD instead of SSD (as some posts mention that this could cause a similar issue)
  • Tried to rename the dmg-file to EFI2010.dmg (as some people recommended)
  • Tried different (patched) versions of the Mac Pro 2009-2010 Firmware Tool

None of the above seemed to help and everything resulted in the same behavior each time when trying to flash the firmware.

Eventually, after some more reading and digging through the archived netkas.org forum, I found the following post from a user called verveguy with only a single post on the forum:

The theory here is that the Mac Pro 2009-2010 Firmware Tool needs both the “old” 4,1 firmware and the “new” 5,1 firmware for the upgrade, not only the new file. Those files are supposed to get downloaded from Apple’s website except when you, like I always did, have the 5,1 firmware mounted with that MacProEFIUpdate.dmg file. In that case it would not download the new firmware but I suspect it still needs the old one and that is probably where it goes wrong.

This gets a bit more confirmed by the error message: “This program requires Internet access. Please connect your Mac to the internet and try again.” when trying to run the tool without internet connectivity, even with a 5,1 firmware supplied as mounted dmg.

I also noticed that when trying to run the tool using no open MacProEFIUpdate.dmg, it would fail with “The program has encountered an error: 5570”:

This means that when I do not supply the new 5,1 firmware, the tool is not able to download it either, hence adding to my suspicion that downloading the required old 4,1 firmware most likely also fails.

The solution

As we saw above, the issue seems to be that the Mac Pro 2009-2010 Firmware Tool is no longer able to download the required firmware files from the internet. Unfortunately there is no easy way to change the URLs or download method and it is only possible to let the tool use a mounted MacProEFIUpdate dmg for the new 5,1 firmware, not for the old one.

To work around this, largely with the help of that post I mentioned from verveguy on the netkas.org forum, we can go use the following steps instead:

  1. Make sure you have SIP (System Integrity Protection) disabled if you are on El Capitan
  2. Run the Mac Pro 2009-2010 Firmware Tool without any mounted firmware and let it fail with the 5570 error. After this the required Ramdisk and file structure is still created.
  3. Manually download the latest 4,1 and 5,1 firmware from Apple’s website
  4. Change the downloaded dmg files with the firmware into read/write mode using Disk Utility
  5. Mount both the firmware files and change their name to 2009 and 2010
  6. Replace ExtractAndPatchEFIFiles.sh in Mac Pro 2009-2010 Firmware Tool.app/Contents/Resources/ with an updated version
  7. Manually execute the modified ExtractAndPatchEFIFiles.sh
  8. Finish the preparation by manually executing UpgradeEFI2009-2010.sh
  9. Shut down the system and proceed with the firmware upgrade procedure as before
  10. Confirm that you have successfully upgraded your 4,1 to a 5,1

Now that we know the steps from a high level and understand the process, let me go into each in detail.

The starting point for this whole process is my Mac Pro 4,1 which is on bootROM version MP41.0081.B07. I did test this with a Mac that was on MP41.0081.B08 as well.

1) Disable SIP

If you try to go through this procedure from OS X El Capitan or 10.11.6, which is the latest officially supported macOS version on a 4,1, you will need to disable SIP or System Integrity Protection as this would prevent you from changing system file.

To do so, simply reboot or boot the machine while holding Cmd + R on the keyboard.

If all goes well, this should bring you in Recovery mode and you will see a screen as follows. Here you need to open a terminal by navigating to Utilities > Terminal on the top bar:

In the terminal, type: “csrutil disableā€ and press enter:

As instructed, restart the machine by navigating to the Apple icon (left-top) and clicking Restart.

2) Run the Mac Pro 2009-2010 Firmware Tool to create the Ramdisk

You can download the tool from here if you can’t find it elsewhere.

As extensively explained above, running the firmware tool without any mounted firmware will end up with the 5570 error but that’s fine for what we want. Even though the tool can’t completely do its work, a lot of the preparation which we need has been done in the mounted Ramdisk:

Once the tool failed with the above error, just click on Ok and it will close. After that, the RamDisk volume will stay mounted.

3) Manually download the latest 4,1 and 5,1 firmware file

In this step, we just need to download the firmware files from Apple’s website.

The 4,1 firmware we need can be downloaded from here: https://support.apple.com/en-us/106656 save the file and name it FW14.dmg.

The 5,1 firmware we need can be downloaded from here: https://support.apple.com/en-us/106455 save this as well and name it FW15.dmg.

It’s important to rename the files correctly to not mix up the files as both files will be downloaded with the same original name: MacProEFIUpdate.dmg

In case the above original links would not work, I did put a copy on my blog as well: FW14.dmg and FW15.dmg.

4) Change the downloaded dmg files into read/write mode using Disk Utility

Now that we have the required firmware, we will need to mount both files with a different name simultaneously. To make sure we can change the name to something meaningful, it is better to convert the compressed dmg files to read/write.

To do so, start by opening Disk Utility and choose Images > Convert… from the top menu:

Select the downloaded file, starting with FW14.dmg:

In the next dialog, enter FW14rw in the Save As: field, make sure the file will end in your Downloads folder and set the Image Format to read/write:

Repeat the same for the FW15.dmg file. If all goes well, you should now get the following. You can use the file sizes listed below here to make sure you have the correct names:

5) Mount the firmware files and change their name

The goal here is to mount both files, one by one and change the name of the mountpoint. We could do this using terminal but the easiest is to use Finder.

Simply double-click on the FW14rw.dmg file to mount it. Then change the name from “Mac Pro EFI Update” to “Mac Pro EFI Update 2009” and repeat the same for FW15rw.dmg but this time name it “Mac Pro EFI Update 2010”:

If all goes well, you should now get the RamDisk and two volumes. One with the firmware for the 4,1, renamed by adding 2009 and the other for the 5,1 with 2010 in the name:

6) Modify/patch ExtractAndPatchEFIFiles.sh in the Mac Pro 2009-2010 Firmware Tool.app

In this step, we need to replace or change a script in the Mac Pro 2009-2010 Firmware Tool.app to make it use the two mounted firmware files instead.

You can download the modified version from here or use the following source code:

#!/bin/sh
pushd /Volumes/RamDisk

# Extract/copy 5.1 FW
pkgutil --expand '/Volumes/Mac Pro EFI Update 2010/MacProEFIUpdate.pkg' Expanded
cp Expanded/MacProEFIUpdate.pkg/Payload Payload
tar -xf Payload
mkdir -p MacProEFI2010-2009
mkdir -p MacProEFI2009-2010
cp 'System/Library/CoreServices/Firmware Updates/MacProEFIUpdate15/EFIUpdaterApp2.efi' MacProEFI2010-2009
cp 'System/Library/CoreServices/Firmware Updates/MacProEFIUpdate15/MP51_007F_03B_LOCKED.fd' MacProEFI2009-2010/MP41_0081_07B_LOCKED.fd
rm -R Applications
rm -R Expanded
rm -R System
rm Payload
hdiutil detach '/Volumes/Mac Pro EFI Update 2010/'

# Extract/copy 4.1 FW
pkgutil --expand '/Volumes/Mac Pro EFI Update 2009/MacProEFIUpdate.pkg' Expanded
cp Expanded/MacProEFIUpdate.pkg/Payload Payload
tar -xf Payload
cp 'Applications/Utilities/Mac Pro EFI Firmware Update.app/Contents/Resources/EfiUpdaterApp2.efi' MacProEFI2009-2010
cp 'Applications/Utilities/Mac Pro EFI Firmware Update.app/Contents/Resources/MP41_0081_07B_LOCKED.fd' MacProEFI2010-2009/MP51_007F_03B_LOCKED.fd
rm -R Applications
rm -R Expanded
rm -R System
rm Payload
hdiutil detach '/Volumes/Mac Pro EFI Update 2009/'

popd

patch /Volumes/RamDisk/MacProEFI2009-2010/EfiUpdaterApp2.efi EfiUpdater2009.patch
patch /Volumes/RamDisk/MacProEFI2010-2009/EfiUpdaterApp2.efi EfiUpdater2010.patch

This goal of this script is to extract the mounted 2009 and 2010 firmware files to the Ramdisk volume and to patch them.

We could theoretically run this script from another location but it makes things more complicated to get the paths correct. So the easiest is to either change the file or replace it in Mac Pro 2009-2010 Firmware Tool.app/Contents/Resources/.

In Finder, right click on the Mac Pro 2009-2010 Firmware Tool.app and choose for “Show Package Contents”:

Then drag the modified downloaded file to the .app folder Contents/Resources:

and choose to replace the file with the new version:

Alternatively you can also edit Mac Pro 2009-2010 Firmware Tool.app/Contents/Resources/ExtractAndPatchEFIFiles.sh and replace the contents with the source provided above.

7) Manually execute the modified ExtractAndPatchEFIFiles.sh

We’re almost finished now and most of the preparation has been done. At this stage we need to run the modified script so it can copy the data from the mounted firmware files to the Ramdisk and patch it.

To run the script, navigate to Mac Pro 2009-2010 Firmware Tool.app/Contents/Resources/ in terminal and run ./ExtractAndPatchEFIFiles.sh

For example, if the tool is in your downloads folder:

jensds-Mac-Pro:~ jensd$ cd Downloads
jensds-Mac-Pro:~ Downloads$ cd Mac\ Pro\ 2009-2010\ Firmware\ Tool.app/Contents/Resources/
jensds-Mac-Pro:~ Resources$./ExtractAndPatchEFIFiles.sh

The output you have should look like this:

8) Manually execute UpgradeEFI2009-2010.sh

The last step of the preparation is to put the patched firmware files in the right location on your system and “bless” them so they get used when doing the firmware upgrade boot (by holding the power button).

When running the firmware tool, a script called UpgradeEFI2009-2010.sh is used to do that. Similarly, there is also a script called DowngradeEFI2010-2009.sh which would restore the 4,1 firmware after an upgrade.

To execute this script, as in the previous step, use a terminal to navigate to Mac Pro 2009-2010 Firmware Tool.app/Contents/Resources/ again and this time run sudo ./UpgradeEFI2009-2010.sh

For example, if the tool is in your downloads folder:

jensds-Mac-Pro:~ jensd$ cd Downloads
jensds-Mac-Pro:~ Downloads$ cd Mac\ Pro\ 2009-2010\ Firmware\ Tool.app/Contents/Resources/
jensds-Mac-Pro:~ Resources$ sudo ./UpgradeEFI2009-2010.sh

The output doesn’t look very meaningful but looks something like this:

After this step your Mac Pro 4,1 is fully prepared for the firmware upgrade. This would be as if we were able to complete the Mac Pro 2009-2010 Firmware Tool without issues.

9) Shut down the system and proceed with the firmware upgrade procedure as before

At this point, as mentioned above, the steps we did prepared the system for the firmware upgrade and to complete it we can just follow the instructions you would get in the firmware tool:

So next we just need to shut down our machine first:

Then hold the power button until you see a flashing power LED and hear a long tone, followed by the regular boot chime. If all goes well, you should get a progress bar (thicker than the normal boot progress bar) and the CD/DVD drive will open:

After this completes, the CD/DVD drive will close again and the system should boot back into OS X.

10) Confirm that you have successfully upgraded your 4,1 to a 5,1

If you managed so far, have a look at System Report from About this Mac to check if the firmware update was successful:

In my case, as you can see, the firmware upgrade was a success.

What else can you try?

In case the above procedure fails or didn’t work for you, there are a few more things to keep in mind or that are worth checking:

  • Use an (original) EFI supported videocard that shows a boot screen
  • Make sure you are on the latest 4,1 firmware version MP41.0081.B07 or MP41.0081.B08 before trying to upgrade to the 5,1 version. If you are not, run MacProEFIUpdate.pkg that is inside the download FW14.dmg which will first update your current bootROM version to MP41.0081.B07
  • Also see the list of things I tried before I discovered what I covered in this post

BootROM version upgrade to 144.0.0.0.0

Once you have flashed your 4,1 with the firmware of the 5,1, you will end up with BootROM version MP51.007F.B03. This is the first and oldest version for a 5,1 as we can see on https://forums.macrumors.com/threads/macpro5-1-bootrom-thread-144-0-0-0-0.2132317/:

Ideally you would like to upgrade all the way up to the latest available version: 144.0.0.0.0 The process to do this is quite long as well but in short it consists of the following steps:

Step 1) Upgrade to macOS High Sierra from OS X El Capitan

Once you are on 5,1 firmware on El Capitan you can upgrade to macOS High Sierra. When running the installer, you will get similar instructions as with the firmware patcher tool (to hold down the power button until the LED flashes and you hear a long tone):

After going through this, your BootROM version will be MP51.0086.B00. Then complete the rest of the upgrade to macOS High Sierra.

Step 2) Start the macOS Mojave installer with a Metal-supported GPU

Next, to move to 144.0.0.0, we need to run the Mojave installer from High Sierra. This requires a GPU with Metal-support, like a RX 560, RX 580 or AMD Radeon HD7950.

Once you have a GPU with Metal-support, start the Mojave installer and follow the same instructions once again:

After completing that step this time, you will end up with the desired firmware version: 144.0.0.0.0:

I covered this with a lot more detail in a Youtube video if you plan to go through this as well:

Disclaimer

Although a lot of people, including myself multiple times, have successfully upgraded the firmware in a 4,1 to 5,1 and have been using those systems for many years without problems now, recent messages from select people, for example on the MacRumors forums, are advising against this firmware upgrade method. According to those messages, the firmware tool would create a hybrid 4,1/5,1 firmware which ultimately could lead to a bricked/corrupted BootROM. So far I have not experienced any sign of this and looking a dumps of several BootROMs after converting many years ago, I don’t see any issues. The alternative they offer is to reconstruct a dump of the BootROM correctly for 5,1 firmware. I’m not 100% sure if this is a real risk and what makes me sceptical is that these people are not sharing how to do this but instead offer to do this as a paid service.

Nevertheless, I want to be complete and inform you of this recent update I came across so you can make your own decision.

8 thoughts on “Apple Mac Pro 4,1 Firmware Upgrade to 5,1 in 2024

  1. Nice work!

    But seems to overcharge some users with less experience. A manual bootrom reconstruction is always better choice, because of corrupted parts inside the bootrom after the crossflash. This doesn’t need the steps and works even with a non-Metal card like GT120.

    If anyone needs a direct upgrade to latest 144.0.0.0.0 bootrom or any older version, “Jensd” may give them my mailing contact. Yes, it is for free.

  2. Very cool @Jensd!

    As you noted, a serious issue with the whole firmware fixing thing on MacRumours is the hoarding of information as some other person posted on YouTube recently. An option to pay for the service is actually not a big deal by itself but the refusal to share is really terrible.

    Based on this, I would strongly discourage taking up the option to refer people to the poster above that offers to do things “for free” as this is a poisoned chalice option that seeks to perpetuate the status quo of not wanting to share information.

    As far as I know, the fellow that charges for the task is pretty open to sharing information when all is said and done. This is a million times better than any “free” option that hoards information. Suh, at the end of the day, is not free at all.

    If any one finds the steps step out too daunting, please take the paid option as this, strange as it may sound, serves the community better in the long run.

  3. Bonjour, many thanks for this tool. Everything is ok for me until 13:52 where i receive this message “pro-de-mac-mac:Resources macmac$ ./ExtractAndPatchEFIFiles.sh -bash: ./ExtractAndPatchEFIFiles.sh: Permission denied” . I ‘ve tried to change “Share and permissions” to “Read and write” for all users in nearly all files and directory of “Mac Pro 2009-2010 Firmware Tool” but it doesn’t works anymore. Any idea to help me ? thanks (from France;))

    • Same as SUCHET above, I have tried this 3 times and also keep getting the “Permission denied” response in Terminal. I have VERY carefully followed each step, particularly Disable SIP (and confirmed it being off) as well as the the Read&Write changes. Any advice?
      Last login: Sat Sep 21 12:31:01 on ttys000
      john-nolls-mac-pro-2:~ johnnoll$ cd Desktop/fwup/
      john-nolls-mac-pro-2:fwup johnnoll$ cd Mac\ Pro\ 2009-2010\ Firmware\ Tool.app/Contents/Resources/
      john-nolls-mac-pro-2:Resources johnnoll$ ls
      DowngradeEFI2010-2009.sh ExtractAndPatchEFIFiles.sh
      EFIUpdater2009.patch Mac Pro Case.icns
      EFIUpdater2010.patch Scripts
      English.lproj UpgradeEFI2009-2010.sh
      john-nolls-mac-pro-2:Resources johnnoll$ ./ExtractAndPatchEFIFiles.sh
      -bash: ./ExtractAndPatchEFIFiles.sh: Permission denied
      john-nolls-mac-pro-2:Resources johnnoll$

  4. I have also tried using two different GPU’s:
    NVIDIA GeForce GT 120 (original to this Mac Pro)
    NVIDIA Quadro K500 (recently installed to be ready for Mojave)
    Both are currently installed in the machine. Does that create an issue? I just plug the monitor connector into one or the other when trying to implement this upgrade.
    I get the same Terminal message “Permission denied” regardless of which GPU was used.

    • I’ve tried this entire process about 10 times trying to adjust other potential conflicts (just logical guesswork on my part as I
      am not experienced with this type of thing). I tired with VPN on or off. No change. I tried with Ethernet connection and with WIFI connection. I also tried changing Privacy Preferences by adding Terminal.app to “Allow the apps below to control your computer” No change.

      Curious about the need for internet connection for this process to work. Is there data being exchanged with Apple? Permissions or authorizations being implemented?

      Thanks for any suggestions!

Leave a Reply

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