Everything you need to know about MacBook Pros and (their lack of) DisplayPort MST (Multi-Stream) support
Need a tl;dr? Scroll to the bottom.
Ah, the MacBook Pro — once upon a time, the no-brainer, painfully obvious choice for a professional, and for good reason. Today, however, I was reminded why I gave up on Apple, macOS, and their entire ethos, and why macOS has no proper place in a corporate environment.
First, a disclaimer. I owned one, once. The MacBook Pro (Retina, 15-inch, Late 2013), as Apple calls it. I paid $2,099 three days before Thanksgiving 2014 to PowerMax (RIP) for this beast:
My precious looked like this:
Who could fault that gorgeous Retina display, 15.4 diagonal inches of pure PPI bliss? Not me. In fact, that was a key selling point. As were the sweet, sweet Thunderbolt 2 ports, with which you could daisy chain an insane number of peripherals!
An impressive feat of design, to be sure. And daisy chaining hard drives and mice and other peripherals through your TB2 monitor did work! But, there was one problem — two, actually, both of which users noticed very quickly, because Apple was being less than forthright about the capabilities of its new Retina machines, and folks were pissed that OS X wasn’t delivering on at least two points:
- OS X didn’t support 4K@60Hz for DisplayPort MST monitors, whereas Windows users had been enjoying this functionality for some time,
- And OS X definitely didn’t support multiple monitors in a DisplayPort daisy chain… again, even though this was ubiquitous among Windows machines, and the new Retina MBPs were supposed to have this feature because they (still) advertise DisplayPort 1.2 support.
Reports of these problems are spread all over the Internet, but I’d like to focus on one thread in particular:
The very first 4K panels employed MST as a technical necessity and used MST to combine multiple smaller panels into a single 4K image. At the time, I didn’t notice this problem because I was late to the 4K party, and my first 4K monitors were single-stream (SST) monitors without daisy-chaining (in other words, each monitor had its own DisplayPort cable connected directly to a TB2 port on the MBP).
But if you adopted 4K early, and you were using a Mac, you very well would have been stuck at 4K@30Hz, if OS X recognized your MST monitor at all. And there was a twist! Folks running Windows 7 and 8 in Boot Camp on the same Macs were able to run the same MST monitors in 4K@60Hz without issue. In other words, Apple’s hardware supported MST, but their software did not.
After just over two years of dealing with various other “OS X can’t do that” problems and wading through forum threads full of Mac fans/pedants spewing “why would you even want to do [totally reasonable thing like disable mouse acceleration] anyway, that’s not the right way to use a Mac,” the straw that broke the camel’s back was learning it couldn’t run Civ 6 without burning my lap. I sold my MBP to an ex, replaced it with a Dell XPS 15, and moved on with my life.
That is, until today.
Today at work I plugged in a fancy HP Thunderbolt 3 G2 dock (which I love because it’s one of the few that sports two full-size DisplayPorts, AND it comes in a 230W version if you need it) to the Thunderbolt 3-equipped MacBook Pro I purchased for my newest sysadmin at his personal request. And sure enough, the two monitors connected to the DisplayPorts lit up. Except they appeared as a single monitor in macOS. Wait…
This has to be a mistake, I thought. This is basically brand new hardware on the latest and greatest peripheral bus out there. Isn’t there an option to disable mirroring? No, only the first monitor appears in System Preferences, there’s no second monitor appearing at all. Is there a driver out there that I need to install? No, Apple doesn’t allow third-party dock drivers nor do they allow third-party GPU drivers that might fix the problem. Is there a problem with the cables? No, a Windows PC connected to the same dock shows both monitors. Do I need to upgrade to macOS Mojave? No, upgrading to Mojave makes no difference (although I dig the new dark mode). OK, so I’m limited to mirroring on macOS, and it’s a problem with macOS…
I was (and am still) truly at a loss. For context, both of the dock’s DisplayPorts work without issue on the following laptop models:
- Dell XPS 15 9550, 9560, 9570, 9575
- HP ZBook 14u & 15u G5, ZBook Studio 15 G5, EliteBook 840 G5
All of which, by the way, are svelte laptops in their own right, absolutely competitive with Apple from a build-quality perspective. Hmm…
Well then, time to fire up Google. First I found a thread that explained that the HP dock in question uses MST for the two DisplayPorts. Uh oh. Armed with that knowledge, I stumbled upon our old friend:
The comments on the thread were many, and also reveal problem 2 described above:
Poor David Erickson. So innocent. So hopeful. Little did David know, the typical Mac devoté on these forums is about as tolerant of Apple criticism as a bag of starving crazed weasels. The first response he receives is this tidy little bag of dogshit from “a brody”:
Ahem, a brody, daisy-chaining DisplayPort has been A Thing™ since it was introduced in 2010 (wiki), FOUR YEARS BEFORE YOU POSTED YOUR LIL NASTYGRAM AND MORE THAN EIGHT YEARS AGO TODAY, YOU UNHELPFUL PEDANT. And why does this matter? Because if you’re docking the laptop, you want to be able to connect everything using a single cable. Connectivity over a single cable is the futuristic promise of Thunderbolt 2 and 3 — it’s the dream, man! — a promise that Apple has (still!) roundly failed to honor.
It’s almost 2019, folks. We are about to colonise Mars and macOS still doesn’t support DisplayPort daisy-chaining.
The most incredible part is, they seem to have nothing to gain from this intentional lack of support. For Apple, the effort to fix this would amount to a minor edit to the Apple graphics driver kext, bundled in a minor macOS update some users wouldn’t even notice. As trivial as it would be, time has shown again and again that Apple has no excuse for not fixing this — they just don’t care. Meanwhile, all the other major laptop manufacturers have got this right. They support it out of the box, no frills, no fuss. If you’re looking for single-cable Thunderbolt 3 docking, Windows laptops just work. And that’s one more reason why I can’t credibly deploy Apple laptops in a corporate environment. They just don’t work.
Okay, rant over. I leave you with this other poor soul, posting, forlorn, from his iPhone:
- Apple macOS does not support DisplayPort daisy-chaining, also known as multi-stream, or MST, on any of their computers, from MacBooks to MacBook Pros to iMac Pros to Mac Pros, even if they sport Thunderbolt 3.
- Apple continues to advertise DisplayPort 1.2+ support across their product lines, even though they have not implemented MST daisy-chaining, a key feature of the DisplayPort 1.2 spec.
- There is no way to “make it work” on Apple hardware except to run Windows via Boot Camp. If you want to use macOS with a dock that uses MST for multiple DP outputs, or if you want to daisy-chain another monitor from your first, you’re SOL. And Apple doesn’t care.