USB-C/Thunderbolt Dock Megathread

Only thing missing is the bandwidth distribution in a readable way. For when the 2nd DP connection will be throttled etc. Or how much PCIe bandwidth can be used at max. given USB3 and DP connections etc. Because the Windows USB4 connection manager is calculating and deciding all of that.

Also found somebody on reddit using a new Qualcomm XPS 13. Those also have the same layout with 2 USB4 routers, each with 2 DPs. And they even confirmed both working with a dock. So looks like those 2 DP connections are pretty much standard in practice. And AMD and Qualcomm do not even have ways in which the board designer can deprive them of the ports (with Intel, if they were to replace one USB4 out with a native DP/HDMI port, it would permanently consume the 2nd DP away from the other USB4 out).

Huh. I thought this was only a feature on old Alpine Ridge controllers and that Titan Ridge removed that. Apparently not (my Titan Ridge in my Dell WD19TB does not allow that).

Does not have what?

That both TB ports can be used arbitrarily as upstream or downstream ports. I thought only Alpine Ridge did this, because the initial controllers where shared between Host and Device. While Titan Ridge started to split the device controllers from the host controllers. Because only the device controller (Titan Ridge DD, what is in your dock) had the USB-C backwards compatibility with USB3 passthrough. I thought, starting with Titan Ridge the upstream and downstream ports were fixed and your dock would remain dark if you plugged the host into the TB-out port, just like mine (also with Titan Ridge DD).

It also works on my TH3P4G3 which is apparently titan ridge too.

I am pretty sure a ton of that is a matter of configuration and firmware.

Good morning,

I’ve been testing the ONEXGPU against my 7840U Framework 13 and I’ve been having a lot of success with it.

It has a 7600M XT GPU and works well with the Steam games that I’ve tested. I confirmed this through dGPU-detect.AppImage and by using DRI_PRIME=1 per the instructions provided by Framework.

The only issue I’ve had with it so far is on bootup as it appears to not load Ubuntu 24.04 LTS very well, though I am not very good at Linux troubleshooting at this time.

I can provide benchmark information if needed.

[EDIT] Oh, I almost forgot to fill this out…

  • Wattage: At least 60W is needed to charge the laptop. If the dock provides greater than or equal to 60W, then it passes this criteria.
    Supports up to 100W of power delivery
  • Port Compatibility: Please test all ports on your dock to ensure they work as expected. If a port does not work, please make note of this in the notes section. This note may be removed by future reviewers if it is found the issue has been rectified by the manufacturer.
    All ports appear to work, but boot up issues occur with the M.2 (PCIE 3.0 SSD) regardless if populated or not.
  • OS Compatibility: Most will list Windows and MacOS out of the box, but please make a note if you find that a particular OS is not compatible.
    Works on Windows 11 after some tweaks, mainly the order in which the drivers are installed.
    Works well in Ubuntu 24.04 LTS
  • Driver Requirements: Some docks require proprietary drivers. If this is the case, please make note of this and provide a link to download the driver.
    GPU drivers are necessary for good performance in Windows.

I was at one point looking at hosting this information on an external website, but I had some trouble with figuring out exactly how to present this. There are a few factors I was considering:

  1. Legibility. Currently, this thread is constrained to an honestly very narrow column, courtesy of the forum software. I’ve never been much of a fan of Discourse due to how resistant their developers are to change.
  2. Awareness. Currently, these forums are highly accessible, but whatever site we need would need a lot of awareness surrounding it.
  3. Accessibility. Whatever information system is chosen needs to be easy to read, easy to edit, and hard to vandalize. I doubt vandalism will be a huge concern to start with, but if this grows bigger (especially with the growth of Framework), this may start to be more relevant.

So in my mind, we have a few options:

  1. Flat website hosted on GitHub. This would require that the change process be very well documented in a contribution guide so it’s easy to understand for new users. Optionally, we can allow changes to be made via another system, such as through a threaded channel in Discord. Responses to this thread could work, but they run the risk of being lost in discussion. Comes with free security against vandalism by requiring changes be approved.
  2. Some sort of content management system. This comes with a price tag, but working with a system like MediaWiki (the software behind Wikipedia) or some sort of dedicated CMS like WordPress/Woltlab/Invision/Xenforo could improve accessibility by allowing more familiar editing tools (i.e. a WYSIWYG editor). One potential downside is this now it places the burden on community moderators to manage a community, and a lot of these products also include a forum suite. I am personally not interested in running a forum that competes with this one, and I believe that to be outside of the scope of what we’re looking for.
  3. We look at some sort of bespoke development, something that allows for a “best of both worlds” approach. This is the most expensive option of the three and potentially requires a more expensive hosting option, such as a VPS.

For the immediate, if we can split the post, I think that would be a good solution. For the long term, I’m thinking of moving the first post to its own wiki or website of some sort. I can self-host a lot of the options for the community (especially if it ends up as a flat site on github), but if anyone at Framework has any thoughts as to what they would like to do here I’m open to suggestions.

It’s your post and your decision, please DM me if you need any help for splitting and what kind of changes you need and I’m ready to help :wink:

1 Like

I wonder if the Framewiki would be a good spot?

