slow display negotiation between MacBook Pro and external monitor
Hi, I'm looking to resolve an issue with extremely slow display negotiation between the MacBook Pro and an external monitor, 20-30 seconds. It only happens the first time the external display is plugged in. It works normally, unless I separate the two and plug them together again.
The main question is: how can I get the Mac to retain the correct/working settings for the external monitor?
Context:
- MacBook Pro, 16-inch, 2019, 32GB memory.
- MacOS Sequoia 15.6.1
- Samsung LU28R55 (3840x1260)
- Adapter is Apple Lightning Digital AV Adapter
- HDMI cable is random
- Monitor is set up as extended display.
- MacBook Pro, 16-inch, 2019, 32GB memory.
Expected behavior:
- I plug laptop into display.
- There's a brief pause, 1-2 seconds at the very most, then both displays are active.
Observed behaviors:
- Bad: I plug laptop into display. There's a lengthy delay, up to 30 seconds before the external monitor works. Both screens flash. The MacBook will display fractional-second views of the screens before turning all black again. So it's black for 2-3 seconds, then quick glimpse of screen, then black again. This repeats dozens of times. There's no exception to this rule, it has happened hundreds of times. Also, other than the awful startup period, the display works as expected.
- Bad: Very occasionally, instead of working, the external monitor shows a "Check External Cable" error while on DisplayPort or HDMI 2. When that happens, I can use the toggle button to switch to HDMI 1, and it is immediately correct. This happens even though display is set to default to HDMI 1.
- Good: I come back to locked laptop still connected to external display. The sequoia home screen is on both monitors. I login on laptop with fingerprint. Displays work instantly with no delay.
- Good: I go into Settings/Displays/Arrange and move the monitor icons. It flashes black and works normally. The delay is sub-second.
- Uncertain: I can't remember if it behaves poorly when actually powered on while connected to secondary monitor. The experience is so unpleasant, I would only try this if it would help explain something. It would only happen naturally if the batteries drained before I got home to this set up.
Things I've tried:
- Configuring the external display to only use HDMI 1. The flashing was accompanied by HDMI 1, HDMI 2, DisplayPort.
- Toggling the external display controls. This might shorten the time, or I might be fooling myself
- Rebooting
- Different HDMI cables
- Turning on Console app, streaming, plugging in monitor
- I have NOT tried changing resolution or anything on the external monitor. Would happily do that if there's some conflict of expectations.
When I looked at the console logs, I expected to see the mac trying different resolutions and Hz parameters. I was surprised to see it repeat the same values, over and over and over. In the 18 seconds it took this morning, here are the counts of all the variants it tried. (Logs were 1300 lines long, filtering by " Hz". A few coreaudiod messages are there, but it's mostly this.)
272 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:0 -> 3072 x 1920, ext_blanking=0, 373510000 Hz
221 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:1 -> 3840 x 2160, ext_blanking=0, 594000000 Hz
188 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:0 -> 3072 x 1920, ext_blanking=0, 373400000 Hz
175 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:1 -> 3840 x 2160, ext_blanking=0, 297000000 Hz
149 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:0 -> 3072 x 1920, ext_blanking=0, 373330000 Hz
141 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:0 -> 3072 x 1920, ext_blanking=0, 373480000 Hz
106 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:1 -> 1920 x 1080, ext_blanking=0, 148500000 Hz
10 AGDP:: VendorEventHandler:762 kAGDCRegisterLinkModesetCallback-ext: FB:1 -> 3840 x 2160, ext_blanking=0, 594000000 Hz
8 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:1 -> 1280 x 720, ext_blanking=0, 74250000 Hz
8 AGDP:: VendorEventHandler:762 kAGDCRegisterLinkModesetCallback-ext: FB:0 -> 3072 x 1920, ext_blanking=0, 373510000 Hz
4 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:1 -> 720 x 480, ext_blanking=0, 27000000 Hz
3 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:1 -> 720 x 576, ext_blanking=0, 27000000 Hz
2 AGDP:: VendorEventHandler:916 kAGDCRegisterLinkValidateModeTiming: FB:1 -> 2560 x 1440, ext_blanking=0, 241500000 Hz
2 AGDP:: VendorEventHandler:762 kAGDCRegisterLinkModesetCallback-ext: FB:1 -> 1 x 1, ext_blanking=0, 0 Hz
To repeat the main question: how can I get the Mac to retain the correct/working settings for the external monitor? This is my home office; the external monitor isn't changing.
(Btw: the odd bullet/numbering formatting above doesn't show up in edit mode.)
MacBook Pro 16″