Setup & Software Discussions
[GUIDE] MacBook Pro: solving eGPU error 12 in Windows 10
 

[GUIDE] MacBook Pro: solving eGPU error 12 in Windows 10  

 of  3
  RSS

Rycco
(@rycco)
Reputable Member
Joined: 3 years ago
 
Posted by: ikir

hi guys, sorry for asking this but i’m very rusty with Windows.

I’m trying to install eGPU with bootcamp on my 13" MacBook Pro mid-2017

i have large memory pool, but I followed some step and guide here without luck. So maybe I misunderstood something or following the wrong guide.

I’m reinstalling Windows now, clean Win 10, what should I do to make my Mantiz Venus + RX Vega 56 to work.

Are you getting error 12 or its not being detected at all?

mid-2017 15" Macbook Pro RP555 + [email protected] (Mantiz Venus) + macOS & Win10


ReplyQuote
ikir
 ikir
(@ikir)
Prominent Member
Joined: 3 years ago
 

Vega 56 is detected with error 12.


MacBook Pro 2018 Touch Bar i7 quad-core 2.7Ghz - 16GB RAM - 512GB PCIe SSD
my Mantiz Venus extreme mod with Sapphire Nitro+ RX Vega 64


ReplyQuote
MacsAre1
(@macsare1)
Active Member
Joined: 2 years ago
 

I went down the list. apple_set_os.efi didn't work so I installed rEFInd on the internal drive (though my Windows install is on an external USB drive) and uncommented the spoof_OSX_version line. This got the internal GPU working in Windows so I could at least see Device Manager and the Error 12. I tried the options for dealing with error 12, and reallocating the PCIe bridges seems to be the only thing that works. I disabled an empty PCIe bridge and I disabled the internal SSD (Windows can't mount an AFPS drive anyway), neither seemed to help. Doing step 5, disabling each level of the PCIe bridge one by one and then re-enabling, is the only thing that seems to work. Problem is, I have to do this every time I reboot!
Running the latest version of Windows 10. Reinstalling is not an option, this was all done on a fresh install. But the install happens on a different Windows system using WinToUSB.

Any ideas for getting a permanent fix? Should I try the DSDT override or the VGA enable bit instead?

This is a UEFI system but can't find a lot of people using an eGPU with the 2013 MacBook Air. Also, few people using Windows on a USB drive.

Sonnet Breakaway Box with AMD RX 580 running via TB1 on an 11" MacBook Air 2013 on Mojave 10.14.6


ReplyQuote
jipsom
(@jipsom)
Active Member
Joined: 1 year ago
 

Hi, DAngerous. I know this is an old post to be responding to. Just wondering if you ever got the iMac working and had any advice?
I'm getting Code 12 and can't get around it.

SYSTEM
iMac 21 2017
High Sierra 10.13.4
Radeon pr 560 (internal)
Sonnet box + AMD rx580 8gb
Windows 10 (bootcamp partition)

eGPU works in fine OSX (10.13.4 is plug-n-play). But code 12 in bootcamp Win 10 is defeating me.

Any advice?

Rich

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
Zetthard
(@zetthard)
Active Member
Joined: 2 years ago
 

Hi, @nando4 and other fellows.

I'm trying to set up eGPU in Bootcamp Windows and having a hard time with error 12. I have no knowledge on coding and staff, thus fully rely on solutions you guys have discovered and published here. My hardware/software is:

-mid-2104 15" retina MBP with Iris 5200 graphics only (It has two TB2 ports on the left side) (model: MacBookPro11,2)
-macOS 10.13.4 (17E202)
-Boot Camp Windows 10 (build 1803), installed using Boot Camp Assistant utility
-Apple original TB2 cable + TB2 -> TB3 adapter
-Sonnet 350 box with Sapphire Nitro+ Radeon RX 580 8Gb

I successfully set up eGPU in MacOS using @mac_editor's PurgeWrangler. Thanks a million again for that script! Nothing more was required. Only the script.

For Windows setup I used USB stick with apple_set_os.efi as described by @goalque. It brought me to a state where Windows boots using EFI boot with iGPU active and running the internal LCD, while eGPU is plugged in and fans are spinning. Windows even recognised the RX 580 in device manager after couple of reboots but with error code 12. External monitor attached to eGPU is black.

For troubleshooting I followed step 5 in your [GUIDE] Macbook Pro: solving eGPU error 12 in Windows 10 with no success. I skipped the step with DDU from @itsage's Boot Camp eGPU setup guide, cuz looks like it's only required for Macs with dGPU, which is not my case. Or should I do this step as well? I also downloaded latest Radeon driver from AMD website, but manual installation fails for some reason.

From what I read throughout the forum I can see that one of the solution can be to do clover magic, but it seems to be very risky and involves deep system hacking. Hence I'm here to seek assistance on this issue. What can solve my problem 12?

