I have several of these 16mm Rugged Metal Pushbutton - RGB from Adafruit, and wanted to attach several of them directly to a PCB without soldering, such that it could be easily disassembled without needing to desolder 30+ connections.
Ideally, something like six Millmax sockets would have worked great, except that I could only find circular Millmax sockets whereas this switch has rectangular pins. As such the only option I was left with was to make such a socket myself.
It uses several pins taken from a dual-leaf style DIP IC socket to make contact with the pins on the switch.
Note: This is for the 16mm variation of the pushbutton. Not compatible with the 19mm or 22mm versions.
This is intended to be printed with a 0.25mm nozzle, or if you happen to have a 0.15mm nozzle, that would produce even better results. It did not turn out very well when I tried to print it with a 0.4mm nozzle.
The tiny holes on the bottom for the socket pins to poke through are slightly oversized to account for the fact that very small holes often get fused shut when printing with FDM.
If they are not the right size for your printing process, you may consider modifying them, for which I have included a STEP file.
ASA works well and avoids excess stringing, while it should be slightly more resistant to the heat from soldering than PLA (though still probably don't want to leave the soldering iron on it for longer than necessary).
Trying to print with PETG and PC blend on my setup both produced excess stringing that made it unusable as the cutouts were blocked by dense strings of filament.
Unfortunately the contacts are laid out in such a way that it does not align with a standard 100mil/2.54mm pitch grid, so it can't be used on a normal breadboard/perfboard.
As such it will only work when making custom PCBs. I've included a picture with the spacing of the socket pins, which can be used to lay out the footprint for the socket in your layout tool of choice.
The author marked this model as their own original creation.