2018 Mac Mini [8th,4C,B] + RX 580 @ 16Gbps-TB2 (Akitio Thunder2) + macOS 10.14.6...
 
Notifications
Clear all

2018 Mac Mini [8th,4C,B] + RX 580 @ 16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.14.6 & Win10 1903 [sdedalus1] // Win10 on external SSD  

 of  2
  RSS

sdedalus1
(@sdedalus1)
Eminent Member
Joined: 4 years ago
 

My original setup was working perfectly (plug-and-play for MacOS; for Windows, hold option to boot to drive manager, hot-plug egpu at same time as hitting return to boot Windows drive). Then Mojave Security Update 2019-002 pushed at the end of 2019 and broke it: black screen booting to both MacOS and Windows. Apparently the update includes a firmware update that changes how eGPUs are handled, which is also included somewhere in Catalina 10.15.2 or 10.15.3 and breaks eGPUs there too?

I've detailed below successful work-arounds both for MacOS and for booting Windows from an external drive.

System specs:

Late 2018 Mac Mini – i3-8100B/Intel UHD 630 iGPU/8GB RAM/128GB SSD
bootrom: 1037.60.58.0.0 (iBridge: 17.16.12551.0.0,0) [after Mojave 10.14.6 Security Update 2019-002]

eGPU hardware:

Apple TB3 to TB2 adapter + .5m Thunderbolt 2 cable + Akitio Thunder2 & Dell DA-2 power adapter + MSI RX 580 V1 + LG 27UD69P 27" 4k Freesync monitor

Prerequisites:

This guide assumes: you have booted into Recovery (CMD-R on boot) and TURNED OFF BOOT SECURITY and ALLOWED BOOTING FROM EXTERNAL MEDIA in STARTUP SECURITY UTILITY (in the menu bar). I have turned off SIP as well, but I'm not sure that's needed. And, at least at the time of writing, you must DOWNGRADE to Win10 18362.295 to avoid error 12 when installing egpu in Windows 10. The eGPU is always plugged into the TB3 port nearest the ethernet jack. See the main post on wiring the Dell DA-2 to Thunder2.

I don't like the bother of having to change the Startup Disk between Mac and Windows in System Preferences all the time, so I always leave MacOS as default startup disk and hold Option at boot to select Windows.

Installation steps (pre-firmware update):

MacOS: plug and play. I was expecting to need Purge Wrangler but was happily suprised that MacOS sees the TB3 adapter as a regular TB3 eGPU and loads AMD drivers automatically. Ah, the good life, I miss it already!

Windows 10: Installed Windows to Go on external SSD drive. Note to install on an external disk, you will need an already existing Windows install, either on another computer, or via Bootcamp on the internal disk of the Mac Mini. If you have Windows installed on the Mini's internal drive via Bootcamp, you can skip these steps. My process:

1. Download Windows 10 ISO (version 1903 18362.295 or earlier) on macOS (to avoid Win Media Creation Tool on Windows), copy to an external exFAT flash drive.
2. Open Bootcamp Assistant, go to menu, Actions > Download Bootcamp Drivers; copy DL’d WindowsSupport folder to external exFAT disk.
3. On an existing Windows computer (or Bootcamp install on Mac Mini SSD), connect external disk w/ISO and drivers; download Rufus and use to create Windows To Go installation on desired external disk (if it’s the same ext disk used in 1–2, copy the Win 10 ISO and Windows Support folder to the Windows computer/Bootcamp install first, before erasing).
3a. In Rufus, tick show USB drives, Win To Go, GPT & UEFI, default file formats
3b. After Rufus is done installing, copy WindowsSupport folder to Win To Go disk
3c. Note that Rufus will ned to erase the entire external drive; you can’t install to a partition on an existing drive with data you want to retain.
4. Be sure external booting and non-macOS booting are allowed in Startup Security Utility, by booting into Recovery partition on Mac Mini.
5. Restart and hold option for boot menu disk chooser, choose EFI Boot and boot into Windows.
6. After Windows loads and is set up, run Setup in WindowsSupport to install Bootcamp drivers. Mine hung at installing USB Virtual Host. Rerunning the Setup app hung at Enumerating Pre-Install Packages. So instead, I ran the BootCamp.msi installer in BootCamp\Drivers\Apple, which completed successfully.
7. Disable Windows updates to stay on version 1903 .295 or earlier, per https://egpu.io/forums/pc-setup/egpu-fail-after-update-to-windows-19-03/

