Linux - 12th gen - External display over USB-C not working

In that case it sounds like there’s a problem in the connection; not so much in the firmware or hardware support. It seems that thunderbolt/USB-C cables for very high data transfer rates can be finicky, and that this gets worse when power supply is thrown in the mix as well. Perhaps try different cables and/or different ports to see if there’s variability in how the connection holds up?

I’m using a USB-C monitor, but just a plain 1920x1080@60Hz and it’s perfectly fine with a webcam, keyboard, mouse, ethernet plugged into it, while serving as power source as well.

For trouble-shooting, perhaps first try at way lower resolutions and see if things are stable there; then crank up until problems start?

So um, forgive my ignorance on your situation, but is there some reason that you can’t use the laptop closed with bog-standard DisplayPort or HDMI and use the USB ports on the laptop itself? It’s admittedly not a pretty single-cable solution, but it should at least work unless you planned on using the USB ports on the laptop itself as 3 additional ports in-conjunction with the 2 on your monitor for a total of 5 USB ports.

Basically I’m wondering that, outside of not being a pretty single-cable solution, what’s the difference between using Thunderbolt vs allocating the laptop’s 4 USB ports as the following:

#1 - power
#2 - video
#3 - first misc
#4 - second misc

And making sure to configure your OS so that it doesn’t automatically go to standby when you close the lid? I mean, the monitor itself only has 2 USB ports anyway so, again, unless you were planning on using a total 5 USB ports (2 on monitor+3 on laptop), I don’t understand what functionality would actually be missing from my suggested less-elegant rig-up.

Or does it really all boil down to wanting a single-cable solution?

@NM64 It’s really about the single cable solution since the USB hub on the screen is shared between my computers :slight_smile: But yes, your solution would work right away otherwise

@Nils You mean changing the resolution from the screen settings or the OS settings ? I tried different TB3 cables, but I think you’re onto something since when I plug the monitor in, I can see a popup on the monitor asking if I want to switch to thunderbolt, then it disappears and I can see the orange charging indicator on the side of the laptop, then this one stops and I have the pop up again…

I meant changing the resolution (and perhaps frequency) setting in your OS. For the lower settings, it should be able to negotiate lower transfer speeds, which would probably be more robust against less-than-optimal connections/cables. Also for my monitor, on rare occasions I’ll plug it in and it ends up negotiating only 30Hz, which is noticeably wobbly. Replugging or manually forcing 60Hz usually does the trick.

In your case, you’ll probably need full-on thunderbolt/USB-4 speed; I think my monitor only does USB-3. But USB-4 asks quite a bit of the cables and connectors … That said, there are people who use thunderbolt eGPUs on Framework laptops with reasonable results, so it’s worth a try to troubleshoot (and perhaps it is firmware or a driver somewhere …)

Presumably they mean from the OS settings. As an example, I recently dealt with a failing DisplayPort to HDMI adapter whereby, above a certain video resolution that was below even 1080p60, it would just give me no video and/or the OS would just straight-up fail to actually change video mode.

That being said, it’s worth noting that Wayland vs X11 can make a difference in this regard - from my experience, changing your desktop resolution on X11 always changes the actual video mode being output to your monitor since Intel graphics on Linux specifically do not support upscaling the desktop resolution via the GPU on external displays unlike AMD and Nvidia graphics (something I found out the hard way).

But on Wayland, especially on GNOME, it can sometimes be ambiguous if reducing your desktop resolution is actually reducing the resolution being output to your monitor or if your GPU is then upscaling that lower resolution to your monitor’s native resolution, negating the bandwidth savings from running that lower resolution.

Regardless, if you can get it working with a lower resolution, then the next thing to try are various tricks to reduce bandwidth without reducing resolution, e.g. a custom resolution that’s simply the same as your panel’s native but with reduced blanking, and/or even just straight-up reducing the refresh rate since it is a 144Hz monitor.

One thing to note is that the cvt command only understands reduced blanking for refresh rates that are multiples of 60, so either just use 120Hz or create a custom modeline yourself, perhaps using the Windows program CRU to figure out the necessary timings (you can’t apply CRU’s settings via WINE, but it works fine for calculating the necessary timing information - just note that this monitor might use DisplayID and I have no idea how that’ll impact things).

