Only get 4K 30Hz or no signal when using USB-C

Hi. I have a new work laptop a Surface Laptop 4 and use a Surface Dock 2 to connect two ES07D03 monitors. The issue I am getting is I only get 30Hz maximum in display settings on my Surface Laptop 4 and not the 60Hz I was expecting. The Surface Dock 2 supports 2x 4K60Hz monitors when using the surface connector

One of the selling points to me is that the monitor effectively acts as a KVM by the USB Hub switching upstream host when the source changes from displayport to USB-C. I have my Desktop PC plugged in using displayport and USB Type-B upstream port for the USB Hub. I then have my Surface Laptop 4 connected to a Surface Dock 2 and that in turn connected to my two ES07D03 monitors using the USB-C upstream ports. I get a 4K30hz video signal (this is the issue) when I change to the USB-C video source.

Some extra information on the setup. I have the USB Hub set to always on, the USB-C bandwidth priority as high USB data speed and the USB hub source set to select automatically as I do change between my work laptop and personal desktop when I finish work for the day. I have a Logitech Brio connected to the first monitor and a Corsair Virtuoso Dongle connected to the second monitor which has my Corsair Virtuoso headset, Corsair K100 Air keyboard and Corsair M65 wireless mouse all paired to it. I am using Intel Certified Maxonar Thunderbolt 4 cables which are backwards compatible with Thunderbolt 3 and USB-C 3.2. I am on the latest scalar firmware 107 and USB firmware 06A4 / 0A.89.19.02

Some testing I have done is setting the USB Hub bandwidth priority to high refresh rate, no difference. Using different cables. I have used Intel Certified CalDigit Thunderbolt 4 cables no difference. I have also connected my Surface Laptop 4 running Windows 11 and a Surface Pro 5 running Windows 10 directly to a third monitor without the dock using both the Maxonar and CalDigit cables. The monitor is detected in the display settings but windows won’t extend to the display and the monitor keeps stating no signal detected. The amount of testing I have done so far would suggest it’s the monitors not liking Surface devices.

I have raised a support ticket but I never get a response so posting this here if anyone else has any more ideas.

Some more information on this. I am using my Surface Laptop 4 with the Surface Dock 2

If I set my display settings to 2560 x 1440 at 60Hz this happens on the monitor.

image

I have now tested a two difference Surface Laptop 4s with the Surface Dock 2 and can’t get 4K60hz to either monitor connected from either laptop.

I’ve also tested both Surface Laptop 4s and a Surface Pro 5 directly to the monitor USB-C upstream port and I set the windows display settings to extend but the monitor always reports no signal detected but the devices do charge.

At the moment the common denominator appears to be a fault with my monitors. I’ve had no response from support yet though.

I have now tested a Macbook Pro 2018 Model using one of the thunderbolt 3 ports on the Macbook Pro to connect to my ES07D03 monitor USB-C input port. I am using an Intel Certified Maxonar Thunderbolt 4 cable

The MacBook Pro charges from the monitor and detects it only as capable of 4K30hz but the monitor displays no video.

image

If I then press the joystick on the back of the monitor to wake it from sleep the MacBook no longer detects it at all but still continues to charge.

I rolled back the USB hub firmware on my monitors from 06A4 / 0A.89.19.02 to 06A4 / 0A.89.17.02 and the changes I have noticed. I kept the monitor on scalar firmware 107.

Using a Macbook Pro 2018 Model using one of the thunderbolt 3 ports on the Macbook Pro to connect to my ES07D03 monitor USB-C input port I get a video signal now successfully but still only 4K30Hz when the USB-C bandwidth priority is set to High USB data speed. If I change USB-C bandwidth priority to High refresh rate I get 4K 60Hz. So slight improvement here rolling back but still only half the theoretical refresh rate I should be able to get.

Using my Surface Laptop 4 from the USB-C 3.2 Gen 2 port to the USC-C upstream port on the monitor I got 4K144hz with the USB-C bandwidth priority is set to High USB data speed. Working flawlessly.

Now for the ultimate test which is the Surface Laptop 4 and using a Surface Dock 2 connected to two of my ES07D03 monitors both connected USB-C to USB-C so I can benefit from downstream USB devices such as webcam, mouse keyboard etc… now only ONE monitor works at 4K 30Hz the other is no video signal detected so this got worse. All downstream USB devices are detected by the Surface Laptop 4, even the devices connected to the monitor with no video signal.

