Around a year ago I was searching for a solid single-cable solution for my M1 Max MacBook Pro to hook up to an external monitor, ethernet and peripherals - and best case a decent audio jack.
The MacBook supports Thunderbolt 4 so I thought I might as well go for a Thunderbolt 4 dock (as opposed to a "normal" USB-C dock), but oh boy.
First, there was the problem of display outputs. I thought I'd just get a dock with two DisplayPort ports. But there are a lot of differences. Some are DisplayPort 1.4, some only 1.2. And some use MST (multi stream transport) to support both ports; which macOS does not support. Thunderbolt 4 does support two distinct streams of DisplayPort though, so in theory docks could exist with two DisplayPort ports, each with their own dedicated stream/signal.
Long story short, there were basically no docks with these specifications. So it became clear to me early in the selection process that would need to act as a hub that has multiple Thunderbolt outputs, so I can simply use USB-C to DisplayPort cables. This seems to be the best solution anyways, as the dock doesn't limit you in DisplayPort version or feature set this way.
So I looked for a Dock with 2-3 Thunderbolt outputs, Power Delivery, USB-A, gigabit ethernet and an audio jack.
There's the Razer Thunderbolt 4 dock for example. Has all required ports, provides 90 watts of power to the computer and (at least in color "Mercury"), looks the part. Bought it, plugged it in, connected a display via USB-C to DisplayPort cable. So far, so good. USB-A seems to be working.
So, what are the problems? Well. Firstly, the ethernet controller is connected to the internal USB controller. This also means it shares bandwidth and when hammering the USB controller, doesn't only mean bandwidth is throttled, but also that latency can be affected and spike seemingly randomly (like you're on wifi). There are also reportedly some issues with USB ethernet when waking up from sleep, but this might be related to macOS. Anyways, use f* PCIe based ethernet in your 300,-€ dock!
Next problem was something I couldn't believe got through QA. When audio starts playing via the audio jack, the right channel starts playing immediately, but the left channel starts after I'd say around a 200-300ms delay. This is VERY irritating, especially with headphones. As I said I couldn't believe it so I tried other devices including Windows 10 and 11 notebooks, and they all showed the exact same issue with this dock.
I found out that the problem goes away or is at least reduced when you set audio output to 24-bit in Windows. That's not how it works in macOS though (I know you can set something in some MIDI audio setting app, but that didn't help). So you're basically stuck. It's so insane to me that this glaring and obvious issue went through QA.
Then I thought okay, it's just Razer being Razer and ordered alternative docks. Turns out THEY ARE ALL THE SAME CRAP INSIDE. Sonnet Echo 11, i-tec whatever, Kensington. If it has a similar port layout to the Razer dock, it's likely that it's the exact same crap with the only difference being the odd USB-A port more or less and slightly different PD wattage.
There's a highly praised 400,-€ dock from CalDigit, but availability was bad at the time.
I ended up getting an Anker dock for around 170,-€, which simply has 3 Thunderbolt 4 outputs and a single USB-A output. I connected a simple USB-A hub so I can connect keyboard, mouse and USB DAC and mic for audio. I use the Thunderbolt outputs for DisplayPort via USB-C and the Apple Thunderbolt (1) Gigabit Ethernet adapter plugged into an Apple Thunderbolt 2 to Thunderbolt 3 adapter, and that's plugged into the dock. You wouldn't believe that this abomination of adapter chaos works a million times better than this USB ethernet crap.
Now, this setup works but it's super ugly and messy on the desk.
Nowadays I'm using some HP monitor with USB-C which has built-in ethernet and USB-A ports. It's honestly not a great solution (and functionally worse than my solution above), but it's simple and doesn't clutter your desk with 3-4 different boxes and 10 cables.
So I'm not the only one pissed off. At least this.
What annoys me even more is that one of my monitors is capable of daisy chaining thunderbolt. But MacOS isn't. It would be the perfect solution, but no. Apple doesn't like it.
Don’t worry, I can’t get Windows 10 to daisy chain my work’s Viewsonic daisy chain-able displays either (they have a built in dock). Stuck plugging in one to USB-C and one to HDMI.
Coming from the professional/enterprise side of things, docks have been a PITA for a few years. Especially thanks to Apple Silicon and their entirely different set of protocols and standards we now have a hard time finding any reliable docks on the market. For a period of time the only serious considerations required the use of DisplayLink software (including the dock I currently run from Startech) but they all have periodic and random issues. There are some decent options on the market now, mainly from Kingston, but they still don’t easily support 3+ displays and we aren’t comfortable enough to roll them out to the whole company until Kingston handles some current issues. Peripheral hubs are the bane of any laptop-only workforce.
USB itself -- as in, the entire standardset of standards -- is a huge mess. The people in charge of it totally lost the plot on what "universal" is supposed to mean somewhere around version 3.0. The whole point of USB was to replace a whole bunch of different types of cables with one kind of cable that you could plug in and know would do whatever you needed it to do. But now there are so many different speeds and Alternate Modes and various schemes for transmitting power that not only are we back to the Bad Old Days of having different cables with different capabilities and uses, but now it's even worse because all the damn things look the same from the outside, so you can't even tell which does what without resorting to using shit like this to query the device capabilities!!!
Great that it works for you, but this dock has many of the same issues I'm describing in my post. Outputting to two displays uses MST, so it simply won't work under macOS (except for cloning the image). Ethernet is internally connected via USB instead of PCIe.
Note that all USB 3.1/3.2/(whatever, fuck USB naming) docks have these problems, but Thunderbolt 4 docks can - in theory - do better.
The reviews on Amazon seem to indicate that Mac people are running 2 displays without issues from these docks. I can see that there are 2x DisplayPort options on their site.
I'm running dual 4K monitors from mine. Not using ethernet so can't comment on that. I have no issues with the audio jack output, works perfectly and very low latency with Asio4All. It's really neat to set my laptop down and plug in a single cable to both charge the laptop and output all the ports.
edit: Looks like they have some docks specifically for M1/M2 Macs to allow dual displays:
Their Docks with dual display out for Mac either use two USB-C ports to the device or use DisplayLink, which is a whole other story. While it's true that the normal M1/M2 only support one external display, the Pro variants support two, and the Max variants up to four (which is impossible via a single cable though).
And that's alright, as (single) USB-C 3.x docks can't support two independent DisplayPort streams. Proper Thunderbolt 4 docks could very well though.
Also, docks for Mac or not, if it's USB, it's probably the same Realtek Ethernet chip the guy in the article linked by OP is talking about. And that has its own host of issues.
That's very interesting. I have been contemplating switching to Mac recently, and it's a bit surprising to hear something that Windows can apparently do better. Thanks for the info.
FWIW, I have no issue with the CalDigit TS3 Plus dock, although since I have an M1 that doesn’t allow dual external displays anyway, I can’t test that.
Actually nvm, I do have issue. I gave up trying to connect the external monitor to that dock and instead connect it separately. I forgot why I do this, though, to be honest … I had some issue with it IIRC
Edit: I just tried connecting the display through the dock again, and it works without issue; perhaps something changed since the last time I tried (OS version, for one; it might have also been my old work laptop that had the issue, and I simply just wanted to use the same setup for both)
Edit 2: Ah, this is the issue, and it's subtle! If I use the CalDigit dock to connect the (5K) display, it is, for some reason, very subtly but definitively blurry. However, connecting directly to its own Thunderbolt port on the laptop makes it clear.
Cool, thanks. Well, my solution of just connecting two thunderbolts (the monitor, and everything else (the dock)) is fine for me now, so I'm not going to purchase those until I get around to purchasing an M2. At that point, I will be interested, too, in what works.
It's not Thunderbolt, "only" normal USB-C, but it works okay, especially considering the price.
Keep in mind that the daisy chaining feature is pretty useless with macOS, as, you guessed it, it uses MST (it has to in this case to be fair) which macOS doesn't like.
You get 90 watts of power delivery, 4 USB ports and GbE.
Oh my gosh, this reads exactly like an ATP episode chapter.. Yes, docks are hilariously bad with the overpriced, or apparently not overpriced, Caldigit dock being the unicorn. Which one are you? John, Marco, or Casey? 🤭