I have a Thinkpad P1 gen 4 running Fedora I’m going to be using as my desktop replacement, and I’m looking for a Linux friendly dock.
I don’t need the dock to do much. Ideally, it could drive 2x 4K DisplayPort displays, have a 2.5Gb+ Ethernet port, and a couple USB-A ports, but 2x 2K DisplayPort and 1GbE work too.
DisplayLink compresses everything over usb. If you plan to do anything color sensitive (ie photo editing) or latency sensitivite (ie: games) it’s a bad idea sine it’s all cpu compression.
That said. They are great for multi monitor general usage (ie soreadhseets and shit) or for systems with graphic card limitations on multi display output (ie low end macs on m1/m2)
There are a couple of things that will get in your way with this.
Bandwidth
Let's go with the bare minimum of your high end given what you want:
running both of your displays at 4k 30Hz 8bit only will require 6.66Gbps per display
2.5Gbps networking is self explanatory
assuming you only want USB 2.0 ports, 480Mbps per port
without overhead, that's ~17Gbps. USB 3.2 Gen 2 can do 10Gbps, and USB 4 can do 20-40Gbps, so it would need to be a USB 4 dock at minimum, which means new and most likely above your budget. Your low end could probably be done on USB3.2 Gen 2, but you're still going to come close to your budget or blow it.
Multiple displays
Running multiple displays from a single usb-c port is not great. you can do it with thunderbolt docks just fine, but they are all going to blow your budget. With usb-c your options are a single display per port on your machine with displayport-over-usb-c implemented, or multiple displays using multi-stream transport (MST). MST is known to be extremely finicky and generally not worth the hassle in my opinion.
Recommendation
If you need multiple displays (on top of the HDMI 2.1 port on your machine), either dedicate both usb-c ports to it and use two cheaper docks, or go all in and get a thunderbolt dock like the Caldigit TS4.
The Anker 575 can drive dual 4K monitors at 60 Hz and is supported by Linux, although I’ve best luck driving one monitor with a dedicated laptop USB C port. It currently retails above $200 though.
Tb3 is supported on that, go with it, found one for 129 or so on Amazon.
Tb3 is dramatically better than usb-c in every way, mostly because usb-c means different things to different vendors while tb3 is a genuine standard.
Edit: shit you got tb4, if you get a tb4 caldigit you're set for life but they're expensive af, love mine. They're a single cable solution for everything, 2x 4k easily, think I'm at 4k+5k and it's fine.
There are official thinkpad usb c hubs on eBay for like £30 that seem to work better than most on my Linux p50, dual display ports, PD (though sadly pd is not supported on the p50)
This is the one we use but I'm not sure if it is compatible with your machine. This one is probably is compatible tho. Neither of them say that they support Linux but the one we use works fine on Fedora. Can't confidentially say that the second one I sent works for Linux but it might
I've been using a Plugable UD-CA1 for many years (Windows and Linux) and it works fine. Currently using it with an X1 Carbon G9. As it's quite old I don't know if it's still available but if not, I'm sure they have a newer version.The price was sub-100 if I recall.
Pick up a used Thunderbolt >=3 one from EBay if your laptop supports it. I have a ThinkPad Universal Thunderbolt 4 dock that I bought used for ~$100 and it has served me very well so far.
From my quick search you aren’t getting everything from under $150.
I got a USB C dock from Amazon under the name LASUNEY, but it’s not for sale any more. I’ve seen equivalent under a 15 in 1 naming that seems to exactly the same, just under a different name LIONWEI that’s around the $100 mark, 2 DP 1Gbps and many usb ports.
I believe resolution is determined by your machine’s chipset not the dock, but I could be mistaken.
Now I also found one that has 2.5Gbps networking but that’s $270 under the Plugable brand. Not a fan of the specs of that one since the power comes from a barrel Jack instead of usb c.