It just looks like the firmware of the monitors is causing different behaviours for different devices.

I’d also like to say it’s been two months with no response from the support team. Are these guys now non-existent?

Docks are always problematic, even if they’re from a good manufacturer.

The big thing that’s not obvious to a lot of people is that there’s only a limited amount of bandwidth available over that USB-C cable. If you set the bandwidth priority on the Spectrum to favor USB data, you’re only allowing enough video bandwidth to drive a 4K @ 60Hz display. If you want to drive two displays, each only gets half of that bandwidth. You’ll definitely want to give priority to refresh rate.

I’m also going to assume that you’ve tried to change video inputs via the on-screen menus, not just using the control stick on the back. Many people don’t realize that the control stick quick actions changed with either firmware 106 or 107, and pressing upwards on the stick now changes the USB upstream connection. You have to press down to change the active video connection. Both menus include “USB-C” as an option so it’s easy to change the USB input instead of the video input.

If you’re doing everything right, it’s certainly possible that there is an incompatibility between the Spectrums and the Surface Dock. Sadly, there’s no real tech support going on at Dough at the moment, and the community team aren’t able to make much happen.

This is an Apple problem, not something wrong with the Spectrum. Apple made some changes to macOS back around Catalina that borked high refresh rates for a lot of people. If you’re using a USB-C to DP adapter cable, you can usually get the full refresh rate. But there’s simply no way to get more than 60Hz over a USB-C to USB-C cable.

I spent a LOT of time researching this issue and trying various things, even as far as reading the DP specs to see if I could find anything relevant. It seems that macOS correctly determines that there’s a heap of bandwidth available. It just won’t use it.

So my next update on this is I went and purchased a CalDigit Thunderbolt 4 Dock. With the Surface Laptop 4 I get the expected behaviour which is when both screens are plugged in I get 4K144hz on one but the second screen never displays a video signals but the downstream USB devices work.

When used with the Intel MacBook Pro which has Thunderbolt 3 I get one monitor at 4K60 and one at 4K30.

Basically I feel like despite the specifications of USB-C 3.2 Gen 2 on these monitors. Once they go through a dock it doesn’t work.

My last test if I can find the energy just to see if it’s a USB-C issue would be to use USB-C to HDMI from the Surface Dock 2 to the monitors and see if I can get 2x 4K60hz which if I did would be useless as I’d still have all my downstream usb devices connected to my PC using the display ports unless I find another USB hub switcher.

Which if I do I’d just chuck these monitors on eBay at that point and get a more reliable brand :joy:

The bandwidth allocations here are mainly controlled by the host OS, but can also be influenced by the dock.

To quickly recap the USB-C connection:

  • There are 4 data lanes (i.e. pairs of wires) that can carry high-speed data (USB / Thunderbolt / DisplayPort alt mode). Each lane can carry about 8Gbps of data, but can only carry a single type of data and cannot be reallocated on the fly.
  • There is 1 data lane that’s dedicated to low-speed USB data (480Mbps).
  • 4K @ high refresh rates (e.g. 144Hz) requires all 4 high speed lanes.
  • 4K @ 60Hz requires 2 high speed lanes.
  • 4K @ 30Hz requires only a single high speed lane.

It looks like Windows decided to allocate all 4 lanes to a single display, getting you 4K @ 144Hz. There’s a chance that if you manually reduce that to 4K @ 60Hz, you might be able to get the second display to work.

It looks like macOS allocated 2 lanes to one display (60Hz) and 1 lane to the other (30Hz). There is a fair chance that the OS chose to allocate the remaining high speed lane to the remaining functions of the dock. I have no idea why it would do this, especially when the dock says it’s able to drive both monitors @ 60Hz. Does the Caldigit Dock software give you any control over this?

Overall, it looks like the Caldigit dock is behaving in a more explainable way than the Surface dock does. The problem is getting the bandwidth allocated so that each display gets half of the high speed lanes.

I honestly don’t think that another brand would work much better here. Any monitor that can do 4K @ high refresh rates is going to run into the same issues with available bandwidth. The real problem is trying to get the computer/dock to bandwidth allocated correctly between multiple monitors.

Just as an update to this. I have updated the firmware on the monitors to fw108 and now only get 4K30hz maximum on both

Do you know if this is still true as of the latest macOS (Ventura 13.3.1)?

When you update the firmware, it resets the USB-C mode to want high USB bandwidth. You’ll need to change that back to high refresh rate if you haven’t done so already.