See also this guide, which I based mine on:

https://egpu.io/forums/pc-setup/2018-MacBook-pro-13in-boot-camp-windows-on-external-ssd/

To install eGPU in Windows:

1. Plug in HDMI directly from Mac Mini to monitor. Hold option at boot to load boot manager, choose EFI Boot (which is the Windows install). Download AMD drivers for your card. Turn off wifi/internet connection (so Windows does not auto-install drivers). Hot-plug eGPU via Thunderbolt, with eGPU NOT connected to monitor. Install AMD drivers. Shut down and unplug eGPU.

2. Restart while holding down opt to load boot manager. Wait until Wifi connects. Move arrow over EFI Boot/Windows disk, hot-plug eGPU at exact same time you hit return to load Windows. If you want to be able to see the boot manager when doing this, you'll need HDMI plugged directly into the monitor, then switch to eGPU input on the monitor. Once you're used to the timing, you won't need to keep HDMI plugged in, and you'll be able to do it "blind," without being able to see the boot screen. I use the light on my external drive as a cue: it's solid when booting, then flashing when boot manager is loaded and ready to go.

Installation steps (post-firmware update):

MacOS: Booting with eGPU plugged in results in black screen. Work-around: Boot with HDMI plugged directly to monitor, hot plug eGPU after booted to desktop. You can then disconnect HDMI if you wish.

Windows: Cold booting with eGPU plugged in, or plugging eGPU in at boot manager, results in black screen. Plugging eGPU at Windows desktop results in error 12. Work-arounds:

A. @semohe reports that you can avoid error 12 by not using the HDMI port, and instead using a USB-C to HDMI converter to plug directly from the Mini to the monitor when booting (to keep iGPU enabled), then hot plug the eGPU at Windows desktop. I don't have that converter, so I haven't tested this. It does seem less complicated than the EFI fix outlined below.

B. I installed rEFInd, apple_set_os, and @aa15032261 's revision to apple_set_os. This gets beyond black screen and allows booting to Windows with eGPU plugged in during apple_set_os dialogue. You will still need to disable some resources to avoid error 12. Note you still can't cold boot with eGPU plugged in. Because I had a working setup prior to the firmware update, I did not uninstall or reinstall AMD gpu drivers. If this is a new install, you can install the AMD drivers in step 5 below. 

1. Install rEFInd, http://www.rodsbooks.com/refind/  

I installed to an external flash drive [formatted MS-DOS (FAT) and MBR partition scheme] so as not to mess with my regular EFI partition. I used a simplified version of the manual install instructions:
a. On the flash drive, create a folder "EFI" and subfolder "Boot" inside it.
b. Download the rEFInd binary and copy the the "refind" folder to "Boot". Delete any files or folders that end in "aa64" or "ia32"; we only need the "x64" versions. Rename "refind_x64.efi" to "bootx64.efi" and "refind.conf-sample" to "refind.conf."
c. When using the terminal command given in rEFInd instructions to bless the drive, I received a disk error. So I used the following code to bless the "Boot" folder, rather than what's in the rEFInd manual instructions: 

cd /Volumes/EFI/Boot
bless --folder Boot --label rEFInd

Which I got from here: https://apple.stackexchange.com/questions/338574/bless-error-when-installing-refind  . The "label" command doesn't seem to work, since it still appears as "EFI Boot" in the startup chooser; I imagine you can leave it out.

I'm not sure blessing is needed with a Windows installation somewhere on the computer, but since my Windows is on an external drive, I figured it can't hurt. If you're using a different drive or folder structure, remember you can just drag the folder from the Finder directly into Terminal after "cd" to autofill the directory path. If you're installing to the internal EFI partition, you will have to mount it first (you can do this with Clover Configurator). I don't know if the rEFInd install script works properly, I didn't try it.

2. Install apple_set_os:
https://egpu.io/forums/bootcamp/macbook-pro-16-windows-egpu-error-12-fix/
https://github.com/0xbb/apple_set_os.efi
Note that the .efi file you need is actually on the releases page, not the main github page above. You can get it here: https://github.com/0xbb/apple_set_os.efi/releases

a. Create "custom" subfolder inside "EFI" folder. Copy apple_set_os.efi from Github releases page to "custom" folder. [EDIT: Step 2 is unnecessary.]

