2012 15" MacBook Pro (GT650M) [3rd,4C,Q] + GTX 970 @ 10Gbps-TB1 (AKiTiO Thunder2) + macOS 10.12 & Win10 [Kyrio]
I've been enjoying this setup since February 2017 but upon reinstalling Windows in August 2017, I noticed the installation process for Windows changed and thus wanted to share my experience with the community. My Windows guide will be a little more detailed than the others'.
First, macOS installation is very easy - I defer to ozzy's guide.
Second, Windows installation is quite a bit more complicated. For a good overview (including hardware setup), I suggest to have a look at enjoy's guide.
How to install Windows 10 (detailed & contemporary)
- Boot into OS X without your eGPU attached and install Win10 via Bootcamp assistant.
- When you boot into Win10, install Bootcamp tools, update the system to latest revision. Reboot.
- Now is the time to make a recovery point! If there's an error preventing that, try the How to fix Windows 10 recovery section below and then return here.
- Disable any AV software (including Windows Defender) or add exceptions for Nando's DIY eGPU Setup 1.35:
- The installer.
- The installation directory (by default, C:\eGPU\*).
- Install eGPU Setup 1.35 as per supplied instructions. Reboot and verify that you can see the boot menu.
- Download the latest possible NVidia driver (should support both dGPU and eGPU). Don't install it yet.
- Now is the time to make another recovery point!
- Next, power on and plug-in your eGPU (including external monitor), and reboot immediately. Warning: at this point, booting can take several (maybe up to 10) attempts. If you really can't boot into Windows again, forcibly shutdown your computer, disconnect external monitor from your eGPU (not the eGPU from the computer!) and try again.
- The next time you boot into Windows, device manager should report a new "GPU" (if not, try to disable your dGPU and reboot). Immediately afterwards, open system settings, go to the Windows Update section and click to search for new updates. Warning: Microsoft might push a newer display driver after it sees your new card... a poison for you to swallow! But there's a cure so let the process finish and reboot. Now, if you really can't boot into Windows despite all your efforts (eGPU/external monitor attached or not), don't panic - the new driver simply blocks your way. Instead, press F8 when eGPU Setup 1.35's boot menu appears, boot into Safe mode, open device manager and disable your dGPU. Reboot into Windows normally. A couple notes:
- Now, one of the following scenarios should take place:
- Device manager reports a new "GPU", with an error code of 31. Try connecting your external monitor again and reboot.
- Device manager reports a new "GPU", with an error code of 12. Install the downloaded NVidia driver and reboot.
- Note: incidentally, installing the new driver also re-enabled my dGPU!
- If device manager still reports a new "GPU" with an error code of 12, it's time to reboot into eGPU Setup 1.35, perform PCI compaction and do a test run (see enjoy's guide).
- With any luck, welcome to your eGPU-enabled Win10!
- Warning: before we go any further, it is crucial that you make a bit-copy of your system now! See the Bonus: How to backup Windows 10 section below.
How to deal with "Apple Bootcamp Update"
As you probably know, there is an Apple Bootcamp Update program in the start menu and it's recommended to run it once in a while. Warning: but take great caution... I actually tried to install Boot Camp 6 Update for Windows with my eGPU connected and it was a very unpleasant experience:
- It took a while to download (size is over 1GB) and during the installation, both my internal and external monitors went blank.
- Note: the update probably replaced my NVidia display driver...
- Since I had no way of knowing when it's safe to forcibly shut down the computer, I tried when the fans went silent...
- Needless to say, I could no longer boot into Windows despite all my efforts (and that includes all the tips above).
- Luckily, I had the nous to make a recovery point while the update was still being downloaded. But upon trying to restore it and revert back my misfortune:
System Restore failed while restoring the directory from the restore point.
An unspecified error occurred during System Restore. (0x80070091)
- Turns out this is a well known issue but for various reasons, no online solution I found actually worked. In my case, I had to:
- Boot into Safe mode, open Windows Explorer, select the C:\Program Files\WindowsApps folder, right click and go for Properties.
- In the Security tab, steal ownership over the folder from something called TrustedInstaller, and then go ahead to set Full Control (max. permissions) to the new owner (the Administrators group). This was a really unintuitive step so I suggest to look over here.
- Only then, I could actually rename the folder to C:\Program Files\WindowsApps.old, solve the issue at hand and revert back to my recovery point.
Therefore, it may be best to:
- Turn off your MBP.
- Disconnect your eGPU.
- Boot into Win10 normally.
- Make a recovery point! If you're really worried, I suggest to make a bit-copy as well.
- Install the updates, ideally one by one and from least significant to most significant.
- Now, if you can't boot into Win10, try the tips in steps #8 and #9 from the guide above. If that doesn't work, you'll likely have to revert back the changes.
- Finally, when you boot into Win10:
- If your previous display driver got replaced, connect your eGPU again and re-install the driver you had before.
- Check that recovery still works (whether you can make a recovery point). If you can't, try the How to fix Windows 10 recovery section below.
As long as you heed this advice, you shouldn't face any trouble other than having to reinstall display drivers from time to time (with eGPU attached of course). You might also be compelled to remake the DIY Setup compaction script after you're done with the updates:
- Boot into menu-based DIY Setup.
- Go to PCI compaction and check Close unused bridges.
- Go to PCI compaction and perform Run compact.
- Go to Startup.bat and perform a Test run.
If you happen to come across a warning regarding /config/dsdt.aml, this DOES NOT mean that you need to perform a DSDT override:
How to fix Windows 10 recovery
I'm not certain whether it's Windows or Bootcamp updates causing these issues but to troubleshot, you should open Event Viewer in Windows 10 and have a look at application protocol. The top records should say that the VSS service (backend for Windows recovery) failed 5 times altogether, always due to the same issue denoted by (relatively) the preceding protocol record. In my case, there were two phases (issues) to fix altogether.
Phase #1: CAPI2. Record details said:
CAPI2: Cryptographic Services failed while processing the OnIdentity() call on System Writer.
Solution (original source - page 8):
- Open command prompt as administrator and run sc sdshow mslldp. Copy the output.
- Next, run sc sdset mslldp <prefix>(A;;CC;;;S-1-5-80-242729624-280608522-2219052887-3187409060-2225943459), where <prefix> is the copied output.
Phase #2: VSS event ID 12289. Solution (original source):
- Download Autoruns and extract it somewhere.
- Open command prompt as administrator, navigate to the extraction folder and run Autoruns.
- Type "Apple" into the "Filter" text field, disable "Apple HFS driver", close the window and reboot.
If applehfs.sys (Apple HFS driver) is disabled, everything will work after a reboot. System image, recimg and restore points... everything. But you won't see HFS partitions anymore. Also note that enabling the driver again will delete all restore points you may have made. This happens with several Bootcamp versions (3.2 and 5.1).
So, if you update to Bootcamp version 6 first, you shouldn't really encounter these issues :).
Bonus: How to backup Windows 10
If you want a reliable backup solution from the Mac side, you may be a little disappointed. I mean, there is WinClone and it most certainly does look good but personally, I've found it quite useless in practice. I bought the Standard version and while it successfully restored my images (that is to say, copied all the data), it always left me unable to access or use the restored system (despite it was the same computer!). For the record, my images were made off multiple independent installations. Most of the time, I just couldn't boot into the restored system and if by some miracle I could, it was unusable and couldn't even be repaired (not even from a recovery drive).
If you use Windows around for gaming or other "no-brainer" activities that don't involve work or your personal data, you should be quite happy with a plain and free Windows 10 Recovery Drive. You'll be fine if you simply make a bootable recovery drive as well as a bit-copy (snapshot) of your fully installed system, and save both of those somewhere. It's quite useful to have three dedicated USB sticks:
- One for your Win10 installer (Bootcamp edition). Up to 16 GB capacity (even 8 should be sufficient).
- One for your Win10 Recovery Drive. Up to 16 GB capacity (even 8 should be sufficient).
- One for your Win10 system image (bit-copy). Up to 64 GB capacity (or more if your system gets really really big).
When you restore a bit-copy, you'll find everything just like it was, including system revision or settings, apps or data. Guide:
- Recovery drive can always be booted into from Apple's boot menu ("EFI boot"). If there's no such option there, try to keep your recovery drive attached and boot into macOS. Restart and try again.
- If you're worried it won't work unless you re-install the whole BOOTCAMP partition first, feel free to do so.
Optionally, you can of course choose to back up your applications and data incrementally/automatically - there are lots of possibilities, depending on your situation/goals.
Bonus: How to update NVidia driver
I guess most people will use NVidia Ge-Force Experience to do it for them but before updating, you should verify that the new version supports your internal GT 650M. While this may not be completely necessary, I would still highly recommend that you keep your internal card supported and enabled. If you wish to do so, simply navigate to NVidia's driver download page and:
After you hit the "Search" button, check that driver version matches the one you want to install.
Bonus: How to fix Bootcamp's inability to install Windows again
When I was trying to befriend Bootcamp and my eGPU the first time, I was forced to reinstall Windows. However, that left me with a visible "leftover" EFI partition on my main disk, which is normally hidden in macOS, and Bootcamp wouldn't let me install Windows again. The solution was to restore EFI to its original state. Rather than formatting the whole drive and reinstalling macOS, have a look at this support thread.