Dual USB-C Expansion Card

What a thing of beauty! Congratulations, good luck on the enclosure part. I’d like to buy one or two if you plan on selling them. :+1:


You did the “just put 2 usb2 ports per type-c port instead of a mux” thing?

Yes, mainly to avoid additional switching ICs and therefore more occupied PCB area (and BOM cost). Also the 4-port IC has the exact same size and footprint as the 2-port version and the 2 native C-ports is significantly larger. I can’t see any downside of implementing it that way. Also it’s an implementation mentioned in the application note for the hub IC.


You payed for 4 port and you will use 4 ports XD. Pretty sure the 2 port is just a cut down 4 port anyway.

Honestly I prefer this implementation over the official one, who is going to say not to an extra port, if framework used this method, making a dual port card would have been almost infinitely easier.

1 Like

I guess that’s not an option if you have Thunderbolt capabilities since it uses both RX/TX channels. Also it would have some cavities when you plug a PD-device into one of the ports since you then suddenly have a higher voltage on the supply lines which you would have to manage then to not kill things that are on the other port.


Here’s some first prototype for an enclosure, it’s based on the reference provided by framework:

Height is pretty tight and would barely fit an metal sheet on top.


It’s most likely going to change and I have to figure out where to order such a cut and bent metal sheet without breaking the bank (on xometry probably?).


looks great. happy to see the project develop, and now with a first case, or the lower half of one.

fyi, i recall that some diy exoansion cards, such as some ‘dingle hider’ designs, never added a top cover, but left it open. they still seems to work and look fine, when plugged in, reportedly.

edit:although with this one if you watered to cover the front, thinking about that again, yeh, yiu may still want a too cover… but that could perhaos be 3d printed also. And with all the jntrest, someone else might be willing to do tha cover case design.

anyway, looks great, happy to see the two port project progress. :blush:

1 Like

It’s a little flimsy without a cover to hold everything in place since it’s only held down by the two screws on the plug side (they aren’t installed here tho). But I’ll experiment with a fully printable version of a front bracket that holds it down. I’m preferring a cover on top since otherwise sensitive components are completely exposed.


I think a version that has a slightly thicker top would be fine, theres some room to hang under the laptop.

I thought about reversing the card so the PCB is at the bottom but I think it’s better to have the more vulnerable part on the laptop-side and the more resilient part with thicker plastic on the bottom so it’s less likely to be damaged :thinking:.
I think there’s enough room to have a slightly thicker (<0.25mm) top and it’ll still fit in.


If you can do it as a flat sheet, a laser cut mylar could work. Then you don’t need additional material to prevent the metal sheet from shorting against stuff that is below it.


I did just print a flat piece with folding marks tonight, looks surprisingly okay for a first draft (besides the not too good quality) :thinking:.
I have to refine the way the screws are placed since they can’t go completely through the whole assembly. Probably with some metal-inserts and countersunk screws :thinking:.


I have to say, this is a rather fantastic project. Well done. Depending on the thickness of the lid you could attach it using tabs that click into the body at the ends, if you check some of my module cases you can see how I did it, or I could send you a file of a blank case with just the tabbed lid and body.



That’s also a nice idea, did you publish the design files somewhere? :blush:
The lid is quite thin tho (currently 0.3mm), but it might get some thicker parts where the components allow it to make it a little stronger.


Wow, this is coming along fast! Keep up the good work.


Not specifically of the fastening, but you could probably see from some of the images I’ve posted. I’ll get some close up screen grabs tomorrow, so you can see for yourself.

1 Like

So, this is how I fastened the lid to the body without screws. Tabs on the lid lock into the recesses on the body.

I also had to split the back on one module because the board was locked in at the front of the case.

You may be able to produce a frame with tabs at the ends or middle and use a thin piece of aluminium sheet as the lid to provide more room. The sheet would make the top very rigid.

Also, if you are planning to sell these, you could use a print service such as Weerg to make the cases from nylon, which is more durable and you can print smaller tolerances. Printing several at a time would be pretty cost effective and you could have them dyed a silver or grey.
Anyway, it was just a thought. I’m not entirely sure of the dimensions involved. You can usually fiddle about with things and come up with a solution. When I’m designing a case for a module, the end result is often quite different from the initial idea as things you didn’t consider occur along the way.


OK, so I had a thought after looking at the case you printed and had an idea. The top and front could be a single piece that slides onto the body, it’s not dimensionally correct and is only an idea, it would definitely print well in nylon, I don’t want to bang on about nylon but it’s such a good material for these types of projects.


test.stl (158.1 KB)

One more.


test2.stl (795.1 KB)


I read through the thread and might have missed this, but does this project support two fully-featured USB 4 ports including displayport alt mode on both ports? If only a subset of features, which subset and other limitations are there on the ports?

USB 3.1 Gen1 (5 Gbps), no DisplayPort, no charging (no USB-PD).