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

MBP 在合盖,并关闭 Power Nap(电能小憩)的情况下,每隔 2 小时左右会唤醒一次外接显示器

  •  
  •   lbyo · 2021-11-05 10:53:23 +08:00 · 3753 次点击
    这是一个创建于 1121 天前的主题,其中的信息可能已经有所发展或是发生改变。

    具体配置及系统信息

    • 2019 款的 16 寸 Intel MacBook Pro
    • Monterey 正式版
    • DELL 2720QM (使用原装 TypeC 连接)
    • 妙控键盘(蓝牙)
    • 罗技 G903 (拓展坞接 MBP C 口,然后插上适配器)

    终端输出信息

    $ pmset -g log | grep DarkWake
    
    2021-11-04 00:43:29 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.ARPT/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-04 02:44:19 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-04 04:45:09 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 46 secs
    2021-11-04 06:46:00 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-04 08:36:59 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-04 10:37:49 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-04 12:38:38 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-04 14:39:27 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-04 16:40:16 +0800 DarkWake            	DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    

    发现 V 站以及其他论坛也有很多人提,没想到 Monterey 也没修好这个问题

    • With Power Nap off, what causes MacBook Pro 2018 battery drain with lid closed and wake-ups every 2 hours?

      • 这个帖子下,有人给出了解决方案,并解释了他认为的原因;简单总结一下就是:计算机从未进入待机模式,因为它被配置为在 3 小时后进入待机模式,但 TCPKeepAliveDuringSept 每 2 小时将其唤醒一次
      • 不过有一个地方还存在歧义:Confirming the TCPKeepAlive setting hasn't been fiddled with (the command was run while on battery), 他说:“the command was run while on battery”,即「该命令在使用电池时运行」,或许是我理解错了,毕竟我的显示器是 DELL 2720QM ,可以提供反向供电,那这种情况下(外接电源),我的 MBP 还算不算使用电池?
        • 如果不算,那我应该不受这个命令影响才对;但如果显示器进入待机,是不是就不会向 MBP 供电了?看起来不会,这也是为什么我的 MBP 电量一直保持在 100%;而很多帖子里他们的 MBP 都存在掉电问题
    • 外置屏幕频繁被唤醒又休眠。这是 m1 的通病?

      • 有一位 V 站老哥 @chrisia 回复了很多;讲的解决方案也跟楼上那位差不多,不过我还没试过楼上的解决方案,就已经看到 @chrisia 说「方法全部作废,macOS 11.3 beta2 自动唤醒更严重了,本人已经放弃研究,以后准备 hdmi 的扩展坞将就用。」、「可以看我的帖子,使用命令能够缓解这个问题,终极解决方案还是换显示器」(无奈
      • 这里汇总一下 @chrisia 老哥的发言: https://imgur.com/a/dkCzzDq
      • 引用一些重要的回复:站在苹果的角度那就是戴尔的问题,因为每当 Macbook 发生 DarkWake 事件,就会枚举所有外接设备,LG Ultrafine 在收到信号后会判断是否应该亮屏,显然 dell 没有。Macbook 的 DarkWake 事件无法避免,所有只能换显示器,还只能是特定的那几款显示器。只能期望苹果能提供关闭 DarkWake 的功能,我个人认为可能性很小。
    • macOS 这一年吭哧瘪肚的更新到了 11.6 ,然而外接显示器的问题还没解决

    • M1 Mac 睡眠后老是点亮 U2720Q

      • 34L @chrisia 也现身发言了:darkwake 的问题,darkwake 事件发生时,mac 会枚举所有外接设备,但不会点亮屏幕(所以叫 darkwake );还有一种解释是会避免枚举显示器接口(不知道这个判断机制是什么)。但是,dell 的显示器默认情况下,有任何外接设备接入时,会先无脑点亮屏幕等待信号到来,即使不接 mac ,接手机等设备也会导致这个问题。想解决这个问题,可以到显示器设置面板中关闭显示器睡眠,此时显示器会判断是否为外接显示器信号以决策是否点亮屏幕。...
    • M1 开盖秒唤醒的工作原理竟是系统偷偷运作?

      • @chrisia:其实可以用命令关掉的,会好很多
    • Intel MBP 2019 睡眠后频繁周期性唤醒显示器和外接硬盘

      • @chrisia:m1 的话是 Darkwake 的问题;不过我证明 Interl 也是 Darkwake 事件唤醒的显示器
    • 我为什么不推荐你买 M1 Macbook

      • 因为 @chrisia 在很多提到外接屏幕被唤醒的帖子下都说了「具体可以看看我的帖子」,我实在好奇就找到了这个;里面确实提到了相关的信息,有兴趣可以看一下
    33 条回复    2022-01-26 20:14:05 +08:00
    zhaidoudou123
        1
    zhaidoudou123  
       2021-11-05 13:06:41 +08:00
    插着电源就无所谓了,不插电源的时候我直接把显示器拔掉了
    lbyo
        2
    lbyo  
    OP
       2021-11-05 14:27:24 +08:00
    @zhaidoudou123 #1 不,它会半夜亮起,导致我接连做噩梦;总得睡觉前手动关闭显示器
    zhaidoudou123
        3
    zhaidoudou123  
       2021-11-05 14:54:03 +08:00   ❤️ 1
    @lbyo #2 把显示器在家这茬忘了,那确实挺难受的😂
    crysislinux
        4
    crysislinux  
       2021-11-05 15:05:46 +08:00 via Android
    你安装 Dell display manager 了没。这个可能导致屏幕自己点亮。我遇到了。
    lbyo
        5
    lbyo  
    OP
       2021-11-05 15:12:22 +08:00
    @crysislinux #4 我买来显示器没有额外安装过什么,通过 log 看应该就是 darkwake 事件导致的
    lanlanye
        6
    lanlanye  
       2021-11-05 15:36:19 +08:00
    但凡有间单独的卧室……哦,我也没有 TnT
    我之前用英特尔款的点亮都是因为各种应用的通知信息(比如 QQ ),这个问题是只有 M1 会出现还是都会啊?
    lbyo
        7
    lbyo  
    OP
       2021-11-05 15:42:31 +08:00
    @lanlanye #6 你可以仔细看一下我的标题和开头。。
    akinoniku
        8
    akinoniku  
       2021-11-05 15:48:03 +08:00
    之前也有这个问题,升级到 Monterey 就好了。两个 M1 都是这样。
    luhe
        9
    luhe  
       2021-11-05 15:59:04 +08:00 via iPhone
    我遇到的情况是蓝牙键盘唤醒的,换了妙控键盘就没出现了。或者直接把蓝牙唤醒关掉。
    volvo007
        10
    volvo007  
       2021-11-05 19:58:29 +08:00
    屏幕使用时间, 这个功能开了吗, 关掉看看会不会好一点
    putin541
        11
    putin541  
       2021-11-05 20:11:19 +08:00   ❤️ 1
    插上电源,勾选 Prevent your Mac from automatically sleeping when the display is off ,锁屏,esc ,睡觉~
    lbyo
        12
    lbyo  
    OP
       2021-11-05 21:04:07 +08:00
    @akinoniku #8 我的 Intel 还是不行

    @luhe #9 我是妙控键盘,今天出门前拔掉了拓展坞,发现依旧会每隔两小时唤醒一次

    @volvo007 #10 好的,我会挨个测试


    @putin541 #11 今晚睡觉前我会试试这个
    lbyo
        13
    lbyo  
    OP
       2021-11-06 08:06:41 +08:00
    @putin541 #11 thx ,这个真的有效;我现在唯一的顾虑(或者说矫情)可能就是它的提示了:会减少电池寿命、功率变大之类

    lbyo
        14
    lbyo  
    OP
       2021-11-06 08:31:20 +08:00
    测试了一下,确认《 With Power Nap off, what causes MacBook Pro 2018 battery drain with lid closed and wake-ups every 2 hours?》这个帖子下的方案只针对不接电源适配器的情况生效(谁会长期不接电源适配器而去连接外置显示器呢,更何况我的显示器会反向充电。
    lbyo
        15
    lbyo  
    OP
       2021-11-06 21:18:17 +08:00
    @volvo007 #10 下午出门前测试了一下,这个不行
    volvo007
        16
    volvo007  
       2021-11-07 07:49:49 +08:00 via iPhone
    @lbyo 我的 mbp 是 2020 intel 款,从 13 年的 mbp 迁移数据过来,除了睡眠中会唤醒,还有就是雷电显卡插拔会六国

    一气之下重做系统(个人数据保留配置和程序全删)然后才解决的睡眠问题……
    lbyo
        17
    lbyo  
    OP
       2021-11-07 13:32:17 +08:00
    @volvo007 #16 你有用 `pmset -g log | grep DarkWake` 命令看过 log 吗
    volvo007
        18
    volvo007  
       2021-11-07 16:55:50 +08:00
    @lbyo 刚跑了一下
    2021-11-06 21:36:11 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to EC.RTC/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-06 22:34:37 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to TDM0 TDM1 XHC1/ Using AC (Charge:100%) 5 secs
    2021-11-06 22:34:42 +0800 Wake DarkWake to FullWake from Deep Idle [CDNVA] : due to UserActivity Assertion Using AC (Charge:100%) 5968 secs
    2021-11-07 00:14:19 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to TDM0 TDM1 XHC1/ Using AC (Charge:100%) 45 secs
    2021-11-07 00:19:52 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to EC.ARPT/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-07 00:25:25 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to EC.ARPT/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-07 00:30:58 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to EC.ARPT/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-07 00:36:31 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to EC.ARPT/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-07 00:42:04 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to EC.ARPT/Maintenance Using AC (Charge:100%) 45 secs
    2021-11-07 00:47:38 +0800 DarkWake DarkWake from Deep Idle [CDN] : due to EC.ARPT/Maintenance Using AC (Charge:100%) 45 secs


    6 、7 两日均有类似记录, 再早只有零星记录, 而且都是 2 秒以下由电池引起的

    但是这个横跨 6 、7 两日的记录, 我这边是因为昨晚 Xcode 更新没有关机, 机器运行一阵之后应该是黑屏而不是休眠状态

    所以也只能当作偶发情况, 和你的情况还是不大对的上的
    lbyo
        19
    lbyo  
    OP
       2021-11-07 17:09:03 +08:00
    @volvo007 #18 看起来确实是没有我这个问题,那你有打开「当显示器关闭时,防止 Mac 自动进入睡眠」这个功能吗
    volvo007
        20
    volvo007  
       2021-11-07 22:48:09 +08:00
    @lbyo 这个功能我开了, 因为不喜欢接电的时候它自己休眠
    chrisia
        21
    chrisia  
       2021-11-07 23:36:58 +08:00   ❤️ 2
    hi ,谢谢你提到我并关注这个问题,我应该是这个地球上对这个问题了解最深入的人了 :( ,外网论坛上也只有我给我出了最佳解决方案。我之前提到过四个步骤「见 https://www.v2ex.com/t/739371 」:1.关闭 powernap 2.关闭 tcpkeepalive 3.关闭优化电池充电 4.关闭网络唤醒 5.重启。在我 m1 上,执行这几个操作后,可以避免所有的 maintenance 事件,这些事件会定时触发 darkwake 以导致自动唤醒。目前我没有发现其他功能会触发 maintenance 事件。还有个方案就是关闭显示器的睡眠,会增加 5w 功耗。
    这个问题我已经向苹果反馈了无数次了却无济于事,麻了。我不得不说 darkwake 真的很折磨人,它会导致一大堆问题,而且有些问题你根本察觉不到,但它却发生了。
    还有一点我很惊讶,提到这个问题的人并不多,我想,要彻底解决这个问题只能等我加入苹果之后吧 :)
    lbyo
        22
    lbyo  
    OP
       2021-11-07 23:59:42 +08:00
    @volvo007 #20 那就对了,开启这个功能的话就不会出现这个问题,前面几楼我试过,具体原因不明

    @chrisia #21
    > 1.关闭 powernap 2.关闭 tcpkeepalive 3.关闭优化电池充电 4.关闭网络唤醒 5.重启。在我 m1 上,执行这几个操作后,可以避免所有的 maintenance 事件,这些事件会定时触发 darkwake 以导致自动唤醒。
    我今天睡觉前会照做,观察一下

    目前 @putin541 提到的勾选 Prevent your Mac from automatically sleeping when the display is off (当显示器关闭时,防止 Mac 自动进入睡眠) 确实有效。

    不过我已经试过,在连接电源适配器的情况下,命令行执行 `sudo pmset -b tcpkeepalive 0` 后,`pmset -g` 看到的输出依旧是 `tcpkeepalive 1`,只有拔掉电源适配器,使用笔记本自身电池供电,才能看到 `tcpkeepalive 0`,感觉这个不是主要问题
    lbyo
        23
    lbyo  
    OP
       2021-11-08 08:40:28 +08:00
    > 1.关闭 powernap 2.关闭 tcpkeepalive 3.关闭优化电池充电 4.关闭网络唤醒 5.重启。在我 m1 上,执行这几个操作后,可以避免所有的 maintenance 事件,这些事件会定时触发 darkwake 以导致自动唤醒。


    试了,没有用;上面也说了,因为反向充电,所以 tcpkeepalive 是关不掉的(只有使用自身供电才生效),其他几个设置我也都关掉了
    chrisia
        24
    chrisia  
       2021-11-08 19:55:39 +08:00   ❤️ 1
    @lbyo 你应该执行 sudo pmset -a tcpkeepalive 0 和 sudo pmset -a powernap 0 ,使用 -a 以同时适用于电池和电源。执行 pmset -g custom 可以查看所有场景下的电源设定
    lbyo
        25
    lbyo  
    OP
       2021-11-08 21:12:17 +08:00
    @chrisia #24

    多谢,已经照做了,今晚继续观察
    lbyo
        26
    lbyo  
    OP
       2021-11-09 18:47:26 +08:00
    @chrisia #24
    多谢,亲测有效,除了不知道为什么早上 8 点半会被触发一次外,我不在家的一整个白天都没有再触发过了,我会再试试开启「优化电池充电 」看看影响
    sqlsec
        27
    sqlsec  
       2021-11-10 19:31:37 +08:00
    @lbyo 层主 测试怎么样了呀 233333
    lbyo
        28
    lbyo  
    OP
       2021-11-10 21:21:02 +08:00
    @sqlsec #27
    你是指什么测试?
    X-Force
        29
    X-Force  
       2021-12-02 20:58:50 +08:00
    @lbyo
    @chrisia
    在 M1 Pro 上,做了这些全部操作:1.关闭 powernap 2.关闭 tcpkeepalive 3.关闭优化电池充电 4.关闭网络唤醒 5.重启。
    睡眠过程中显示器依然被点亮! Log 显示:
    due to SMC.OutboxNotEmpty smc.70070000 wifibt bluetooth

    我开始怀疑这唤醒是不是也跟蓝牙鼠标、键盘有关系了……
    chrisia
        30
    chrisia  
       2021-12-03 18:48:42 +08:00
    @X-Force 如果你的周围有苹果设备并且支持蓝牙,比如 airpods ,也会导致这种情况。另外,M1 Pro 是否有其他事件触发 Darkwake ,这个我不太清楚。就 M1 而言的话,所有的触发事件都被我找到了,就我说的那几个。如果你的显示器能关闭睡眠,那可以考虑关闭一下试试。也可以买扩展坞尝试,再不行只能换显示器。
    LoneFireBlossom
        31
    LoneFireBlossom  
       2022-01-25 07:21:31 +08:00
    只是会触发外接显示器吗,我是 MBP 16 intel ,没外接显示器。晚上电脑的屏幕会自己亮……查了一下就是这个。
    2022-01-25 02:35:00 +0800 DarkWake DarkWake from Deep Idle [CDNP] : due to EC.ARPT/Maintenance Using AC (Charge:86%) 2080 secs
    2022-01-25 03:09:40 +0800 Wake DarkWake to FullWake from Deep Idle [CDNVA] : due to HID Activity Using AC (Charge:80%) 397 secs
    2022-01-25 03:16:25 +0800 DarkWake DarkWake from Deep Idle [CDNP] : due to EC.ARPT/Maintenance Using AC (Charge:80%) 45 secs
    2022-01-25 03:17:20 +0800 DarkWake DarkWake from Deep Idle [CDNP] : due to EC.ARPT/Maintenance Using AC (Charge:80%) 45 secs
    2022-01-25 03:46:22 +0800 DarkWake DarkWake from Deep Idle [CDNPB] : due to EC.RTC/Maintenance Using AC (Charge:80%) 300 secs
    2022-01-25 04:11:15 +0800 DarkWake DarkWake from Deep Idle [CDNP] : due to EC.ARPT/Maintenance Using AC (Charge:80%) 45 secs
    2022-01-25 04:41:11 +0800 DarkWake DarkWake from Deep Idle [CDNPB] : due to EC.RTC/Maintenance Using AC (Charge:80%) 300 secs
    2022-01-25 04:47:50 +0800 DarkWake DarkWake from Deep Idle [CDNP] : due to EC.ARPT/Maintenance Using AC (Charge:80%) 45 secs

    我还是盒盖好了……
    lbyo
        32
    lbyo  
    OP
       2022-01-25 09:24:40 +08:00
    @LoneFireBlossom #31 笔记本盒盖也没关系吧,我笔记本基本都是盒盖的。。。
    LoneFireBlossom
        33
    LoneFireBlossom  
       2022-01-26 20:14:05 +08:00
    @lbyo 是的,就是嫌盒盖 /掀盖比按电源键麻烦点儿
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2853 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 00:16 · PVG 08:16 · LAX 16:16 · JFK 19:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.