I really appreciate your work on the topic guys, and any possible help.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
Charly4
(@charly4)
Eminent Member
Joined: 2 years ago
 

Hi @nando4 

I've been using your DIY eGPU solution since 2 years ago with no problems, everything perfect but two weeks ago with Windows 10 spring update your solution stop working.

When I start the DIY process it keeps frozen when pic compilation.

Any idea how to solve these?

Thank you so much!!

Macbook PRO Retina 2012 15" (Intel HD 4000 + Nvidia Geforce GT 650M)
Akitio Thunder 2 + Nvidia 970 GTX


ReplyQuote
nando4
(@nando4)
Noble Member Admin
Joined: 3 years ago
 

@charly4, please uninstall the software by running c:\egpu\uninstall-disk-image,  do a NVRAM reset, then reinstall and reconfigure the software according to email provided to you earlier. Please correspond via email if require further assistance:  https://egpu.io/egpu-setup-13x/

eGPU Setup 1.35    •    eGPU Port Bandwidth Reference Table    •    Several builds
2015 15" Dell Precision 7510 M1000M + GTX 1080 Ti @ 32Gbps-M2 (ADT-Link R43SG) + Win10


ReplyQuote
ghettocivic
(@ghettocivic)
Active Member
Joined: 1 year ago
 
Posted by: Zetthard

Hi, @nando4 and other fellows.

I'm trying to set up eGPU in Bootcamp Windows and having a hard time with error 12. I have no knowledge on coding and staff, thus fully rely on solutions you guys have discovered and published here. My hardware/software is:

-mid-2104 15" retina MBP with Iris 5200 graphics only (It has two TB2 ports on the left side) (model: MacBookPro11,2)
-macOS 10.13.4 (17E202)
-Boot Camp Windows 10 (build 1803), installed using Boot Camp Assistant utility
-Apple original TB2 cable + TB2 -> TB3 adapter
-Sonnet 350 box with Sapphire Nitro+ Radeon RX 580 8Gb

I successfully set up eGPU in MacOS using @mac_editor's PurgeWrangler. Thanks a million again for that script! Nothing more was required. Only the script.

For Windows setup I used USB stick with apple_set_os.efi as described by @goalque. It brought me to a state where Windows boots using EFI boot with iGPU active and running the internal LCD, while eGPU is plugged in and fans are spinning. Windows even recognised the RX 580 in device manager after couple of reboots but with error code 12. External monitor attached to eGPU is black.

For troubleshooting I followed step 5 in your [GUIDE] Macbook Pro: solving eGPU error 12 in Windows 10 with no success. I skipped the step with DDU from @itsage's Boot Camp eGPU setup guide, cuz looks like it's only required for Macs with dGPU, which is not my case. Or should I do this step as well? I also downloaded latest Radeon driver from AMD website, but manual installation fails for some reason.

From what I read throughout the forum I can see that one of the solution can be to do clover magic, but it seems to be very risky and involves deep system hacking. Hence I'm here to seek assistance on this issue. What can solve my problem 12?

I really appreciate your work on the topic guys, and any possible help.

I'm in the same boat with my setup (see signature)...Works great in macOS but is being difficult in Windows 10.  I've tried a fresh install of 1709, 1803, and even 1511.  It actually worked in "1511 TH2 U2" but the system would freeze after about 10 min of playing Netflix in Chrome.  1709 and 1803 give me error 12 even if I disable two other PCI Root Ports (one unused one and one for the camera). I did everything short of the custom DSDT but it's looking like that's the next step.  What sucks is that I had a GTX 1060 that worked beautifully in Bootcamp but was buggy in macOS  🙄

Edit: Reinstalled 1151 last night with latest AMD drivers and it's working with no modifications except using apple_set_os.efi from a USB drive. Seems unstable with two QHD monitors running with the internal display so i'm using it on one QHD monitor and the internal display and it hasn't crashed yet *knocks on wood*
[6-6-2018 update]-1151 was operational but very unstable...would only run for about 5-10 min before locking up or BSOD.  Updated to 1709 and it's back to error 12.  Giving up on Windows for now...setup is rock solid in macOS.

MacBook Pro 13" Late 2013 + Akitio Thunder2 + Sapphire RX570 ITX


ReplyQuote
zmyslony
(@zmyslony)
Eminent Member
Joined: 1 year ago
 

Hello,
I have the 2018 13' rMBP. Installed bootcamp and with razer core and GTX 1070 everything was plug and play. Updated OSX to Mojave Beta and all the time I get error 12. It shows GTX 1070 in device manager, but it's impossible to get it working. I have downgraded to High Sierra and once again installed Bootcamp but it probably was some firmware change, and it is still the same error. None of the guides and fixes from the forum works for me.

