tb3-enabler

Enable Thunderbolt 3 for unsupported peripherals on macOS

Github星跟蹤圖

TB3 enabler

Ryan Govostes came up with a better solution. Thunderbolt3Unblocker uses a separate kext and override IOThunderboltFamily in runtime. That approach is better because you don't need to manually re-apply the binary patch everytime when there is a macOS update.

For unknown reasons, Apple decided to block the support for some categories of Thunderbolt 3 peripherals under macOS and when you connect those Thunderbolt 3 peripheral, you simply get an "Unsupported" message under Thunderbolt Device Tree. After digging around, it turns out the block is implemented in software level and it is possible to bypass the block by patching the related kext. This patch modifies IOThunderboltFamily and allows "Unsupported" Thunderbolt 3 peripherals to work under macOS Sierra.

Warning

I cannot be sure whether blocking the Thunderbolt 3 peripherals is purely a business decision or actually trying to protect MacBook Pro defected Thunderbolt 3 peripherals. However, given those peripherals work fine under Windows via Boot Camp, it doesn't look like the block exists for protection.

I took most steps I could to ensure kitten safety, but can make no warranty. In any case you're on your own. This is ultimately a sensitive hack and you take full responsibility by running this script.

I have tested the patch on MacBook Pro 13,3 with macOS 10.12.1 (16B2659) and there are reports of this working with MacBook Pro 13,1.

Usage

  1. Disable System Integrity Protection

  2. Run the script from Terminal

    tb3-enabler.py apply
    
  3. Reboot

Available arguments

Run with no arguments to see a quick reminder. Here's something more extensive about what's actually done:

apply       applies the patch, after making sure we know the
            file we're applying to, backing it up only if it's
            the original one, and subsequently checking if the
            patch applied correctly.
restore     restores from the previously made backup.
status      shows current situation, including status of the file
            and whether a backup is available.

In any case of changing success, the kext cache gets cleared.

Thanks

主要指標

概覽
名稱與所有者KhaosT/tb3-enabler
主編程語言Python
編程語言Python (語言數: 1)
平台
許可證Other
所有者活动
創建於2016-11-18 22:40:29
推送於2019-05-20 15:38:41
最后一次提交2019-05-20 23:38:40
發布數0
用户参与
星數482
關注者數69
派生數74
提交數85
已啟用問題?
問題數0
打開的問題數0
拉請求數20
打開的拉請求數1
關閉的拉請求數4
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?