V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GeekHub
jdjingdian
V2EX  ›  MacBook Pro

血(钱)的教训,附预防方法

  •  3
     
  •   jdjingdian · 81 天前 · 5591 次点击
    这是一个创建于 81 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Macbook Pro 16 内置蓝牙模块损坏分析

    前言:前段时间我在网上看到了利用蓝牙的方式模拟 joycon 来实现低成本刷 amiibo 的教程,就决定自己试一试,本来想直接通过 parallel desktop 提供的共享蓝牙来做实验,但似乎共享蓝牙的方式并不能成功模拟 joycon,虽然可以通过物理机直接安装 Linux,但总觉得不够方便,所以我决定购买一个 usb 蓝牙适配器给 linux 虚拟机用,而这也是这次惨案的导火索。


    我买的蓝牙适配器是 csa8510 芯片的,当我成功实现模拟 amiibo 的目的后,我把外接的 usb 蓝牙适配器从雷电 3 扩展坞上拔出来,这时我突然发现我的京造 k2 键盘没法通过蓝牙连接到 Mac 了,起初我还没当回事,直到我发现,handoff 、airdrop 等功能全部失灵的时候,我意识到,macbook 本机的蓝牙出故障了。

    起初我以为不过是软件问题, 就通过重置 smc 、nvram 等方式尝试重置我的 mac,但是仍然没有用,心里想着重装解决 99%的问题,但我又不想重装 macOS,我就引导了一个外置的 Ubuntu 启动,但是结果并不乐观,虽然 Ubuntu 里面也可以识别到蓝牙适配器,但是根本搜不到任何蓝牙设备,直到这时我才明白,可能是硬件底层出问题了。

    我立刻预约了天才吧,运气不错,最早可以约第二天,在此后我继续在谷歌上搜索相关问题,没想到一搜才发现,这个问题似乎很普遍,在 apple 官方的论坛下有 16 页的讨论,而且引发事故的原因都几乎一致,基本都是无意接了 usb 蓝牙适配器之后内置的蓝牙模块就不能用了,最早可以追溯到 19 年底,但可能这个问题至今没有得到官方的重视,所以一直没有发布相关的固件修复。( https://discussions.apple.com/thread/250944058 )后来也有好事的老哥在 2020 款 13 寸 Macbook Pro 上尝试,发现也复现了相同的问题,所以目前至少这个故障影响了 Macbook Pro 16 和 2020 款 Macbook Pro 13 寸机型,甚至可能影响范围更广泛。

    那么这个问题产生的原因是什么呢?经过调查,我们发现,当 MacBook Pro 接入了外置的蓝牙适配器之后,系统会将外置的蓝牙适配器设置为默认蓝牙通讯设备,但是当你拔掉外置的蓝牙适配器之后,系统没法将默认设备设置回内置的模块,即使重启也没有效果。现在似乎还没有能稳定恢复正常使用的方法,如果真的碰到这种情况,就只能去天才吧换主板了,现在 mac 的集成度那么高,如果不在保修期,换一次真的是要-8000,所以一定要想办法去预防,刚刚也提到系统会将外置的蓝牙适配器设为默认设备,所以我们可以通过这个角度来预防内置模块暴死,在内置的命令行输入以下命令可以起到预防作用:

    sudo nvram bluetoothHostControllerSwitchBehavior=never

    这句话的作用是禁止系统自动切换默认蓝牙设备。

    img

    第二天我到了天才吧,天才跟我说她也没遇到过这种情况,好在我的电脑还有保修,所以没有花钱,就是得等 1 周才能取,因为主板没有现成的更换零件。但说实话天才的一句话让我很难受,天才跟我说这属于 使用不当 ,我当时简直就是黑人问号,本来这应该是苹果新电脑的固件问题,毕竟旧的 mac 、windows 笔记本之类的都不会有这种情况,结果在新 mac 上出了这种问题怪用户使用不当,虽然我还是很喜欢苹果,但是不能否认的是,在某些方面,苹果还是需要改进呀,尤其是承担自己应有的责任这一块。

    InkedIMG_3569_20200707-194521__LI.jpg

    40 条回复    2020-08-04 15:02:14 +08:00
    mitong3269
        1
    mitong3269   81 天前 via iPhone
    不应该算使用不当啊
    jdjingdian
        2
    jdjingdian   81 天前
    @mitong3269 对呀,其实我买这个蓝牙适配器是想给虚拟机用的,并没有想在 mac 系统下使用,结果说我使用不当,就心里很不舒服,当然这也是苹果一贯作风了吧……
    Xusually
        3
    Xusually   81 天前   ❤️ 2
    这种问题去天才吧的话,应该直接描述为蓝牙不能使用。。。。。你说这么一堆,本来没问题也说你使用有问题了,因为毕竟插拔的硬件不一定都是“Apple Certified”
    手动狗头.gif
    jdjingdian
        4
    jdjingdian   81 天前
    @Xusually 哎,我是想描述详细一点,这样报上去的话也许能让苹果从根源解决这个问题
    geniussoft
        5
    geniussoft   81 天前
    @Xusually 一般骗保的时候确实可以这么说。但是,这个真的使用得很恰当了。
    ryd994
        6
    ryd994   81 天前   ❤️ 13
    带上你的 usb 蓝牙,去苹果店,把他们电脑全部插一遍。
    他敢抓你,你就在店里给他广而告之。
    (当然,还有一台 Windows 本以证明你的 usb 蓝牙本身工作正常)
    littlewing
        7
    littlewing   81 天前 via iPhone
    我的理解是硬件并没有坏,只是默认配置回不来了,既然如此,我很好奇那这个配置是保存在哪里的?为什么重装系统,重置 smc nvram 都不行?苹果自己也没有解决办法?
    jdjingdian
        8
    jdjingdian   81 天前 via iPhone
    @ryd994 哈哈,原本我也想这样,但还是做人留一线日后好相见吧
    jdjingdian
        9
    jdjingdian   81 天前 via iPhone
    @littlewing 对,我也认为硬件其实没有坏,只是“点不着火”了,这个问题应该是出在系统底层的固件逻辑里的,所以用户重置 smc nvram 都不起作用。苹果肯定有解决办法,无非是个固件更新的事情,但是可能苹果还没重视这个问题所以一直没修复
    tsui
        10
    tsui   81 天前
    reddit 上似乎有类似的讨论,这也太扯淡了,幸好我好多年没用过蓝牙 dongle 了
    https://www.reddit.com/r/mac/comments/hlfxpe/psa_for_anyone_buying_a_new_16_macbook/
    wtks1
        11
    wtks1   81 天前 via Android
    连重装系统都不行?这个配置难道是直接写进主板的?
    l33ch
        12
    l33ch   81 天前 via iPhone
    罗技优联接收器受影响吗? iMac 呢?
    jdjingdian
        13
    jdjingdian   81 天前
    @l33ch 罗技优联是 2.4G 适配器,不会造成问题,iMac 目前没有 T2 芯片所以暂时也不受影响
    jdjingdian
        14
    jdjingdian   81 天前
    @wtks1 应该是 t2 固件底层逻辑的错误,所以用户毫无办法
    NeoChen
        15
    NeoChen   81 天前 via iPhone
    额,是不是只要外接过 usb 蓝牙适配器后,就都会出现这种问题?
    l33ch
        16
    l33ch   80 天前 via iPhone
    @jdjingdian
    多谢回复。

    我很好奇,mbp 都是 typec 的小口,遇到问题的蓝牙适配器是 c2a 转接的吗?还是直接 c 口的?
    RichardSun
        17
    RichardSun   80 天前
    感谢楼主分享,这个坑太大了日常根本不会想到还能有这种问题。
    RichardSun
        18
    RichardSun   80 天前
    @l33ch 罗技的优联还没 C 口的,所以都要用个转换头
    jdjingdian
        19
    jdjingdian   80 天前
    @NeoChen 不一定,如果是不兼容 mac 的适配器芯片的话,插上去应该不会有问题,出问题的是兼容 mac 系统的芯片,我买的是 csr8510 芯片的蓝牙适配器
    jdjingdian
        20
    jdjingdian   80 天前
    @l33ch 蓝牙适配器是 a 口的,我是插在我的雷电 3 扩展坞上
    zhouweiluan
        21
    zhouweiluan   80 天前
    这问题真可怕,以后在公司看谁不顺眼拿个 usb 蓝牙适配器插他 MacBook 一下就溜,深藏功与名。
    jdjingdian
        22
    jdjingdian   80 天前
    @zhouweiluan 哈哈哈哈,得要特定机型才行,要是公司统一配的 2020 款 13 寸或 16 寸那才行
    flavoury
        23
    flavoury   80 天前
    感谢!
    ysc3839
        24
    ysc3839   80 天前 via Android
    @ryd994 应该是没用的。没记错的话展示机的 USB 全都禁用了。
    ysc3839
        25
    ysc3839   80 天前 via Android
    @littlewing @jdjingdian
    这种估计是固件 bug,同时又无法重置错误的配置。
    我在用的一个 B75 主板固件就有 bug,写入了错误的 EFI Variable 数据之后,开机屏幕能亮但是马上会重启,取下 CMOS 电池也无法恢复,最终只能用编程器重刷解决。
    locoz
        26
    locoz   80 天前
    绝了...居然能有这种 BUG 还好之前有一次把家里的 USB HUB 连到电脑上的时候已经把蓝牙模块拔掉了,要不然估计蓝牙挂了还一脸懵逼不知道咋回事。
    Johnoo
        27
    Johnoo   80 天前
    直接跟天才小哥说,机器蓝牙坏了,你说那么多,人家肯定就说认为损坏了。
    xuhaoyangx
        28
    xuhaoyangx   80 天前   ❤️ 1
    @ysc3839 #23 展示机没有禁用 usb 。
    KIMMG
        29
    KIMMG   80 天前
    我估计重装 macOS 能解决问题
    jdjingdian
        30
    jdjingdian   80 天前
    @KIMMG 要是能重装解决我就没必要发这个文章出来了
    GhostLin
        31
    GhostLin   79 天前   ❤️ 2
    @jdjingdian 以我的经验,过去天才吧就是要装傻。一般都是换新。你要显得你比他还懂,基本就准备抬杠了。
    pjntt
        32
    pjntt   79 天前   ❤️ 1
    都拿去天才吧了,就让天才解决就好了,我们这些平凡人不要说太多,误导天才的判断。
    “怎么弄的?不知道呀,用着好好就成这样了,,,,
    干过什么了?没干什么呀,就跟平常用那样...插电,开机,打字,,,
    接过什么外设?,,,呃,鼠标算不算?”
    lslqtz
        33
    lslqtz   79 天前
    黑苹果表示内置和外置都可以驱动,但是内置驱动时似乎不会自动切换蓝牙适配器🤔
    jdjingdian
        34
    jdjingdian   78 天前 via iPhone
    @lslqtz 哈哈,旧款 mac 也不会,看起来是跟 t2 芯片有关系才导致的
    LinYa
        35
    LinYa   59 天前
    老哥,你更换了主板以后开启 禁止系统自动切换默认蓝牙设备,这个有没有效果,有没有试过重新插入 usb 蓝牙试试?我这周更换回主板想试试。。。还是说带上 usb 蓝牙去天才吧?
    jdjingdian
        36
    jdjingdian   59 天前
    @LinYa 上面写了,用 sudo nvram bluetoothHostControllerSwitchBehavior=never 来禁止蓝牙设备自动切换,如果你的设备在保修期想换主板,那你可以插上蓝牙适配器试试,但我建议多一事不如少一事
    LinYa
        37
    LinYa   59 天前
    @jdjingdian 好的谢谢
    yiheng233
        38
    yiheng233   55 天前
    昨天新买的 MBP13 寸出现了一样的问题,但没有连接过蓝牙适配器
    试过随航等功能最开始可以用
    唯一连接的外接设备是微软的 2.4G 鼠标
    不是很懂苹果
    jdjingdian
        39
    jdjingdian   54 天前
    @yiheng233 2.4G 鼠标应该不在蓝牙的范畴内才对啊,去直营店问问吧,看看能不能退货或者换新
    yiheng233
        40
    yiheng233   54 天前
    @jdjingdian 我也不清楚是如何触发的,现在已经在走官网换新的流程
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4394 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:38 · PVG 09:38 · LAX 18:38 · JFK 21:38
    ♥ Do have faith in what you're doing.