What would you suggest, wait for another beta update? Is there a chance they might fix this?

13" MacBook Pro + MSI GeForce RTX 2080 Duke (Razer Core X)


ReplyQuote
acantril
(@acantril)
Eminent Member
Joined: 2 years ago
 

It seems like the code/error 12 issue is the final issue preventing EGPU's becoming mainstream. I've been wanting to go to a single device for over 12 months now, I'm willing to throw any amount of $ at the situation but it seems that code 12 cannot reliably be fixed.

macOS is fine ... if i use a supported EGPU and GPU (vega64), but even with tweaking, i'd say 60% of reboots to windows result in either the EGPU not working, or my collection of TB3 hubs. All the solutions on the forms here (with all due respect) are hacks .. replug things, delay plug things, disable TB3 ports - none of those are long term, or even good solutions for anyone who just wants the laptop + EGPU + docking to work.

I know this is a volunteer community - nobody is getting paid for this, but has anyone actually attempted to 'fix' the code12 issue. It seems to be related to large memory, but even where mac's have this available in windows because of apple work behind the scenes, a working state still seems to be hit and miss.

Has there been any concerted effort to 1) identify whats causing the error 12, the real root cause and 2) see if it can be reliably fixed ?

/Adrian

I should add... I've had 3 EGPU chassis, and 4 GPUs (3 x AMD and a GTX 1080ti) - none of these configurations delivers the dream. Hot plug, support in windows and macOS and reliability when using any additional TB3 expansion hubs.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
zmyslony
(@zmyslony)
Eminent Member
Joined: 1 year ago
 

To summarize recently showing Error 12: 

Since the update to Mojave Beta I can't anymore plug and play eGPU to my 2018 Macbook Pro 13. DO NOT UPDATE TO MOJAVE BETA
It worked very good (far from perfect but I wish I had those problems again) with High Sierra, and now it's gone. It is a firmware update, and cannot be reverted. Getting back to original OS X, installing bootcamp from scratch, wiping the hard drive, NVRAM, PRAM, SMC etc. does not work. After update there seem to be some PCI problems, and the Large Memory in device manager is gone, that is probably the case.

The eGUPU (razer core X / GTX 1070) is working, GTX is in device manager with Error 12. No matter which port I use.
Some people returned their Macs or replaced them for new units, and eGPU is working fine with brand new computers, but it is ridiculous solution.

Seems like we are stuck until Apple will fix this with another beta or final build. I really hope it is a known bug, and they will eventually fix this. If not, then god know who will help simple users like me without advanced programming knowledge.

13" MacBook Pro + MSI GeForce RTX 2080 Duke (Razer Core X)


ReplyQuote
Eightarmedpet
(@eightarmedpet)
Noble Member
Joined: 3 years ago
 

Wow, thats super worrying... I really hope Apple doesn't kill eGPU's in Bootcamp because I would need to buy a whole other machine for my gaming needs rather than just rebooting my MacBook.

2017 13" MacBook Pro Touch Bar
GTX1060 + AKiTiO Thunder3 + Win10
GTX1070 + Sonnet Breakaway Box + Win10
GTX1070 + Razer Core V1 + Win10
Vega 56 + Razer Core V1 + macOS + Win10
Vega 56 + Mantiz Venus + macOS + W10

---

LG 5K Ultrafine flickering issue fix


ReplyQuote
Eightarmedpet
(@eightarmedpet)
Noble Member
Joined: 3 years ago
 

This is making me consider going back to using Hackintoshs.... I want ONE machine for everything, egpu's facilitated that but looks like Mojave may wreck things.

2017 13" MacBook Pro Touch Bar
GTX1060 + AKiTiO Thunder3 + Win10
GTX1070 + Sonnet Breakaway Box + Win10
GTX1070 + Razer Core V1 + Win10
Vega 56 + Razer Core V1 + macOS + Win10
Vega 56 + Mantiz Venus + macOS + W10

---

LG 5K Ultrafine flickering issue fix


ReplyQuote
itsage
(@itsage)
Famed Member Admin
Joined: 3 years ago
 
Posted by: Eightarmedpet

This is making me consider going back to using Hackintoshs.... I want ONE machine for everything, egpu's facilitated that but looks like Mojave may wreck things.

The real threat to adventurous Mac users is Apple's in-house processor advancement. The Apple T2 chip on the iMac Pro and 2018 MacBook Pro does a lot more than what Apple has disclosed. In 5 to 7 years, all supported Macs will have this Tx chip and Apple can ramp up security. I wager Hackintosh will get more challenging as well.

Best ultrabooks for eGPU use

eGPU enclosure buying guide


ReplyQuote
itsage
(@itsage)
Famed Member Admin
Joined: 3 years ago
 