3. Install @aa15032261 's revision to apple_set_os. Thanks to @itsage for pointing out it works for Mac Mini 2018 as well.

Download from here:  https://egpu.io/forums/bootcamp/macbook-pro-16-windows-egpu-error-12-fix/
code here:  https://github.com/aa15032261/apple_set_os-loader
a. Rename /EFI/Boot/bootx64.efi to /EFI/Boot/bootx64_original.efi
b. Copy new bootx64.efi to /EFI/Boot

4. Restart with HDMI plugged directly from Mini to monitor while holding option for boot manager. You will choose EFI Boot to load apple_set_os and then rEFInd. Note that if you have your Windows drive plugged in, it may also be named "EFI Boot" and you'll have two disks with that name: one is Windows and one is rEFInd. (If you're not sure which is which, just unplug one to see which one disappears, then plug it back in.) Boot into rEFInd. Plug in eGPU when asked by apple_set_os. You will then boot into rEFInd drive manager, choose Windows. Windows will boot normally. Go to Device Manager. RX 580 will be yellow banged. Disable a PCIe controller; since I never use ethernet, I disabled PCI Express Root Port # 2 - A339, which hosts the ethernet port. (I also tried an unused TB3/USB-C port instead and that worked as well.) If you don't have AMD drivers installed yet, download them now, then turn off internet connection(s) and prevent them from autoconnecting on startup. Shut down and unplug eGPU.

 5. Repeat step 4, booting to apple_set_os, plugging eGPU when prompted, booting to Windows through rEFInd. RX 580 will now appear in Device Manager. Install AMD drivers, if this is a new install. If you already had them installed in a working Windows version prior to the firmware update, you don't need to remove or reinstall the drivers. You can now switch to the eGPU input on your monitor and unplug HDMI.

Note that my flash drive with rEFInd is plugged into the USB-3.0 port at the end of the mini, and the external SSD is plugged into the TB3/USB-C port next to the HDMI port. Strangely, when I had the flash drive on a USB hub and the external Windows SSD on USB-3.0 port near the edge, RX 580 would not appear in device manager--not sure if that was a problem with the USB hub or where the Windows external drive was plugged in.

6. On all subsequent boots, you can now boot according to step 4 & 5 except that RX 580 will now be usable. At desktop, I switch to eGPU input on monitor, unplug HDMI, and Windows automatically adjusts display settings to use the RX 580 for the main display. 

Alternate EFI setup notes

If you have Bootcamp installed on the internal SSD, and want to install apple_set_os on the internal EFI volume, I believe you can skip installing rEFInd (step 1 of the post-firmware instructions above), and just install aa15032261's modification to apple_set_os to the internal partition (step 3, except installed to the internal EFI volume). 

Note also that I tried installing apple_set_os to the EFI partition on the external drive that holds my Bootcamp install, but booting from it would only recognize the eGPU about 50% of the time. So I went back to using rEFInd and the modified apple_set_os on a separate flash drive, which continues to work well.

EDIT: More experimentation with the modified apple_set_os suggests that it can work when installed to the EFI partition on the external Windows drive, but getting the timing right is a little more critical than with rEFInd. You have to very quickly plug in the TB cable as soon as the apple_set_os text menu loads, in order to give it enough time for the eGPU to load fully before the timeout. Wait at least 1 second after the eGPU appears and is registered on the menu before hitting any key to continue, but before the timeout counter runs down. I need to keep testing this . . .

Hardware notes

I was originally planning to use my Zotac GTX 970 from previous builds with the Mac Mini. However, I didn't realize until after I bought the Mac Mini that you can't install High Sierra on it—it's too new: the oldest OS you can install is Mojave, so no Nvidia drivers. This forced me to switch to the RX 580, which was only $100 used on eBay. This turned out to be great, because I had to underpower the GTX970 to 90% and underclock a few mhz to maintain stability with the Dell DA-2. In contrast, the MSI RX 580 V1 is stable at stock speeds. (With a mild overclock, it's mostly stable but does crash on graphics-intensive explosions unfortunately. I'm trying a mild undervolt now to see if I can push it at all. EDIT: Now stable at 1125 mV [–25mV undervolt] and mild overclock of 1375 mhz core.) This seems to be because although the reference 580 is spec'd at 185W TDP, my card has 145W TDP in vbios. The GTX 970 reference is 148W and nominally lower than the Zotac that is listed at 151.5W TDP, but the 970 suffers from voltage spikes at stock that the RX 580 doesn't.

