dokterdok / Continuity-Activation-Tool

An all-in-one tool to activate and diagnose macOS 10.10-12 Continuity on compatible Mac configurations.
MIT License
1.6k stars 152 forks source link

Handoff on Sierra no longer working after update on iMac(17,1) Hackintosh. #353

Closed JiamingSuen closed 7 years ago

JiamingSuen commented 7 years ago

Handoff is not working, together with Universal Clipboard. Airdrop and Continuity is working well.

Handoff worked on El Capitan after running the script with -f(because of " Entry, ":Mac-65CE76090165799A:ContinuitySupport", Does Not Exist NOT OK. Unknown state. Your Mac might not be compatible." issue. btw any possibilities to fix this?)

Steps done to try to fix the issue:

  1. Run the beta branch script, not working.
  2. Uninstall and reinstall CAT, not working.
  3. Reboot both devices. Toggle bluetooth and Handoff, on both devices. Log out and log in iCloud. Toggle iCloud Drive.

    System Diagnostic Output

--- Initiating system compatiblity check ---

--- Hardware/OS checks ---
Verifying Continuity status...          OK. OS X reports Continuity as active
Verifying Mac model reference...        WARNING. The compatibility of this Mac Model (iMac17,1) with this mod is unknown and may have unpredictable results
Verifying Mac board-id...               OK. Long board id detected: Mac-65CE76090165799A
Verifying OS X version...               Warning: This tool wasn't tested with OS X versions higher than 10.10. Detected OS version: 10.12
Verifying Wi-Fi hardware...             OK. A Broadcom AirPort card is active, and is using the Continuity compatible Brcm4360 kext
Verifying AWDL status...                OK. An AWDL interface is up, Wi-Fi is ready for Continuity
Verifying Bluetooth hardware...         OK. The internal Bluetooth card is active
Verifying Bluetooth version...          OK. Bluetooth 4.0 detected
Verifying Bluetooth features...         OK. Bluetooth features are Continuity compliant
Verifying Bluetooth firmware...         OK. Bluetooth firmware version: v126 c9196
Verifying Login Item...                 OK. Login item for Auto Continuity Check is not set.

--- Modifications check ---
Verifying OS kext protection...         OK. Kext developer mode is not active. This tool can fix this.
Verifying SIP...                        Ok. System Integrity Protection is already disabled
Verifying ContinuitySupport...          Print: Entry, ":Mac-65CE76090165799A:ContinuitySupport", Does Not Exist
NOT OK. Unknown state. Your Mac might not be compatible.
Verifying kexts readability...          OK. Wi-Fi and Bluetooth kexts were found and could be read
Verifying Wi-Fi whitelist status...     OK. The whitelist is correctly patched with your board-id
Verifying BT4 dongles compatibility...  OK. Compatibility with BT4 USB dongles is not enabled, this tool can fix this if a dongle is plugged in
Verifying old Wi-Fi kext presence...    OK. Legacy Wi-Fi driver Brcm4331 was already removed
Verifying legacy Wi-Fi card patch...    OK. The patch is already done. Old Broadcom Wi-Fi cards may work.
--- Modifications check ---

Press any key to go back to the main menu...

Thanks for all these works you guys have done!

mu2004 commented 7 years ago

I am having the same issue with 17,1 on Sierra. BCM94360CD is used. iCloud: All syncing between devices nicely. Airdrop: Works Personal Hotspot: Works Apple Watch Unlock: The option was available when the WIFI card was initially installed, but I couldn't get it to work. After playing with it, and reinstall OS etc, the option is no longer shown up. Handoff: Not working Universal Clipboard: Not working

Wondering if disabling SIP is necessary.

--- Hardware/OS checks --- Verifying Continuity status... OK. OS X reports Continuity as active Verifying Mac model reference... WARNING. The compatibility of this Mac Model (iMac17,1) with this mod is unknown and may have unpredictable results Verifying Mac board-id... OK. Long board id detected: Mac-65CE76090165799A Verifying OS X version... Warning: This tool wasn't tested with OS X versions higher than 10.10. Detected OS version: 10.12 Verifying Wi-Fi hardware... OK. A Broadcom AirPort card is active, and is using the Continuity compatible Brcm4360 kext Verifying AWDL status... OK. An AWDL interface is up, Wi-Fi is ready for Continuity Verifying Bluetooth hardware... OK. The internal Bluetooth card is active Verifying Bluetooth version... OK. Bluetooth 4.0 detected Verifying Bluetooth features... OK. Bluetooth features are Continuity compliant Verifying Bluetooth firmware... OK. Bluetooth firmware version: v126 c9198 Verifying Login Item... OK. Login item for Auto Continuity Check is not set.

