Demand better of your manufacturers.
I don't personally feel like the framework 13 needs more than 4 expansion bays, but I'd love to see expansion cards that use Thunderbolt to offer (for instance) two USB-C ports, or a USB-C and a USB-A. (There are some experimental unofficial ones attempting this.)
If those were available, my four expansion bays would be one Ethernet, one HDMI, and two 2-USB port cards.
- USB 2/3
- Power delivery
- DisplayPort[0]
- PCI Express
- Analog audio
- USB4
You need some kind of chip that can negotiate two ports' worth of that nonsense and appropriately multiplex them into the correct set of altmodes on the interior port. Some of them have readily available and widely implemented hub silicon. Some of them require cursed nonsense like DisplayPort MST[1]. Some of them don't even have a hub mechanism - what do you do if someone plugs in two analog audio dongles? Mix the signals together?
Furthermore, as far as I'm aware such a "miracle dongle" chip does not exist. If it did, it very much would not fit inside the tiny footprint that a Framework expansion card does. One key thing to note is that because USB-C is reversible, all the high-speed data modes need a mux chip per port. So even a simple USB3 hub card with no power delivery or altmode support is going to need either several support chips or hideously expensive-to-design Framework silicon.
As it currently stands the state of multi-port USB-C dongles is absolutely terrible. Just... go to your local Best Buy, and look at the terrible compatibility of the multi-port dongles in the Apple section.
[0] There used to be an HDMI altmode, nobody uses it. All HDMI-to-USB-C dongles on the market are actually HDMI-to-DisplayPort-to-USB-C dongles.
I'm not mentioning the really cursed altmodes like MyDP (Nintendo Switch dock) or VirtualLink (VR headsets). That last one violates spec by reusing the USB 2 pins, necessitating the existence of bespoke 2-to-3 silicon that only people who hate USB 2 audio noise bother with.
[1] I didn't understand why Apple banned MST until I had to use it:
I have a triple monitor setup that needs to go over two optical cables to my computer in another room. The first MST hub I tried would hang Windows for so long I triggered some kind of display detection failsafe that bluescreens the kernel. The second one (an older standard) worked decently, except it wouldn't pass through EDID for one of my monitors. I worked around that with custom resolutions, which stopped working last September in a really weird way. If I connect all three monitors through the MST hub, the GPU cursor overlay refuses to move onto any monitor behind the hub. And that's only with the combination of MST + custom resolutions: if I only have one monitor on it's fine, if I give the other monitor a third cable it's fine.
In the meantime, we have seen a community member start developing a Dual USB-C Expansion Card that offers only USB 3.2 functionality without USB-PD. That’s not a card we will build at Framework, so it is awesome to see it coming from the community.
USB 2 is possible, for some really dumb reasons. USB-IF actually prohibits repurposing the USB 2 pins for other purposes in USB 3.x capable connectors; effectively making it a separate bus from everything else. So you can route the USB2 pins on both C connectors to a hub chip and route everything else from the "privileged" port to the inner port. You will still need some kind of power mux so that the USB 2 port still gets power regardless of what port holds the power role.
This technically breaks the USB-IF rules[1] because you aren't supposed to disassociate the USB2 and 3.x pins like that. In practice as long as every device sees either just 2.0 or both 2.0 and 3.x pins, it's fine.
USB 3 onwards is a problem because of altmodes. The 3.x pins are officially referred to as "high-speed lanes" in the USB-C spec, because there's two of them and they don't have to carry USB 3.x. Every altmode[0] exclusively repurposes the high-speed lanes for some other kind of traffic. So USB 3 is effectively an altmode in and of itself. If you put a USB3 hub on those pins, then you lose altmodes, unless you have that magic hub silicon that doesn't exist that I mentioned in the parent comment.
[0] The USB2 lanes are forbidden to be reused by altmodes. Which is why VirtualLink is incredibly cursed.
[1] Yes I actually have mentioned this sort of thing in the Framework forums, no they won't actually sell a card like that. Consider it an EE exercise for curious Framework users.
You'd definitely need a smart hub chip, yeah. But I don't think you need all the altmodes. No analog audio, for instance. Primarily Thunderbolt, and power.
I'm interested in the volume question; what makes USB-A and USB-C unable to both physically fit in the space no matter how creative you get?
Analog audio was just me being exhaustive, I'm pretty sure none of Intel's chips support that altmode natively. Hell, only like half of the market of USB-C phones support it, which makes it mildly cursed.
To what degree is it impossible, and to what degree is it challenging? I've seen the internal side of a USB-A port, and while it's slightly larger, it doesn't seem excessively so.
(Also, as an aside, I do wish that Framework had made the two expansion slots on each side adjacent and allowed for double cards that take up both slots. Two USB-A and one USB-C in one double-bay, for instance.)
> Analog audio was just me being exhaustive, I'm pretty sure none of Intel's chips support that altmode natively. Hell, only like half of the market of USB-C phones support it, which makes it mildly cursed.
Yeah, it's cursed that there exist USB-C-to-headphone-jack cables that physically plug into a laptop but will never work.
It surprises me especially that MacBooks seem to be targeted at professionals, like creators and creators always have lot of stuff with USB plugs - like MIDI keyboards, MIDI controllers, external audio interfaces, mouse, drawing tablet, external hard drives - but MacBook only has like 3 sockets, despite being super expensive.
I mean... objectively speaking here: yes.
They eat up a ridiculously large amount of physical space. Ports are cheap when space is cheap. Space is at a very high premium for laptops.
The port doesn't just magically disappear into the machine, it eats up that entire chunk of the laptop. Space which could be going to mainboard / speakers / hid / battery.
So modern laptops give you a very high bandwidth and low physical size bus (thunderbolt/usb-c) and a duplicate so you can charge at the same time and that's really all you need. Now I get the best laptop for the space the case takes up and the option to plug all that other stuff in is still there. The bus is plenty fast, you just need an adapter or dock.
I have a 4 usb-c port machine. I've never had all 4 ports in use at the same time. I have (just counting plugs on my hub) 9 usb devices and 2 4k monitors plugged into my machine. Switching them over from work to personal laptop is as simple as unplugging and replugging a usb-c cable. Feels fine to me.
I'm not sure more than 4 ports is _extremely_ niche use case especially for a work device, but yeah I get that most people would be okay with it and I understand Framework's choice.
Left side: * barrel jack charging port * HDMI * microSD slot * USB-C (also usable for charging) * Gigabit ethernet
Right side: * USB-A * 3.5mm jack
Even discounting the microSD slot and the barrel jack, this is 5 ports. On a 11" laptop.
Granted, it's not exactly thin, but I really don't care.
Maybe the Framework could have squeezed in some more ports if they weren’t customizable, but I prefer the flexibility.
I've had lots of experiences of a laptop festooned with nubs getting caught / smashed in such a way (from normal in/out of the bag or being put down hard on an end) that the plastic shells or cables get destroyed and I have to fish bits of usb jack out of the laptop.
After a decade (it feels like, anyhow) the USB-C promise seems real.
(edited to add power supply to list of things on the "home" usb hub)
1x charging port, 1x Thunderbolt/USB-C, 1x USB-A
And on the right side:
2x USB-A, SD-Card reader HDMI, headphone/microphone jack.
On a 14" laptop.