Skip to content
This repository has been archived by the owner on Oct 2, 2020. It is now read-only.

Keyboard footprints rework #2394

Closed
wants to merge 1 commit into from

Conversation

perigoso
Copy link
Contributor

@perigoso perigoso commented Aug 17, 2020

This PR aims at reworking the current footprints related to keyboard switches, as well as it's structure, as in, directories.

It adds footprints for Cherry MX keyswitches, Alps / Matias keyswitches, Kailh Choc keyswitches and Kailh hotswap sockets for the Cherry MX format.

It Overrides the existing footprints, but they are mostly the same.

These footprints come from a repository that has been widely used by the community, and is generally used as opposed to the official libraries, given it's limited amount of footprints. They have suffered quite a bit of modification to better comply with KLC and fit with the rest of the official libraries.

Due to the high amount of footprints added i felt it was necessary to split the original Button_Switch_Button_Keyboard.pretty into:

  • Switch_Keyboard_Alps_Matias.pretty
  • Switch_Keyboard_Cherry_MX.pretty
  • Switch_Keyboard_Hybrid.pretty
  • Switch_Keyboard_Kailh.pretty

There is some KLC breakage, but it's mostly on purpose:

  • Violating F7.2 (Pad '1' not located at origin)
    Given the nature of these components it is extremely convenient to have their origin at the center, and i feel it's justified.
  • Violating F7.4 (Some THT pads have incorrect layer settings)
    It is typical for keyboard switch footprint to not have mask on the switch side, ie, the solder mask is supposed to cover the pads on the side the switch is placed on.

F7.3 and F9.3 are just warnings and should not be an issue.

Reference for Alps/Matias keyswitches
Reference for Cherry MX keyswitches
Reference for Kailh Choc keyswitches
Reference for Kailh Hotswap Socket

I am aware that this conflicts with a current PR #2389 Though I am submitting some footprints that directly conflict with those, they can still be merged given they are a slightly different implementation that may be of interest.

I'm sorry for the big PR/submission, I tried my best to have a clean set of footprints so that this process may go smoothly.

@CLAassistant
Copy link

CLAassistant commented Aug 17, 2020

CLA assistant check
All committers have signed the CLA.

@perigoso
Copy link
Contributor Author

I split the libs because we have 200+ footprints with the new additions, and since on the KLC a limit of 250 is stated i assumed it was a hard requirement. But when i was looking at the issues i found this:

The 250 requirement was purely arbitrary - mostly chosen because currently in the footprint selector window there is no filtering > option so scrolling through > 250 items to find the one you want is tedious.

Increasing this number should be fine, though.

Originally posted by @SchrodingersGat in #544 (comment)

Since it's apparently not that big of a deal, maybe it's not necessary to split them.

@chschlue
Copy link
Contributor

chschlue commented Aug 19, 2020

250 is not a hard limit, but splitting by manufacturer may still be a good idea.

That being said, upstreaming these footprints is a great idea, just one question: Is this PR completely independent from #2389? If so, it would be even better to coordinate both efforts.

Edit: Never mind, I didn't read your original comment carefully enough.

@diegoherranz

@myfreescalewebpage myfreescalewebpage added Enhancement Improves existing footprint in the library Pending reviewer A pull request waiting for a reviewer labels Aug 19, 2020
@perigoso
Copy link
Contributor Author

@chschlue It is independent from that PR, though they add compatibility for the same kind of components, with slight differences:

image
image

@ghost
Copy link

ghost commented Aug 25, 2020

Can we split this PR please? How about one PR per manufacturer, perhaps even split by series.
Reviewing this monster will not be fun.

@perigoso
Copy link
Contributor Author

I'll split it tonight

@perigoso
Copy link
Contributor Author

Split into several PRs and a central discussion issue.

@perigoso perigoso closed this Aug 25, 2020
@perigoso perigoso deleted the keyboard-footprints branch August 25, 2020 20:19
@myfreescalewebpage myfreescalewebpage added Abandoned Original author has stopped working on the PR and removed Pending reviewer A pull request waiting for a reviewer labels Aug 25, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Abandoned Original author has stopped working on the PR Enhancement Improves existing footprint in the library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants