i make things

August 12, 2017August 12, 2017

The Surface Pro 4 and External 4K60 Displays

The Problem

I’ve got a Surface Pro 4 running Win10 15063.540 with Intel Iris 540 GPU at driver ver 21.20.16.4627 (rel. 3/9/2017). The issue is that the connected display will flash at random, anywhere from once every hour to 10 times a minute, cutting to black for up to two seconds at a time then resuming normal operation. Here’s a video of the problem:

It’s typically worst right after boot, especially when loading graphically intense applications like Fusion 360 or Autodesk ReMake (two of my go-tos for reproducing). Chrome also seems to aggravate it. It typically settles down after maybe 5 minutes, but will act up randomly throughout the day like a cough.

Troubleshooting Progress

Originally, I owned a Dell P2415Q monitor, connected via dell-supplied MiniDP to DP cable and never had any problem. On April 20, I updated to the Creator’s Update (1703) and my display began flashing at random as described. Of course, I believed this to be a software issue, but no updates or rollbacks to previous windows version fixed the problem. Regrettably, I didn’t think to specifically roll back my graphics driver at this point, as I was unaware that it might have been updated concurrently. None of these software measures got me anywhere, and internet searching turned up the Dock as a possible source of issue. But that was quickly isolated by simply removing it from the loop – flashing improved when the display was plugged directly into the SP4, but not eliminated. My attention then started focusing on the display after a whole bunch of posts on the internet from other P2415Q owners with the same issue. I was also able to reproduce the problem with another machine – a Zotac VR Go – which further pointed me there (1). I went through the motions with Dell support and they exchanged monitors. The second P2415Q immediately exhibited the same issue.

At this point, I got a refund for that monitor (Thank you Amazon for the good will refund outside of my return period, much easier than expected) and bought instead a BenQ BL2711U. This monitor had less of a problem, but still the issue persisted. With few options left to isolate the issue, I first tested new cables. 12, by my count, in all combinations – MiniDP to HDMI adapter with known good HDMI cable, MiniDP to DP adapter with DP to DP cable (1x adapter, 2x cable), and at least 5 different MiniDP to DP cables, at least one of which is listed on displayport.org as certified. All reproduced.

Desperate for ideas, I tried relocating the monitor and SP4 to a different house with different wiring and noise sources. Still reproducible.

Luckily, there are two other SP4 devices in the house, and I was able to test with one today, which also exhibits the issue. However, the OS build version and the Intel Iris dispaly driver version are both the same, since both machines are fully updated to current release software.

Finally, I’m in the midst of trying a Ubuntu live image right now, to determine if it’s a purely software problem that’s been reproduced across hardware by simple coincidence. UPDATE: Though Ubuntu 17.04 is basically a tupperware full of bugs, in the 30 minutes I spent trying to get my livedisk online so I could kill some time using it, I didn’t experience any flashing. So I’m taking that as a positive sign that isolates the issue specifically to Windows generally or the display driver itself.

UPDATE: Having somehow not tried yet, I rolled back the Iris 540 driver to 20.19.15.4463 (7/6/2016) and the display is still flashing all over the place.

I have no solution as of this time.

(1) About the Zotac: I actually ran into a driver issue on this machine. It’s got a GTX1070 in it, but for some reason there was a driver error when I started using it. I didn’t realize this at first, since it failed gracefully and I still had a full normally working display, but I suspect that my disabled NVidia card fell back to integrated graphics or something like that, confounding my diagnostic effort. I’m sure I saw the flashing when this machine was connected via displayport, and I’m sure it didn’t exist when this machine was attached via HDMI, but I cant reproduce now, presumably because I’ve uninstalled and reinstalled the NVidia driver, which is presumably stable. I say presumably because I have nowhere near as many butt-hours on this machine, and the issue happens at random. Additionally confounding diagnostics at the point in time where this footnote begins, the Dell P2415Q has only an HDMI 1.4 input, NOT 2.0, meaning only 4k30 is supported – this issue only happens at 4k60, so it’s impossible to isolate it on that monitor as a “DisplayPort” centric problem.