A while ago I wrote a “Demystifying USB-C and Thunderbolt” thread here, which addressed how USB-C and Thunderbolt worked, including in docking station scenarios, and how that related to supported display setups. Since then, Dell has released the WD19 dock family that includes support for the newer HBR3 standard, and the WD19TB dock in particular has some limitations on maximum resolutions with various display output combinations that might seem strange. So I decided to write this thread for anyone who was simply curious from a technical perspective about why those exist.
First of all, it’s important to note that although the WD19 dock family can take advantage of HBR3 support (DisplayPort 1.3 or 1.4) if the system has it available through its USB-C/TB3 port, the vast majority of systems on the market here in May 2019 still only support HBR2, for the simple reason that Intel GPUs today still only support HBR2 (DisplayPort 1.2). Even among systems that also have discrete NVIDIA/AMD GPUs, the USB-C/TB3 port is often still physically wired to the Intel GPU and is therefore subject to its limitations -- so at the moment, the only systems that have HBR3 support on USB-C/TB3 are those that have those ports driven directly by a discrete GPU. However, Intel’s upcoming “Ice Lake” family of CPUs will incorporate a new GPU that supports DisplayPort 1.4 and therefore HBR3. Those CPUs are slated to begin arriving in late 2019, as of this writing.
The main focus of this thread, however, is that the WD19TB has altered how it allocates display bandwidth to its various outputs compared to the TB16 that it replaces. That’s why if you look at the manual’s Display Resolution Table for a Thunderbolt system, you’ll find some limitations that might seem unintuitive or arbitrary. For example, when using an HBR2 system, running dual 4K 60 Hz displays requires that one of them be connected to the dock’s “downstream” Thunderbolt port, a limitation that didn’t exist on the older TB16 dock. But on an HBR3 system, that same Thunderbolt 3 port is limited to just QHD resolution whenever any other output is also in use. So what’s going on here?
There are two underlying causes for these limitations. The simple one is that the WD19 simply doesn’t support using its HDMI port and USB-C port for video output at the same time (although using the latter for a data device while using HDMI for video seems to be fine.) The second and much less obvious reason is that the WD19 family only allocates 4 of the incoming HBR lanes from the system to be shared across all of its “core” display outputs, i.e. all outputs except the Thunderbolt 3 port built into the removable attachment module. Any remaining HBR lanes coming from the system are only available to that Thunderbolt 3 port, regardless of whether it’s actually being used. This ends up accounting for both of the unintuitive and seemingly contradictory limitations relating to the Thunderbolt 3 port I mentioned earlier.
For the HBR2 system scenario, on a system that has two GPU outputs wired to its Thunderbolt 3 port (which to my knowledge all Dell systems have), an HBR2 connection over TB3 includes 8 HBR lanes, since a full DisplayPort link has always been defined as 4 HBR lanes, even before USB-C/TB3 arrived. But since the “core” display outputs only have access to half of those, which is equivalent to the bandwidth of a single full DisplayPort 1.2 link, you can only use those ports for display setups that fall within those bandwidth limits. That’s why even though the system is providing enough total bandwidth for dual 4K 60 Hz displays, for example, you’re limited to QHD if you want both displays on “core” outputs. However, if you instead connect only one display to a “core” port and the other to the Thunderbolt 3 port where the other 4 lanes are available, you can run dual 4K 60 Hz just fine.
For the HBR3 system scenario, there are at most 5 lanes coming from the system. The reason for this is that two full DisplayPort connections (i.e. 8 lanes) at HBR3 would require 64.8 Gbps of bandwidth, which is well beyond the 40 Gbps of Thunderbolt 3, and that’s before even considering any non-display data you might want to send across your Thunderbolt 3 connection to the dock, such as USB data for external hard drives, Ethernet data, etc. (If you're wondering, Thunderbolt 3 always prioritizes display traffic and throttles everything else when there isn't enough bandwidth to run everything at max performance. However, Thunderbolt 3 supports 40 Gbps in each direction simultaneously, and display traffic only ever runs one way, so depending on what else you're doing, high-bandwidth display setups might not bottleneck you.) In an HBR3 scenario where only 5 lanes are available, the first 4 get allocated to the “core” outputs, and then the Thunderbolt 3 port only gets access to that single remaining HBR3 lane – which is why it’s limited to QHD. The only exception seems to be if the Thunderbolt 3 port is the only one being used for display traffic, in which case it gets access to all 5 lanes, since the manual specifies that a single 8K 30 Hz display can be used from that port, just like all other ports.
One question not addressed by the manual is whether the dock supports DisplayPort DSC, i.e. Display Stream Compression. That’s part of the DisplayPort 1.4 spec, but I don’t know if it’s mandatory. But if the system and dock both support it, then higher-end display setups than indicated in the manual would be possible -- OR a given display setup would require less bandwidth, which would especially benefit Thunderbolt 3 connections because that would open up more bandwidth for other traffic. (On regular USB-C, currently half of the high speed lanes are allocated to video and half are allocated to USB, so reducing display bandwidth consumption doesn't benefit USB traffic -- although USB4 will be changing that to allow dynamic bandwidth allocation.) The higher-end display setup option could potentially even be achievable if the displays themselves didn’t support DSC as long the WD19 could “decompress” the DSC signal from the system and output a standard DisplayPort 1.4 signal to the attached display(s). And if the attached displays DID support DSC, then assuming all of the aforementioned support was still in place, even the maximum per-display resolution would increase, because at that point even the "normal" constraints on the DisplayPort 1.4 link between the dock and display could be exceeded. Hopefully we’ll find out through some testing once suitable systems and displays are more widely available.
Solved! Go to Solution.
I've just tried DP to USB-C + DP and at first I was experiencing constant jittering on the second monitor but I noticed that both monitors were refreshing at 120hz in the Nvidia Control Panel. Once I changed to 60hz for both monitors it seems to be a promising solution. I still need to do further testing (restart, lock/unlock, wake from sleep, etc) to test the behavior in various scenarios. Another thing, I did was create a monitor configuration profile in Display Fusion so that the settings are "remembered" and I can quickly fix things if anything is out of whack:
Assuming this is a stable solution I did have one more question. I wanted to buy some Fluance speakers which have USB-C connection for PC. Can I connect it to the regular USB-C port in the front of the wd19tb or does audio need to be connected to the USB-C multi-function Display port? If the latter is true I need to see if another cable combination works for the monitors so that I can free up that USB-C multifunction display port.
@alexcapone Glad to hear you're making progress. Although you're saying that when you had both displays connected through the dock, both were initially running at 120 Hz? Dual 5120x1440 120 Hz doesn't seem possible from a bandwidth standpoint given what's available over Thunderbolt, unless maybe DisplayPort DSC was in use, but I'm not sure if that would have been the case or even would have been available, since I haven't yet delved into that enough to understand what devices in a dock scenario have to support DSC in order for it to be used. (For example, can a dock that supports it use it and then decompress the signal for a display that doesn't support it? Or can a dock that doesn't support it still pass it through to a display that does? I just don't know.)
Still, dual 5120x1440 60 Hz should be achievable, so I hope that turns out to be a stable setup. In terms of USB speakers, they're pure data devices, so you can certainly connect them to the USB-C port at the front of the dock. You might even be able to use a female USB-C to male USB-A adapter if you want to keep that connection at the back of the dock, unless the speakers are designed to take advantage of the extra power available that's typically over USB-C and not over USB-A.
So just a follow up to my last post. After coming back to my desk and trying to wake my computer from sleep it seems that both monitors defaulted to a horrendous 640x480 resolution and the only fix was to unplug from the laptop and replug and both monitors were back to 5120x1440. I can't even change the resolution in the display settings to fix it as it tells me that 640x480 is the maximum. Display Fusion couldn't correct it either, unfortunately.
So it seems the sticking point in the cable combos I've tried so far is that it doesn't remember or cannot display maximum resolution unless I unplug and replug back into the laptop. The only cable that has not downgraded the resolution after waking from sleep is the HDMI cable. Once I get that HDMI to DP active adapter I am going to try to see if HDMI + HDMI to DP will solve the problem.
With regards to DSC,
This fits with the specifications of the actual chip doing the work (Synaptics VMM3550, specs: https://uploadcdn.oneyac.com/attachments/userfile/b4/13/1593672494627_4765.pdf)
And this specific chip can pass-through DSC arbitrarily and decompress display data for every one of its SST outputs separately.
But as far as I understand it, since Displayport is packet-based, I actually would expect pass-through to work through any MST-Hub, even old ones, predating the specification of DSC. But I do not have the HW to confirm this.
Also, DSC still works on the WD19TB, when the TB-Out is used as display output (HBR3 in my case) and the MST-Hub should only be getting a slower connection. DSC still allowed the Dock to run an additional UHD@60 display of the MST side.
@alexcapone I too saw instability issues, when maxing out the compression. 1 or more displays went dark and where regognized again after a few seconds (just like reconnecting). After a few of those I also saw it limiting bandwidth or no longer recognizing a monitor. For me, this seemed to be more or less proportional to amount of compression that was needed (compare with Dells specs, which only give resolutions possible without any compression).
@Ray519 That's great information on all fronts. Always helpful to see real world tests since sometimes tech can perform above or below specs due to unadvertised/untested capabilities or firmware glitches.
I would expect DSC to pass through MST hubs and such as well, but I've also learned that not everything that SHOULD work in the tech world always DOES work. And if the display itself doesn't support DSC, then of course passthrough capability would not be useful.
Sadly I have a feeling that while DSC will enable some high-end display setups, it will also make spec sheets and support tables quite a bit more complicated. There are already separate tables/rows for things like Thunderbolt vs. regular USB-C DP Alt Mode and then for DisplayPort HBR2 vs. HBR3 support, the latter of which often isn't even clearly advertised in the specs of the system. But now with DSC, I imagine there will have to be at least one new table based on whether the user's system supports DSC. But even that will require some sort of caveat saying that you'll either need displays that support DSC natively or an intermediate dock/MST hub that can unpack that DSC signal for them -- which will of course send users down a rabbit hole of figuring out whether DSC support is available on those devices. And then what if your dock/hub doesn't support unpacking DSC and only certain displays you have support DSC? Will there be yet another table for "partial DSC support"?
I do sympathize for the everyday user who just wants to know if a given set of equipment will allow them to run a given display setup....