2018 Mac Mini [8th,4C,B] + RX Vega 56 Nano @ 32Gbps-TB3 (Gigabyte Gaming Box) + macOS 10.14.4 & Win10 1809 [itsage]
This is the portable eGPU build a lot of people wanted but no vendor built. I bought the RX Vega 56 Nano Edition on Newegg when it was on sale for $350. The enclosure was from the Gigabyte RX 580 Gaming Box. The only missing component was a PCIe Y adapter to power the Vega Nano. Other than that there was no modification to make this pairing work.
Coincidentally Gigabyte released firmware 1.3 to quiet the two 40mm enclosure fan. This firmware turns these two fans off during idle. They kick on when the eGPU reaches a certain temperature. The result is much quieter operation. My room ambient noise is 40dB. Before firmware 1.3 the Gaming Box idle noise was high 40s (47.7dB). Once flashed to firmware 1.3, it's running at low 40s (42.8dB).
Late 2018 Mac mini – i3-8100B/UHD Graphics 630 iGPU/32GB RAM/128GB SSD
It was plug-and-play in macOS Mojave. I connected an ASUS portable FHD monitor through a USB-C connection to always have boot screen. The Vega Nano eGPU powered the Samsung 49" monitor through HDMI cable and HP 27" 5K monitor through a pair of DisplayPort cables. I was able to run AORUS Engine app in macOS to change the RGB light strip.
In Windows 10, there are a couple of options to get the RX Vega 56 eGPU going. The simple method is to hot-plug the eGPU then install Radeon drivers. Once this step is done, shut the system down and switch the monitor connection from the Mac mini to the eGPU. You won't have boot screen because the eGPU disables the iGPU during boot. I wanted to keep the iGPU activated so I'm using automate-eGPU EFI. These are the basic steps I took to get this setup going:
- Boot into Recovery mode to disable SIP through Terminal. Open Startup Security Utility to set Secure Boot to No Security and External Boot to Allow booting from external media [in Option Boot]
- Download and install Windows 10 ISO through Bootcamp Assistant [in macOS]
- Complete Boot Camp driver installation then download and unpack Display Driver Uninstaller [in Windows]
- Run DDU with Admin privileges to disable Windows auto-installation of drivers [in Windows]
- Download automate-eGPU EFI onto a FAT thumb drive or a small partition (24MB) of the internal drive [in macOS]
- Shut Mac mini down then connect eGPU to Thunderbolt 3 port closest to the Ethernet port
- Boot into Windows via automate-eGPU EFI [boot selection]
- Confirm a new Microsoft Basic Display Adapter in Device Manager then install Radeon drivers [in Windows]
I ran the Vega Nano Gaming Box first through loopback mode by connecting the ASUS USB-C portable monitor through one of the USB-C ports in the back of the Mac mini. External monitor mode was through the HP monitor at FHD. Due to limited internal storage, I installed all games on an external USB 3.0 SSD connected to the Mac mini's USB port.
In order to run Steam games in loopback mode, I located the main app inside the Steam folder. Open the Information tab then set it to prefer external GPU. The games may show the Intel iGPU is primary graphics card but you can tell which one is working through Activity Monitor GPU window.
|2018 Mac mini i3||macOS Loopback||macOS External Monitor||Windows Loopback||Windows External Monitor|
|3DMark Time Spy||---||---||5,329||6,077|
|3DMark Fire Strike||---||---||16,350||19,353|
|Tomb Raider 2013||44.2 FPS||62.8 FPS||109.0 FPS||123.8 FPS|
|Dirt Rally||51.1 FPS||68.0 FPS||74.0 FPS||74.6 FPS|
|Shadow of Mordor||41.8 FPS||54.4 FPS||90.6 FPS||104.3 FPS|
|Hitman||39.9 FPS||52.5 FPS||72.8 FPS||80.4 FPS|
|Strange Brigade||---||---||86.0 FPS||95.0 FPS|
Especially as Navi RDNA 5700 series becomes available and (perhaps in the future?) with SFF card options given the lower power consumption estimates.
@mar_kelp For the most part the Gaming Box + RX Vega Nano eGPU can run stable. I tested the setup with a 2017 13" MacBook Pro when the battery was very low (20% charge on battery). The only test that crashed the eGPU was Fire Strike. With undervolting the Vega Nano eGPU could run without crashing.
I upgraded the 2018 Mac mini to Windows 10 1903 today. A nice surprise I found is that AMD eGPU could be hot-plugged without encountering error 12. As seen in the build guide, I use an ASUS 15" portable FHD monitor through a USB-C cable. It runs off the Intel UHD Graphics 630 iGPU. I don't have any monitor connected to the RX Vega Nano eGPU. No EFI boot loader was used. Simply boot into Windows 10 1903 then hot-plug Vega Nano eGPU.
Radeon drivers 19.5.2 were installed from Windows 10 1809 so as soon as the Thunderbolt 3 eGPU was detected, Radeon drivers were loaded and XConnect notification appeared. One PCIe root port I disabled permanently is 1901 which hosts no component on my system (it's there for 10GbE if your Mac mini is configured with one).
I installed Thunderbolt Control Center to keep tab on whether Thunderbolt ports/controllers are awake at boot. I don't believe it matters having this software in Boot Camp. The four TB3 ports are visible as #1 to #4 starting from HDMI port to Ethernet port. Another behaviour I noticed is that once a TB3 port is associated with the AMD eGPU through hot-plug, it will not work the next hot-plug. What I do is a trick learned from the 2018 15" MacBook Pro. I disassociate the AMD eGPU to TB3 port by manually uninstall it in Device Manager prior to hot-unplug. Subsequent hot-plug would then work well every time with every TB3 port. Make sure [ ] Delete the driver software for this device is unchecked.
Wow, this is super interesting and pretty big! Have you tried the same version on your MacBook again? Mine claims it’s no eligible for the upgrade within windows updater.
@eightarmedpet Indeed it is a big deal with AMD eGPU in Boot Camp! I tested this setup more since my last post. It's at a point where I do not need to uninstall RX Vega Nano in Device Manager to disassociate Thunderbolt 3 prior to hot-unplug. What I found is through the use of my USB-C monitor, one Thunderbolt 3 controllers always stays awake booting into Windows even when there's no Thunderbolt 3 device connected. The USB-C monitor uses one of Thunderbolt 3/USB-C ports so the TB3 controller hosting it has to work at boot.
When I switched to using a HDMI cable from the Mac mini to monitor at boot, no Thunderbolt 3 controller was awake and therefore hot-plug was not reliable. Apple can definitely tune their firmware to officially support eGPU in Boot Camp if they choose to. In the mean time we can connect a USB-C device to one of the ports booting Windows. In the 2017 13" MacBook Pro for example, we want to use the left-sided TB3 controller for full x4 PCIe bandwidth. Cold-plug a USB-C thumb drive to one of the left TB3/USB-C ports then boot into Windows and the left Thundebolt 3 controller should be awake. I have not tried W10 1903 again on my 2017 13" MBP because of corruption issues when installing Radeon drivers.
I upgraded the 2018 Mac mini to Windows 10 1903 today. A nice surprise I found is that AMD eGPU could be hot-plugged without encountering error 12.
This would be a breakthrough. Is it confirmed to be feature by Build 1903?
@oliverb I believe this is only possible with Windows 10 1903. I spent the afternoon replicating this process on the other two Thunderbolt 3 Macs I have. The 2017 13" MacBook Pro unfortunately does not work well with Radeon drivers in 1903. As soon as the graphics drivers load, the system crashes and stuck in reboot loop. With Windows 10 1809, hot-plugging the AMD eGPU would result in error 12 on this laptop.
The good news is hot-plug for AMD eGPU works for my 2016 15" MacBook Pro running W10 1903. This particular model year Mac laptops do not have Large Memory allocation. Therefore I have to rely on automate-eGPU EFI to load modified DSDT file in order to have Large Memory. This boot loader also helps me with keeping the Intel iGPU activated. To match the 20018 Mac mini as close as possible, I disabled PCIe Root 1901 to the Radeon Pro 460 dGPU and attached the Intel iGPU to internal monitor.
Hot-plug was never a possiblity with this 2016 15" MacBook Pro whether Nvidia or AMD eGPU. I can now hot-plug a Radeon eGPU without encountering error 12. I'm not sure how a 2018 15" MacBook Pro like yours would behave because we cannot activate iGPU. You can give a try and let us know. Install latest modified Radeon drivers from Bootcampdrivers.com then upgrade Windows to 1903. Hot-plug your AMD eGPU in Windows Desktop then see what happens.
thank you for the elaboration.
Actually hot-plugging AMD cards has never been possible with any MacBook Pro prior to Windows 10 Build 1903. I want to try and find out this for other MacBook Pro models, soon. Of course I will report the results once I have them.
Thank you very much for everything!
@oliverb I'm looking forward to seeing your findings! I hot-plugged an RTX 2070 Gaming Box into this 2016 15" MacBook Pro just now and it worked the same way. This is no big deal for newer Macs but it's wonderful news on this system.
Last but not least hot-unplug does not crash the system. As a matter of fact I can switch between using Nvidia to AMD eGPU and vice versa. The only limitation so far is only one Thunderbolt 3 port seems to work this way. I will play around with the other ports.
I did the following:
-Installed Windows 10 Build 1903 directly within Build 1803.
-Unplugged the nVidia eGPU.
-Hotplugged the Sonnet Breakaway Puck 570.
Note: This is something like a revolution. I was guessing before that the Windows build version plays a crucial role for Error 12. Now, it looks as they have finally solved it. I have never been a Microsoft fan, but this is great work.
Note2: After booting the computer without any eGPU and hotplugging the RX 570, I got Error 12. So, there are still issues.
Note3: I cannot reproduce anymore that hotplugging AMD eGPUs works. Getting Error 12 everytime now. 🙁
@itsage @oliverb Looks like Windows is improving their PCIe device allocation game. Good to see. If only Mac firmware was nicer to Windows. Apple refuses to address the issue of black screen on booting with eGPU on the 2018+ 15” models since “eGPU is not supported on bootcamp”. There have been some updates though with Catalina, such as improved wireless performance.
@oliverb Thank you for the report. It's good to have confirmation W10 1903 helps with AMD eGPU hot-plug. There are a couple things I've tried to produce more reliable hot-plug without error 12. The first is to manually uninstall the AMD eGPU in Device Manager like you would with previous procedure. The second trick is to connect a USB-C device such as a thumb drive so that the Thunderbolt 3 controller stays awake and gets allocation during Windows boot. Every Mac system is different but hopefully the more we try the better results we collect.
Is this your daily driver? Have you had it up and running for a good period of time? Just noticed OliverB mention his worked only the first time or so...
I think I need a new Mac mini.
@eightarmedpet It has worked very reliable for me. I'm currently running Catalina 10.15 Beta 5 which surprisingly brought eGPU Boot Screen support. There are two choices booting into Windows Boot Camp. The old way (prior to eGPU Boot Screen) via automate-eGPU EFI so that Intel iGPU remains functional. The new way (Win10 1903) through native Boot Selector via eGPU connected monitor.
Strikes me as both those methods will work with my TB3 monitor set up which is super exciting.
I might have to treat myself to a mini, again...
so I am returning back to my egpu setup after year and a half.
Actually I switched my 2017 13" to 2018"13 early this year, mac is paired with the RX 580 ATM with Razer Core X enclosure, for MacOS there is no problem as we all know …
However I am trying to figure out what is the best solution for me for a bootcamp.
I had done a lot of catch-ups on the forum and carefully review all the methods ...
… anyway I just gave it a try yesterday, and I was quite surprise with the new Windows 1909 build …
Basically I installed the Windows, installed bootcamp drivers, plugged the egpu installed the latest AMD driver, I had a classic error 12, so I disable the pcie express controller to solve it …
so far everything looks good I can boot up my pc with egpu connected and its working properly, only issue is that the igpu is deactivated by default due to macos firmware … so the laptop screen is with windows flickering logo : -) …
I am trying to find the best possible solution but not sure which is the way to go:
- use the automate e-gpu EFI ? For this I would need to disable the T2 and enable the external usb boot, but seems to be the best method.
- afterwards I find this tread that show that in 1903 it is possible to hotplug directly into windows and egpu is working properly (until version .295), does anyone tested this with 13" 2018 TB model ?
Was it working properly ? In the 1909 build when I hot-plug the egpu in Windows I will get error 12
- is there some other method with the hot-pluging during the boot ? I'm not sure about that, as I read that the apple changed / updated their boot sequence in those models …. but its always worth to ask
- any other solution that I might have missed ? I tried to read all the related topics but there are really a lot of information's on the forum
I guess the question is whether I should try to reinstall my bootcamp with 1903 version of Windows, or just leave the 1909 like it is and just be happy that its working like that
Also I would like to thank for this amazing community and the hard work you are doing ….
@lexine It's good news you can use the RX 580 eGPU in Win10 1909. Before you try anything else, I'd recommend doing timed hot-plug. Power the MacBook Pro on with the eGPU disconnected but be at the ready to plug it in. As soon as you see the Windows logo with the spinning circles, hot-plug the RX 580 eGPU and see if the internal display remains functional and eventually loads Windows Desktop. It's very helpful to have an external monitor connected to the eGPU just in case it doesn't work. In my experience this timed hot-plug method takes several tries to get the timing just right. If it failed to keep the Intel iGPU activated, you can try automate-eGPU EFI next.
Yeah, I have some experience with hotplug during the boot in my previous old build with aorux gtx 1070 box, it worked here, but I am somehow not successful this time, even when I hot-plug during the windows boot process the iGPU will be deactivated, but perhaps I'm just a bit rusty with the timing, I will give it a few more tries ... Actually therefore I was wondering whether its the combination of windows build, or the fact that I already updated to Mojave, so perhaps again something with apple firmware ... Anyway I would give it a few tries ... yeah I guess the automate-eGPU EFI would be the next logical step, for sure I can play around and test the 1903 version, but with those windows forced updates you never know when you will need to update again ...
Well, actually it seems I don't need to disable any of the PCI controllers , the RX580 seems just works fine with Win10 1909, but only when the egpu is connecting before turning on the MacBook. I did not had the luck with hot-plug during the Windows booting sequence, its either the flickering screen (iGPU disabled), or error 12 - I guess this is when I connect the egpu a bit later during the Windows loading sequence …
made the internal display work keep iGPU active with the automate-egpu-efi (btw, I just copied the solution to internal drive, don't like the have idea to keep in mind to stick the usb drive before booting, guess I am to lazy ^^ )
As soon as I will have some more time, I will create the new build thread with this setup to cover it.