2019 16" MacBook Pro (RP5500M) [9th,8C,H] + RX 5700 XT @ 32Gbps-TB3 (Razer Core X) + macOS 10.15.3 & Win10 [briefcase0j]
First of all, thanks to the whole community for your help, especially @itsage for his amazing guide.
System specs 16'' MacBook Pro with Intel 9880H, Intel UHD630, AMD Radeon Pro 5500m
MacOS 10.15.3, Windows 10 1903(18362.30).
LG UL650 external monitor connected from beginning to end(displayport).
Installation steps MAN it took me a long time!
In MacOS it's plug and play so this post is focusing on windows.
0. pre install
You'd better make some software and hardware (and mental) preparations before you try egpu cause it might be difficult.
An external moniter plugged into your egpu enclosure using DisplayPort(in my case HDMI cable could cause HDA driver malfuntion).
A ThunderBolt cable. You'll need it to connect to your laptop and it has a little TB logo at the end of the cable. I tried TB cable from Razer, Microsoft and Apple and, ironically, the Apple one didn't work. XD
A USB thumb drive to house necessary files including a modified EFI boot file(you can find it on this site,if you experience "bless" problems after clover configurator, try emptying NVRAM), BootCamp drivers from https//www.bootcampdrivers.com (I personally suggest the 2020 red driver instead the blue one which is recommended for 16'' MacBook, and put it on a USB drive in case you need to reinstall windows) and maybe VPN tools if you live in certain areas of this planet like myself.
Change security settings so you can boot from external disk.
Install windows using bootcamp assistant. In my case 18362.30 worked and 18362.295 didn't.
After successful installation of windows, immediatly stop windows update and then config update policy to prevent further problems.
Then let the bootcamp software do its thing and then restart.
Then let it automatically reboot and when you boot into windows, shutdown your system.
Hold OPTION to start the computer.
Select "efi boot" in the boot option menu and now plug in your egpu to the left side port. Press "q". Select windows. Boot.
Wait until windows is loaded(usually when the TouchBar light up), unplug your egpu.
Plug in your epgu again to the right side port when you see the log in screen(in my case only the farther away port woked). Then log in.
When windows finishes its God knows what things and finally calm down, unplug your egpu and then plug it in again to the left side port that you selected just before.
Now your external monitor should be working!
Then install the red driver, do not restart now.
Then install the Intel igpu driver from, well, Intel.
Completely shut down your laptop.
Use eif boot and go through the "left, right and left" stuff.
Yeah, you are now good to go.
I'm now able to use both screens(internal and external) and all of my gpus(igpu,dgpu and egpu).
Things that you can refer to: According to my experience, the error 12 is entirely a problem of windows not properly allocating PCIe resources. So you should be focusing on that. And I don't believe enabling and disenabling PCIe controllers should be the method that you try hard on, even there are successful examples. I believe it's not necessary to run DDU in safe mode. It creates the same restore point and I don't think the windows "safe mode" is safe at all. If anything goes wrong, you might as well be reinstalling windows, which is, believe it or not, faster than rolling back. And don't worry, you don't need to re-enter the CD-key for windows.
Problems existing: My logitech gaming software cannot detect my gpw anymore in windows.(it worked fine in MacOS). And honestly the biggest problem is that I originally built this set up to play some paradox games and crpgs that do not run in MacOS, but the troubleshooting has been so tedious that I don't have the energy to game anymore.
@briefcase0j, I enjoy reading your build experience. The last point definitely brings it home. If you think of setting up an eGPU in Boot Camp as a game, you already won. 😀
@briefcase0j I have the same set up. Can you please explain why step 4 is important? Why can't you just install display drivers during boot up? why do you have to go to the EFI and do the "left" "right" thing? Please explain. thank you!
@huntajav, Step 4 is meant to enable intel igpu, which will change the task signing methods in windows(like some people experienced internal display black out without doing so because windows let intel igpu to power internal display but igpu was not there). And most importantly this will change the way windows allocate resources. =====Didn't quite get what you mean by during boot up, well I think as long as you get the proper PCIe resources, it does not matter so mach when to install drivers.=====In the 16'' MacBook the igpu is disabled and 5500m does all the work on a full speed PCIe x16 channel. But when you have 2 dedicated gpu plugged in, each should get a PCIe x8 that was splitted from the x16(your 5500m will still be under the control of x16 controller). By enabling igpu, which runs on a separate x4 channel, and plugging to the right side port, which runs at a x4 channel from PCH instead of directly connecting to CPU, you can force windows to redistribute resources properly.
Hope this can help you.
@briefcase0j, I don’t who you are or where you come from, but you have a particular set of skills. Skills that allowed me to use an eGPU with my 16” MacBook. I don’t know how you did it or why you graced this forum with your wealth of knowledge, but you sir are owed a ton of beer. After of course I get our first responders some masks, but you are next on my list. Thank you.
@nothingshocking, Congratulations bro! Hope you enjoy your set up. It’s been a privilege to help others with my limited knowledge and professional failure experience XD.
Excellent guide. Got this working with my MBP 16" thanks to you.
The only major difference I had was that my egpu did not kick in until after step 5, which made me worry that it wasn't going to work. I audibly gasped when it finally turned on because I was so sure I was going to have to return all the junk I'd just bought.
I have the exact same setup and specs as you besides the monitor and I can’t get this to work at all. I’ve tried everything direct to how you did it. Anything I could change that could potentially fix it or something I’ve been doing wrong?
Edit: Had to use a different bootloader but I finally got it to work
This is the bootloader I used: https://egpu.io/forums/bootcamp/macbook-pro-16-windows-egpu-error-12-fix/