@michael_mohr Download and run DDU to remove all existing graphics drivers. Leave the PCI Express Root Port to the iSight camera disabled. Boot your MacBook Pro with the eGPU connected to the TB3 port closest the TAB key and using apple_set_os.efi or rEFInd. Once you can confirm two Microsoft Basic Display Adapters in Device Manager, you can proceed to install Intel drivers for iGPU and Radeon drivers for eGPU.

2018 MacBook Pros come from the factory with Large Memory for Boot Camp. Once you upgrade the system to Mojave Beta, the newer firmware removes Large Memory for Boot Camp. You can either wait for a newer firmware that restores this or exchange the MacBook Pro. From the build guides I've seen, only the 2018 15" MacBook Pro can manage to resolve error 12 with the Mojave firmware.

Best ultrabooks for eGPU use

eGPU enclosure buying guide


ReplyQuote
nando4
(@nando4)
Noble Member Admin
Joined: 3 years ago
 
Posted by: zmyslony

Is there a chance they might fix this?

Have had an affected 2018 13" MBP owner successfully load the DSDT override for this Mac from the eGPU.io DSDT repository to reinstate the Windows 'large memory' and so fix the error 12:

https://egpu.io/public-repository-egpu-dsdt-overrides/

eGPU Setup 1.35    •    eGPU Port Bandwidth Reference Table    •    Several builds
2015 15" Dell Precision 7510 M1000M + GTX 1080 Ti @ 32Gbps-M2 (ADT-Link R43SG) + Win10


itsage liked
ReplyQuote
acantril
(@acantril)
Eminent Member
Joined: 2 years ago
 

Ok, but...is it only me that sees this error 12 as an issue. What i mean is that I don't see a 'solution' anywhere, I see workarounds and hacks which kinda work, most of the time, unless you reboot - which may stop it, or change ports, which will stop it, or upgrade which burns it all down.

I'm not having a dig at anyone, I guess the question I'm asking is ...'what causes error 12' and is there a way to resolve it, without all this hassle. If macOS and linux can handle it by allocating resources well - whats preventing windows doing it. Why isnt large memory support not resolving it without all these workarounds (which reading back seemed to be THE problem).

With large memory working, why cant i plug into any port, with any other TB3 devices and not having to disable anything - and it just work.

I feel (and maybe im wrong) that it's not fully understood whats causing the issue from a technical perspective.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined: 3 years ago
 

@acantril Good questions. I've investigated the root cause for error code 12, but I've not tried resizing BARs in practice.

https://egpu.io/forums/thunderbolt-enclosures/list-of-intel-titan-ridge-thunderbolt-3-devices/#post-40785

Only a few people have the technical knowledge to discuss it further.

automate-eGPU EFIapple_set_os.efi
--
2018 13" MacBook Pro + Radeon [email protected] + Win10 1809


ReplyQuote
acantril
(@acantril)
Eminent Member
Joined: 2 years ago
 

I'd actually pay for a full solution. As in $1000's for an actual non workaround solution. Would change my business workflows a lot ... worth every $.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
AndreiD2017
(@andreid2017)
New Member
Joined: 1 year ago
 

Hi @nando4 @goalque & all,

iMac Pro owner here and can't add the second eGPU to it. First one works and just for info, it's a Mantiz Venus (not that it matters). The second one is a Razer Core X. It doesn't matter what eGPU is the second, Windows 10 (Bootcamp) throws the code12 error.

I tried the iMac DSDT override that was already compiled from repository. No large memory support. 

Tried to do my own DSDT override. Besides the fact that I had to disable secure boot from T2 chip, I still didn't get the large page support. Problem is, I think, that I don't have a proper dsdt-modified.dsl file. The general Windows guide (the one with the hex modding) doesn't apply to me since I simply don't have that HEX string in the file. I then tried also this path from techinferno and still nothing. No large memory support. 

The issue is that I wouldn't bother that much with Windows, but the app that runs the gpus is Windows only and the gpus are Titan Vs, which have no official support on MacOS. Don't know how well they scale in CUDA in MacOS with the webdrivers. So I'm stuck to Windows 10.

I also tried to free resources from the isight camera but I couldn't find the PCI resource for it to disable it, so I just disabled the isight camera directly. Don't know if that does the same thing....probably not. Just like user @jipsom I have a dedicated GPU a Vega 64, so we have no way to force the system to work only with the iGPU, like some Macbook owners can. So that is also a dead end.

Any ideas? I can happily post code snippets or any screenshots!

Thanks and keep up the good work.

PS: Does this tool work for iMac Pro?  DIY eGPU Setup 1.35

PSS: Can MacOS updates, like major ones like Mojave for example, have any effect on the Code12 Windows errors for us with Macs? This may seem like a dumb question, as I understand clearly where the code12 problem comes from, but can those updates carry EFI upgrades or stuff like that, that may or may not help crappy Windows 10 deal with the code 12?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
Vumad
(@vumad)
Active Member
Joined: 10 months ago
 

