Setup & Software Discussions
2017 MBP 13" w/ TouchBar, Sonnet eGFX 350, EVGA GeForce GTX 1080
 

[Solved] 2017 MBP 13" w/ TouchBar, Sonnet eGFX 350, EVGA GeForce GTX 1080  

  RSS

stillmoms
(@stillmoms)
Active Member
Joined: 2 years ago
 

About at my wit's end with this and ready to send this dumb box back to Amazon and just build a desktop PC.

Perhaps I've made things more difficult than necessary by running Windows on an external Samsung 850 EVO in a USB-C 3.1 case, but. I've got Windows booting by having installed it as a "Windows To Go" installation using Rufus. I can't set it as a startup disk in macOS because the bless command isn't having it (something relating to USB, non macOS-disks, and Sierra SIP from what I gather), but I can boot it reliably using the boot selector at startup time (holding Opt).

However when I try to add the eGPU, it all goes sideways. If I boot with it plugged in and turned on, I can get to the boot selection screen just fine, and once I start booting I get the Windows logo, but the spinning "flag" never appears and eventually I just get flashing, static-y screen corruption. Not ideal. This also happens if I plug it in AT the Mac's boot selection screen and then select my Windows drive. Alternatively, If I leave it unplugged/turned off and start booting Windows and try to plug it in during the boot process, I either get the spinning flag forever and have to power off manually, OR I plug it in too late and Windows sees it (I managed to install Nvidia's drivers doing this one time but haven't had success again) but I get a Code 12 and it's non-functional, and I'm just running off the iGPU.

I haven't dived into the EFI boot alteration because I feel like my Windows To Go/external boot drive situation complicates things considerably. Plus, obviously the iGPU is active because I've got the internal screen working just fine for both boot selection AND Windows, so I don't think this is an "iGPU is inactive" kind of thing. Mostly it's the screen corruption when I have the eGPU attached from before starting Windows' boot that worries me because I haven't seen a lot of people here mention that on this era machine.

Any tips? Ideas? Is it unusual to have this kind of boot-time screen corruption on a modern 2017 MacBook? Is it the Touch Bar? Should I just return this thing and face the fact that it's hacks all the way down on this side of the street?

UPDATE: So, just figuring I couldn't possibly break it any more than it was already broken, I downloaded the apple_set_os.efi and put it on my external SSD's EFI partition. I just renamed the original bootx64.efi to origbootx64.bak and put the apple_set_os in its place. Turns out it booted fine, and at this point I can have the eGPU chassis plugged in at boot time (after the boot menu appears) and it launches Windows fine (at least with an external display connected). The Intel GPU driver is active, the Nvidia driver is active, and Windows' display settings sees both. I'm not SURE if it works with just the internal screen but I'm guessing it will.

Soft reboots are still a no-go, and I'm leaving all sleep stuff disabled on this setup because I super don't trust that, but from a cold boot I can now start Windows reliably with the eGPU enabled and working. I wish Windows was better at GUI scaling on one screen and not the other, but hey, I'll take what I can get. GSYNC is working, the eGPU is working, and I've got higher frame rates on this setup than I did with the same graphics card in my 8 year old Mac Pro tower thanks to the much more modern Core i7 in this laptop (thanks, single-threaded performance boost).

Turns out all it took was that last step and a little faith!

EDIT: (Now to figure out if it's possible to put a beefier power supply in this Sonnet box aftermarket and not need my MBP's power adapter anymore, or if that requires other changes that they're making with the upcoming 550W model's board and I'm SOL on the laptop charging front.)

Mid-2017 13" MacBook Pro wTB + [email protected] (Sonnet eGFX 350) + Win10 on External SSD


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

Glad to hear to plowed through issues to get it working. The Power Delivery is set by the firmware of the enclosure. Changing the PSU unfortunately doesn’t change 15W PD in this Sonnet Breakaway Box 350. 

Best ultrabooks for eGPU use

eGPU enclosure buying guide


ReplyQuote
stillmoms
(@stillmoms)
Active Member
Joined: 2 years ago
 

Crud. I wonder if some enterprising individual will find a way to dump the firmware of the newer model and patch the older one, following a PSU upgrade. Though maybe there will be other board/component differences that prevent that from working. Ah well, having a power cable connected is a small sacrifice to make now that things are behaving consistently.

Mid-2017 13" MacBook Pro wTB + [email protected] (Sonnet eGFX 350) + Win10 on External SSD


ReplyQuote
stillmoms
(@stillmoms)
Active Member
Joined: 2 years ago
 

EDIT: I had written a guide here but I decided to move it to the Implementations forum, since that seemed the better place for it.

Mid-2017 13" MacBook Pro wTB + [email protected] (Sonnet eGFX 350) + Win10 on External SSD


itsage liked
ReplyQuote
stillmoms
(@stillmoms)
Active Member
Joined: 2 years ago
 

Okay, NOT quite solved yet. While trying to disable SIP today to run the automate-eGPU.sh script and get the card working in macOS (which it now does, I should point out), I found that my Recovery HD was borked. While trying to fix it, I made the whole system un-bootable. After using Migration Assistant on a spare laptop to save all my stuff and then move it BACK again (two Migration Assistants in one day), I finally had a working laptop again with all my files. Phew.

EXCEPT

Now I can't boot Windows using the apple_set_os.efi on my external. If I put the original bootx64.efi back into place it boots Windows fine, but then I lose the ability to keep the iGPU active during a non-macOS boot. If I make the apple_set_os.efi the new bootx64.efi, it just instantly starts booting my internal macOS partition. No idea what was different (or, apparently, wrong) with my former setup that let it work without needing a more involved boot loader setup. Since I can't select the volume as the Startup Disk in macOS due to it being unable to bless it, do I need to do some kind of more involved rEFInd thing on my Windows drive to "combine" the effects of both .efi files? Anyone have any experience with this?

Mid-2017 13" MacBook Pro wTB + [email protected] (Sonnet eGFX 350) + Win10 on External SSD


ReplyQuote
stillmoms
(@stillmoms)
Active Member
Joined: 2 years ago
 
Posted by: stillmoms

Since I can't select the volume as the Startup Disk in macOS due to it being unable to bless it

Turns out (at least with SIP disabled, which I had to do to run automate_eGPU.sh anyway) you can just bless the volume yourself by doing

sudo bless -volume /Volumes/${Windows_volume} -setBoot

I don't know why Startup Disk doesn't run bless as root, I'm guessing there's some convoluted permissions delegation thing it does when all circumstances are correct. Trying to do the above command without sudo spit back an error but with it the command ran fine. At that point I made sure apple_set_os.efi was in place as bootx64.efi on the Windows drive and selecting EFI Boot from the Option menu at start up worked to boot Windows with the eGPU connected.

At this point I don't even need to hotplug the Sonnet case ever. The machine POSTs with it connected, and whether booting into macOS or Windows (after blessing the Windows volume), the external and internal displays both come up fine. Okay, strike that, I DO still need to hot plug it at the volume selection screen, otherwise when booting to Windows the iGPU is disabled (regardless of apple_set_os.efi) and booting to macOS the NVIDIA card doesn't really come up (System Report shows it as a nondescript NVIDIA GPU with 256MB of RAM). Or, at the very least, I experience inconsistent behavior when not hot-plugging from a cold boot. I also found that screen sleep works fine. Haven't tested system sleep but honestly with this setup drawing a lot less power than my old Mac Pro I kind of don't care. It's still a win.

Mid-2017 13" MacBook Pro wTB + [email protected] (Sonnet eGFX 350) + Win10 on External SSD


ReplyQuote