At 198mm, the MSI RX 580 V1 just barely fits into the Thunder2 with cover off. I had to bend up the top lip of the Thunder2 case with a pair of pliers in order to fit the gpu inside, but I think the lip can easily be bent back into place to return to stock if desired.

I'd like to upgrade to a TB3 box and keep the small profile of the Thunder2 with DA-2, so will probably grab a Node Lite [EDIT: now looking at ADT-Link R43SG-TB3] as soon as I find a cheap used one. I'll also probably move to a 5600 XT, which should also have similar 150W TDP, once those get cheap as well. I have 32GB RAM ready to install in the Mini, but need to find the stupid extra torx driver I need to take it apart.

If I were buying another Mac Mini, I would definitely get a 256GB version. Not only can you fit a Bootcamp install on it, but the SSD is about twice as fast. Although the advice to avoid Apple's overpriced RAM and SSD upgrades is generally good, I didn't realize how slow the 128GB SDD is. At 660 MB/s write and 2600 MB/s read, it's probably worth it to move to the 256GB to get 1300 MB/s write.

It's a shame Apple has gone backward in eGPU support with this latest firmware!!! And once you upgrade, it can't be reverted!

 

This topic was modified 5 months ago

2018 Mac Mini (8th,4C,B) + RX 580 @ 16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.14.6 & Win10 1903 // Win10 on external SSD (build link)

 
2014 13" MacBook Pro [4th,2C,U] + RX 580 @ 16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.13.6 & Win10 1903 [build link]  


ReplyQuote
sdedalus1
(@sdedalus1)
Eminent Member
Joined: 4 years ago
 

<Will post performance measurements here once I get the time.>

2018 Mac Mini (8th,4C,B) + RX 580 @ 16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.14.6 & Win10 1903 // Win10 on external SSD (build link)

 
2014 13" MacBook Pro [4th,2C,U] + RX 580 @ 16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.13.6 & Win10 1903 [build link]  


ReplyQuote
hornedfrog
(@hornedfrog)
Trusted Member
Joined: 2 years ago
 

Thank you.

Mac mini 2018/i7/1TB/32GB RAM
Sonnet Breakaway Box 650W. Sapphire Vega 64 - (21275-03-20G card)
OWC Thunderbolt 3 14 port hub
AKiTiO Node Duo, 1 x Patriot Scorch M.2 512G SSD PCI-E 3.0 x 2 drive.


ReplyQuote
Koncept_Zero
(@koncept_zero)
Trusted Member
Joined: 11 months ago
 

You're a god. Finally a proper detailed Mac Mini/error 12 post.

2018 Mac Mini [8th,6C,B] + RX 5700 XT @ 32Gbps-TB3 (Razer Core X) + macOS 10.15.5 [build link]  

ReplyQuote
Luca Hahn
(@luca_hahn)
Active Member
Joined: 8 months ago
 

Mac Mini 2018 intel(R) Core(TM) i5-8500B CPU @ 3.00GHz  3.00 GHz/ Intel graphic UHD 630/ Razer Core X/ Pulse Sapphire Radeon RX580

Mac os 1.14.6 Mojave and Windows 1903 on internal SSD 500Go 

Hello I have kind of a similar build that I wish i'd see working on bootcamp Windows right now and eventually on mac os too. I am getting error 173 with both original amd driver and bootcampdriver*, wich says that the hardware is not detected, and on AMD support page for this error, they say that it might come from the hardware not being installed properly or conflict in device manager as you may know. I Don't know how many times i checked it and I Don't think there is many ways to set it up so i can't be that mistaken there, and as for device manager I don't see exclamation points popping anywhere. I've seen one post about this error talking about a work around for it, but this work around was posted somewhere else :/ 
Did you encounter the same problem when you've set up your build? Should I hope for result using your method? Do you know of a work around for that problem?

Here is the topic about error 173 I found: 

https://egpu.io/forums/bootcamp/help-error-173/#post-70210

I hope my question is not misplaced. I am feeling really lost with all this and my problem seem to lie somewhere i can't forsee.

Thank you 

 

*Following the steps of this video which actually led me here

