ebastler / marbastlib

A library collecting MX and Choc style footprints, as well as various other parts used to design custom keyboards
CERN Open Hardware Licence Version 2 - Permissive
369 stars 43 forks source link

MX_SW_solder & MX_SW_HS connector pin location difference #20

Closed thoni56 closed 1 year ago

thoni56 commented 1 year ago

I tried to simply switch from MX_SW_solder to MX_SW_HS and was expecting to just do some minor adjustment of the wiring on the board. But it seems that the connector pins have "reversed" locations. Pin 1 is to the left in MX_SW_solder and to the right in MX_SW_HS.

I suggest making this the same would make changing from MX_SW_solder to MX_SW_HS much simpler.

thoni56 commented 1 year ago

Or perhaps I'm misunderstanding things. Is the MX_SW_HS supposed to be flipped and placed on the B-side? I know that the actual components are mounted there.

If that is the case then the MX_SW_HS has a very large courtyard, it seems to extend over the whole area of the switch.

ebastler commented 1 year ago

Hi!

This slightly weird choice of mine is based on how KiCad handles component assembly. In a footprint, KiCad always expects the part to be assembled on the top side. MX switches for solder footprints are assembled from the top, so solder pads on B.Cu. Hotswap sockets however are assembled from bottom on a keyboard, so I had to put the solder pads on F.Cu and expect the user to flip all hotswap footprints to the "other side" of the PCB after placing them on the PCB.

This is a slight nuisance, but in return all assembly files will be generated correctly without manual tinkering on files. It will have solder switches as topside THT assembly and hotswap sockets as bottom side SMD assembly.

If you made a PCB for solder footprints, then changed them to HS footprints, you'll have to flip all of them to the other side once, easiest way: press h and click on F.Cu in the sidebar to highlight your interactions on the front copper layer, then hover the mouse over a socket, press fto flip, and repeat once for all other sockets.

Courtyards of the footprints are correct - 14x14mm on front (where the switch sits) and slightly larger than the socket on the back (where the socket sits).

thoni56 commented 1 year ago

Thanks for that explanation, that cleared up some things.

Though the dimensions of the actual socket is actually something like 14,5x5,5 since the don't take up the whole area of the switch and it should be easy to position an SMD on the backside inside the other "half" of the area of the switch.

But no matter, I will have to re-route my design anyway. I was hoping to take a short-cut ;-)

Thanks.