Mac OS 睡眠喚醒之後,外接顯示器再也無法點亮,只能重啟,如何解決?

設備分別是 MBA 和 ASUS 的 27寸 外接顯示器,每次蓋下 MBA 的蓋子再關掉顯示器的電源之後,如果再次喚醒 MBA 以及打開顯示器的電源,顯示器就會毫無反應,一直顯示no sign,無論如何插拔雷電口,開關顯示器的電源都毫無反應。

唯一的辦法是重啟,如果不關閉顯示器的電源,睡眠和喚醒均無問題,但只要一關電源,再打開,顯示器就再也接收不到信號, Mavericks 和 Yosemite 均沒有解決。

一些討論 Monitor not waking up after 10.9.3 update


遇到了一個類似的問題,同為外接顯示器無信號,但並非發生於Mac OS睡眠喚醒之後(估計跟睡眠,關蓋等動作並無關係)。正巧我最近看了些macbook的pmset (power management settings,電源管理設定)方面的文檔,在此向大家報告這一問題,並提供一個排查解決外接顯示器故障的思路。

適用機型

帶獨立顯卡(dedicated)的MacBook

問題描述

上月新購得Macbook Pro 2019 16「,通過轉接塢(Type C轉HDMI)連接外接顯示器,發現外接顯示器無法檢測到輸入信號,且「系統偏好設置(System Preferences)」 &> "顯示(Displays)「中無法檢出外接顯示器。

嘗試了@Alex的方法,

MBP開蓋後若發現外置顯示器無信號,別慌,此時滑鼠左上角蘋果圖標菜單里點睡眠,之後保持冷靜,務必等鍵盤燈全部熄滅後,再敲鍵盤或滑鼠喚醒,此時你會驚奇的發現外置顯示器亮了!

無效。

未重置SMC,但目測對部分情況有效(原理是重置SMC的操作會重置一大堆系統參數,其中就包括pmset下的「gpuswitch」,而下文解釋了為何「gpuswitch」設置不當可導致外接顯示器無法使用)。

問題原因

基於降低電源功耗的初衷,我在terminal(終端)[1]里通過pmset將「gpuswitch」這一參數(用於設置顯卡切換)手動設置為0,也就是強制使用更低功耗低integrated (集成顯卡)[2]。鍵入命令如下:

sudo pmset -a gpuswitch 0

順帶提一下,pmset可用於手動設定各種電源相關選項(例如休眠模式[3][4])。說明文檔見維基詞條:pmset[5],或者直接在terminal鍵入

man pmset

言歸正傳,將「gpuswitch」設置為「強制使用集顯」之後,外接顯示器無法使用。原因很簡單,對於有獨顯的Macbook,蘋果硬性規定外接顯示器只能使用獨顯[6]

解決途徑

一步搞定。在terminal中鍵入以下命令 (選項-a可一併對「外接電源」和「電池模式」兩種模式進行設置,也可以替換為-b「外接電源模式」,或-c「電池模式」),將參數「gpuswitch」的值已切換回系統默認的2(auto switch)

sudo pmset -a gpuswitch 2

為了確認命令已生效,可鍵入

pmset -g

確認「gpuswitch」的值已切換回2,則問題解決,外接顯示器可正常使用(無需拔線重新插入,也無需重啟外接顯示器)。

&-->

總結

至此,我們可以得出以下結論:

帶獨立顯卡的macbook如遇外接顯示器檢測不到輸入信號,有可能是「gpuswitch」設置為「強制使用集成顯卡」所導致。具體原因是蘋果要求外接顯示器必須由獨顯驅動,在系統默認的自動切換狀態(auto switch)下,接入外接顯示器的同時系統會自動將顯卡切換至獨顯,從而能夠正常使用。

關於造成這一問題的根本原因:

使用市面上各類顯卡切換軟體,或者某些蜜汁操作都有可能導致gpuswitch被設置為0。這裡直接將「gpuswitch」切換回系統默認的2(auto switch),即可解決問題。

眾所周知,解決mac故障有三寶:重置SMC[7], NVRAM或PRAM[8] 。蘋果客服一般會推薦你做這三件套,重置完之後也的確能夠解決大部分問題。缺點是你仍然無法得知系統故障的確切原因,以及重置可能會還原某些個性化的系統設置,需要費時再去挨個設置一遍。

因此,如遇外接顯示器無法顯示,在執行重啟或重置三件套之前,大家不妨嘗試鍵入命令

pmset -g

首先確認「gpuswitch」是否被設置為0(強制使用集顯)。若是,則按上述途徑可簡單解決問題;若「gpuswitch」的值為1或2,表明並非顯卡切換設置上的問題,可再行嘗試其他解決途徑:

通常而言,無非就是重啟+重置三件套(重置SMC, NVRAM或PRAM)


剛剛發現apple社區上有人遇到相同問題[9]

如果使用「終端」應用程序以命令行的方式強制使用集顯(sudo pmset -a GPUSwitch 0) ,在外接顯示器的時候會毫無反應。如果再次輸入(sudo pmset -a GPUSwitch 2)切換為自動模式外接顯示器可以正常工作。

參考

  1. ^在 Mac 上打開或退出「終端」 https://support.apple.com/zh-cn/guide/terminal/apd5265185d-f365-44cb-8b09-71a064a42125/mac
  2. ^MacBook Pro 關閉獨立顯卡 開啟集成顯卡 https://blog.csdn.net/it_male/article/details/83856734
  3. ^Mac Sleep Settings for Performance and Battery Life https://www.lifewire.com/change-mac-sleep-settings-2260804
  4. ^MAC的睡眠模式介紹 https://www.cnblogs.com/motoyang/p/6075609.html
  5. ^pmset - Wikipedia https://en.wikipedia.org/wiki/Pmset
  6. ^V2EX: 才發現有高配 MBP 外接顯示器的時候是使用獨立顯卡的 https://www.v2ex.com/t/160203
  7. ^如何重置 Mac 的 SMC https://support.apple.com/zh-cn/HT201295
  8. ^重置 Mac 上的 NVRAM 或 PRAM https://support.apple.com/zh-cn/HT204063
  9. ^外接顯示器為什麼一定要調用獨顯 https://discussionschinese.apple.com/thread/250751051


我的解決辦法如下,一步即可:

MBP開蓋後若發現外置顯示器無信號,別慌,此時滑鼠左上角蘋果圖標菜單里點睡眠,之後保持冷靜,務必等鍵盤燈全部熄滅後,再敲鍵盤或滑鼠喚醒,此時你會驚奇的發現外置顯示器亮了!

PS:我是Type-C轉HDMI。


我也遇到類似的問題,解決的辦法是用 gfxCardStatus 切換一下顯卡模式,獨立顯卡和自動顯卡切換一下,不過前提是我是15寸 Mac


以上關於mac 的方法都試過了,不行,不過最終解決了:不是mac的問題,是顯示器設置問題

mac:10.15.5,支持4k

外接顯示器:hp27寸

終極辦法:

顯示器按鈕(一般是接近開關顯示按鈕的那個),找到input control -&> DP Hot-Plug Detection 選擇always active

測試:大功告成


遇到過同樣的問題,重置SMC之後就好了。https://support.apple.com/zh-cn/HT201295


推薦閱讀:

MacBook Air還是MacBook pro?
蘋果macbook air i7 經常需要用ps 咋辦?
蘋果MacBook Air2020值得入手嗎?
MacBook Air2020 定製多久才能發貨?
新發布的macbook pro2020 八代cpu版本值得購買嗎?

TAG:Mac | MacBookAir | macOS | 外接顯示器 |