Thinkpad X220 with Azurewave AW-CE123h Wifi+BT

Discussion in 'El Capitan Laptop Support' started by clx, Jun 30, 2016.

  1. clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    Jun 30, 2016 at 7:57 PM #1
    clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    Hey guys,

    just wanted to put down some of my experiences with getting OS X running on my Thinkpad X220.

    As most X220 users probably know, there's an awesome well put together guide for el capitan install on X220 @ x220.mcdonnelltech.com. Mad props to John for providing guidance to a newb like myself when I reached out to him.

    So I basically followed his guide to a T, and the only deviation was trying to get wifi+bt working with the Azurewave aw-ce123h half-length mini PCI card I bought from amazon. I used the guide written by RehabMan here: http://www.tonymacx86.com/threads/guide-airport-pcie-half-mini-v2.104850/

    but to sum up what I did:

    1) install FakePCIID.kext and FakePCIID_Broadcom_Wifi.kext, BrcmPatchRAM2.kext, BrcmFirmwareRepo.kext all to /S/L/E
    2) install AirportBrcm4360 US/FCC and the Handoff Lisai9093 kext patches
    3) Remove the Broadcom_Bluetooth.kext that was part of the mcdonnelltech kext package

    I had a bunch of issues with BT since the x220 had it's own BT3.0 daughter card and I went through various configurations with and without it installed on the motherboard. The main issue was that the BTDC (I believe) was taking precedence over the BT on the aw-ce123h. I eventually got the BT on the aw-ce123h to take precedence by disabling it in windows and rebooting into OS X. I think both devices now power up during POST and get detected in OS X. I also ended up using USBInjectAll.kext and a custom SSDT to disable the USB port disable the USB port that the BTDC was connected to. I had to do this because the BTDC would override the aw-ce123h when resuming from sleep. Now with the USB port disabled, the BTDC is effectively disabled.

    1) Install USBInjectAll.kext
    2) Grab the SSDT-UIAC-All.dsl file from: https://github.com/RehabMan/OS-X-USB-Inject-All
    3) kept only the following ports: HP11 (left rear USB), HP12(left front USB), HP13(BT on aw-ce123h), HP22(right USB), HP23 (fingerprint reader), HP26 (camera). Other ports may be used if you have a dock. use ioregistryexplorer to see what you actuall use. I removed HP24 which is where the BTDC was on.
    3) Used MacASL to save as AML, installed into EFI/Clover/ACPI/patched

    Airdrop, handoff, continuity, all works now... awesome....

    I also had an issue with the trackpad + trackpoint. I couldn't leave the trackpad enabled because my palm would make the cursor jump around all the time during clicks. So with the trackpad disabled (via prtscr button) the trackpoint buttons would not register if my palm was touching the trackpad. My workaround for this was to customized the VoodooPS2Controller.kext by ramping up fingerZ in the VoodooPS2Trackpad.kext/info.plist to a crazy high number (I used 650) which effectively disabled the trackpad.

    I also had to activate iMessage/Facetime via: https://www.reddit.com/r/hackintosh/comments/2wohwn/getting_imessage_working_on_10102_generating/
    went as expected. no issues there.

    Other misc things: I moved FakeSMC and VoodooPS2Controller kexts to /S/L/E

    Overall, this has been a great learning experience as this has been my first hackintosh install. Hopefully this info helps someone out there. I'm sure all of you know all the caveats and pitfalls that I already went though but to all the newbs out there, stay strong! I was ready to quit several times and go back to windows.

    HUGE thanks to RehabMan for answering all my newb questions. From VoodooPS2Controller to USBInjectAll to FakePCIID and BrcmPatchRAM, you da man!
     
    johnmcdonnell likes this.
    Last edited: Jun 30, 2016
  2. clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    Jun 30, 2016 at 8:06 PM #2
    clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    I should also point out that I wrote a lot of this from memory so there's potential for errors... Let me know if you need clarification of any step since it's all quite high level.

    Thanks,
     
  3. RehabMan

    RehabMan Moderator

    Joined:
    May 3, 2012
    Messages:
    162,238
    Mobo:
    Intel DH67BL
    CPU:
    Core i7-2600K
    Graphics:
    Intel HD 3000
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Jun 30, 2016 at 8:22 PM #3
    RehabMan

    RehabMan Moderator

    Joined:
    May 3, 2012
    Messages:
    162,238
    Mobo:
    Intel DH67BL
    CPU:
    Core i7-2600K
    Graphics:
    Intel HD 3000
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    It is a mistake to include any other bluetooth fixes as they will conflict wit BrcmPatchRAM.

    No need for uia_exclude=HP24 if you just exclude it from your SSDT.

    Which BT controller is on your CE-123h? (device/vendor-id).

    If you have some C++ experience, you could probably investigate how to make the kext work better with your hardware...
     
  4. clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    Jun 30, 2016 at 8:29 PM #4
    clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    I'll remove it and see what happens...

    EDIT: rebooting... seems like it worked. Oh damn.. Handoff works now!!!! YAY!!!

    For some reason, removing the port via SSDT seems more "permanent". I was excluding the port prior to the SSDT patch so I just kept it that way. I'll adjust it so I don't need the kernel boot flag.

    13D3:3404

    You've mentioned in the past that this has "poor compatibility". Does that mean handoff/continuity is impossible? (would like to know ASAP so I can return the card and get a different one (any recommendations?). EDIT: nevermind... working now with the removal of the Broadcom_Bluetooth.kext. =)

    My experience is very little... I did look at the code and couldn't wrap my head around it. maybe in the future... =)
     
    Last edited: Jun 30, 2016
  5. RehabMan

    RehabMan Moderator

    Joined:
    May 3, 2012
    Messages:
    162,238
    Mobo:
    Intel DH67BL
    CPU:
    Core i7-2600K
    Graphics:
    Intel HD 3000
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Jun 30, 2016 at 8:43 PM #5
    RehabMan

    RehabMan Moderator

    Joined:
    May 3, 2012
    Messages:
    162,238
    Mobo:
    Intel DH67BL
    CPU:
    Core i7-2600K
    Graphics:
    Intel HD 3000
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Either way works... I was just pointing it out...

    Probably a firmware/hardware incompatibility... It works, but is not a good choice. Unfortunately, it is difficult to tell what you're going to get when purchasing.
     
  6. maomaoj

    maomaoj

    Joined:
    Jul 5, 2016
    Messages:
    29
    Mobo:
    Thinkpad X220, Clover
    CPU:
    Core i5-2450M, QM67
    Graphics:
    HD 3000, 1366x768
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Jul 7, 2016 at 5:30 AM #6
    maomaoj

    maomaoj

    Joined:
    Jul 5, 2016
    Messages:
    29
    Mobo:
    Thinkpad X220, Clover
    CPU:
    Core i5-2450M, QM67
    Graphics:
    HD 3000, 1366x768
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Native BT card is not contained with my X220, so I bought a Lenovo compatible BT4.0 card installed and drived it by changing the pid with Broadcom_Bluetooth.kext well.
    After fail to use airdrop&handoff with DW1510(BCM4322), I bought a BCM94352HMB (without BT version).
    So my question is if I am facing the same issue as you? And if it could be working as I expected in this way:
    1.Install FakePCIID.kext and FakePCIID_Broadcom_WiFi.kext,
    2.Patch AirPortBrcm4360 in Clover for 5Ghz:
    1. Name: AirPortBrcm4360
    2. Find: 4183FCFF742C48
    3. Replace: 66C7065553EB2B
    3.Patch IOBluetoothFamily in Clover for Handoff:
    1. Name: IOBluetoothFamily
    2. Find: 4885FF7447488B07
    3. Replace: 41BE0F000000EB44
    Am I right? And one more question, does patch IOBluetoothFamily a optional step?

    This is my thread:
    http://www.tonymacx86.com/threads/h...11-5-and-make-airdrop-handoff-working.197141/
     

    Attached Files:

    • TB23en1lXXXXXbYXXXXXXXXXXXX_!!926665743.jpg  (55.3 KB, 143 views)
    • TB24.nVlXXXXXc8XXXXXXXXXXXX_!!926665743.jpg  (48.3 KB, 127 views)
    Last edited: Jul 7, 2016
  7. maomaoj

    maomaoj

    Joined:
    Jul 5, 2016
    Messages:
    29
    Mobo:
    Thinkpad X220, Clover
    CPU:
    Core i5-2450M, QM67
    Graphics:
    HD 3000, 1366x768
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Jul 7, 2016 at 7:59 AM #7
    maomaoj

    maomaoj

    Joined:
    Jul 5, 2016
    Messages:
    29
    Mobo:
    Thinkpad X220, Clover
    CPU:
    Core i5-2450M, QM67
    Graphics:
    HD 3000, 1366x768
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Add my BT controller info:
    pid:0x21e6 vid:0x0a5c
     
  8. clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    Jul 7, 2016 at 1:13 PM #8
    clx

    clx

    Joined:
    Jun 12, 2016
    Messages:
    34
    Mobo:
    X220 Thinkpad
    CPU:
    Sandy Bridge, Core i5 2540M
    Graphics:
    Intel Graphics 3000 HD
    I would not mix any BT patch with Broadcom_bluetooth.kext. Either don't do any BT patch and use only the broadcom_bluetooth.kext or remove broadcom_bluetooth.kext and use the BT patches as defined in the airport v2 thread.

    Good luck
     
  9. RehabMan

    RehabMan Moderator

    Joined:
    May 3, 2012
    Messages:
    162,238
    Mobo:
    Intel DH67BL
    CPU:
    Core i7-2600K
    Graphics:
    Intel HD 3000
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Jul 7, 2016 at 3:03 PM #9
    RehabMan

    RehabMan Moderator

    Joined:
    May 3, 2012
    Messages:
    162,238
    Mobo:
    Intel DH67BL
    CPU:
    Core i7-2600K
    Graphics:
    Intel HD 3000
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    BCM94352 requirements are clearly covered in the FAQ.

    http://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
     
  10. maomaoj

    maomaoj

    Joined:
    Jul 5, 2016
    Messages:
    29
    Mobo:
    Thinkpad X220, Clover
    CPU:
    Core i5-2450M, QM67
    Graphics:
    HD 3000, 1366x768
    Mac:
    MacBook Air
    Mobile Phone:
    iOS
    Jul 7, 2016 at 4:36 PM #10
    maomaoj

    maomaoj

    Joined:
    Jul 5, 2016
    Messages:
    29
    Mobo:
    Thinkpad X220, Clover
    CPU:
    Core i5-2450M, QM67
    Graphics:
    HD 3000, 1366x768
    Mac:
    MacBook Air
    Mobile Phone:
    iOS

Share This Page