PS: I am also unfamiliar with hot plug and cold plug? What does it meen? I am french btw
Thanks

Mac Mini 2018 Intel core i5 -8500B CPU @ 3Ghz / Intel graphic 630 UHD/ Razer Core X/ Pulse Sapphire Radeon RX580/ Mac os 1.14.6/ Bootcamp Windows 1903 on internal SSD 500Go


ReplyQuote
joevt
(@joevt)
Noble Member
Joined: 3 years ago
 
Posted by: @luca_hahn

I am also unfamiliar with hot plug and cold plug? What does it meen? I am french btw

hot plug = connect while the computer is on.

cold plug = connect while the computer is off.

Mac mini (2018), Mac Pro (Early 2008), MacBook Pro (Retina, 15-inch, Mid 2015), GA-Z170X-Gaming 7, Sapphire Pulse Radeon RX 580 8GB GDDR5, Sonnet Echo Express III-D, Trebleet Thunderbolt 3 to NVMe M.2 case


ReplyQuote
Luca Hahn
(@luca_hahn)
Active Member
Joined: 8 months ago
 

Perfect thanks! 

Mac Mini 2018 Intel core i5 -8500B CPU @ 3Ghz / Intel graphic 630 UHD/ Razer Core X/ Pulse Sapphire Radeon RX580/ Mac os 1.14.6/ Bootcamp Windows 1903 on internal SSD 500Go


ReplyQuote
sdedalus1
(@sdedalus1)
Eminent Member
Joined: 4 years ago
 

@luca_hahn, Sorry, I have not encountered Error 173. From other posts, it sounds like using the modified apple_set_os detailed above may fix the problem.

If you have Bootcamp installed on the internal SSD, and want to install apple_set_os on the internal EFI volume, I believe you can skip installing rEFInd (step 1 of the post-firmware instructions above), and just install apple_set_os and aa15032261's modification to it to the internal partition (steps 2 and 3, except installed to the internal EFI volume). 

Note also that I tried installing apple_set_os to the EFI partition on the external drive that holds my Bootcamp install, but booting from it would only recognize the eGPU about 50% of the time. So I went back to using rEFInd and the modified apple_set_os on a separate flash drive, which continues to work well.

 

2018 Mac Mini (8th,4C,B) + RX 580 @ 16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.14.6 & Win10 1903 // Win10 on external SSD (build link)

 
2014 13" MacBook Pro [4th,2C,U] + RX 580 @ 16Gbps-TB2 (AKiTiO Thunder2) + macOS 10.13.6 & Win10 1903 [build link]  


ReplyQuote
Luca Hahn
(@luca_hahn)
Active Member
Joined: 8 months ago
 

Ah. Thanks for the answer! On the post  about error 173 I've been given the advice of installing rEFInd which i just did, but i think i haven't disabled boot secure or Something because apple told me it was impossible to open from that disk and give me the choice of booting either from bootcamp or apple. But no rEFInd. How did you get around boot secure? I tried going into Advanced starting options but I Don't get the UEFI settings option when inside troubleshooting. I heard you had to press a key at some point, key like F2 or esc depending on the machine but I'm not really sure where or when or even which one. is there another way to access those settings for mac mini
 I will try to install apple_set_os as well now, sould i install it from mac os as the tuttorial from your link?

Answer to note:

So you think if I install rEFInd and apple_set_os on the same EFI partition as bootcamp it might not work as good as on different partition?
Thanks again

Mac Mini 2018 Intel core i5 -8500B CPU @ 3Ghz / Intel graphic 630 UHD/ Razer Core X/ Pulse Sapphire Radeon RX580/ Mac os 1.14.6/ Bootcamp Windows 1903 on internal SSD 500Go


ReplyQuote
Luca Hahn
(@luca_hahn)
Active Member
Joined: 8 months ago
 

@sdedalus1, I have run the apple_set_os and though this one actually booted (not like rEFInd) the graphique card still doesn't get detected when running the amd driver. :/ 
I think i am going to add my own topic at this point as I Don't really know what I am doing wrong. 

Thanks for you advice though.

 

Mac Mini 2018 Intel core i5 -8500B CPU @ 3Ghz / Intel graphic 630 UHD/ Razer Core X/ Pulse Sapphire Radeon RX580/ Mac os 1.14.6/ Bootcamp Windows 1903 on internal SSD 500Go


ReplyQuote
 of  2