今回は、WiFiカードを取り付けます。そのために、パッチを当てたBIOSに入れ替えます。パッチを当てる手順は前回に引き続き以下のサイトのお世話になりました。
(前回の進捗:X220がmacOS High Sierraで起動しました。)
Table of Contents
BIOSにパッチを当てる
最近のノートPCでは、カスタマーサービスの都合なのかパーツを勝手に変更できないように設定されています。オリジナルの構成から変更をしてもBOISがその動作を阻止します。場合によってはコンピュータが起動しないこともあるようです。ちゃんと使っても良いパーツのリスト、white listがあって、それと合っているかをチェックしているようです。HackintoshではIntelの無線モジュールが動かないので、これを交換したいところですが、この仕組みに引っかかってしまいます。ということで、white listのチェックを行わないようパッチを当てたBIOSに交換します。これで無線モジュールを交換しても動くようになります。
まずは、公式のBIOS 1.44にアップデートします。そこで、Lenovo社が配布している
https://download.lenovo.com/pccbbs/mobiles/8duj29us.exe
というWindowsのアプリケーションを使用します。これをWindowsの環境で、ダブルクリックして起動します。色々と警告が出ますが、承諾していけばアプデート完了です。元々のBIOSバージョンが1.39だったのが1.44にアップデートされました。
次に上記のサイトで配布されているパッチ版BIOSに入れ替えます。
http://www.mcdonnelltech.com/X220_v1.44_Modified_BIOS.zip
このファイルを解凍したフォルダの中に、Flash.batと言うファイルがあるので、これをWindows環境でダブルクリックして実行します。これも警告がいくつか出て、アップデートされます。バージョンは同じ1.44ですが、めでたくパッチ版に更新できたら、メニューにAdvancedが新たに現れているはずです。
これにより、純正パーツリストのチェックを行わないようにBIOSを改造することができます。
BIOSの設定
上記のサイトでは、推奨のBIOS設定についても説明されています。
- 先ずは工場出荷時状態にします。Load SetupからDefaultsを選ぶ
- 次にConfig > Power > Power On with AC Attach を Disabled
- 次にConfig > Serial ATA (SATA) を AHCI
- 次にSecurity > Memory protection > Execution Prevention を Enabled
- 最後にStartup > UEFI/Legacy Boot を Both (UEFI onlyでも問題ありません)
ちなみに、この設定は、全部デフォルト値です。なので、工場出荷時状態にすればあとは何もしなくても大丈夫でした。
Bluetoothモジュール
X220の裏側のネジを2個外すとキーボードが外れ、さらに5個外すとパームレスト部分が外れます。パームレスト部分は、軽く噛み合っているので、壊さないように慎重に取り外します。いずれもリボンケーブルで本体とつながっていますが、この下の無線モジュールソケットにアクセスするだけでしたら、ケーブルを外す必要はありません。
今回入手したX220にはBluetoothが付いていました。Bluetoothモジュールは、パームレスト右手前のあたりにネジで止まっています。ソケットで本体と接続する小さな基板です。(ソケットのピンはUSBだと思われます)
ラベルを見ると、Broadcom BCM92070MD_LENOと読めます。最後の部分は、レノボモデルということかと思われます。この数字部分から推測すると、これは古いモデルのiMacやMacBookで使われているBroadcom社のチップBCM20702の仲間だと思われます。BCM20702はI-O DATA USB-BT40LEでも使われているチップです。
「システム情報」で見ると、2070B0チップセットだと表示されます。また、BCM20702とは違って、Bluetooth 4.0ではなくて3.0のようです。
ラッキーなことに、X220のこのBluetoothチップはmacOSからそのまま認識されて使うことができました。キーボード、トラックパッド、Bluetoothイヤフォン、スピーカに接続することができました。キーボードるいはsleepからの復帰にも使えます。iCloudで連携したiPhoneに電話がかかってくると応答もします。しかしContinuityには対応していないようです。
WiFiモジュール
X220にはIntelのhalf size micro PCIeソケットのWiFiモジュールが付いています。キーボードの右部分の下にあります。macOSで動くIntel WiFiのドライバはありませんので、これは使えません。
このモジュールの代わりのWiFiモジュールには、Dellの補修部品として出回っているDW1510がお薦めです。中身はBroadcomのBCM94322というチップです。これに差し替えれば、そのままでmacOSでWiFiを使えます。802.11 a/g/n対応で、5GHzも使えます。Atherosのチップを使ったDW1515もそのまま使えるようですが、macOS Mojaveでは使えないという話も聞きました。DW1510はAliExpressで多数出品されていて送料込み$7くらいで買えます。
WiFi/BTコンボモジュール
上記のWiFi/Bluetoothモジュールは、1世代前のiMac/MacBookで使われた無線モジュールです。WiFiが802.11 ac対応で、Continuityにも対応していると思われるmini PCIeモジュールが手元にあるので、そのうち試してみたいと思います。
AzureWare AW-CB150HはWiFiがa/b/g/n/acでBluetoothが搭載されたコンボカードです。BroadcomのBCM94360HMBというモジュールを使っています。数字部分が純正で使われるBroadcomモジュールと同じで、互換性が高いです。アンテナが3本のタイプです (WiFiが2本とBluetoothが1本)。アンテナのコネクタが、一般のmini PCIeのコネクタより小型のタイプなので、対応したアンテナが必要です。AliExpressの製品には、コネクタ形状を変換するケーブルが付属しているものもあります。X220のWiFiは2本アンテナなのですが、モジュール近辺に3G WAN用のアンテナが未使用で放置されています。3GならBluetoothに近い周波数もあるので、これをBluetooth用に使わせてもらうのも可能だと思います。もしくは、Bluetooth用にアンテナを買って、元からあるBluetoothモジュールを外して、その場所にアンテナを設置しても良いかもしれません。
改造BIOSを入れてしまうとtime/dateの欄が消えてしまうようです。
なのでCMOSリセットをしてしまうと致命傷ですね
ほんとだね、今まで気がつかなかった。でもOS起動後に時刻設定をし直すと使えるみたいです。
そうなのですか。でもmacOSがNTPで時間合わせてくれればBIOS時間も合いますよね。
>なのでCMOSリセットをしてしまうと致命傷ですね
BroなX230の改変バイオスも、どうやらDate/Timeの項目は蒸発してるっぽいですけど、
OpenCore使わない限り?wwwなんも問題ないんで、致命傷と言われてもそんな気にすることはないレベルのような気もしまねぇ。
そもそも、Lenovo Biosはクセがあるし、UEFIもあるいみなんちゃってレベルで古いしぃ、CMS有効がデフォで有効っぽい作りなんで、なんか日付が飛んじゃって、DOSのプロンプトで日付と時間引っ叩けばCMOS-RAMなかに叩き込むことできるので、だから使えにゃいっていきなりそうはならないんじゃないかと。。。CMOSエラーがでても、勝手にデフォで書き込みして回避する動きしてるし、特に致命的な程にはかんじませんねぇ。。。