I have just gotten a Caldigit TS4 as according to the table here it should be compatible. I assume this was with the FW13 in mind, which is why I am having issues with the FW16 (7940HS). The dock worked perfectly as I plugged it in initially, but I have gotten an odd issue with ethernet not being detected and the dock not being listed under “Bluetooth & devices > USB > USB4 Hub and Devices” in Windows 11 settings app. I am going to talk about Windows here, but the same issue occurs on Linux (Manjaro), so I assume it is a general issue with the FW16 and PCIe tunneling, since the ethernet IC in the dock uses PCIe.

When the laptop is turned off while still plugged in and then turned back on a minute or so later, the DisplayPort and USB ports work perfectly. The issue is that the Intel I225 adapter does not show up in device manager, nor does the dock show up under “USB4 Host Router” devices in “USB4 Hub and Devices” Settings. To make it show up, I have to unplug the USB-C cable and plug it back every single time this happens. It seems like somehow the dock isn’t being recognized as an actual USB4 device until it is replugged later and that is what causes the ethernet adapter to not be detected.

I have already informed Caldigit support about this, but I am most likely going to have to return the dock back to the seller since I doubt there is enough time to get this issue fixed (if they do as it might also be an issue with USB4). Just wanted to inform anyone that plans to use this dock with their FW16.

New Beta Bios for FW16 released, should hit stable in about a week. No mention or callout of any USB changes or improvements. Im having less than perfect experienced dock as well.

Yup, I was hoping this might fix it, but sadly nothing in the changelog and after updating myself. There is something about device compatibility under known issues that haven’t been resolved yet, but I am unsure if that is related to USB4 or something else, so I am not going to gamble and rather return the dock and try something like the Surface Thunderbolt 4 dock. I only really want 2.5GbE and monitor output without an MST chip inbetween to get FreeSync support, which one of the 3 thunderbolt ports on the Surface dock should give me. The bonus on the Caldigit dock is that I already had a DisplayPort output, so I will need a USB-C to DP cable now.

1 Like

The only issue I have with my TS4 and FW16 (7840HS) is the monitor issue (2 external monitors, 1 fine, the other only detected as a unknown monitor so stuck at 640x480) in Fedora and Ubuntu.

No issues in Windows 11.

Huh, so you have no issue with the Ethernet? Could you maybe just try to do the same steps that I did and come back with the results. Keep the laptop plugged into the dock while doing this.

Turn the laptop off, wait a minute or two to make sure that both the laptop and dock are fully off, then start the laptop and boot into whatever OS. For me, on both Windows 11 and Manjaro, the Ethernet adapter is not shown at all in settings until I unplug and plug the USB-C cable back in. I might just try another cable when I wake up tomorrow but I would like to see if it really is an issue just on my end.

I would but I don’t have Ethernet run to my workstation anymore. I pulled a long wire to do some testing months ago but I no longer have that cable.

If I do, I’ll text it out. This is in Windows 11, Fedora, or Ubuntu?

I do remember seeing the 2.5 Gbit device in device manager and in network interfaces.

Great, if you manage to get a way to test it, that would be great. This is in Windows 11, so the Ethernet adapter does not show up in device manager, nor does the dock show up in the Settings app under “USB4 Docks and Devices”. Only after replugging do both start to show up. I did not do enough testing on Linux, but on my Manjaro (Gnome) install, the “Wired” connection does not show up in settings until I also replug like I have to for Windows.

Wow, okay… so I can corraborate your experience. Exact same thing - ethernet interface is missing in both Win 11 and Fedora when I leave the dock plugged in and do a cold boot. Comes back if I unplug/replug while OS is up and running.

Same for the 2nd external monitor (the one that is detected as “unknown”). So it’s not just the Ethernet that doesn’t get detected on boot. It’s the 2nd “unknown” monitor to (on both Win 11 and Fedora). After cycling the plug, both the Ethernet and monitor shows up.

The montior still has that “unknown” issue in Fedora so I can’t change the resolution from 640x480. In Windows, cycling the plug makes the monitor come up and show up fine (1080P at 75 Hz).

My main ext monitor is always fine no matter what (2K @ 165 Hz). I also use my built-in display so I get a total of 3 monitors (except in Fedora, because the 2nd ext monitor isn’t really usable so i just disable it Settings).

The monitor issue seems like a software issue since it works fine in Windows, but not Fedora. The NIC and monitor being missing on cold boot may be a issue with CalDigit since it affects both OSes.

1 Like

I do wonder if this is an issue with USB4/TB4 docks in general on the FW16 and not just CalDigit. Maybe someone with an eGPU dock or similar that uses actual USB4 could give it a test, like in your case an extra display from one of the USB4 ports on the TS4. USB and DP ports work fine even when its not detected as a USB4 hub because I assume those use regular USB and DP-Alt Mode.

I just tested it with another USB-C cable like I said yesterday. I have one from a Plugable dock and surprisingly after trying 3 times, the dock always got recognized correctly and ethernet works on boot. I’ll keep using this cable and do more tests, but it might be an issue with the cable that comes with the CalDigit for some reason.

It is more likely bugs / complications with AMD’s USB4 implementation. The BIOS should be able to manage USB4 connections, so that it can boot from USB3 and PCIe devices behind USB4/TB3. And the OS has to take them over at some point. If you reconnect the dock, you do it when the OS is in full control and manages all parts of the connection.

I think this would be best compared to a Intel equivalent host certified for TB4. It would fit with AMD having other bugs with the USB4 implementation still. Not surprising, given how complicated it is and how new AMD is to the game.