--- Modifications check --- Verifying OS kext protection... OK. Kext developer mode is not active. This tool can fix this. Verifying SIP... NOT OK. System Integrity Protection is still enabled Verifying ContinuitySupport... Print: Entry, ":Mac-65CE76090165799A:ContinuitySupport", Does Not Exist NOT OK. Unknown state. Your Mac might not be compatible. Verifying kexts readability... OK. Wi-Fi and Bluetooth kexts were found and could be read Verifying Wi-Fi whitelist status... OK. The whitelist is incorrectly patched, your board-id wasn't found at the right place. This tool can try to fix this. Verifying BT4 dongles compatibility... OK. Compatibility with BT4 USB dongles is not enabled, this tool can fix this if a dongle is plugged in Verifying old Wi-Fi kext presence... OK. Legacy Brcm4331 Wi-Fi driver is present. This tool can fix this. Verifying legacy Wi-Fi card patch... OK. The legacy Wi-Fi patch is not present. This tool can fix this. --- Modifications check ---

mu2004 commented 7 years ago

I got it working by fixing the iMessage/Facetime issue first. Once that's fixed, handoff & apple watch unlock appeared and working all by itself.

JiamingSuen commented 7 years ago

My iMessage/Facetime is working normally.. @mu2004 Would you please tell me how did you fix your issue? It still worth a try. Thanks!

mu2004 commented 7 years ago

Is your WIFI BCM94360? If it's not, it may not be natively supported and some hacking is needed.

sysfloat commented 7 years ago

Can you check if the latest beta solves this issue?

JiamingSuen commented 7 years ago

I'm afraid it is still not working. I tried the latest beta branch and getting Patching ContinuitySupport... Usage: PlistBuddy [-cxh] <file.plist>, so I decided to force install the script. After rebooting, log out and log in iCloud and toggling iCloud Drive, Handoff and Instant Hotspot are still not working. This is all command I have run:

➜  Resources git:(beta) ✗ sudo ./contitool.sh
Password:
--- OS X Continuity Activation Tool 2.4b3 ---
                 by sysfloat
           original by dokterdok

Select an option:

1) Activate Continuity      4) Uninstall with Recovery
2) System Diagnostic        5) Disable Auto Check App
3) Uninstall            6) Quit
#? 1
--- OS X Continuity Activation Tool 2.4b3 ---
                 by sysfloat
           original by dokterdok

OS X reports Continuity as active.
Patching ContinuitySupport...           Usage: PlistBuddy [-cxh] <file.plist>
    -c "<command>" execute command, otherwise run in interactive mode
    -x output will be in the form of an xml plist where appropriate
    -h print the complete help info, with command guide

Usage: PlistBuddy [-cxh] <file.plist>
    -c "<command>" execute command, otherwise run in interactive mode
    -x output will be in the form of an xml plist where appropriate
    -h print the complete help info, with command guide

OK.

Press any key to reboot or CTRL-C to cancel...^C
➜  Resources git:(beta) ✗ sudo ./contitool.sh -f

--- Initiating Continuity mod ---

Disabling OS kext protection...         OK
Fixing disk permissions...              OK
Backing up original drivers...          Would you like to overwrite the existing backup found in /Users/JMSuen/KextsBackupBeforePatch?
1) Yes, overwrite
2) No, skip this backup
#? 2
Skipping backup...                      OK
Skipping blacklist patch...             OK
Verifying BT4 dongle patch status...    OK
Setting HCI switch behavior...          OK
Patching Bluetooth feature flags...     OK
Applying legacy Wi-Fi card patch...     OK
Skipping whitelist patch...             OK
Skipping old Wi-Fi driver clean up...   OK
Applying legacy Wi-Fi card patch...     OK
Patching ContinuitySupport...           Set: Entry, ":Mac-65CE76090165799A:ContinuitySupport", Does Not Exist
OK.
Updating kext caches...                 OK
Updating system caches...               OK
Backing up patched drivers...           Would you like to overwrite the existing backup found in /Users/JMSuen/KextsBackupAfterPatch?
1) Yes, overwrite
2) No, skip this backup
#? 2
Skipping backup...                      OK
Do you want to enable a Automatic check for Continuity each boot?
1) Yes
2) No
#? 2
OK.