Hello,

I just got my first eGPU yesterday and have spent all day on the project. I have completed my goals for MacOS but am stuck on Windows. I have a Code 12 and can't get past it.

Laptop
Late 2015 Macbook Pro, 2.2ghz, no dGPU, TB2

eGPU
Devilbox
Rx 480 Sapphire
Generic Headless Adapter
TB3 to TB2 adapter and cable

MacOS is completed, I did MacOS first but I need help with windows. Scroll past my question for MacOS information.

Windows Code 12 HELP
On windows I have not been able to get past code 12. An important part about my bootcamp is that I am not using the internal drive. I am boot camping from a Samsung 128gb USB 3.0 drive. This has thus far worked very well except for my low frame rates. I do not believe these frame rates are because of the USB since I have similar performance on MacOS, thus the eGPU.

I completed the steps in this link about resolving the Code 12  https://egpu.io/forums/pc-setup/fix-dsdt-override-to-correct-error-12/
I successfully completed all of the steps and have the large memory allocation area. I have tried uninstalling and unplugging my eGPU but it always goes back to the same spot. I have tried both TB2 plugs (PCI 2 and PCI4) and same results. I have disabled most non-critical hardware, including the audio and even the SSD (since I'm running windows from USB). The SSD uses PCIx16. The eGPU is under PCIx8 with the audio controller.

I have tried to utilize the EFI  https://egpu.io/forums/mac-setup/how-to-keep-mbps-irisiris-pro-activated-when-booting-into-windows-boot-camp/ but I don't think it is designed to work with my Boot. I have tried accessing my EFI hidden partition using  https://www.incredigeek.com/home/how-to-view-hidden-efi-partition-on-mac-drive/ and placing apple_set_os.efi in various locations w/o any changes in operation, except removing the bootx64.efi prevents booting.

MacOS
MacOS is completed and functioning.
Basically everything I needed to do was in this one thread.  https://egpu.io/setup-guide-external-graphics-card-mac/
Actually I used a consolidated article, but I can't find it.
I also followed the steps for internal display.

I used Heaven Benchmark to test MacOS
Settings External: 1920x1080, 2xAA, High, other stuff disabled...
Stock MBP w/ HDMI out, FPS 9.3, Score 234
eGPU output to monitor, FPS 49.3, Score 1241, 530% of stock (430% improvement)

Settings Internal 1440x900, other same
Stock MBP, FPS 15.3, Score 386
eGPU to internal display, FPS 42.7, Score 1075, 279% of stock (179% improvement)

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
Vumad
(@vumad)
Active Member
Joined: 10 months ago
 

Updated to Mojave today. I can right click on an app and select egpu preferred. Now I do not need spectacle or disable monitor to accelerate the igpu. Works well. I think the only thing I am running currently is automate-egpu. I don't know if that is required for Mojave but I read apple only supports TB3 so I just let it update when it prompted me after the OS update.

Edit: I ran the DDU tool today and it caused problems with windows and my MacOS actually rolled back somehow. I was in MacOS and it was fully functioning. I switched to Windows to try to solve my error code 12. I ran DDU and then my eGPU would not work. I went back into MacOS and it had to update to Mojave again. The eGPU would not work, and after a while of frustration, I tried disabling SIP (This had already been done and the system was functioning prior to DDU, I never re-enabled sip). Once I disabled SIP, my eGPU immediately began functioning again. After all of this, my eGPU still doesn't get past code 12. Stay away from the posts that tell you to run DDU unless you find a specific need.

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
jwarn010
(@jwarn010)
New Member
Joined: 9 months ago
 

So I am not sure if this is helpful but I have a 2016 13" MacBook Pro with touchbar High Sierra and I am using a Nvidia egpu with bootcamp. I have not done anything with settings or tricks on either side (mac os or windows 10) and have gotten it to work by simply turning on the egpu as soon as I see the windows logo when booting into windows. Windows boots normally with my integrated graphics and my egpu both active in windows. Do any of you know if this method will work with Mojave?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


itsage liked
ReplyQuote
Eightarmedpet
(@eightarmedpet)
Noble Member
Joined: 3 years ago

ReplyQuote
(@aidan_kelly)
New Member
Joined: 8 months ago
 

Hello! This is my first post on the site! I've ghosted the forums for a while. Thank you all for what you do.

I have the RX 580 Gaming Box and wish to use it with my Macbook Pro late-2016 15" on Bootcamp. I plan on using my eGPU to boost performance on my internal display. Following the set-up guide by @itsage I have...

  • Fresh installed Windows 10 version 1803
  • Run DDU
  • Set up a flash drive with apple_set_os.efi
  • Run integrated.bat as an administrator to attach my iGPU to the internal display

At this point, my computer recognizes I when I have the eGPU plugged in to the right-side Thunderbolt 3 ports but it shows up yellow banged with the dreaded error code 12. To attempt to remedy the problem I have tried...

I've hit a road block. Any known fixes would be appreciated. I would love to use my new eGPU soon. Thanks <3

Macbook Pro 15" Mid-2016, AMD Radeon Pro 460, Touchbar
Bootcamp Windows 10 1803


ReplyQuote
itsage
(@itsage)
Famed Member Admin
Joined: 3 years ago
 

@aidan_kelly Welcome aboard! I'd recommend giving these steps a try. You'll basically replace apple_set_os.efi on the flash drive with @goalque's automate-eGPU EFI.

This post was modified 8 months ago

Best ultrabooks for eGPU use

eGPU enclosure buying guide


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 10 months ago
 

I may add some personal experience: I am using eGPUs extensively since several months, I have never had Error 12 until today, neither on my 15-inch MBP 2018, nor my 13-inch MBP 2015.
This happened only after really stressing Windows 10 with trying a couple of old gpus, which caused a lot of system crashes. I reset-ted windows 10 with a backup from before the testing and Error 12 is gone. For good.

Error 12 is most probably a sign for a corrupted windows.

Additional note: In the last days I restored my Windows several times and everytime the installation of multiple GPUs, AMD like nVidia works quite easily. Never Error 12. Of course this may be different on other MacBooks, but here is how I do it: https://egpu.io/forums/pc-setup/step-by-step-guides-to-install-nvidia-and-amd-egpu-cards-on-bootcamp-15-inch-macbook-2018/

This post was modified 8 months ago

2018 15" MBP & 2015 13" MBP connected to RTX2080Ti GTX1080Ti GTX1080 Vega56 RX580 R9-290 GTX680


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 10 months ago
 

Another important note:
If you boot the system with an eGPU plugged in, the possibility for Error 12 is much smaller, because Windows can allocate the resources for the eGPU during boot.
This is different when you hot-plug an AMD eGPU on a system that has been booted with any eGPU. There I get Error 12, too, which can always be resolved by just rebooting.

And: You can avoid the internal display being blacked by uninstalling the Apple Radeon drivers (or at least disabling),

2018 15" MBP & 2015 13" MBP connected to RTX2080Ti GTX1080Ti GTX1080 Vega56 RX580 R9-290 GTX680


ReplyQuote
Boxxxer64
(@boxxxer64)
New Member
Joined: 6 months ago
 

Hello to all! I'm new! I have a Macbook Pro 13 2015 and a Mantis Mz02 with a RX580. Under Mojave everything runs wonderfully with PurgeWrangler. Unfortunately I can not get it running on Windows with Bootcamp. Definitely 100x instaliert and tried everything possible. Always error 12. Maybe someone here has a Macbook 12.1 where it works under Bootcamp? Would be glad about a few tips.

Greetings Martin

This post was modified 6 months ago

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
Vumad
(@vumad)
Active Member
Joined: 10 months ago
 
Posted by: nando4
6-Nov-2018>> The latest and cleanest method of resolving error 12, that applies to both Nvidia and AMD cards is shown in the following build:
 

 

Do not that 2017 Macbook Pros do not require the large memory DSDT override as their firmware already contains it.


Below are a number of strategies to resolve error 12 on a bootcamped Win10 Macbook notebooks. These are presented in order of user difficulty sometimes requiring a combination solution. This info has been integrated into these Macbooks' implementation guides
 
 
0. Hotplug your eGPU after bootup to delay Apple firmware initialization of the eGPU
 
1. Use apple_set_os.efi  to enable your iGPU and use a specific TB3 port [from goalque]
 
2. Disable Windows fast startup I combine the apple_set_os.efi flashdrive boot with the fast startup disabled and everything worked all of the sudden. No more code 12, both monitors are running, and I can play games at higher than single digit frame rates on my 2015 15" Iris Pro MBP.
 
3. 2013+ 15" MBP (GT750M/M370x/RP4xx) - disable the dGPU hosting root x16 PCIe port if using apple_set_os.efi + gpu-switch [from  ryokun6 ]

 

4. 2016 13" MBP - Disable port #10 - 9D19, as shown below. [from haruhiku]

 

5. 2016 MBP: Disable and re-enable the Thunderbolt PCIe bridge hosting the iSight Camera utilising a large PCIe aperature

Go to Device Manager -> View -> Device by Connection
Find the "iSight Camera". Disable the PCI Root Bridge above it.
Find your NVidia eGPU. Disable the PCI Root Bridge above it.
Wait for the Windows Error sound
Go to the same PCI Root Bridge above your NVidia.  Click "Enable"
Reboot your system to see error 12 gone.

 

6. Have windows reallocate your Thunderbolt PCIe bridges

A Windows reinstall being one way of doing this. The other is to:

Go to Device Manager -> View Devices By Connection. Find your eGPU then disable the PCIe bridges above it one at a time like shown below including the (in this case) Root port #5. . Then re-enable them. The idea is to force reallocation by Windows. A variation of this is to uninstall the top level PCI Bridge/Port so as to have Windows re-pnp the system upon reboot.

 
 
 
7. Perform a DSDT override to allow eGPU allocation in 36-bit space. Reported by several 2016 MBP owners as fixing their error 12. Do the bridge reallocation in (5) if still see error 12.
 
Note:  2017 Macbooks already have a factory 'large memory' area that older models required a DSDT override for. 2018 Macbooks do too but the firmware installed with the Mojave beta disables it.
 
 
8. Use Nando4's DIY eGPU Setup 1.35 software to resolve error 12 on BIOS/MBR Windows for these systems:

 

 9. Set the VGA Enable bit on the hosting PCIe bridge using rEFInd. @DANgerous25 covers this in the followup derivative post. [original rEFIt script removed due to rEFIt's discontinuance but has been integrated by @DANgerous25].

I would still love to be able to get my eGPU to work with windows. I have a late 2015 MBP with iris graphics. I have purge wrangler and can use the eGPU in mac without an issue. Nothing special is required to make it run accelerated internal graphics since the MacOS update. I have a 300-400% improvement over the CPU based graphics.

Code 12 is not something I can get past. I tried the EFI and followed all directions with no luck. My mid 2015 MBP is listed for 1.35 but my MacBook refuses to boot from a MBR drive because it is EFI. I tried the DSDT override and the switch off of PCI bridges, and everything else suggested. I benched it for the last few months and tried again with the recent purge wrangler updates. No love.

The information on my system and steps are listed in this thread....

https://egpu.io/forums/pc-setup/2016-macbook-pro-solving-egpu-error-12-in-windows-10/paged/3/

One update from this past information is that I am now running bootcamp. I am no longer running windows from the Samsung drive as previously stated.

Hello,

 

I just got my first eGPU yesterday and have spent all day on the project. I have completed my goals for MacOS but am stuck on Windows. I have a Code 12 and can't get past it.

 

Laptop

Late 2015 Macbook Pro, 2.2ghz, no dGPU, TB2

 

eGPU

Devilbox

Rx 480 Sapphire

Generic Headless Adapter

TB3 to TB2 adapter and cable

 

MacOS is completed, I did MacOS first but I need help with windows. Scroll past my question for MacOS information.

 

Windows Code 12 HELP

On windows I have not been able to get past code 12. An important part about my bootcamp is that I am not using the internal drive. I am boot camping from a Samsung 128gb USB 3.0 drive. This has thus far worked very well except for my low frame rates. I do not believe these frame rates are because of the USB since I have similar performance on MacOS, thus the eGPU.

 

I completed the steps in this link about resolving the Code 12  https://egpu.io/forums/pc-setup/fix-dsdt-override-to-correct-error-12/

I successfully completed all of the steps and have the large memory allocation area. I have tried uninstalling and unplugging my eGPU but it always goes back to the same spot. I have tried both TB2 plugs (PCI 2 and PCI4) and same results. I have disabled most non-critical hardware, including the audio and even the SSD (since I'm running windows from USB). The SSD uses PCIx16. The eGPU is under PCIx8 with the audio controller.

 

I have tried to utilize the EFI  https://egpu.io/forums/mac-setup/how-to-keep-mbps-irisiris-pro-activated-when-booting-into-windows-boot-camp/ but I don't think it is designed to work with my Boot. I have tried accessing my EFI hidden partition using  https://www.incredigeek.com/home/how-to-view-hidden-efi-partition-on-mac-drive/ and placing apple_set_os.efi in various locations w/o any changes in operation, except removing the bootx64.efi prevents booting.

 

MacOS

MacOS is completed and functioning.

Basically everything I needed to do was in this one thread.  https://egpu.io/setup-guide-external-graphics-card-mac/

Actually I used a consolidated article, but I can't find it.

I also followed the steps for internal display.

 

I used Heaven Benchmark to test MacOS

Settings External: 1920x1080, 2xAA, High, other stuff disabled...

Stock MBP w/ HDMI out, FPS 9.3, Score 234

eGPU output to monitor, FPS 49.3, Score 1241, 530% of stock (430% improvement)

 

Settings Internal 1440x900, other same

Stock MBP, FPS 15.3, Score 386

eGPU to internal display, FPS 42.7, Score 1075, 279% of stock (179% improvement)

Updated to Mojave today. I can right click on an app and select egpu preferred. Now I do not need spectacle or disable monitor to accelerate the igpu. Works well. I think the only thing I am running currently is automate-egpu. I don't know if that is required for Mojave but I read apple only supports TB3 so I just let it update when it prompted me after the OS update.

Edit: I ran the DDU tool today and it caused problems with windows and my MacOS actually rolled back somehow. I was in MacOS and it was fully functioning. I switched to Windows to try to solve my error code 12. I ran DDU and then my eGPU would not work. I went back into MacOS and it had to update to Mojave again. The eGPU would not work, and after a while of frustration, I tried disabling SIP (This had already been done and the system was functioning prior to DDU, I never re-enabled sip). Once I disabled SIP, my eGPU immediately began functioning again. After all of this, my eGPU still doesn't get past code 12. Stay away from the posts that tell you to run DDU unless you find a specific need.

This post was modified 5 months ago

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 10 months ago
 
Posted by: nando4
 
7. Perform a DSDT override to allow eGPU allocation in 36-bit space. Reported by several 2016 MBP owners as fixing their error 12. Do the bridge reallocation in (5) if still see error 12.
 
Note:  2017 Macbooks already have a factory 'large memory' area that older models required a DSDT override for. 2018 Macbooks do too but the firmware installed with the Mojave beta disables it.

"2018 Macbooks do too but the firmware installed with the Mojave beta disables it." ???

No, this is not correct. I can personally guarantee that there has been no change with the installation of Mojave. Memory allocation still works perfectly, for 15-inch MBP 2018 and for 13-inch 2015.

This post was modified 5 months ago

2018 15" MBP & 2015 13" MBP connected to RTX2080Ti GTX1080Ti GTX1080 Vega56 RX580 R9-290 GTX680


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
 
Posted by: OliverB

 

"2018 Macbooks do too but the firmware installed with the Mojave beta disables it." ???

No, this is not correct. I can personally guarantee that there has been no change with the installation of Mojave. Memory allocation still works perfectly, for 15-inch MBP 2018 and for 13-inch 2015.

@oliverb That part was not updated, that's all, but some early betas of 10.14 did disable the DSDT override on the 2018 Macs, for which I had filed a report - which was addressed in a later beta. I'll just strikethrough that part on behalf on @nando4.

This post was modified 5 months ago

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 [Sonnet Breakaway 350 -> 600W]


OliverB liked
ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 10 months ago
 
Posted by: mac_editor
Posted by: OliverB

 

"2018 Macbooks do too but the firmware installed with the Mojave beta disables it." ???

No, this is not correct. I can personally guarantee that there has been no change with the installation of Mojave. Memory allocation still works perfectly, for 15-inch MBP 2018 and for 13-inch 2015.

@oliverb That part was not updated, that's all, but some early betas of 10.14 did disable the DSDT override on the 2018 Macs, for which I had filed a report - which was addressed in a later beta. I'll just strikethrough that part on behalf on @nando4.

@mac_editor Thank you for this information. I didn't know that, of course and then I partly apologize to @nando4.
However, I think, this part should be updated soon. If not, it's causing a lot of confusion and trouble, as you can see in this thread.

Moreover, it doesn't change the fact, that readers here are getting confused. I read all the time that people doing something that are absolutely not necessary for their setups and bring nothing, if not damage.

Using Anti-Error 12 programs and disabling things on Error 12 resilient setups is the most common. When I found this site first time, I thought, too, there would be a lot of trouble, which never were.

This post was modified 5 months ago

2018 15" MBP & 2015 13" MBP connected to RTX2080Ti GTX1080Ti GTX1080 Vega56 RX580 R9-290 GTX680


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
 

@oliverb Have made the change 👍. At the time of writing, the statement was correct (and a good warning for some users). It’s hard to track what was written and when because we post a lot of things. People get confused anyway. For example, documentation for my scripts is very extensive and we still have people expecting NVIDIA 10xx series to run on Mojave - so even if everything is posted right, it doesn’t work sometimes :p. And finally we have a section who would say we have “too many” guides so where to go - all very valid complaints from their own perspectives. There is always scope to improve, but because this is not a full-time job, it’s hard for anyone to dedicate to just improving the website/policies (which is basically a lot of work and time). 

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 [Sonnet Breakaway 350 -> 600W]


OliverB liked
ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 10 months ago

ReplyQuote
Eckhoee
(@eckhoee)
New Member
Joined: 4 weeks ago
 

I'm running a 2019 macbook pro 13" and a razer core x with rx580. The card can be detected but will not work. Ive seen other people with the same issue, but no luck in fixing it. When I go into the properties of the card, it gives me a code 12(not enough resources). Is there any fix?

Pending: Add my system information and expected eGPU configuration to my signature to give context to my posts


ReplyQuote
 of  3