Subscribe via RSS

Mac Mini 1,1 Upgrade!

I was browsing randomly to see if my newly acquired Mac Mini 1,1 had any upgradable components. I was actually pretty shocked to read Jethro Carr's post on Upcycling 32-bit Mac Minis detailing how the CPU is housed in a socket!? He then goes on to describe the best CPU available. I therefore bought a T7300 pretty damn quickly. Turns out there's a step faster though... so make sure you purchase the T7600!


First Step: CPU

Follow iFixit's teardown to open the little beast. It's pretty straight-forward, but give yourself time! Just getting to step 6 was hard enough.. it's pretty scary trying to pry the thing open. Don't forget to clean the underside of the heatsink. Whilst you're there, replace the HDD and battery with newer/faster/better/more-chargier models!

DSC07208 DSC07213 DSC07214

DSC07220 DSC07225 DSC07226

Finally, when replacing the motherboard, watch out for the metal ground tag above the power socket. You'll need to make sure you slide the board in under it!


Can you see it in that above photo? It's the little tag above the power socket.

Second Step: OSX Lion

OSX Lion was the first version of OSX to drop support for 32-bit CPUs. Therefore, it's hardcoded to prevent installation on any machines that are expected to be 32-bit. Of course, we've meddled with that, so we can safely remove the block for our system and let the OS try to boot! The following steps are based loosely on this forum.

  1. Get a copy of OSX Lion
  2. Open the DVD/DMG and find BaseSystem.dmg then burn it to a USB drive or other bootable partition. Anything ~6gb. Call it LionInstaller
  3. Delete a symlink: /Volumes/LionInstaller/System/Installation/Packages
  4. Copy the actual packages from "/Volumes/Mac OS X Install ESD/Packages" to "/Volumes/LionInstaller/System/Installation/Packages"
  5. Delete "/Volumes/LionInstaller/System/Library/CoreServices/"
  6. Copy "/Volumes/LionInstaller/System/Installation/Packages/OSInstall.mpkg" to a temporary folder
  7. Go to that folder and unzip it: xar -x -v -f ~/Desktop/OSInstall.mpkg (more details here)
  8. Edit Distribution: I had to add "Mac-F4208EC8" to the block of supported platforms up the top
  9. Delete the OSInstall.mpkg that should be in the same folder, that's the old one
  10. Re-compress it to the new file: xar -c ./ -v -f OSInstall.mpkg
  11. Send it to the right folder: "/Volumes/LionInstaller/System/Installation/Packages/"
  12. Reboot and install!
  13. When Installation is complete, whilst it's prompting to reboot, open Terminal from the Utilities Menu
  14. Browse to /Volumes/[DISK_YOU_INSTALLED_TO]/System/Library/CoreServices/ and Delete PlatformSupport.plist
  15. Quit terminal and reboot the machine

Third Step: Firmware

