Certain older Macs are able to take advantage of adding an external graphics card through modification. This usually requires external power, the corresponding adapters, can be done via the mini-PCIe slot or MXM slot, and come with case-by-case caveats as most of this was never intended to be a thing. Once installed and properly connected, compatibility usually goes off of OS version, as well as any hardware limitations. The modifications work by using Mini-PCIe to PCIe adapters, MXM to PCIe adapters (if applicable), and external power. Mini-PCIe provides 1 lane only, an MXM slot can provide up to 8.
Since the entirety of the content here is sourced from tests done few and far between, (as this is not a heavily treaded subject), there may or may not be additional obstacles to allowing untested configurations to work. You are responsible for any modifications done to your own computer.
Jump to Section:
Due to the length of this article and volume of information contained, it’s split up into two parts. Links below will take you to the respective sections in either Part 1 or 2 of this article.
1: General Index
2: Hardware and required adapters
3: 1st Generation Apple TV
4: 2006 15″ and 17″ MacBook Pro
5: 2006 20″ iMac with ATI Radeon X1600
6: 2006 24″ iMac with GeForce 7300 GT (Last 4 sections pending Part 2)
7: 2007 20″ iMac with Radeon HD 2400
8: 2006-07 Mac mini
9: 13″ MacBook with GMA X3100
General Index
This is a list of all the Macs known to have a Mini-PCIe style AirPort slot. Depending on the Mac you plan on modifying, the caveats will vary. While it can be safe to assume GPU compatibility will depend on the OS the Mac is able to run, there are certain limitations which prevent being able to run the same range of GPUs as a Mac Pro. For this reason, please read the notes to avoid any compatibility issues. This is a general index, scroll further down for more OS-specific/device specific information.
- Keep in mind, all AirPort slot connected eGPUs will run off of 1x PCIe lane, with the PCIe revision depending on the model Mac you have.
- In many situations, it is often found using an eGPU conflicts with existing built-in or MXM GPUs. This is partly why some eGPU attempts end up failing, as the Mac may struggle to pick between one or the other. This is OS + machine + GPU type dependent, and each configuration may cause slightly different results.
- For best results, it’s recommended to disable or remove the older, existing GPU. Unless of course both the original GPU + eGPU don’t cause driver issues, and can work in tandem.
Hardware and required adapters
- Mini-PCIe to PCIe adapters are plentiful, and cheap. They can be easily found on eBay for ~$12 – $30, and are often used in mining rigs.
- The full PCIe slot will require a 6-pin PCIe-connector power source. Although SATA to PCIe 6-pin adapters exist, it isn’t suggested to use these unless you will be using a low-TDP GPU.
- There is no failsafe circuitry on PCIe slots, so if your card pulls more than what is given by what it’s hooked up to, there will be issues. For these reasons, it is highly recommended to use an external PSU.
- Make sure you know the Thermal Design Power of your GPU.
- MXM to PCIe adapters are comparatively more expensive (~$100).
- Only ones known to exist are MXM 3.0. None are known to exist for MXM 1.0/2.0, so you’re limited to replacing the old MXM GPU, or removing it outright.
- Just like on a Mini PCIe to PCIe adapter, this will also require external power.
- In theory, you could have a dual GPU setup on a Mac using both an MXM to PCIe and Mini PCIe to PCIe adapter.
- Provides up to 8x PCIe lanes versus the AirPort slot’s 1x PCIe lane.
- Express34 to PCIe adapters can be used on a MacBook Pro. These provide a single PCIe lane just like the Mini-PCIe adapters.
- In theory, you could have a dual GPU setup on a Mac using both an Express34 and Mini PCIe to PCIe adapter.
- Just like other adapters, this will require external power.
- Village Tronic once made an eGPU enclosure with this form factor, but it’s incredibly hard to find. See Video.
- More information on Village Tronic vDock Pro.
- Expresscard34 Thread on MacRumors.
- Remember: Make sure you know the Thermal Design Power of your GPU. It is strongly recommended to have an external PSU.
- (Below: Village Tronic ViDock from YouTube pitch video)
1st Generation Apple TV
Nearly all (if not, all) of the information available on using an eGPU successfully on a 1st generation Apple TV is sourced from TechKingdom35 on YouTube. Nearly every bit of information in this Apple TV section, credit all goes to him, as this wouldn’t be possible without the video which was uploaded in the first place.
- Under Mac OS X Leopard, unfortunately, you cannot at all get any GPU working. Not any PC GPU, nor any time-period correct GPU from a Mac.
- Devices are detected, show up in system profiler and in lspci. Even using Hackintosh tools to enable the GPU can’t get it to work.
- Requires AntiX Linux (Debian based)
- Editor’s note: I speculate/theorize it may be possible to replicate the modification on this Apple TV as was done to my own 20″ iMac 5,1 with an eGPU. The X1600 GPU chip was de-soldiered, and OS X Yosemite doesn’t even detect this GPU on a hardware level anymore, and therefore doesn’t load any kexts in OS X. This prevented the interference toward the Radeon HD 5770. Using this analogy, removing the GeForce Go 7300 would be a risky modification that may ultimately prevent the Apple TV from working altogether – or allow an eGPU to work in OS X.
(Above: GPU selection screen, booting up in AntiX Linux. Credit: TechKingdom35)
(Above: What it looks like in system profiler, under OS X Leopard. Credit: TechKingdom35)
- Step 1: Install AntiX Linux. Create 2 files under the /etc/X11 directory. Files can be found on install USB.
- 1A: First file is xorg.conf, second is xorg-bus-id: You will need to specify the eGPU PCIe path in both.
- 1B: Open terminal, type “lspci” to find the PCIe path, it will list the PCIe path for your chosen GPU.
- 1C: In video, path was 02:00.0 in lspci. Results may vary. Format should be: 0000.02:00.0
- 1D: In xorg.conf (using video example), Identifier is “Device0”, BUSID is “PCI:02@0:00:0”
- 1E: Disable Nvidia GPU: Navigate to folder /lib/modprobe.d, file needs to be created there.
- 1F: Contents of file copied from live USB stick. file: video-card-disable.conf, options nouveau modeste = 0
- 1G: Reboot. Video on how this whole part was done.
- How to install linux on 1st generation Apple TV: Also by TechKingdom35.
(Above: how to modify the boot stick so it boots automatically, on the Apple TV. Credit: TechKingdom35)
(Above: Apple TV switches automatically from internal to eGPU. Credit: TechKingdom35)
2006 15″ and 17″ MacBook Pro
In my own testing, I was able to get a couple different eGPUs working on a 17″ Late 2006 Core 2 Duo MacBook Pro. This was while booting into Mac OS X Yosemite, using the Piker Alpha Mod.
- Unlike the Intel GMA 950 and X1600 based iMacs, it doesn’t appear to be limited to using just 2.5 GB of RAM, but I only ever conducted this test with 3 GB of RAM. Therefore, the RAM limit is unknown, but it is presumed to be either 3 GB as configured, or 4 GB based on model limits.
- Unlike an iMac with an X1600 GPU, Mac OS X will not allow the use of both the X1600 and the eGPU at the same time.. at least this is the case in Yosemite and El Capitan. The internal display will freeze at the boot screen, and switch over to the eGPU/external display.
- For these tests conducted, I didn’t have an external power supply handy. So I used a Mac Pro’s PCIe Power only to supply additional power to the PCIe riser card and the eGPU.
- All tests conducted using Piker Alpha’s boot.efi mod on 10.10/10.11.
(Above, left: Adapter in the MacBook Pro, Right: GTX Titan Black tested with a 17″ ’06 MacBook Pro)
(Above: Kernel Panic from trying to boot with a GTX Titan Black, using native drivers)
(Above: Click to enlarge image)
2006 20″ iMac with ATI Radeon X1600
Many tests and a few builds were put together using 20″ iMac boards that have an X1600 GPU. Unfortunately, these appear to have the GMA 950 chipset in them just as the 2006 Mac minis do – and are therefore hampered by the memory address limitations of the old chipset. I built a CustoMac with an AMD Radeon HD 5770 1 GB, and 2.5 GB of RAM made of a pile of parts.
- If both the internal display is connected to logic board + external display hooked up via eGPU, Mac OS X will recognize and use both.
- If both displays are connected, any screen rendering done on the internal display will slow down the eGPU substantially. It is strongly recommended to disconnect the internal display and get some adapters to connect it to the eGPU.
- In my own CustoMac build, I ripped the X1600 chip off the board entirely – no kexts load, no issues whatsoever, and the iMac automatically uses the eGPU!
- See: CustoMac 20″ iMac “pile of parts”