非対応なMacでInstant Hotspot、Handoff、Continuityを使う方法があった!

f:id:provdr:20141022162814j:plain

先日の記事で Bluetooth 4.0 に対応していない Mac では Handoff や Instant Hotspot が使えないとお伝えしました。

Mac に搭載されている AirPort カードBluetooth 4.0 をサポートしている必要があるのです。非対応ということはこれが古いタイプ。私の MacBook Pro も古くてダメでした。

なんとか非対応機でも使う方法はないものか・・・と調べたところ、ありましたありました、とてもギーク臭のするやり方が。

.kext ファイルの書き換えで対応できる

実は、Bluetooth 4.0 対応カードを搭載しているにもかかわらず、Handoffが 使えなくなっている機種が存在します。以下の通り。

これらは IO80211Family.kextIOBluetoothFamily.kext というカーネルエクステンションを書き換えるだけで Handoff、Continuity、Instant Hotspot が使えるようになります。

kext の書き換え方法は以下から。

IO80211Family.kext と IOBluetoothFamily.kext を書き換える

  1. 0xEDKext Drop をダウンロード
  2. ディスクユーティリティでディスクのアクセス権を修復を実行
  3. ターミナルでsudo nvram boot-args="kext-dev-mode=1"と実行
  4. 再起動
  5. Finder Command + Shift + G/System/Library/Extensions/を開く
  6. IO80211Family.kextIOBluetoothFamily.kextをデスクトップにコピー、元ファイルを削除する(必ずバックアップを取っておく)
  7. ターミナルでsudo kextcache -system-prelinked-kernelと実行
  8. 次にsudo kextcache -system-cachesと入力、Enter
  9. 再起動
  10. ターミナルでioreg -l | grep "board-id" | awk -F\" '{print $4}'と実行
  11. Mac-742912EFDBEE19B3といった結果がでるのでコピー
  12. Finder で~/Desktop/IO80211Family.kext/Contents/Plugins/AirPortBrcm4360.kext/Contents/MacOSを開く
  13. AirPortBrcm4360 を 0xED で開く
  14. Mac-と検索
  15. Mac-00BE6ED71E35EB86といった箇所があるので(機種により異なる場合がある)、11でコピーしたものに書き換える
  16. 保存する
  17. Finder で~/Desktop/IOBluetoothFamily.kext/Contents/MacOSを開く
  18. IOBluetoothFamilyを0xED で開く
  19. MacBookAirと検索
  20. 'MacBookAir4,1''MacBookAir4,2''Macmini5,1''Macmini5,2''Macmini5,3''MacBookAir1,1''MacBookAir1,1''Macmini1,1''Macmini1,1''Macmini1,1' と書き換える
  21. 保存
  22. Kext Drop を起動し、IO80211Family.kextIOBluetoothFamily.kextをドラッグ&ドロップしインストールする
  23. ターミナルでsudo kextcache -system-prelinked-kernelと実行
  24. 次にsudo kextcache -system-cachesと実行
  25. 再起動
  26. システム環境設定>一般 に Handoff の項目が表示されていたら成功。

.kext + AirPort カードの換装が必要な機種

AirPort カードの購入、換装をし、更に kext ファイルを書き換えることで使えるようになる機種が以下の通り。

これらは、後継機種の Bluetooth 4.0 に対応している AirPort カードに換装することで Handoff を有効にできるようで、海外のフォーラムでは主に MacBook ProMacBook Air での成功例が報告されています。


という訳で残念ながら私のは MacBook Pro (Early 2011) なので kext の改造だけではHandoff 等は使えないということに・・・。

上記機種で Yosemite をお使いの方は試してみる価値がありますが、システムファイルを弄る必要があるのでしっかりとバックアップをとって、自己責任でお願いします。

[参考: 2011 MacBook Pros can support Handoff/Continuity - MacRumors Forums, Handoff Breakdown With Activation Tool - MacRumors Forums]