Setup & Software Discussions
[SCRIPT] PurgeWrangler: AMD + NVIDIA eGPUs for all Thunderbolt Macs
 

[Solved] [SCRIPT] PurgeWrangler: AMD + NVIDIA eGPUs for all Thunderbolt Macs  

 of  40
  RSS

TheFurious
(@thefurious)
Active Member
Joined: 2 years ago
 
Posted by: itsage
Posted by: mac_editor

Has anyone tried with tb1 Mac? Haven’t heard of a success yet and can’t test on my end.

I will try tonight with a 2011 17" MBP [TB1]. It was successful with kext swap so I bet your script will work.

 

@thefurious RX 460/560 is a bit of a wild card. While there are drivers and support, I've seen issues with external monitor output. I will test using Breakaway Puck 560 and provide an update.

Thanks a lot!

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


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

@devild and I were privately discussing getting NVIDIA eGPUs to work on 10.13.4 and are onto something. More patching needed (and not sure what), but if you use the kext-swapping trick for AMDGPUWrangler (from 10.13.3/4 B1) with an updated NVIDIAEGPUSupport for 10.13.4, it should work for now without hot-plug support. @devild got it working in his testing. Nice going!

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


goalque, itsage and devild liked
ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 

@fr34k I created a local version of your TB script to test because got a 'newLine' error when executing with curl. Nonetheless, on my test system, for the system_profiler grep command, the first line oddly was "Speed: Up to 20 / 10 Gb/s x1", hence match fails for TB2. Testing on my daily installation (10.13.4), I get the correct output. On the scratch installation on which I test scripts, I got the above output, though it is worth noting it is running 10.13.5 B1.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


ReplyQuote
fr34k
(@fr34k)
Reputable Member Moderator
Joined: 2 years ago
 

@mac_editor
that was the plan all along.
It was just a sample code.
Speed: Up to 20 / 10 Gb/s x1 ? wow that's an odd output, so you will need to refine it...