I no longer have access to a MacBook to test with. The one I was using was a work PC, and I’ve moved to a new job so had to hand the MacBook back in.

Side note: despite being known for excellent build quality, the Mac’s display died about a month before I left the company. It turns out that the 15.6" Intel models have a semi-known issue where the backlight controller burns out. I’ve never seen anything like it in ~18 years of using laptops.

Ah, I see. Thanks for the response and for all the information you provide on this forum, it really helps.

Also just now finding out I won’t be able to (fully) utilize a USB ethernet adapter with my gaming laptop since setting USB-C to high refresh rate priority limits speeds to USB 2.0 :slightly_frowning_face: Maybe I’ll still be able to use it for lower ping which is what I mainly care about anyways. Also think the USB-C cable I ordered won’t be sufficient for this monitor at 4K 144Hz after reading some threads here, but I’ll wait to see when the monitor arrives (hopefully tomorrow). Slowly starting to regret making the purchase before doing sufficient research – even though I did several hours on YouTube/review websites, I didn’t really dig too much into this forum until later. As soon as I read that they seem to be shipping newly placed orders within the US, I jumped on it.

Edit: Cable seems to work perfectly so far giving me 4k 144hz on both my Zephyrus G14 2022 and M1 MacBook Pro. Very happy with this cable for the price. It says 4k 60hz but works with 4k 144hz as I read in 1 single review on Amazon!

I’ve been quite pleased with the Nimaso cables I’ve bought off Amazon in the past. I’m glad this one is working for you.

My collection of test PCs is slowly changing over time. I currently have:

  • [new] Lenovo Legion Pro 7i: 13th gen i9 | RTX-4090 → HDMI 2.1 or USB-C
  • [new] Dell Latitude 5531 (work PC): 12th gen i7 | iGPU → HDMI 2.0 or USB-C
  • Steam Deck: USB-C
  • Dell Precision 5750 (wife’s PC): 10th generation i7 | Nvidia Quadro T2000 → HDMI 2.0 or USB-C
  • [to be retired] Alienware 17 R3: 6th generation i7 | GTX-980M → iGPU → HDMI 2.0 or USB-C (max 60Hz) | RTX-2070 (eGPU) → HDMI 2.0 or DP or USB-C

So for they all appear to be working just fine, at least over DP or USB-C. Only the previous work MacBook Pro gave me any issues running the Spectrum at the max frame rate allowed by the connection.

Edit: And only a couple of hours after posting the above, I got my first case of the Spectrum going to a black screen while still appearing as “working” to Windows. I waited 3-4 seconds for a picture to come back, then power cycled via the power button.

They were always set to High USB data speed even before when the best I could get was one monitor at 4K60 and the other at 4K30. My understanding from the documentation is each monitor when set to High USB Data Speed I should get 4K60 (or 4K144hz with DSC)

I did try this on fw107 and I have it a go again today with fw108 and set the port to high refresh rate mode on one of the monitors and it went to signal not detected and windows display settings was showing no monitor. Painful as to bring is the osd again you need an active source. But set it back to high data speed and the display is back at 4K30

Another strange behaviour I’ve noticed is that if I unplug the surface laptop 4 from the surface dock 2 and replug it’s pot luck what resolution and refresh rate I get. I did I this morning and one got detected with a maximum of 1080p60 and the other with a maximum of 4K30 but displaying at 1440p60

All I can theorise is both these monitors are being passed through the dock and trying to negotiate with the host laptop. I’m not sure what version of usb 3 the surface property connector uses but at initial connection it seems to negotiate something different every time

I’ve got a Surface Laptop 5 coming in the post from work and going to test with the CalDigit Thunderbolt 4 Dock and see what the best is I can get and hopefully something more consistent.

About the black screen, I found that 144hz was causing something like this for me, but I’m not sure if what I’m experiencing is something different from everyone else. After some experimenting I found that switching between 2 exact colors was causing this. From #111111 to #FFFFFF if you’re curious (this was pretty easy to pinpoint because it happened every time I switched from a terminal to a mainly white website). I could reproduce it 100% of the time within 1-3 times of switching a fullscreen image of those colors. The screen would kinda glitch out and then turn black and never turn back on. Super weird. After setting to 120hz it hasn’t happened to me since. Not sure whose fault it is. Hardware? Firmware? Software? Cable? Who knows, but as long as this never happens to me at 120hz, I think I’m satisfied enough with this monitor despite it not at all being as good as it could have been without any of its issues/bad firmware.