USB-C hubs and my slow descent into madness
Just to start this off on a fun note: this article is not a review. This fact will become clear later on, but I figured it’s worth highlighting that just in case somebody finds this text via their search engine of least distrust.
I have one of those laptops lacking a lot of accessory ports. In fact, I’m writing this on an Apple MacBook Pro, and all I got was four lousy USB-C ports. If I want to connect pretty much anything, I need some sort of adapter or some sort of hub. USB-C hubs are a great idea: not only do they usually offer a power supply pass-through, but they also allow you to plug in some USB devices, an ethernet cable, and maybe even a monitor. Some even have fancy stuff like an SD card reader or a secondary audio output! And all of that over a single USB-C connection, which makes everything super comfortable if you frequently carry your laptop around your home, but you also have a desk with fixed devices set up.
Unfortunately, since 2018, I’ve worked through three USB-C hubs, and they’re all kinda bad. To vent my frustration, I want to share a little1 rant with y’all! So let’s start.
Satechi Multiport Adapter V2
So, the first hub in my possession was a “Satechi” branded one. I bought two of them; one for my desk and one for my cable pouch for mobile use. Mid 2018, I paid around 90 euros each on Amazon. Not particularly cheap, but Satechi is a brand that was and still is sold on the official Apple.com accessory store. Interestingly, Apple still sells one Satechi USB-C hub, but only one model without Ethernet. You’ll learn in a bit why I find that notable. But anyway, surely, if I buy something that expensive from a brand even sold by Apple, I’ll get something good?
Here’s a photo.
It worked great for about a year or so. Eventually, I experienced frequent HDMI cut-outs, the Ethernet connection was unreliable, and ultimately, both hubs just… died. The Ethernet issues were particularly annoying because the hub sometimes decided to downgrade its Gigabit connection to 100baseTX. I didn’t notice that too much while browsing, but backups to my NAS, in-home streaming of games, … those applications really suffered. It didn’t even tell you that, even if I forced it to 1000baseT in the macOS network preferences, it only ever negotiated 100baseTX. I was able to see that via my switches’ LEDs and its control panel, but there was no indication to the operating system.
I tested the same hub on my Windows desktop machine, and it sometimes had the same issues there, so I figured it probably was just a hardware issue. One of those hubs landed in a trashcan in some hotel in some large city in the USA, and the other one ended up in a drawer.
For reasons that will become a bit clearer later on, I… I destructively took it apart. Here’s the PCB.
To the system, the USB hub in it identified as vendor
0x2109 (VIA Labs, Inc.), product
0x0817, which is the USB 3.0 hub used for the three USB ports and the Ethernet interface. There’s also a second USB hub, but only a 2.0 one, same vendor, but
0x2817 as the product ID. That slower hub was used for the SD and microSD card reader.
The Ethernet portion is interesting. Its vendor ID is
0x0bda (Realtek Semiconductor Corp.), and the product ID
0x8153. Ah, so it’s a Realtek RTL8153! I always found Intel NICs to be way more reliable and stable, but okay, that’s a reasonably popular chip.
Notable components on the board:
- Genesys Logic GL3224 - a card reader chip, doing the SD and microSD support.
- Heling MT24-S1T1 - an “RJ45 transformer” apparently, converting the internal logic levels to something in line with the Ethernet specs.
- Parade PS176HDM - a DisplayPort to HDMI converter, used to convert the DisplayPort signals to HDMI2.
- Realtek RTL8153B - we already knew that one.
- Realtek RTS5411 - a “USB 3.0 HUB Controller”, looks like this is connected to the SD cards, so that’s probably the chip identifying as a Via Labs VL820 here?! I’m slightly confused because there is no VL820 on the board. I don’t see this Realtek controller showing up anywhere in the running system.
- VIA Labs VL102-Q4 - a USB-C DisplayPort alt-mode controller (used to get video signals out of the USB-C port).
- VIA Labs VL817-Q7 - a 4-port USB 3.0 hub. Makes sense; three ports are exposed, one is used for the Ethernet port.
- A couple of Boyamicro flash chips.
Interesting component selection. Even more interesting, though: the MAC address! It’s
48:65:ee:1a:1b:60, and if you throw that into an OUI lookup database, you’ll get…
Gopod Group Limited. Wait what? That’s neither Satechi nor Realtek! So I threw that name into Google. According to their website, Gopod is a company
Specializing in ODM/OEM custom-made mobile & tablets accessories
… oh. If we look around, it’s easy to notice that the Satechi hub is just a rebranded version of a product still available on their website. That’s actually really disappointing, to be honest. Searching on Aliexpress, I found several USB-C hubs with the same case, same specs, and probably the same components… for 10 euros a piece. Paying 90 euros just because some company printed their logo on it feels… wrong. Ah, whatever.
As I said, both of those hubs died, so I had to purchase new ones. This time, I went for the…
ICY BOX USB-C Dock
“Icy Box” is a brand of the German RaidSonic Technology GmbH, and I figured buying something sold from a German company is at least an indication that I might get some helpful support if something goes wrong. So, in early 2020, I purchased two of those hubs for 70 euros each on Amazon.
It’s very similar to the first one, but this time with a headphone jack and an additional VGA port, I guess if you need to plug in an ancient beamer or something? The headphone jack is actually a headset jack, including a line-in - I only discovered that looking up the datasheets of its components, though.
Unfortunately… it did not work too well. I mean, the monitor output and the power pass-through worked fine all the time. However, the Ethernet port caused some issues. Sometimes, the port degraded to 100baseTX and simply refused to do Gigabit ethernet at all, with no indication. Oh no, I’ve heard that before… Looking at the Ethernet USB interface, this one identified with vendor ID
0x0bda (Realtek Semiconductor Corp.) and product ID
0x8153… yikes, another Realtek RTL8153, with precisely the same issue as my Satechi hubs… this isn’t great.
This time, I decided to contact the support. I even got a fast response from a RaidSonic staff member with the initials AS. Unfortunately, that’s all of the positive things I have to say. In my initial ticket, I explained in much detail that the hub claims it’s running Gigabit while the switch and the actual connection speed disagree. I’ve also mentioned that I’ve replaced the Ethernet cable, tried different switch ports, tested the hub on another machine with Windows where the problem sometimes reproduced, … and the first response I got was asking me to replace my cables, try a different switch port, and to reboot my laptop! Oh well, I replied that I already did that. Unfortunately, the conversation didn’t really improve afterward. The support staff appeared to just brute-force all the macOS hardware troubleshooting guides (including “reset your SMC”), completely ignoring the fact that the issue reproduces on multiple machines…
They eventually stopped responding, and I stopped pinging them because … the hub wasn’t expensive enough to spend more time on that. Since I had two of them, I could just switch out the hub, as the other one pretty much always worked after it had a couple of days of downtime (hey, without resetting my SMC or resetting all my network preferences).
Last week, that little hub may have attempted to destroy my MacBook and burn down my house. I’m not even joking! While I was live-streaming and chatting to some friends, my MacBook just took down all its USB ports and displayed the “because a USB device was drawing too much power, USB devices have been disabled” message. I had nothing else plugged in at that time, so… it was clear what’s causing it. I re-plugged the hub, rebooted my macOS, unplugged the devices attached to the hub, … nothing worked. Ultimately, I decided to switch out the hub with the second one, and on touching it, I almost burned my hand. At that point, probably 10mins after turning it off, it was still reading 75 degrees on the outside. So that’s fun. Clearly, something broke.
In an angry twist, I threw the hub into the bin and purchased a new one (more about that later). Luckily, I still had a second one to temporarily use, which means… here are some PCB photos!
Let’s have a look at what’s on the board!
- C S FS240800005 1944J - I couldn’t actually find anything on that chip, but given its placement and connection, that’s the RJ45 transformer.
- FE1.1S - a USB 2.0 hub controller, looks exclusively for the audio device.
- Genesys Logic GL3224 - same card reader chip as seen in the Satechi.
- ITE Tech IT6564FN - that’s a DisplayPort to HDMI and VGA converter.
- Realtek RTL8153 - yeahhh, I knew.
- Solid State System SSS1629A5 - the audio controller.
- VIA Labs VL102-Q4 - ah yeah, that’s also in the Satechi - it’s the USB DisplayPort alt mode controller.
- VIA Labs VL817-Q7 - we’ve also seen that one before. It’s the same USB 3.0 hub.
- A couple of Boyamicro flash chips.
So… except for the few parts needed for the hardware differences (the additional VGA port and the headset jack), it’s… more or less the same board. In fact, even though the board layout is different, the connections are not really. Almost looks like it’s based on the same reference design.
You know what’s coming next… the MAC address. This time, it’s
34:29:8f:7c:ec:00, and if you throw that into an OUI database, you get…
Dongguan Kingtron Electronics Tech Co., Ltd. That’s… that’s not Icy Box or RaidSonic, is it?
Okay, let’s google that one again, and sure enough, according to their website, they are another company building all kinds of rebrand’able computer accessories… urgh. Browsing their website a bit, I found this hub, which has the same ports, and a few other hubs like this one with a similar case to the Icy Box one. Searching the product name printed on the PCB returned no results, so it’s possible that RaidSonic customized the hub a bit (“take this product and put it in this other case you already have”), but that’s … still kinda crap?
Again, I found multiple identical-looking products on Aliexpress for 10 to 15 euros. I appear to be paying a lot of money for products that I could buy for cheap on random websites is starting to piss me off a bit at this point. I don’t really care about paying too much - I’d be perfectly fine with that if the product did its job. Unfortunately, it doesn’t do that.
Also, failing in a way that causing some internal short circuit and overheating to a point where it could have actually started a fire is kinda uncool. But maybe that’s just me.
Little excursion: The issue with Realtek RTL8153
I’ve now had two kinds of hubs from (maybe) different manufactures and different companies selling the stuff. Both had the same networking chip, and unfortunately, the same problem.
As it turns out, I’m not the only one with such issues. Even back in 2019, people have complained about problems with RTL8153s on macOS randomly disappearing, dropping 50% of all traffic, dropping down to 100mbit. Searching the apple discussion forums for that chip yields several people having issues, from as early as 2017 to just a couple of days ago. There is even a
realtek-rtl-8153-driver-osx-info.md on GitHub Gist which contains some debugging information and, at the time of writing this, 60 comments from people having all sorts of weird issues.
Sometimes, these problems go away by installing Realtek’s own drivers. However, looking at Realtek’s official driver download site, macOS users will notice that there actually are no drivers for macOS 11, aka Big Sur. Now, macOS 11 changed a couple of things around how Kernel Extensions work and how they need to be signed, and it’s easy to blame Apple for that. However, if you are - according to Wikipedia - a two-billion-dollar company like Realtek, then I expect you to get your shit together. There are exactly zero excuses for Realtek to not have a driver release ready almost a year after Big Sur has been announced. Zero.
Now, I don’t know exactly what’s going on there. It is possible that somehow macOS’ built-in driver is setting a flag that the RTL8153 really doesn’t like and then semi-permanently downgrades to 100mbit until it’s been out of power for a while. It’s possible that the driver isn’t even to blame, and it’s just a hardware issue. You can install the 10.15 macOS drivers on Big Sur if you disable kext signing (which you have to do by disabling the System Integrity Protection, so you should absolutely not do that), but even that didn’t immediately fix my issue. I was only testing in a lab environment and didn’t have a “new” hub to test. Who knows what’s really going on.
Ultimately, I should not have to care. If you market your device with “plug-and-play support for macOS 11 and below”, then … it should work. I suspect, however, these issues may also be why Apple is no longer selling any ethernet dongles besides their own on Apple.com - but obviously, we’ll never know what Apple does.
Because one of my Icy Box hubs failed spectacularly and my second one wasn’t trustworthy anymore because of that, I had to buy a new hub. This time, I went with…
Anker PowerExpand 8-in-1
I only bought one this time… you might say that I’ve been… burned before. Hahaha. Oh god. This one has been relatively cheap at 55 euros on Amazon. It also only has two USB ports, but to make up for it, there are two HDMI ports. Given I have more than one monitor on my desk, that’s just about perfect. I’ve only had good experiences with Anker’s power banks, so that felt like a good purchase overall.
Here are some photos!
And here, this post ends. Everything is awesome. There is nothing to complain about this hub. I’m happy!
Yeah, okay, I know that nobody believed that.
The first time plugging everything in, the hub worked fine. The monitors were working, the Ethernet port managed to send 988mbit, and the SD card reader worked just fine. Unfortunately, looking at the hardware information, … it’s another Realtek RTL8153 … and looking at the MAC address, something deep in my head popped very audibly and pushed me into writing this post. Unfortunately, I decided not to take this one apart, as I wanted to send it back to Amazon, and I knew that there is no way to take it apart without damaging the case. So no PCB photos and no part list this time, I’m afraid.
Who am I kidding. Let’s throw all reasonability out the window and ruin one more device For Science(tm). Here is the PCB.
Disassembling this one actually surprised me a bit. Firstly, I managed to get it out of the case without cutting the cable. Even the case is still alive, although it’s a bit scratched up and slightly deformed, so no way for me to return this. But most interestingly, the case is made of plastic, but the whole PCB assembly is encased in a metal case. I didn’t take a good photo of it, but you can see what I’m talking about in the glamor-shot arrangement I posted for social media. The case was connected to most of the larger ICs via those blue heatsink pad glue sponge thingies. Also, the solder mask is green, which is fantastic 3.
We already know that there’s an RTL8153 on the board, but let’s look at the other components. It’s worth noting that everything was super hard to read. It almost felt like they had a lousy attempt at lasering off the labels (they sometimes do that for funny reasons), but it’s probably just caused by the heatsink pads. Here’s what’s on the board:
- AppS G2401CG - while I couldn’t actually find the “AppS” company, that chip is another RJ45 transformer.
- Genesys Logic GL3224 - the card reader chip we’ve seen twice already.
- Realtek RTL8153 - oh well.
- Southchip SC8903QDHR - a buck converter, but with four MOSFETs embedded to implement some basic power management.
- Synaptics VMM5200 - the DisplayPort to dual-HDMI converter. Actually, a good one, because it supports 4K 60fps on both channels, not just on one. Also, fun fact: “firmware upgradeable over I2C”.
- VIA Labs VL103-Q4 - we’ve seen the VL102-Q4 in the other hubs, and the VL103 also is a USB alt-mode controller.
- VIA Labs VL817-Q7 - our old friend, the USB 3 hub.
- A couple of flash chips from Fudan Micro, Macronix, and Puya.
This one is interesting. We can see a couple of our old friends, but also a couple of new components. Although I have no idea if/how power management is actually implemented, the buck converter is interesting. Also, the Synaptics video interface seems to be quite well picked here and delivers adequate performance. The case design is odd; I don’t know how effective their thermal management is if they enclose the metal body in plastic, but hey.
You kinda already know what happens if I check the MAC address. This time, it’s
a0:ce:c8:e4:4d:d4, which resolves to
Ce Link Limited. On their website, they call themselves the “leading manufacturer with strong R&D team” and they sell, well, rebrand’able computer accessories. Not only USB-C hubs, though, but also lots of power banks that look suspiciously like Anker’s entire product lineup4. I could not find the exact model on CE-Link’s website, but it seems like the Anker hub is the love-child of this and this hub. And once again, you can find practically identical products on Aliexpress for really cheap.
At this point, I don’t really know what to say. It honestly feels like no matter what you buy, you get more or less the same hardware, and you’re most likely getting a heavily overpriced product just because some company printed their logo on it.
Outsourcing your production to China and even outsourcing/moving your R&D to local people with lots of experience in part sourcing and manufacturing is one thing. There are a lot of great arguments for it, and I’m generally supportive of that. However, I can’t help but feel a little bit cheated by companies just buying off-the-shelf products, slightly modifying the case layout, and then quadruple the price because it’s “from a reputable company”.
I’m slightly concerned about the fact that some of the products use electrolytic capacitors. Those hubs get pretty warm, even if you’re not routing your laptop’s power through the hub, and electrolytic capacitors don’t like warm environments, and that’ll significantly shorten their life. However, that’s probably negligible, since lots of resistors are also designed just barely around their load ratings, all the chips run amazingly hot, … it just feels like another product family intended to be used barely one year until it dies, just to end up in the landfill.
The fact that most USB-C hubs tend to use the same RTL8153 networking stack is also very annoying, especially since this is known to break on macOS, and it looks like Realtek just doesn’t care. That’s not really great if you’re promoting your hub primarily to MacBook owners. And the fact that most of those quirks (especially the silent network downgrade) are things that most people won’t even notice, those companies appear to be getting away with it just fine - it’s not like one annoying blog post and a couple of nerds complaining online is going to change anything.
Personally, I’ve now purchased the Elgato Thunderbolt 3 Pro hub, a not-mobile Thunderbolt hub. The good news is that it’s an actual Thunderbolt device; it comes with its own beefy power supply that can even charge my power-hungry laptop, the NIC in it appears to be an Intel NIC, and they at least bothered to get their own MAC OUI. I’ve seen a couple of those desktop Thunderbolt hubs on the OEMs websites, so I wouldn’t be surprised if the Elgato hub is also just another off-the-shelf product, but at least they cared enough to make it less obvious. They also offer a “mini” hub, which might be suitable for traveling - but at around 100 euros, I just don’t feel like buying (and destroying while opening) another piece of hardware5. So I’ll probably just keep using the Anker hub until it dies.
If you are in the market for a new USB-C hub, then… well, I’m sorry. I can’t tell you what to buy. It’s probably not the worst idea just to buy a couple of cheap hubs on eBay and Aliexpress, see which one works the best, and keep the others around as backups. Chances are high you’ll get the same hardware as the one in the “expensive” hubs anyway. If you buy the “branded” version of those off-the-shelf products, you might get devices that have passed additional quality control measurements. You might have an easier time returning them or getting in touch with the support folks if something goes wrong, but in my humble opinion, it’s hard to say if that’s worth the massive markup. I’d also say “avoid the RTL8153 at all costs”, but given that chip appears to be everywhere… good luck with that!
Okay, I vented enough.
- 2021-04-26: Added a note about additional Quality Control and support capabilities for branded white-label products.
I really did my absolute best to keep this short. You can tell, this article contains only 3917 words! ↩
I find it kinda interesting that they just don’t expose a DisplayPort port to the outside and instead go through the extra expense to convert it to HDMI. ↩
No, really. I know that black solder masks look nice, but they’re absolutely horrible. You can’t really see or follow traces at all unless you hold the PCB into the light at just the right angle. ↩
I mean, Anker’s PowerCore 20100 looks suspiciously like a slightly modified CE-Link PBM-G-C201. Makes you wonder what Anker is actually doing, huh? Only slightly changing button layouts and slightly altering the case design? ↩
However, if you want to learn details about the Elgato Mini hub, please feel free to sponsor two. :p ↩