ALMOST DONE! After rebooting:
1) Make sure that both your Mac and iOS device have Bluetooth turned on, and are on the same Wi-Fi network.
2) On OS X go to SYSTEM PREFERENCES> GENERAL> and ENABLE HANDOFF.
3) On iOS go to SETTINGS> GENERAL> HANDOFF & SUGGESTED APPS> and ENABLE HANDOFF.
4) On OS X, sign out and then sign in again to your iCloud account.
Troubleshooting: support.apple.com/kb/TS5458
After verifying that Continuity works, you can reenable SIP via the Recovery OS

Thanks to Lem3ssie, UncleSchnitty, Skvo, toleda, TealShark, Manic Harmonic, rob3r7o, RehabMan, kramsee and the many beta testers for their support.
Updated by sysfloat

Press any key to reboot or CTRL-C to cancel...

Thanks again.

sysfloat commented 7 years ago

@JiamingSuen thanks for testing. Can you please try one more time? I just pushed beta 2.4b4.

btw, I'm pretty sure the issue that it's not working has to do with the patching of the ContinuitySupport. So please keep an eye on that.

JiamingSuen commented 7 years ago

Yes I believe this time the patching is done, but after rebooting and other toggling stuff it is still not working.. I even tried with a different Wifi router.

➜  Resources git:(beta) ✗ git pull
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (6/6), done.
From https://github.com/dokterdok/Continuity-Activation-Tool
   67c0ef1..0c72056  beta       -> origin/beta
Updating 67c0ef1..0c72056
Fast-forward
 Continuity Activation Tool.app/Contents/Resources/contitool.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
➜  Resources git:(beta) ✗ sudo ./contitool.sh
Password:
--- OS X Continuity Activation Tool 2.4b4 ---
                 by sysfloat
           original by dokterdok

Select an option:

1) Activate Continuity      4) Uninstall with Recovery
2) System Diagnostic        5) Disable Auto Check App
3) Uninstall            6) Quit
#? 1
--- OS X Continuity Activation Tool 2.4b4 ---
                 by sysfloat
           original by dokterdok

OS X reports Continuity as active.
Patching ContinuitySupport...           OK.

Press any key to reboot or CTRL-C to cancel...
sysfloat commented 7 years ago

Could you check SystemParameters.plist located in /System/Library/Frameworks/IOBluetooth.framework/Versions/A/Resources/ ? Your Mac board-id should be in there with a bool for "ContinuitySupport" set to Yes.

JiamingSuen commented 7 years ago

Is this the bool you mentioned?

<key>Mac-65CE76090165799A</key>
    <dict>
        <key>ContinuitySupport</key>
        <true/>
    </dict>

Well there's no "Yes" in this file. I attached the file to this gist in case you need to have a look. Thanks.

btw the board-id is assigned by Clover Configurator and is changeable if it's necessary.

sysfloat commented 7 years ago

Yes that's the one. It gets shown as "Yes" in xcode. So all patches should be applied then.. I might have to set up a hackintosh myself and test some things out. Will keep you updated.

JiamingSuen commented 7 years ago

OK thanks a lot! It's quite weird that it worked before with the same hardware and OS configuration.. And other people's Sierra is working fine..

sysfloat commented 7 years ago

Weird. You could try to remove your iCloud account from your devices and try again. This usually fixes the issue for me.

JiamingSuen commented 7 years ago

Well, something more weird happened.. I did nothing since my last attempt with the latest beta script and everything suddenly got working this afternoon. Sorry I cannot provide more information about how exactly it got working but thanks a lot for your patience @sysfloat .

sysfloat commented 7 years ago

Yeah most likely just the iCloud sync taking some time, you can force this by removing and re-adding the account on your Mac.

Good to hear it's finally working, so it was the ContinuiySupport not being patched after all :)