Share:

Questions about Flashing nVidia Cards for Mac Bootscreen  

  RSS

OliverB
(@oliverb)
Noble Member
Joined: 6 months ago
Posts: 1050
March 2, 2019 11:25 pm  

Hello together, I want to flash nVidia cards with a MacBootScreen (see title) and I have two questions:

1) Is GPU flashing possible with eGPUs? 

(I guess the anwer is yes, so the second question:)

2) How can I test the Mac Bootscreen with my eGPU setup?

Thank you very much!

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


Quote
Topic Tags
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
Posts: 1977
March 3, 2019 12:05 am  

It's possible. A good test could be to hook up the flashed eGPU to a headless Mac with the monitor connected to the eGPU and see if you get a boot screen on that monitor. It is also possible to write an EFI app to render on eGPU screens.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
eGPU Hardware Chart
----
Multiple Build Guides


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 6 months ago
Posts: 1050
March 3, 2019 1:33 am  

@mac_editor, thanks for the information. Is it possible to create "headless mac" out of a MacBookPro? It sounds like "disabling the internal display"?

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


ReplyQuote
esatamacmodular
(@esatamacmodular)
Estimable Member
Joined: 2 years ago
Posts: 128
March 3, 2019 2:07 am  

Do you mean like MVC is doing? Can you be more specific as to what you mean and what you would use this for? Where would you start? I'm interested in following along and thought some context might help others who know what they are doing chime in.

iMac 2013 10.14.1, Macbook Air 2013 10.11, MBP 2016 13" 10.13.6 , HP 4530s 10.11, node lite, DA-2 PSU w/mod, PE4L 2.1b expresscard34, GTX460,1050Ti,1060,1070/Ti RX470,560,580


ReplyQuote
mac_editor
(@mac_editor)
Noble Member Moderator
Joined: 2 years ago
Posts: 1977
March 3, 2019 2:28 am  

@oliverb I’m not too familiar with EFI. Maybe one trick could be to boot and immediately close the lid before display starts up while eGPU is plugged in (for pre-2016 macs this did work I think, at least on my 2018 attempting so prevents boot - anyway, can test on older mac by plugging in monitor directly to Mac and trying - boot screen would show on external monitor - could have weird resolution).

Ultimately you would be flashing an EFI app (such as automate-eGPU EFI) onto the GPU similar to what MVC does. Which makes it much simpler to just boot the app directly like we are doing using USBs. Flashing is, IMO more useful for commercial purposes.

purge-wrangler.shpurge-nvda.shset-eGPU.shautomate-eGPU EFI Installer
----
Troubleshooting eGPUs on macOS
Command Line Swiss Knife
eGPU Hardware Chart
----
Multiple Build Guides


ReplyQuote
Juan C. Yunis
(@juan_c_yunis)
Reputable Member
Joined: 2 years ago
Posts: 252
March 3, 2019 2:34 am  

@mac_editor interesting, so i guess it would be possible to write a boot menu for the 2018 mac mini with the eGPU connected to select which device to boot.

2018 Mac Mini Core i7 8700B 32GB RAM 512GB SSD + Razer Core X + AMD Radeon VII


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 6 months ago
Posts: 1050
March 3, 2019 10:01 am  
Posted by: mac_editor

Ultimately you would be flashing an EFI app (such as automate-eGPU EFI) onto the GPU similar to what MVC does. Which makes it much simpler to just boot the app directly like we are doing using USBs. Flashing is, IMO more useful for commercial purposes.

There a some tutorials out there how to flash an GTX680 with already "EFI-injected" ROMS. (Which ich suboptimal of course when not having the exact GPU of the original Rom).
It would be far better to create a ROM directly out of the GPU, which means:
1) Download ROM.bin from GPU
2) Add (inject) EFI Bios (in)to the ROM.bin
3) Flash GPU with injected ROM.bin

#2 is the challenge for two reasons:
a) can the EFI be extracted out of available GTX680.bin?
b) where exactly should this be added (in)to the ROM.bin?

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


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 6 months ago
Posts: 1050
March 25, 2019 11:13 pm  

In case someone cares. I have just flashed my first card. It was a GT 730 and it worked perfectly. eGPU are perfect for this.

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


ReplyQuote
esatamacmodular
(@esatamacmodular)
Estimable Member
Joined: 2 years ago
Posts: 128
March 26, 2019 12:51 am  

