Discussion in 'Hardware Troubleshooting' started by beelzebozo, Oct 13, 2016.
Asus Z370-A Prime based Hackintosh with Apple Thunderbolt Display and Thunderbolt Apollo Interface.
Last night the random booting issue reared it's ugly head again!
This is annoying because otherwise I have a 100% working system when I finally get it to boot properly...
Just wanted to say a huge thank you to everyone on this thread. I had persistent problems with getting Thunderbolt to recognise my UAD Apollo Twin Duo MkII. Working great now though, will definitely see how it runs over the coming weeks.
I initially bought the Apple TB3>2 converter and that didn't work, so I got the Startech converter and it worked perfectly! Got it running on Windows first, then got it running on MacOS. Also tried switching back to the official Apple converter and it doesn't work in Windows but still works in MacOS.
Very much appreciate all the knowledge you guys have on this topic!
ASUS Prime Z370-A | ThunderboltEX 3 | i7 8700k | High Sierra 10.13.4
@jpsexton @crankydnaki @DrOoh can you please help with my build? I have basically the same configuration of many users of this thread. I have opened a general thread on my build here and the last point (4.) is about ThunderboltEX 3: it works flawlessly in Windows 10, but stops completely in macOS (no device has been ever recognised).
the thread is here, any feedback is much appreciated!
from your signature I can tell we have the same config. I use the integrated graphics (UHD630) with no dGPU.
I think you could help me out on this, thanks!
I gave up for the time being and I am using Windows 10 on this build. I got close in that I could have everything working but I would have to reboot the system several times at startup to get it working.
I'm waiting to see how others fare with this combination before I try again...
Did you ever solve your issue?
I have the same mobo and chipset and just wondered if there was a way you could talk me through getting Thunderbolt to work. I am a 3D Animator and built the system to render quicker however I can't get large files onto it currently as neither usb c or thunderbolt drives on the PCI or the mobo work.
Any help would be greatly appreciated.
Absolutely. It was the most frustrating troubleshoot I’ve ever done, I’m glad to pay forward the help I received.
What makes this hard, is there is a causal relationship between several key variables. So, there is not a single solution, even given the same Mobo/card.
I even discovered some more variables this past week, that made me scratch my head.
That being said, BIOS is the first place to start. Make sure you are current. A few pages back JP posted some screenshots of his BIOS Settings. That’s the perfect place to start. If you can’t find those, or if they don’t work for you, I can upload my current settings. It’s helpful to use the BIOS Overclocking Profiles to set presets you can come back to, as needed. For instance I have Standard Boot - the basic settings I need to boot properly. Then I have settings for TB Enabled/USB Disabled/No Overclock, TB Enabled/USB Enabled/5.0 Overclock, Etc. This way, if you have to do a manual BIOS reset or **** hits the fan, you don’t have to go through the BIos Setup over and over.
The key variables in BIOS that have affected boot/not boot:
*Above 4g decoding - what’s on your PCI-E Bus determines Enabled or Disabled
*TB Settings Security - a bit nebulous. I have had to change this based on several other variables. Hard to track those variables. Basic idea - lots of PCIe devices enabled, few PCIe devices - enabled. Start with Disabled.
1) Start with no security. This has to be combined with secure boot Disabled, all keys unloaded.
2) User Authorization, Secure Boot partially Disabled, first key unloaded
3) User authorization, Secure Boot Enabled, no keys unloaded
Fast Boot - Very small amount of configurations it works with, best to keep off.
Secure Boot, 4g decoding, authorization are the main problem areas I have encountered.
*Make sure correct PCIe slot is designated in Thunderbolt BIOS Settings. -> I was never able to get it working in PCIe slot 1. PCIe slot 2 has been the easiest, and other users have had the same experience. Use slot 2, as a starting point. I finally got it working on slot 3, but it requires too many changes to be worth it, if you have the ability to pop it in slot 2.
*it is important to note before you start changing more settings. You want to make sure a thunderbolt device is connected, and **powering on**. This is where trouble and confusion can come.
1) must have enabled and have successful TB usage in Windows first.
2) Many people have trouble with Tb because they are trying to configure when TB is enabled, but the thunderbolt device is not connected and/or not powered on. The settings can change if there is no device connected, can change if there is a device connected but it isn’t powering on. Based on several variables. Crucial to have a device connected and powered on before you start troubleshooting.
2b) now that’s a huge issue for people to even get the device online.
You must start from a cold boot. Shutdown, power off via the switch on the power supply of the computer. If I’m doubt, or just starting, to as far as starting unplugged. It makes a difference.
1- start powered down, unplugged. 2- Connect TB device.
3- Power on TB Device
4- Power on switch on computer PSU
5- Turn on case power
Starting like this, will kick on the power properly and allow the TB device to be detected early, which is a must. It’s particularly touchy for bus powered devices, external TB to PCIe enclosures (these typically don’t have a power switch, they aren’t bus powered, always plugged in to AC power, and rely on being signaled to power on by the computer in early stages of boot).
Sometimes you may have to perform steps 1-5 a few times for it to work. Depends on the case, previous boot state, BIOS changes, etc. if you kick on the psu switch, hit case power switch, and you hear the cpu fan spin up, then spin down, then spin back up, do steps 1-5 again. You should hit the switch on the case, and fans should spin up right away, Boot should spin up in tandem. This is where the connected devices will get their signal to power on, and computer will be signaled that the device is present.
From there, you can restart/reboot, shutdown, shutdown and boot, normal boot from power off on case. TB should continue to signal and power in from there, up until the point where you disconnect a device, encounter an error, or other issue. If that happens, then start from a cold boot. For the most part, once setup properly, you’ll rarely have to cold boot steps 1-5. But, just know to go back to that process if you have things working, everything boots, but your device isn’t recognized when you reach MacOS.
That’s a start, for the hardware and bios problems you will encounter.
Also important to note, I’ve thought I’ve had the cables securely connected, and they aren’t. It can be touchy. When I’m doubt, plug/unplug thunderbolt cable.
If you are using a tb2 device, make sure the tb2 to TB3 adapter isn’t broken. Some users report the Apple adapter doesn’t work. It works, but they don’t take well to being bent or used any way other than gingerly. I’ve had one fail, and i didn’t realize it, and it caused me to troubleshoot as a device or software problem, not a broken cable. If you do critical work, always have a backup on hand. If I’m doubt, the Startech adapter has been anecdotally reported to be more resilient, and less likely to defect.
Once all of that is in place, the boot errors are typically caused by
1) main cause osxaptiofix. You want to use either osxaptiofix3drv or AptioMemFix. I’ve tried them all, those are the only two that have resulted in successful boot for me. I use fix3drv currently. I did implement AptioMemFix, but reverted back to fix3drv because it stopped working as I added different devices attached to my Tb daisy chain. Start with fix3drv, if that doesn’t provide you an error free boot, then try the newer AptioMemFix.
When not properly implemented you will get the error that states cannot allocate runtime area.
2) Boot argument slide=0. This will either cause or prevent booting with the does print f work? Error. I’ve recently discovered, with my expanding setup, there are some device configs where I need the boot argument slide=0, and there are some where I don’t. As I just added another thunderbolt enclosure, I had to remove slide=0. I don’t know why. But this boot argument is a special focus area, as it is needed in MOST configurations.
The above should provide you with hours of fun options to troubleshoot. It should get you going. In the event that it doesn’t, come back and we will go from there.
What’s your current setup? OS version, PCIe slot you are using, what thunderbolt peripheral, what do your BIOS Settings look like now? and if you could post your config, that could be helpful.
Also worth noting, for others, in a previous post, I noted hotplugging worked for me. Ultimately it did not. Initially, I believed it to be. I was using a new TB3 bus powered peripheral. I got plugged it, it powered on, appeared to be recognized, but ultimately, it was non-operational.
Separate names with a comma.