Kexts enabling native support for Intel Bluetooth chipsets in macOS.

Overview

IntelBluetoothFamily

Kexts enabling native support for Intel Bluetooth chipsets in macOS.

Most of the code is complete, and I am now in the testing phase! I would try to make the kext load ASAP and make sure it does not cause kernel panics. I will post the first release after that for public testing and from there go step by step.

Issues
  • Set MaxKernel in README

    Set MaxKernel in README

    It may be worth adding a note that you can set MaxKernel to 20.99.9 to allow this kext in Big Sur and older versions. Some people may dual boot Monterey and older versions, which could create issues if people copy and paste from the README. 20.99.9 should cover any updates in Big Sur, and it's the value I use for Itlwm on my config.

    opened by 1Revenger1 1
  • Bluetooth 4.0 compat (command 0x2019)

    Bluetooth 4.0 compat (command 0x2019)

    Bluetooth compatibility with 4.0 devices (e.g. mouses, keyboards) has been problematic for 3rd party bluetooth devices ever since IntelBluetoothFirmware had been first developed. Now we finally have a breakthrough. Discussing with @zxystd, I was able to locate bugs in the Apple code that are causing this issue - patching a function called FindQueuedRequest could "solve" this issue, but the real issue is that Apple neglected to add certain operations specific to opcode 0x2019 (LE Start Encryption) in SendHCIRequestFormatted, the function that handles HCI requests most of the times as its name clearly shows. Its counterpart that sends raw packets, however, does deal with this special opCode and thus native Broadcom Bluetooth devices don't have this compatibility flaw as they use SendRawHCICommand instead with 0x2019. Therefore, I have attempted to patch SendHCIRequestFormatted to do the same operations as SendRawHCICommand. The validity of this approach is to be verified.

    opened by CharlieJiangXXX 1
  • 开机卡在白苹果

    开机卡在白苹果

    蓝牙配置: screenshot 系统: screenshot2 config.plist

               <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>Lilu.kext</string>
                    <key>Comment</key>
                    <string>V1.5.9</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/Lilu</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>VirtualSMC.kext</string>
                    <key>Comment</key>
                    <string>V1.2.8</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/VirtualSMC</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>AirportItlwm.kext</string>
                    <key>Comment</key>
                    <string>V2.1.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/AirportItlwm</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>AppleIGB.kext</string>
                    <key>Comment</key>
                    <string>V5.3.5</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/AppleIGB</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>AppleIntelE1000e.kext</string>
                    <key>Comment</key>
                    <string>V3.3.6</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/AppleIntelE1000e</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>CpuTscSync.kext</string>
                    <key>Comment</key>
                    <string>V1.0.5</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/CpuTscSync</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>CtlnaAHCIPort.kext</string>
                    <key>Comment</key>
                    <string>V341.0.2</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/CtlnaAHCIPort</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>IntelMausi.kext</string>
                    <key>Comment</key>
                    <string>V1.0.7</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/IntelMausi</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>LucyRTL8125Ethernet.kext</string>
                    <key>Comment</key>
                    <string>V1.1.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/LucyRTL8125Ethernet</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>NoTouchID.kext</string>
                    <key>Comment</key>
                    <string>V1.0.4</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/NoTouchID</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>NVMeFix.kext</string>
                    <key>Comment</key>
                    <string>V1.0.9</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/NVMeFix</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>RealtekRTL8100.kext</string>
                    <key>Comment</key>
                    <string>V2.0.1</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/RealtekRTL8100</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>RealtekRTL8111.kext</string>
                    <key>Comment</key>
                    <string>V2.4.2</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/RealtekRTL8111</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>SATA-RAID-unsupported.kext</string>
                    <key>Comment</key>
                    <string>V0.9.2</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string></string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>SATA-unsupported.kext</string>
                    <key>Comment</key>
                    <string>V0.9.2</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string></string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>SMCProcessor.kext</string>
                    <key>Comment</key>
                    <string>V1.2.8</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/SMCProcessor</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>SMCSuperIO.kext</string>
                    <key>Comment</key>
                    <string>V1.2.8</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/SMCSuperIO</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>USBInjectAll.kext</string>
                    <key>Comment</key>
                    <string>V0.7.7</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/USBInjectAll</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>VoodooPS2Controller.kext</string>
                    <key>Comment</key>
                    <string>V2.2.7</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/VoodooPS2Controller</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>VoodooPS2Controller.kext/Contents/PlugIns/VoodooInput.kext</string>
                    <key>Comment</key>
                    <string>V1.1.3</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/VoodooInput</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Keyboard.kext</string>
                    <key>Comment</key>
                    <string>V2.2.7</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/VoodooPS2Keyboard</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Mouse.kext</string>
                    <key>Comment</key>
                    <string>V2.2.7</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/VoodooPS2Mouse</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Trackpad.kext</string>
                    <key>Comment</key>
                    <string>V2.2.7</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/VoodooPS2Trackpad</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>Any</string>
                    <key>BundlePath</key>
                    <string>WhateverGreen.kext</string>
                    <key>Comment</key>
                    <string>V1.5.6</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/WhateverGreen</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>AppleALC.kext</string>
                    <key>Comment</key>
                    <string>V1.6.8</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/AppleALC</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>HibernationFixup.kext</string>
                    <key>Comment</key>
                    <string>V1.4.5</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/HibernationFixup</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>OpenFirmwareManager.kext</string>
                    <key>Comment</key>
                    <string>V1.0.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/OpenFirmwareManager</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>IOBluetoothFixup.kext</string>
                    <key>Comment</key>
                    <string>V1.0.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/IOBluetoothFixup</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>IntelBluetoothFamily.kext</string>
                    <key>Comment</key>
                    <string>V1.0.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/IntelBluetoothFamily</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>IntelBluetoothFamily.kext/Contents/PlugIns/IntelBluetoothHostControllerUSBTransport.kext</string>
                    <key>Comment</key>
                    <string>V1.0.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/IntelBluetoothHostControllerUSBTransport</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>IntelBluetoothFamily.kext/Contents/PlugIns/IntelGen1BluetoothHostControllerUSBTransport.kext</string>
                    <key>Comment</key>
                    <string>V1.0.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/IntelGen1BluetoothHostControllerUSBTransport</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>IntelBluetoothFamily.kext/Contents/PlugIns/IntelGen2BluetoothHostControllerUSBTransport.kext</string>
                    <key>Comment</key>
                    <string>V1.0.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/IntelGen2BluetoothHostControllerUSBTransport</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
                <dict>
                    <key>Arch</key>
                    <string>x86_64</string>
                    <key>BundlePath</key>
                    <string>IntelBluetoothFamily.kext/Contents/PlugIns/IntelGen3BluetoothHostControllerUSBTransport.kext</string>
                    <key>Comment</key>
                    <string>V1.0.0</string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/IntelGen3BluetoothHostControllerUSBTransport</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
                </dict>
    
    opened by weirdseed 6
  • Support for 0x8087, 0x0a2b

    Support for 0x8087, 0x0a2b

    Hi, I was monitoring your amazing project for a while and yesterday evening I tried to test it on my two hackintoshes:

    Following your instruction (my Bluetooth card is a Gen1...) it is working fine on Intel NUC7i3BNH as you could see in the following image: NUC7i3BNH

    but it is not working on my Huawei Matebook X Pro: Matebook IntelBluetoothFamily

    I attach also my standard Bluetooth HCI on Matebook X Pro: Matebook Bluetooth HCI

    and also my working Bluetooth using IntelBluetoothFirmware project on Matebook X Pro: Matebook IntelBluetoothFirmware

    I would also to underline the following fact: Bluetooth cards on NUC7i3BNH and MatebookXPro are working fine with latest IntelBluetoothFirmware loading ibt-12* firmware

    I don't know whether what I reported could be useful for your development...

    (my USB mapping ports should be rock solid in both cases...)

    Edit:

    • on NUC7i3BNH I loaded the Catalina release for your project (I'm running Catalina 10.15.7 with latest security update)
    • on Matebook X Pro I loaded the Big Sur release for your project (I'm running Big Sur 11.6.2)
    good first issue question 
    opened by profzei 17
Releases(v1.0.0-alpha)
  • v1.0.0-alpha(Apr 10, 2022)

    This alpha version is for testing only. It is not yet ready for daily use. Use at your own risk.

    Change Log:

    • b0c7311a5eddff157a9acf3f9d1c8c9482b1293e Update README.md
    • 729428a09715b20176d3d83a52df6c8442b46407 Fix a bug.
    • 334366ed50e38a7cd31b70dadd8c6849bca2248f Add Intel Vendor Specific enums.
    • 82a01d6dfb934aa50d329f648c2a0e97c82f671c Update Info.plist.
    • 473393cae591c45c2ee9d2589e1d7b75e7749801 Make it compile for 10.13 & 14. Needs more investigation, however, as we don't know if the same problem will occur on them without that boolean in GetOpCodeAndEventCode.
    • 31507dcff7fc3722a56c3fd800e6beea22a19b72 Gen1 devices work now!!!
    • d2f707e2682589cd791587111443ac8291cc90cb Bug fix.
    • 79d7ef7b6bd9c686aafd166a70f27a99f2d1ac31 Add ParseIntelVendorSpecificCommand. Need to verify...
    • 8a94da078d2283c2b7a8b34079e3c0042969e0cd More fixes. Now all patch commands can be sent.
    • 8db2b07a5d820233cd17a59a19fd8d628ed2af17 Free queue at over.
    • c1eef8a263e429d4aa8462b99a057b24b6354a7d Initial fix for gen1.
    • b5b889c4be260afa5903c7de61dd5a8d7e61a5f0 Remove redundant flags & add more logs.
    • 91f105142af8fcfa3cc85355b835b6a6108a06f1 Fail only when timeout.
    • 0dfad642fa5983e9c59a4487d37e7b7e1494eecd No need to fail upon a failure in the firmware loading complete VSE.
    • 1ea9268e05f5049fbb59ab86cc5b5dd763b19dbb Cleanup logging style.
    • c4d5aef3ae04ca024e91c5795dad9d1a8e2952d4 Bug fixes.
    • 286d3cf865e574fbb6c4913bb51c0f50b54a826a Don't retry when command fails to send.
    • ae76b0fa79c316ae7b5d1334cbb3dcc250ecde54 Verify event only when patching.
    • d783e0fe6f97b1ace3f6371d8a4a51e0358a00b8 Redesign Gen 1 event verification mechanism.
    • fffa2d7298c586859b4afea0679892ed4371177e Don't reset quality report for now. The logic still needs investigation.
    • 65143847141bf0ede2c1a1c82be8f9d62f29a62f Minor optimization and bug fixes.
    • de8502f643e732166a7cb3b18f90bc73726847d2 Update README.md
    • 2890889a5774e758cea926238e42b2784ca57b1a Optimize CheckFirmwareVersion and retry download instead of fail.
    • 109cd19e423589653f50129dbccb9255a59dd4ea Optimize CheckFirmwareVersion.
    • c261e5c990422bd338bca20fc89326f62d600822 Sync the mDownloading and mBooting flags. Remove imageType enums.
    • d72dcfb1a1920e1488ea17d484f5577f675e8679 Minor optimizations.
    • e08cc0246b7c3a810f156362148805d1fe9260a4 Log when operational firmware is present. (for debugging purposes)
    • 06ce2a8c6f5c1348612ab8103c59d29017886c84 Replace magic with enums.
    • 546bb10024abf15a8c168d1abac38f9719f38b8b Add firmware variants enum.
    • d9338654e1e874a2ef87581405e08ed98256afde Remove recovered references... again... :( There are also header updates to fix the vtable for Catalina.
    • fbb4f88c133eea834d076f4561f32a281321fccb Remove recovered references.
    • 4236dd9892535012e65f7ea06ae2fa1b5ca85b04 Sign to run locally.
    • 4be93eb290eaddde58e5b581213c2f66c93a5b14 Fix a memory leak.
    • 2ff379af6b3f7f3237c0eae511ffea6c17099f27 Update README.md
    • b2bda0a89b98b2d95c8862e6c6f6dc8908fb7cb7 Collapse load order
    • d5313fcb2bb5f32ef9da3cff52476f00638fce66 Update README.md
    • 1b399461f575f040cf9735f4c58eeddfff9f7ad2 Write README.
    • dac5d1cc1838aee90b872c011417560f66d4ce94 Remove GetOpCodeAndEventCode.
    • fa85292c42b292e0aa5b954d1917e2f1bdf62a24 Add Firmwares to project.
    • c4c8629198a21939a190463c8d4e2e00d9691351 Remove recovered references.
    • 2ca5644c330d5d36bba8fba2088c1a63fa23a1d0 Add Scripts to project.
    • 4fe275c22b623f721a9406313aae6450986839f8 Remove UART transport - after some research, it reveals that this implementation is totally unnecessary as the second generation cards that it covers are already supported by IntelGen2BluetoothHostControllerUSBTransport. Instead of expanding the versatility of this driver, it would actually lead to racing with the Gen2 USB transport when they are being probed.
    • 6bc2c633d854d2a397f249408fd85179d4b6fe29 Change according to headers.
    • 2c7db23bb25dcc13c1f4e0ab7da220b95476dbe5 Add WaitForDeviceBoot.
    • e9c37677ef3fa7b3db2a71b76b37773a3989bf33 Cleanup logs.
    • 358648612385527d21c8f9b4ce060c11d99e7e1a Delete IntelBluetoothHostControllerUARTTransport.hpp
    • 661fd1a500a8d53cf51ed817d546badd6af93f62 Fix spacing. Print exception info when encountering hardware error.
    • 171f838d69aa8b76eb81f336fd5431677f8ac036 Decrement required version of OpenFirmwareMangaer.
    • 6b12767b0c590d5de5bd258a25cb851c537aa219 Update current development status.
    • b7675e8de4c6ff4e0b199d64ccb562fb6613b6ba Finally, PM works perfectly now!!!
    • a097a342a0b68bf1481d8c254df12171688022d3 Add SetTransportRadioPowerState.
    • 5a95d06d742a4f818c4c2c643b0f69c19095ef82 Wait for commandWakeup notification of mConfiguredPM in ConfigurePM.
    • 10ca097ebab002471791acf5df3503f91823526c Create project.pbxproj
    • 6a237b21703fff374aea544f502dcaa2c7054f1d Bluetooth could now be turned on/off in the system.
    • 44c365c43e7316fa08d6b98ea3d2ec96eb989e13 Remove license from artifacts.
    • 96e51fb67670d5389b7b1075927d00641ada3358 Enhance code for 10.14 and 10.13.
    • 807ae3e0754c24f995d9c10bf0e3617222306b06 Finally, it works now!!!
    • e9fbe0fa8b841cb63e0ddc465f7040f2b4128049 Add logs.
    • ab23f7c18630611e40d3e5297b8f1f1143b190a4 Correct structors used.
    • 8cee7e3694194d9c9ad9568634f8d3a412616cc6 Fixup includes.
    • 085e1c59863d995909ba6f981c2c401ace043092 Rename .hpp to .h.
    • 2c6f661f4dcae99b66e99e1652fa27af16413320 Fix kernel panic at power off.
    • 599103852375c66a21082d673098a2faef4f69ad Fix transports.
    • c5db6326e7dd90af8c6bd3a2da2f67a6ab0b0c62 Update header.
    • 1942eb2f4394295b70cd74723107bf0c61efb745 Upload properties in InitializeHostControllerVariables.
    • d8b20e60baf0425cbc45307801123ff327921177 Add OSBundleCompatibleVersion.
    • 8bea3317f1020ea1931ad6d1744771ef8575063f Correct personalities of transports.
    • 6c9a97c05f229d54a2d4feb1733f515da93d33fa Clean order of configurations.
    • 354ebcc25a7b1812e4c83f953ac50497599a72aa Project fixes
    • 6741ee8978927386e5ee35c85bf7cdb3ac213741 Add new schemes/configurations for Mojave and High Sierra.
    • 8f61703906f115f042299a8d8e48bca463abbe88 Compat.
    • 0d64d736367f0967aba77993468a7fc4c604b567 Add schemes.
    • 7501e3a6ce6963f62434e232a90cc0e60f371c2c Remove Recovered References.
    • 5cf45563feb04805811a73d3a970cd3795eaea40 Remove redundant type cast.
    • 9e25a0f02e62d92b07a747b7e108318dec92cb9c Fix logs.
    • d8e31d737040df79aa613976bdfc07637d19403d Remove redundant build phase.
    • 4221e963da344c231577ee83a9d3d9e21233a043 Adjust project structure
    • e6a321846aa937dbe2b6d184e139a3a300b6b961 Sync other Linux updates - not implemented, though.
    • e1f4d370ae18b11647b5704cbe5b27636aa00b78 Read offload use cases supported by controller.
    • 3cbb264687c542e4e86af1464bfb4fb20a2adc04 Replace debug feature routine with SetQualityReport; Change Catalina kext name suffix to 15.
    • 0bc9530932bb063b33a1a98e826b2ab247705582 Add SetQualityReport.
    • b9b1a875a89483f9f42032175d1752b724332158 Support link statistics telemetry events.
    • 57fadd78938b4777ee1ad8a4e8f326598f2ca8a4 Read boot address regardless of controller mode.
    • 132fdc35f609122966e0a6746abdf88d50651fe5 Fix boot address.
    • ead943d58f3389b366690b67754eeb01e8a17e7b Add ibt-firmware-license.
    • 8c431f79eda43ff7374d59c061d5f50b117a7b54 Fixup project.
    • 2a6fd0d5844d5cb7d8ff14c1a43c471240bc04f9 No longer necessary to include header in python script.
    • c82a3a0ed348d42984eb2b42935a4822096902fd Fix a warning when converting AbsoluteTime to UInt32.
    • fae587b1f7f7c3b4d65de5ef621cb1937746e7c1 Clean up get firmware logic.
    • b0d3f01ac14381711797becc1ad4d9915312592d Increment dependency version.
    • 6d666ea9c6f4d85ffcd6d9f2c98530cbda7112f3 Compat for 1.1.0 OpenFirmwareManager.
    • bef715a1b191c37483ba6155906cedb0c1479185 Kext can now compile!
    • 21f777e9df24f306991869b3c601f780da97c71a Adjust Xcode compatible version.
    • d0d6cb0a265ce3a868b9e558f52c627e896188ad Remove Lilu.
    • 002f4b19f45ad4eec108b8db1eb59d6886ce6a24 1. Remove IOBluetoothFixup as it is isolated as an independent project. 2. Start implementation of UART transport.
    • a764577ff861b88888f9154f18b32e13450d496e Fix spacing.
    • f66816b131116bc97a41c764b7bb93ae2c55a5a5 Fix up project.
    • 6bdd0d1852d85164ecd497a9fe011bafdc673876 Remove inclusion of IntelBluetoothHostController.
    • d0d2647a14ad7d5e2fc9d5ac717114510ffce0f5 Remove MacKernelSDK from Header Search Paths.
    • bd3b4a02bc59ec68a5de6ab66020c918f620dc39 Recommended settings.
    • fd7c4b0f2420df4f825387f33e4fc417a18f73ec Fixup project.
    • 369d84fbe74fe245ab1faa9e8065fc908351e793 Add targets for macOS 10.15.
    • 639cc87eaf5bbccd8c3392e630eb8e65db4176f9 Specify version of intel usb transport.
    • a0ec8d9877638ae705f2609b83ef79e51c411378 Increment version of dependencies in Info.plist.
    • da41023e2ddf118291259f4382e87851293f25a7 Start the interrupt pipe before reading the event data.
    • 3d5e7d6a60a6fe7847e7c4c788b2c957da7cc2a2 Fix bug in script to eliminate duplicate firmware variables.
    • 36db0a73b69536d5275bd5716ddc84b492348180 Fix output file settings in Firmware Generation phase.
    • eb3796e0346cfb337e6a381a70d27be33e33f843 All codes should be able to compile now.
    • 210a1e41e99b01ed1a0b8151436863d73a4c6376 Revert firmware list combination.
    • 89f4d35824adfbfd193210dc167ac4b91eb6c7cd Increment Lilu dependency version.
    • a4fd7e01ebee667ab738efbed2e24161e7bd03a8 Remove certain dependencies from IOBluetoothFixup - although their functions are called, they would be called only after they are up.
    • b262fbf420066639d4b92d38b22bfd513da947af Add transports as plugin-ins of IntelBluetoothFamily.
    • 18d3a5bc60b319ec728cde2f0d0918ae24d49f3f Fix spacing.
    • 6510b6aead511e1ee65014178d209dfafbf9491a Add the firmware list header to each transport generation instead of the generic one.
    • f881a777992ccccd04276e2e07d36a26c9a488e3 Add Info.plists that could not be added in the last commit.
    • 273739edadadc4fd0a85e80cdf1eac0177fca857 Completely readjust structure - host controller should not rely on the transport. Kext should be able to load after some fixes in the script.
    • ea88631a77c9fad866a2e7428daea54e39a72d9b Update README.md
    • ea60c907bc8974cb5641bc874f44b7c9c767e53f Remove private library from dependencies.
    • ce57570e7f3fcaae5e515664cf8363bc09d87631 Check the validity of events in PatchFirmware of Gen1 devices. However, further investigations is needed to make sure that this actually works.
    • eefdaf50e40eae4137112c1822d7873cd26925a9 Fix a bug that this code would never be executed.
    • 7b4ffa1bbbf59bb41fe355d886400626f544bfe8 Delete contents.xcworkspacedata
    • d28729e2c8c522ee686c8226b5c0b1747321703a Delete IDEWorkspaceChecks.plist
    • d44241a6f0d84a8189362f2facd1f26bdf994089 Delete xcschememanagement.plist
    • 7d274c2e7bef1e7f5bd91e27771bf036a7ad1f5d Add command complete event injection.
    • 28ca8c0955d0332307b72fa14783e6811d8ad16a Remove redundant functions.
    • e8c88c9558251f4b36266231e473f441f62256c8 Capitalize firmwareName property.
    • 1f14bc6896cfc41a4db50010d989c041412c710f Fix spacing in Info.plist.
    • f529007a6de9df8dcae1c090c45a5267d202aaba Upload certain properties to the IORegistry.
    • 06f1e0cb9354791ff28574e35d1ca5969508f89c Create LICENSE
    • 8ab57322a1212fd45d938169a8b7b2e2567b9c42 Create README.md
    • 81329202c62668ab697a2216b4aa934d3512dad0 Add usb transport as a PlugIn of host controller.
    • f210edf8083aef1c0b0fb4673d36c1e7509a620c Fix copyright.
    • ec05504fd2467b8cbd019cb7ef09f9aa9f7542cf Add IOBluetoothFixup.
    • 85570cc6312c3ea687d7fd332ab6d287154dbabf Add transport.
    • 0207cd7eb92d67788c50fe58180b7eb7ede27eb0 Add host controllers.
    • e1d92205d29cea4e701562922afe7b70e72e9264 Initial Commit
    Source code(tar.gz)
    Source code(zip)
    IntelBluetoothFamily-Big_Sur-v1.0.0-alpha-b0c7311.zip(8.36 MB)
    IntelBluetoothFamily-Catalina-v1.0.0-alpha-b0c7311.zip(8.36 MB)
    IntelBluetoothFamily-High_Sierra-v1.0.0-alpha-b0c7311.zip(8.36 MB)
    IntelBluetoothFamily-Mojave-v1.0.0-alpha-b0c7311.zip(8.36 MB)
The Intel 8080 ("eighty-eighty") is the second 8-bit microprocessor designed and manufactured by Intel.

i8080(Intel 8080) The Intel 8080 ("eighty-eighty") is the second 8-bit microprocessor designed and manufactured by Intel. It first appeared in April 1

VitorMob 14 May 19, 2022
Exploits the Wii U's bluetooth stack to gain IOSU kernel access via bluetooth.

BluuBomb Exploits the Wii U's bluetooth stack to gain IOSU kernel access via bluetooth. For a more detailed write-up see WRITEUP.md. Not to be confuse

null 92 Jun 24, 2022
Bluetooth Joystick : A wireless joystick with ESP-32 microcontroller and Dual Axis Joystick Module using the Bluetooth connectivity.

BluetoothJoystick Bluetooth Joystick : A wireless joystick with ESP-32 microcontroller and Dual Axis Joystick Module using the Bluetooth connectivity.

null 9 Feb 24, 2022
This is the laplight software for enabling flashlight support on a laptop/netbook. For the specification, see: https://github.com/LapLight/

By: Seanpm2001, Et; Al. Top README.md Read this article in a different language Sorted by: A-Z Sorting options unavailable ( af Afrikaans Afrikaans |

Sean P. Myrick V19.1.7.2 2 Dec 8, 2021
Linux Driver for USB WiFi Adapters that are based on the RTL8811AU and RTL8821AU Chipsets

Click for USB WiFi Adapter Information for Linux 8821au ( 8821au.ko ) ?? Linux Driver for USB WiFi Adapters that are based on the RTL8811AU and RTL882

Nick 89 Jun 24, 2022
Linux Driver for USB WiFi Adapters that are based on the RTL8812BU and RTL8822BU Chipsets

Click for USB WiFi Adapter Information for Linux 88x2bu ( 88x2bu.ko ) ?? Linux Driver for USB WiFi Adapters that are based on the RTL8812BU and RTL882

Nick 206 Jun 24, 2022
Linux Driver for USB WiFi Adapters that are based on the RTL8811CU, RTL8821CU and RTL8731AU Chipsets - v5.12.0

Click here for USB WiFi Adapter Information for Linux A FAQ is available at the end of this document. Problem reports go in Issues. Include the inform

Nick 62 Jun 23, 2022
Swift Framework for Apple Health Integration with Terra Enabling Developers LTD.

TerraSwift This library allows developers to connect to TERRA ENABLING DEVELOPERS LTD. through Swift (implemented with Swift5.0). This library uses He

null 7 Mar 18, 2022
Libnaomi - Toolchain and system library enabling hobby/homebrew software to be developed for the Sega Naomi platform.

Naomi Toolchain & Libraries A minimal Naomi homebrew environment, very loosely based off of KallistiOS toolchain work but bare metal and implemented f

Jennifer Taylor 17 Jun 19, 2022
Text - A spicy text library for C++ that has the explicit goal of enabling the entire ecosystem to share in proper forward progress towards a bright Unicode future.

ztd.text Because if text works well in two of the most popular systems programming languages, the entire world over can start to benefit properly. Thi

Shepherd's Oasis 195 Jun 8, 2022
CppUTest For QP/C++ implements a CppUTest port of the QP Framework, with supporting utilities, enabling easy host based unit testing of active objects.

CppUTest for the QP/C++ Real-Time Embedded Framework Build and Test status: Copyright Matthew Eshleman If this project inspires your team to select th

Cove Mountain Software 4 May 14, 2022
Macos-arm64-emulation - A guide for emulating macOS arm64e on an x86-based host.

macos-arm64-emulation Use the following guide to download and configure all of the necessary tools and files for emulating the macOS arm64e kernel. Th

Cylance 216 Jun 23, 2022
Plays native alert sound and shows native dialogs/alerts in your Flutter app.

flutter_platform_alert 2021 © Weizhong Yang a.k.a zonble. A simple plugin to present native alerts, including playing alert sounds and showing alert d

Weizhong Yang a.k.a zonble 52 Jun 18, 2022
Visual Studio native debugger extension to help debug native applications using Mono.

Unity Mixed Callstack UnityMixedCallstack is a Visual Studio 2017/2019 extension to help debug native applications embedding Mono, like Unity. If you

Unity Technologies 66 Jun 25, 2022
A custom macOS statusbar with shell plugin, interaction and graph support

SketchyBar This is a rewrite of the spacebar project, which itself is a rewrite of the statusbar code from yabai. Features: As many widgets as you lik

Felix Kratz 734 Jun 24, 2022
An experimental dynamic malware unpacker based on Intel Pin and PE-sieve

Pin'n'Sieve A dynamic malware unpacker based on Intel Pin and PE-sieve (deploys PE-sieve scan on specific triggers). Caution: during the process the m

hasherezade 50 Jun 10, 2022
Mobile platform for analysis of localization methods using the Intel RealSense T265 sensor

OptiBot Mobile platform for analysis of localization methods using the Intel RealSense T265 sensor About | Content | Implementation | License | Author

Kamil Goś 2 Feb 17, 2022
Protobuf for Proxyman app - Include Apple Silicon & Intel architecture

Protobuf for Proxyman macOS app Protobuf for Proxyman app - Include Apple Silicon & Intel architecture How to build Open the project on the latest Xco

Proxyman 6 Nov 29, 2021
A video input (V4L2) to NDI converter that works with Raspberry Pi (32-bit and 64-bit), and Intel/AMD CPUs

V4L2 to NDI V4L2 to NDI is an application that connects to attached V4L2 devices and encodes the video signal into NDI It uses the NDI library, allowi

Luke Plassman 37 Jun 21, 2022