awesome! I was hoping you might have an update. I assume you used the 700 series because it was easier to inject EFI bios into the ROM.bin compared to 10 series (eg, 1070). Can you describe what exactly you were able to accomplish and how you did it? Sounds like you got a bootscreen? Are there limitations that you are finding or do you feel everything is running how you expected?

iMac 2013 10.14.1, Macbook Air 2013 10.11, MBP 2016 13" 10.13.6 , HP 4530s 10.11, node lite, DA-2 PSU w/mod, PE4L 2.1b expresscard34, GTX460,1050Ti,1060,1070/Ti RX470,560,580


ReplyQuote
OliverB
(@oliverb)
Noble Member
Joined: 6 months ago
Posts: 1050
March 29, 2019 9:55 pm  

@esatamacmodular,
actually I have just changed some clockrate for the GT 730. This was very easy and neat.

Today I have flashed a GTX 680 4GB with a Mac BootScreen, but I do not know how to test the Bootscreen.

Do you have any idea how I can make my 15" MBP 2018 to boot from the eGPU? It's always booting from the internal display
@goalque, you know a lot about those things. Do you have a tip?

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


ReplyQuote
esatamacmodular
(@esatamacmodular)
Estimable Member
Joined: 2 years ago
Posts: 128
March 30, 2019 1:10 am  

Testing the bootscreen obviously would be easier on a desktop rig where there would only be 1 GPU. Not sure there is a way to have the eGPU drive the internal display during the state that the bootscreen would normally appear. But if it were me I would include an HDMI dummy plug in my testing because I like physical switches and it simplifies one of the steps you would have to overcome.

Is it possible to have a script that tells MacOS on next boot disable internal GPU and set eGPU to drive the internal display? Even if this is possible, I imagine it would not do this in time to see a bootscreen. Unless you could also extend the length of time that the bootscreen is displayed. Too bad there isn't a bootflag script that could accomplish all of this before login.

iMac 2013 10.14.1, Macbook Air 2013 10.11, MBP 2016 13" 10.13.6 , HP 4530s 10.11, node lite, DA-2 PSU w/mod, PE4L 2.1b expresscard34, GTX460,1050Ti,1060,1070/Ti RX470,560,580


ReplyQuote
goalque
(@goalque)
Noble Member Admin
Joined: 2 years ago
Posts: 1369
March 30, 2019 10:19 am  
Posted by: OliverB

@esatamacmodular,
actually I have just changed some clockrate for the GT 730. This was very easy and neat.

Today I have flashed a GTX 680 4GB with a Mac BootScreen, but I do not know how to test the Bootscreen.

Do you have any idea how I can make my 15" MBP 2018 to boot from the eGPU? It's always booting from the internal display
@goalque, you know a lot about those things. Do you have a tip?

Actually I've never flashed cards or investigated Apple's EFI ROMs. These EFIs as such are not much of help when it comes to displaying native boot screens (officially called as "Startup Manager") via eGPU display interface. Instead, I learned by trial and error, along with reading from the UEFI specs. It's much more convenient to test from an external media than bricking your card. An external EFI can only provide a custom boot screen when you push the power button. In order to display Apple's native boot screen, you also need a card whose GOP driver is compatible with your Mac firmware straight away, and if not, a few bytes need to be changed (flashing necessary). And one more trick in the EFI app. This applies to only certain card ROMs. I still happen to have a MBP without firmware security updates, and mirroring a row of disks from the internal display to an eGPU display should be possible, when holding down the Option key. Resolution wasn't 4K but anyhow it worked. Unfortunately, I don't have much time these days to study further.

https://support.apple.com/en-us/HT202796

"If you're in Startup Manager and can't see your startup disk, press Option-Shift-Command-Period. If that works, do this each time you want to start up from the device or from a startup disk connected to it.

To enhance system security, Mac computers with up-to-date software don’t show devices that have Option ROM firmware until you press these keys in Startup Manager to load the firmware. On Mac models from early 2015 or earlier, you can disable this security feature to load Option ROM firmware automatically. This removes an important protection against potential unauthorized access to your Mac by other people with physical access to it."

This post was modified 4 weeks ago

automate-eGPU EFIapple_set_os.efi
--
late-2016 13" Macbook Pro nTB + [email protected] (Netstor HL23T) + macOS & Win10
late-2016 13" Macbook Pro nTB + GTX980/[email protected] (Netstor HL23T) + macOS10.13 & Win10


OliverB liked
ReplyQuote