External USB-C enclosure for input modules

This has been discussed enough in the margins of other threads that I feel it deserves a thread of its own.

Lots of folks have asked for an external enclosure for their input modules that would let them use them outside the FW16. Common use cases:

  • Numeric keypad (medium size module) swapped out for flashy bling but still available as a USB accessory.
  • The keyboard is so nice I’d like to use it for my other machines” (large size module)
  • “When I upgrade my LED module to an RGB LED module I’d like to have someplace to show off the extra module” (small size module)
  • Developers or production testing modules

It’s not super hard: the input modules are just USB-C, and we have specs for the connectors, and even a full schematic for a “dev board” which adapters the pogo pins to USB-C. The main task is just designing a suitable (and sleek?) enclosure.


My own contributions here: I’ve started working on a parametric freecad design for the enclosure, which ought to be able to scale from small to medium to large to even theoretically “full scale” (large plus two small) widths.

The electrical part is pretty straightforward other than sourcing the pogo pin connector, which is custom to framework. But I found this on digikey/JLCPCB, which ought to work in pairs:


(The needed connector is 2 rows of 4 pins, spaced 2mm apart in the “4” direction and 3.5mm apart in the “2” direction.)

I haven’t figured out how to source and mount the magnets yet; on my dev board from framework the magnets quickly came unglued and I noticed that Joseph was using clothespins so I suspect the same happened there as well. So some better mounting mechanism is needed (or maybe just better glue).


Some progress to report!

I’ve designed the PCB and a 3d-printed case for holding two small or one medium-sized input module. It could be scaled down to a single small input module or scaled up to a keyboard module (it’s a parametric design) but this seems like a reasonable starting point. It includes a two-port USB hub (actually four port!) so that two modules can be used simultaneously, but these components can be omitted to make a single-port version.

Design is open sourced at GitHub - cscott/ExternalEnclosureFW16: Design files for an external enclosure for Framework 16 Input Modules but beware that this is completely untested right now. I’ve sent the files off to JLCPCB to be printed/fabricated, but I don’t have them back yet so who knows what little bugs there are.

Some renders:

Without the lid on the front:

(7-segment display input module not included!)

And the PCB using a Molex connector in lieu of the Framework-proprietary pogo pin connector.



PCB is back and appears to be functional!

Still waiting on the enclosure parts and magnets to put everything together.


First prototype is functional:

The surface finish from my 3d printer isn’t great, the version printed by JLCPCB should look much nicer. I had to adjust a bunch of clearances around the pogo pins to get the official framework module to sit nicely against the magnets. V2 of the PCB has an oval slot to allow a magnet pair instead of the single magnet in V1, which should also help with grab. V2 of the PCB also has a ch32v microcontroller to watch the board ID pins and handle power management.


Hi @C_Scott_Ananian,

This is a really neat project. I have been thinking about the ability to use the Macropad for my CAM workstation at the office. Are you selling any of these? I would buy one for sure.

This is what a great Creators & Developers project is all about!

Let us know the progress and how someone could get their hands on one! It would be really neat if you could put the Framework logo (though you might need their permission) on like the lower left or upper left corner of it.

Great job! :trophy:

1 Like

This is awesome! Great work finding an off the shelf spring connector that works for the Input Module pads.


Thanks! I’m currently a little stuck on a compatibility issue I described over in a different thread which maybe you (@nrp) can help out on. The enclosure works for all of the boards I have on hand to test it on except the Framework official “LED Matrix” module, and I’m trying to figure out why. I don’t really want to make kits widely available unless/until I can assure compatibility with Framework modules.

Ok, I think I’ve solved that compatibility issue. I’m going to have JLCPCB make v2 boards with some fixes and improvements and if that run turns out well, I’ll likely be able to sell some kits.