…that being said, because this monitor also supports AdaptiveSync, it’s very possible that making a custom resolution on Linux will break that since I have no idea of xrandr even has a way to work with VRR (assuming AdaptiveSync even works at all?)

@Nils The thing is, the OS doesn’t let me change the resolution, the screen is not even shown in display settings :frowning:

@NM64 Shall I try using X11 instead of wayland then ?

I’d say just try it in a live session of a distro that definitely uses X11, such as Linux Mint (protip: Ventoy is your friend for booting ISOs).

One fun thing about Linux Mint is, even in a live session, you can still log out and log back in without actually rebooting which should in theory allow the use of an xorg.conf file if that’s something you want to fiddle with.

@NM64 Oh ok nice ! I’ll give it a try and let you know

@NM64 I did not know Ventoy, I use etcher most of the time.

edit: Ventoy is really cool :slight_smile:

@NM64 omg… it works with X11 on linux mint. bye bye wayland

nevermind, it was working only with the live version… How weird

Kinda sounds to me like it’s the monitor not the laptop or cable. I have a LG that I connect DP (USB-C), different model than yours, that can be really finicky.

Time to narrow this down. Connect to the monitor with no other power supply and no devices attached to the monitors usb hub. If that works, start adding usb devices to the monitor and see what happens. Do the same with your framework power supply also connected to your laptop.

Also, if you have a friendly computer shop nearby maybe you could try your desired setup with a different monitor. Definitely a pain to drag your stuff to a shop but it would answer certain questions. Especially given that’s an expensive monitor.

Weird about wayland/X11, different kernel in the live image?

Edited to add: Don’t think will have any effect but remove the usb module and connect directly to the laptop carefully and gently. The module is just a couple of connectors and a wire, but it sounds like this is driving you crazy so try everything…

@John_Jacobs I tried all of that sadly… And I also tried on other monitors on which it works great. I really think the monitor is the problem, it already had some weird behavior with my mac previously.

It’s kinda working with linux mint and xorg, but as I plug or unplug an other usb device, it’s suddenly christmas and everything starts to blink.

I’ve rolled back to good ol HDMI but without my shared keyboard and mouse

thanks to all of you for the help either way :slight_smile:

1 Like

Does HDMI 2.0 even have enough bandwidth to drive that monitor at 144Hz? I think it’d only just have enough bandwidth to do it at 120Hz, but only at 8bit rather than 10bit, and presumably without AdaptiveSync as well (if that even works on xorg of course).

Or do you have one of those rare DisplayPort to HDMI 2.1 adapters? (though in that case I’d wonder why you wouldn’t just be using DisplayPort directly…)

Haha no I don’t, it runs at 70hz but I will order a display port module later maybe.

It’s my work computer so I don’t really need this refresh rate for cloud, code and devops tasks. Furthermore, I found that GUI doesn’t benefit high refresh rates on linux, most of the time I see an awful tearing when draging windows on the screen, even in 144hz.

It’s a good monitor for gaming / working tho :slight_smile:

Piggybacking on this post because I also had issues with a USB-C hub monitor and Fedora 36. In my case, the laptop saw the monitor, but the monitor reported no signal :woman_shrugging:.

I switched to Xorg and it’s working now - Framework is in clamshell mode connected via USB-C to a 32" 4k screen daisy chained to a portrait orientation 22" 1080p. I also have a work-issued desktop connected via DP, and they share keyboard and mouse (wireless via a USB dongle) as well as webcam. I’ve been able to switch back and forth and everything seems to be working as expected.

2 Likes

This sounds a bit like the issue I’m having with my 12th gen laptop on Fedora 36. In particular, I couldn’t get the DisplayPort to work on my Dell TB16 thunderbolt dock even though it worked on an 11th gen Framework laptop I tried. Thankfully, I had a spare USB-C to DisplayPort cable and that seemed to work with the Thunderbolt port on the Dell TB16 dock.

See my post on the dock megathread.

Up: I still have the error on either xorg or wayland. Pluging a thunderbolt cable make the charging led blink on the laptop like if it doesn’t know if it’s for charging or a USB hub

1 Like

I’m not quite sure if this problem has anything to do with the monitor. I have the same problem with the connecting/disconnecting cycle with my thunderbolt 4 docking station even when no other device is attached to the dock.