I had mucked around with rEFInd initially to have multi-boot, but my metal apple keyboard wouldn't work with the interface. Turns out it won't even trigger bootup options (CD selection, etc...) as the Mac Mini doesn't like USB 2.0 keyboards at startup! This can all be fixed via a Firmware Upgrade. You even then get the option of installing 4gb of RAM. More information can be found in this thread.

  1. Grab the firmware and extract it somewhere.
  2. Open Terminal and go to that somewhere.
  3. Copy both files to /System/Library/CoreServices/Firmware Updates.
  4. Run the following:
    sudo bless -mount / -firmware /System/Library/CoreServices/Firmware\ Updates/EFIUpdaterApp.efi -payload /System/Library/CoreServices/Firmware\ Updates/LOCKED_MM11_0055_08B.fd -options "-x efi-apple-payload0-data" --verbose
    EFI found at IODeviceTree:/efi
    GPT detected
    No auxiliary booter partition required
    System partition found
    Returning booter information dictionary:
    <CFBasicHash 0x7f8343d02fe0 [0x7fff78e37ea0]>{type = mutable dict, count = 3,
    entries =>
    	0 : <CFString 0x10aa4afb0 [0x7fff78e37ea0]>{contents = "System Partitions"} = (
    	1 : <CFString 0x10aa4af70 [0x7fff78e37ea0]>{contents = "Data Partitions"} = (
    	2 : <CFString 0x10aa4af50 [0x7fff78e37ea0]>{contents = "Auxiliary Partitions"} = (
    Substituting ESP disk0s1
    Mounting at /Volumes/bless.y5CS
    Executing "/sbin/mount"
    Returned 0
    Creating /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE if needed
    Deleting previous contents of /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE
    Deleting /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE/EFIUpdaterApp.efi (33888 bytes)
    Deleting /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE/LOCKED_MM11_0055_08B.fd (2097152 bytes)
    Opened dest at /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//EFIUpdaterApp.efi for writing
    preallocation not supported on this filesystem for /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//EFIUpdaterApp.efi
    Type/creator set to     /     for /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//EFIUpdaterApp.efi
    /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//EFIUpdaterApp.efi created successfully
    Relative path of /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//EFIUpdaterApp.efi is \EFI\APPLE\FIRMWARE\EFIUpdaterApp.efi
    IOMedia disk0s1 has UUID F6A85C4B-BDBA-4127-ADB9-7B4D07AA40E4
    Opened dest at /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//LOCKED_MM11_0055_08B.fd for writing
    preallocation not supported on this filesystem for /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//LOCKED_MM11_0055_08B.fd
    Type/creator set to     /     for /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//LOCKED_MM11_0055_08B.fd
    /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//LOCKED_MM11_0055_08B.fd created successfully
    Relative path of /Volumes/bless.y5CS//EFI/APPLE/FIRMWARE//LOCKED_MM11_0055_08B.fd is \EFI\APPLE\FIRMWARE\LOCKED_MM11_0055_08B.fd
    IOMedia disk0s1 has UUID F6A85C4B-BDBA-4127-ADB9-7B4D07AA40E4
    Setting EFI NVRAM:
    <CFBasicHash 0x7f8343d02fe0 [0x7fff78e37ea0]>{type = mutable dict, count = 2,
    entries =>
    	1 : <CFString 0x10aa4afd0 [0x7fff78e37ea0]>{contents = "efi-boot-next"} = <CFString 0x10ab1a930 [0x7fff78e37ea0]>{contents = "<array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>F6A85C4B-BDBA-4127-ADB9-7B4D07AA40E4</string></dict></dict><key>BLLastBSDName</key><string>disk0s1</string></dict><dict><key>IOEFIDevicePathType</key><string>MediaFilePath</string><key>Path</key><string>\EFI\APPLE\FIRMWARE\EFIUpdaterApp.efi</string></dict><dict><key>IOEFIBootOption</key><string>-x efi-apple-payload0-data</string></dict></array>"}
    	2 : <CFString 0x10ab1add0 [0x7fff78e37ea0]>{contents = "efi-apple-payload0"} = <CFString 0x7f8343d03430 [0x7fff78e37ea0]>{contents = "<array><dict><key>IOMatch</key><dict><key>IOProviderClass</key><string>IOMedia</string><key>IOPropertyMatch</key><dict><key>UUID</key><string>F6A85C4B-BDBA-4127-ADB9-7B4D07AA40E4</string></dict></dict><key>BLLastBSDName</key><string>disk0s1</string></dict><dict><key>IOEFIDevicePathType</key><string>MediaFilePath</string><key>Path</key><string>\EFI\APPLE\FIRMWARE\LOCKED_MM11_0055_08B.fd</string></dict></array>"}
    Executing "/sbin/umount"
    Returned 0
  5. Shut Down
  6. Press and hold your power button until you see your Mini's power light flash repeatedly, and then release. You should hear a strange boot sound from your Mac.
  7. You may-or-may-not see a grey screen with a progress bar loading. I did, but others report they do not, so it will vary. If you do encounter this screen, just let the progress bar complete, and don't touch anything.
  8. You now may-or-may-not get a corrupt screen - Let it get to the desktop and then hold down the power button.
  9. Reboot, but this time do a PRAM reset (Command + Option + P + R)
  10. Listen to that lovely chime... it's actually the first time my Mac Mini ever made the startup chime since purchase!!
  11. Profit.

DSC07252 DSC07261 DSC07263


Yessss... we now have a MacMini2,1!

Fourth Step: RAM

Easy enough, but only after the firmware update! Grab two 2GB DDR2 PC2-5300S 200-pin SODIMMS and install them in the two available slots in the motherboard. Yes, you'll have to rip the entire unit apart again, so it's probably beneficial to buy these at the start and do it all in one hit!

DSC07362 DSC07367 apple-desktop-3

Fifth Step: Why is the CPU fan always maxed out?

Turns out, that if you leave things disconnected, then the poor little Mac Mini can't monitor it's system performance and will default to a full-speed fan. There's a wire at the front near the power light that you need to disconnect as one of the first steps... I'd forgotten to reconnect this and, well, the result is max-tilt on the cooling fan.


Make sure you plug everything back together!

Sixth Step: Alternative Operating Systems

Just for fun I decided to install rEFInd and then toy with the other 80gb I still had on the HDD. Installation was as simple as opening Terminal, switching to the Downloads directory, unzip refind*.zip, switching to the extracted directory and then finally: ./refind-install. It copied over the default configuration and then, upon reboot...


Nice. Now, off to Linux Mint to download an ISO. I chose Mate, I don't know why... I don't think I like the black of Cinnamon. It turns out my internal CD drive is toast... it just tries to read and read anything I put in there and then spits it back out again. So, thankfully my external CD drive just-worked!


Of course, the bootloader didn't. The picture above shows as far as it wanted to get... it then just freezes. It turns out all 64-bit ISOs need 64-bit EFI BIOS' and our machine doesn't have this! It has a 32-bit EFI with a 64-bit CPU. So... you need to hack the ISOs. Thankfully, Matt Gadient has already done this for us.

Filed under: Apple No Comments