Contribute
Register

[SUCCESS] Gigabyte Designare Z390 (Thunderbolt 3) + i7-9700K + AMD RX 580

Continuity Camera.
I just tested this

1. Open Preview

2. File -> Import from iPhone -> Take Photo

3. Camera will open on iPhone

4. Take pix & tap "Use Photo". If you don't do this quickly it will show "device timed out" on the mac

5. Pix show up on the Preview app on the mac
 
Also tested Notes app

There is a glitch where once you select import from iPhone ->take photo, you have to let the phone open the camera app on its own, otherwise you get the "device timed out"

I tested this with Notes & Preview & this is probably an os bug & nothing to do with the iphone being tethered to the mac (i doesn't need to, it's already using BT LE & WiFI)

Hope this helps & you should be able to replicate my above experiment & get it to work
 
Those extra arguments aren't really a problem, technically speaking. But it is good to remove obsolete arguments.
Ok just checked, looks like I have the following:
keepsyms=1 debug=0x100 agdpmod=pikera alcid=11 igfxfw=2.

Can I get rid of any of those? Thx again
 
Ok just checked, looks like I have the following:
keepsyms=1 debug=0x100 agdpmod=pikera alcid=11 igfxfw=2.

Can I get rid of any of those? Thx again
I would recommend keeping all of these. You may search this site for a description of each one.
 

From the above link. I was able to use the iPhone to take pix etc without any issues.
The only thing I am unable to get working is using my iPhone 12 as a webcam, because I'm not sure how that will work.

Also tested my 11" iPad Pro as an extension. ie I can use my mouse keyboard with it
I wasn't able to make it a "remote side secondary display"

Anyhoo, since I was helping the above user & went down this rabbit hole, it's nice to know it works

Continuity Camera system requirements​

When used for scanning and taking photos on your Mac, Continuity Camera works with these devices and operating systems.

macOS Mojave or later​

  • MacBook introduced in 2015 or later
  • MacBook Pro introduced in 2012 or later
  • MacBook Air introduced in 2012 or later
  • Mac mini introduced in 2012 or later
  • iMac introduced in 2012 or later
  • iMac Pro
  • Mac Pro introduced in 2013 or later
  • Mac Studio

iOS 12 or later​

  • iPhone
  • iPad
  • iPod touch

Additional requirements​



Edit #1:
iPhone webcam support will work with 12x phones & later but does require iOS16 & Ventura on the desktop side
 
Thanks. I've done all of this and have all of the requirements listed above. It probably only works with a real mac.

I actually tested all the above & Continuity/Handoff, etc., work flawlessly on my hack Monterey except for the webcam portion which needs Ventura.

The camera portion for taking pix was tested by me and documented above. There is no reason why it should not work for you, as well.
 
Hi @CaseySJ,
For Alpine Ridge controllers we can try enabling Thunderbolt Bus with a SSDT. This may not yield the best results but it’s an alternative to flashing the firmware.

We have a compilation of these SSDTs and how to use them:

Please note however that it’s difficult to provide support for systems not listed there. The best solution by far is a GC-Titan Ridge so we encourage everyone to go that route.
thanks a lot for this reply! This gives me motivation to try to get it to work again haha.

I know that I would have to rename RP05 --> _INI() to RP05 --> XINI(): on my motherboard.
However, I have no idea on how to find out the ACPI string for my motherboard. Which tool do I have to use? And I also do not know how I would have to modify the target string.
Second, how can I find out from which method the Thunderbolt Hotplug Event is being handled?
For some Motherboards, its _L6F to XL6F, others require to patch _E17 to XE17.
How can I find that out?
I've got a gigabyte aorus z270x gaming k5 with Asus thunderboltex3.

kind regards
cuemaxx
 
Hi @CaseySJ,

thanks a lot for this reply! This gives me motivation to try to get it to work again haha.

I know that I would have to rename RP05 --> _INI() to RP05 --> XINI(): on my motherboard.
However, I have no idea on how to find out the ACPI string for my motherboard. Which tool do I have to use? And I also do not know how I would have to modify the target string.
Second, how can I find out from which method the Thunderbolt Hotplug Event is being handled?
For some Motherboards, its _L6F to XL6F, others require to patch _E17 to XE17.
How can I find that out?
I've got a gigabyte aorus z270x gaming k5 with Asus thunderboltex3.

kind regards
cuemaxx
you can use the "echo" command in terminal

from above link:

Code:
u430:~ RehabMan$ echo -n GFX0|xxd
0000000: 4746 5830                                GFX0
u430:~ RehabMan$ echo -n IGPU|xxd
0000000: 4947 5055                                IGPU
 
Hi @CaseySJ,

thanks a lot for this reply! This gives me motivation to try to get it to work again haha.

I know that I would have to rename RP05 --> _INI() to RP05 --> XINI(): on my motherboard.
However, I have no idea on how to find out the ACPI string for my motherboard. Which tool do I have to use? And I also do not know how I would have to modify the target string.
Second, how can I find out from which method the Thunderbolt Hotplug Event is being handled?
For some Motherboards, its _L6F to XL6F, others require to patch _E17 to XE17.
How can I find that out?
I've got a gigabyte aorus z270x gaming k5 with Asus thunderboltex3.

kind regards
cuemaxx
Good questions. Before answering them I should say that the preferred Thunderbolt solution on Hackintosh is with a flashed GC-Titan Ridge from Gigabyte. The Alpine Ridge method we're discussing here will present a handful of issues that need to be worked around. In other words, after making the necessary adjustments for your board, whatever problems arise when using Thunderbolt devices will be problems that need to be worked around (i.e. we're not aware of any solutions).

Issue 1: Renaming RP05._INI Method
  • Because all Root Port (RPxx) devices have _INI methods, we need to surgically rename only the one owned by RP05
  • We do this by opening our DSDT.aml (not DSDT.dsl) in HexEdit, which is freely available on both Mac App Store and GitHub
  • HexEdit displays a raw hex dump on the left and ASCII (text) on the right. Not all hex values from 0x00 to 0xFF are printable characters, so non-ASCII characters will appear as dots on the right
  • Now we search HexEdit for RP05 (text string) and each time there's a match we manually look to see whether _INI appears within 1, 2, or 3 positions to the right of RP05
  • If _INI appears very close to RP05, that's our search target -- we select all the bytes starting from R in RP05 and ending in the last I of _INI
  • We can use Hackintool to convert the strings RP05 and _INI to hex, which gives us:
    • RP05 = 52 50 30 35
    • _INI = 5F 49 4E 49
  • Because we want to replace _INI with XINI, the ASCII for XINI is:
    • XINI = 58 49 4E 49
  • Note that the only change between _INI and XINI is to the change from 5F to 58
  • So in the full search string we found earlier, the replace string is the same as the search string except for the change of 5F to 58
  • This gives us our full search and replace strings

Issue 2: Finding the Thunderbolt hot-plug GPE or General Purpose Event handler
  • In the DSDT we typically find a dedicated GPE section consisting of a set of Thunderbolt methods
  • Thunderbolt methods include:
    • OSUP, TBFF, TSUB, TSUP, WSUB, WWAK, NTFY, GNIS, CHKP, etc.
  • Included in this set will be an edge-triggered or level-triggered event handler
    • Edge-triggered event handlers start with _E
    • Level-triggered event handlers start with _L
  • In the screenshot below we see our Thunderbolt set of methods inside a dedicated _GPE section, and within that section we find an edge-triggered event handler called _E17
    • Hence, _E17 is our Thunderbolt hot plug event handler
Screenshot 2022-12-19 at 8.05.12 AM.png
 
Back
Top