macOS-eGPU.sh on GitHub (fr34k's macOS-eGPU.sh on eGPU.io)
----
2016 15'' MacBook Pro + GTX1080Ti@32Gbps-TB3 (Sonnet Breakaway 550) + macOS 10.13.6 (17G65 driver: 378.10.10.10.30.107 + CUDA: 396.148)


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: fr34k

@mac_editor
that was the plan all along.
It was just a sample code.
Speed: Up to 20 / 10 Gb/s x1 ? wow that's an odd output, so you will need to refine it...

Copy that.

Exactly, never seen that output before. Maybe a beta thing.. Let's see.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


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

@devild and I were privately discussing getting NVIDIA eGPUs to work on 10.13.4 and are onto something. More patching needed (and not sure what), but if you use the kext-swapping trick for AMDGPUWrangler (from 10.13.3/4 B1) with an updated NVIDIAEGPUSupport for 10.13.4, it should work for now without hot-plug support. @devild got it working in his testing. Nice going!

So the AppleGPUWrangler was the cause for everything as I suspected? I quickly looked that IOFramebuffer part was mostly unchanged (not yet available from https://opensource.apple.com).  Haven't had any time to play with Nvidia cards.

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


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: goalque

So the AppleGPUWrangler was the cause for everything as I suspected? I quickly looked that IOFramebuffer part was mostly unchanged (not yet available fromhttps://opensource.apple.co m" target="true"> https://opensource.apple.com ). Haven't had any time to play with Nvidia cards.

Seems to be the case. I don't have an NVIDIA card to play with + I have an annoying Mac even if I did.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


goalque liked
ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: goalque

I have a feeling that Apple kept Intel happy, and left a backdoor for us. If they deliberately wanted to block older TB technology, there are more effective ways to accomplish that in the EFI level.

I think so too. The fact that drivers activate regardless of the patch is a big giveaway.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


ReplyQuote
PsyPryss
(@psypryss)
Trusted Member
Joined: 2 years ago
 

Looks like it works on a fresh install of 10.13.4  on a tb1 mbp

Thanks to everyone who helped make this happen!!!

Screen Shot 2018 04 06 at 12.21.32 AM

Mid 2012 15" (Non-Retina) MPB GT650M + RX580 (AKiTio Node via TB3 -> TB2/TB1 Adaptor) macOS 10.13.4/Win10


mac_editor and itsage liked
ReplyQuote
kyorosweb
(@kyorosweb)
New Member
Joined: 2 years ago
 
Posted by: PsyPryss

Looks like it works on a fresh install of 10.13.4  on a tb1 mbp

Thanks to everyone to help make this happen!!!

Yes!! It works on a 2011 mbp13 too!!!



E4CD8BCD 3822 4661 BBE5 BEE8662DF427

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


itsage and mac_editor liked
ReplyQuote
ikir
 ikir
(@ikir)
Prominent Member
Joined: 3 years ago
 

Great news posted on eGPU.it as well


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
punk.kaos
(@punk-kaos)
Active Member
Joined: 3 years ago
 

Worked great on my 13in MBA with an RX560 after I patched my kexts for IOPCITunnelCompatible. Thanks a ton!

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
 
Posted by: punk.kaos

Worked great on my 13in MBA with an RX560 after I patched my kexts for IOPCITunnelCompatible. Thanks a ton!

That was quick! Thanks for reporting 🙂

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


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

Thanks for the script, worked like a charm on a MacBook Pro 2014 and TB2.

AfterGPUWrangler

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


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

I think I can now mark the script as "safe-to-use" - touch wood.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


tiagoamaro and itsage liked
ReplyQuote
joysthokkins
(@joysthokkins)
Active Member
Joined: 2 years ago
 

Thank you!✨

rMBP 2014 750m 10.14.6
i9 9900k "Hac Pro" with Vega 56 and Sonnet Breakaway 650 with Sapphire Vega 64 –> iMac 2009 as display

DaVinci Resolve Studio 16.1b3 | FCPX 10.4.6


ReplyQuote
Roman Eisner
(@roman_e)
New Member
Joined: 2 years ago
 

Will this fix the displaylink issues outlined here?

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


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: Roman E

Will this fix the displaylink issues outlined here?

Reading a bit about it, I'd say no, but you're free to try 😉

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


ReplyQuote
(@mikey_schreurs)
Active Member
Joined: 2 years ago
 
Screen Shot 2018 04 05 at 11.38.49 AM

Mac Pro Late 2013 with XFX RX580 is working! Like a charm. Thank you so Kindly for your work!

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


artik and mac_editor liked
ReplyQuote
igerard
(@igerard)
Estimable Member
Joined: 2 years ago
 
Posted by: mac_editor
Posted by: goalque

I have a feeling that Apple kept Intel happy, and left a backdoor for us. If they deliberately wanted to block older TB technology, there are more effective ways to accomplish that in the EFI level.

I think so too. The fact that drivers activate regardless of the patch is a big giveaway.

I think that Apple just want to be sure that nobody is going to ask support on that, in case of something go bad.

ok to make it working, but don’t  want to get request for old machines with a lot of differents configurations because computer around since a long time.

anyway... very good news

MBP 2018, Touch Bar, i7 2.6 GHz, 32 GB RAM, 1T SSD, Radeon 560X... very nice!
eGPU : Akitio Node + RX 580 + GTX 980 Ti + Vega64


goalque and itsage liked
ReplyQuote
PsyPryss
(@psypryss)
Trusted Member
Joined: 2 years ago
 

@mac_editor
I tried uninstalling purge_nvda after installing purge_wrangler and can’t boot in to the system. Anyway to get it to boot in again? I tried the system restore to remove the files in Library/Application Support but there aren’t any references to purge_nvda. Any way to get it to boot again?

Mid 2012 15" (Non-Retina) MPB GT650M + RX580 (AKiTio Node via TB3 -> TB2/TB1 Adaptor) macOS 10.13.4/Win10


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: PsyPryss

@mac_editor
I tried uninstalling purge_nvda after installing purge_wrangler and can’t boot in to the system. Anyway to get it to boot in again? I tried the system restore to remove the files in Library/Application Support but there aren’t any references to purge_nvda. Any way to get it to boot again?

Are you working with multiple installations here? If you run two macOS installations on the same machine, and run purge-nvda.sh on one installation, kexts are moved and NVRAM is updated. But then if you boot into the other installation that did not run the patch, the NVRAM value is discarded, and the system that ran the patch won't boot. I will be updating purge-nvda.sh with a solution that works across system installations soon.

So if you installed purge-nvda.sh on both systems, and then uninstall on one, the other won't boot because the NVRAM value has reset, while kexts are still somewhere. So on the installation that is not booting, you can try in Single User Mode (select this install on boot then Press and hold CMD+S immediately):

mount -uw /
cd <navigate to where purge-nvda.sh is>
./purge-nvda.sh uninstall

 I need more context here so can't say what's up in your system. You can simply install macOS 10.13.4 on top without data loss in the worst case.

Also in /Library/Application Support/ folder name should be Purge-NVDA if its there with the backup of your kexts if it ran fine.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


ReplyQuote
Sovereign
(@sovereign)
Active Member
Joined: 2 years ago
 
Posted by: mac_editor

@devild and I were privately discussing getting NVIDIA eGPUs to work on 10.13.4 and are onto something. More patching needed (and not sure what), but if you use the kext-swapping trick for AMDGPUWrangler (from 10.13.3/4 B1) with an updated NVIDIAEGPUSupport for 10.13.4, it should work for now without hot-plug support. @devild got it working in his testing. Nice going!

Umm, but is there an updated NVIDIAEGPUSupport for 10.13.4? Haven't seen one or am I missing something?

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


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: Sovereign
Umm, but is there an updated NVIDIAEGPUSupport for 10.13.4? Haven't seen one or am I missing something?

@fr34k & @devild are working on it.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


fr34k and Sovereign liked
ReplyQuote
fr34k
(@fr34k)
Reputable Member Moderator
Joined: 2 years ago
 
Posted by: mac_editor
Posted by: Sovereign
Umm, but is there an updated NVIDIAEGPUSupport for 10.13.4? Haven't seen one or am I missing something?

@fr34k & @devild are working on it.

and @mac_editor as well!
There's a lot that is connected here...

macOS-eGPU.sh on GitHub (fr34k's macOS-eGPU.sh on eGPU.io)
----
2016 15'' MacBook Pro + GTX1080Ti@32Gbps-TB3 (Sonnet Breakaway 550) + macOS 10.13.6 (17G65 driver: 378.10.10.10.30.107 + CUDA: 396.148)


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

Ideally we’ll have a script/installer that identifies your Mac + eGPU configuration then injects the necessary workarounds to make it “just work”.

Best ultrabooks for eGPU use

eGPU enclosure buying guide


ReplyQuote
fr34k
(@fr34k)
Reputable Member Moderator
Joined: 2 years ago
 

@itsage
currently on it.
I'll code as much as possible into my 
script

macOS-eGPU.sh on GitHub (fr34k's macOS-eGPU.sh on eGPU.io)
----
2016 15'' MacBook Pro + GTX1080Ti@32Gbps-TB3 (Sonnet Breakaway 550) + macOS 10.13.6 (17G65 driver: 378.10.10.10.30.107 + CUDA: 396.148)


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: itsage

Ideally we'll have a script/installer that identifies your Mac + eGPU configuration then injects the necessary workarounds to make it "just work".

You read our minds. Already implemented automatic thunderbolt detection (thanks to @fr34k) and some other enhancements for purge-wrangler.sh (will mark as release later).

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


PsyPryss, itsage and fr34k liked
ReplyQuote
laimis17
(@laimis17)
Active Member
Joined: 2 years ago
 

@mac_editor Patch applied successfully. Sadly eGPU is not enabled on my TB1 devices: mac mini late 2012 and mbp 17 late 2011. But i think it has to do something with gpu that i'm using: Radeon Pro WX 4100.

Screen Shot 2018 04 05 at 22.25.07

Tried applying automate-eGPU script on top. Don't do this. Kernel paniced and made system unbootable. Restored by copying AMD* kexts from another system.

MBP17 late 2011 TB1 Radeon Pro WX 4100


goalque liked
ReplyQuote
(@rhenriques11)
Eminent Member
Joined: 2 years ago
 

"AMDGPUWrangler (from 10.13.3/4 B1) with an updated NVIDIAEGPUSupport for 10.13.4" 
Is it posible to provide this updated NVIDIAEGPUSupport for 10.13.4?
Cheers

PS: Ops, just saw that @fr34k & @devild are working on it. 🙂
Fingers crossed

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


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

Could people test the new version of the script (1.1.0)? Its not changing any patching and won't affect eGPU support, but is simply an improved and somewhat better written version. Download it here. The usage guide in the initial post does not apply to this new script as there are slight changes. To run it follow the instructions here. I want people to test this so that I can confirm I have a good foundation to develop any further "patching" - the nitty gritty.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


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

@mac_editor Patch applied successfully. Sadly eGPU is not enabled on my TB1 devices: mac mini late 2012 and mbp 17 late 2011. But i think it has to do something with gpu that i'm using: Radeon Pro WX 4100.

Screen Shot 2018 04 05 at 22.25.07

Tried applying automate-eGPU script on top. Don't do this. Kernel paniced and made system unbootable. Restored by copying AMD* kexts from another system.

Automate-eGPU.kext is for 10.13 only as the menu selection says. Reinstalling from the recovery (Command-R) won't wipe your personal files, just the S/L/E folder. A good way to start over if you don't have a Time Machine backup.

Add IOPCITunnelCompatible true into AMDBaffinGraphicsAccelerator personality (preferably by overriding from the codeless kext), rebuild caches and try again.

RX 560 activated this way as @punk.kaos said, why wouldn't others as well? They are both Baffin.

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


ReplyQuote
macunix
(@macunix)
New Member
Joined: 2 years ago
 

I had an issue with 1.0 where the TB1 patch didn't work, but he TB2 patch did.  I have a Mid-2013 Macbook Air with TB1.  I will test the 1.1 script and let you know.

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


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 3 years ago
 
Posted by: macunix

I had an issue with 1.0 where the TB1 patch didn't work, but he TB2 patch did.  I have a Mid-2013 Macbook Air with TB1.  I will test the 1.1 script and let you know.

Interesting, are you sure you typed in the correct option (for v1.0):

sudo ./purge-wrangler.sh patch tb1

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
2018 MacBook Pro 15" RP560X + Vega 64 (Mantiz Venus MZ-02)


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

@goalque You were right again. 
It's so beautiful i want to cry!
So, TB1 works!

Screen Shot 2018 04 06 at 00.00.41

Guys. @goalgue @mac_aditor Thank You.
Please send me Your paypal account.

MBP17 late 2011 TB1 Radeon Pro WX 4100


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

mac_editor, in the newest 1.1.0 script, while following the instructions i get:

sudo ./purge-wrangler.sh patch tb2

sudo: ./purge-wrangler.sh: command not found

I've tested with 

"sudo: ./purge-wrangler.sh" only and it seems to work

However I'm missing the newest NVIDIAEGPUSupport for things to work. At least the boxes are seen in thunderbolt port and CUDA panel detects connected GPU's 

As mentioned, that instruction is for v1.0.0, not v1.1.0. NVDAEGPUSupport needs more work at the moment.

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


ReplyQuote
 of  40