Skip to content

Commit

Permalink
first iteration of reversible/rotatable switch mounts; add readme and…
Browse files Browse the repository at this point in the history
… license
  • Loading branch information
daprice committed Mar 20, 2018
1 parent 32eb8f2 commit ca2cd47
Show file tree
Hide file tree
Showing 7 changed files with 119 additions and 0 deletions.
3 changes: 3 additions & 0 deletions LICENSE.md
@@ -0,0 +1,3 @@
<a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png" /></a>

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/).
46 changes: 46 additions & 0 deletions PG1350_reversible.kicad_mod
@@ -0,0 +1,46 @@
(module PG1350_reversible (layer F.Cu) (tedit 5A97CA0F)
(descr "Kailh \"Choc\" PG1350 keyswitch, able to be mounted on front or back of PCB")
(tags kailh,choc)
(fp_text reference REF** (at 0 8.3) (layer B.SilkS)
(effects (font (size 1 1) (thickness 0.15)) (justify mirror))
)
(fp_text value PG1350 (at 0 -8.7) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 6 -7) (end 7 -7) (layer F.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 7 -6) (layer F.SilkS) (width 0.15))
(fp_line (start 7 6) (end 7 7) (layer F.SilkS) (width 0.15))
(fp_line (start 7 7) (end 6 7) (layer F.SilkS) (width 0.15))
(fp_line (start -6 7) (end -7 7) (layer F.SilkS) (width 0.15))
(fp_line (start -7 7) (end -7 6) (layer F.SilkS) (width 0.15))
(fp_line (start -7 -6) (end -7 -7) (layer F.SilkS) (width 0.15))
(fp_line (start -7 -7) (end -6 -7) (layer F.SilkS) (width 0.15))
(fp_line (start -2.6 -3.1) (end 2.6 -3.1) (layer Eco2.User) (width 0.15))
(fp_line (start 2.6 -3.1) (end 2.6 -6.3) (layer Eco2.User) (width 0.15))
(fp_line (start 2.6 -6.3) (end -2.6 -6.3) (layer Eco2.User) (width 0.15))
(fp_line (start -2.6 -3.1) (end -2.6 -6.3) (layer Eco2.User) (width 0.15))
(fp_line (start -7 -6) (end -7 -7) (layer B.SilkS) (width 0.15))
(fp_line (start -7 -7) (end -6 -7) (layer B.SilkS) (width 0.15))
(fp_line (start -6 7) (end -7 7) (layer B.SilkS) (width 0.15))
(fp_line (start -7 7) (end -7 6) (layer B.SilkS) (width 0.15))
(fp_line (start 7 6) (end 7 7) (layer B.SilkS) (width 0.15))
(fp_line (start 7 7) (end 6 7) (layer B.SilkS) (width 0.15))
(fp_line (start 6 -7) (end 7 -7) (layer B.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 7 -6) (layer B.SilkS) (width 0.15))
(fp_line (start -6.9 6.9) (end 6.9 6.9) (layer Eco2.User) (width 0.15))
(fp_line (start 6.9 -6.9) (end -6.9 -6.9) (layer Eco2.User) (width 0.15))
(fp_line (start 6.9 -6.9) (end 6.9 6.9) (layer Eco2.User) (width 0.15))
(fp_line (start -6.9 6.9) (end -6.9 -6.9) (layer Eco2.User) (width 0.15))
(fp_line (start -7.5 -7.5) (end 7.5 -7.5) (layer Eco2.User) (width 0.15))
(fp_line (start 7.5 -7.5) (end 7.5 7.5) (layer Eco2.User) (width 0.15))
(fp_line (start 7.5 7.5) (end -7.5 7.5) (layer Eco2.User) (width 0.15))
(fp_line (start -7.5 7.5) (end -7.5 -7.5) (layer Eco2.User) (width 0.15))
(pad "" np_thru_hole circle (at -5.22 -4.2) (size 0.9906 0.9906) (drill 0.9906) (layers *.Cu *.Mask))
(pad 2 thru_hole circle (at 5 3.8) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
(pad 2 thru_hole circle (at -5 3.8) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad 1 thru_hole circle (at 0 5.9) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 5.22 -4.2) (size 0.9906 0.9906) (drill 0.9906) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at -5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
)
51 changes: 51 additions & 0 deletions PG1350_rotatable.kicad_mod
@@ -0,0 +1,51 @@
(module PG1350_rotatable (layer F.Cu) (tedit 5A97C8FC)
(descr "Kailh \"Choc\" PG1350 keyswitch, able to be mounted on front or back of PCB and/or rotated 90 degrees (see README)")
(tags kailh,choc)
(fp_text reference REF** (at 0 8.3) (layer B.SilkS)
(effects (font (size 1 1) (thickness 0.15)) (justify mirror))
)
(fp_text value PG1350 (at 0 -8.7) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 7 6) (end 7 7) (layer B.SilkS) (width 0.15))
(fp_line (start 7 7) (end 6 7) (layer F.SilkS) (width 0.15))
(fp_line (start -6 7) (end -7 7) (layer F.SilkS) (width 0.15))
(fp_line (start -7 7) (end -7 6) (layer F.SilkS) (width 0.15))
(fp_line (start -7 -6) (end -7 -7) (layer B.SilkS) (width 0.15))
(fp_line (start -7 -7) (end -6 -7) (layer F.SilkS) (width 0.15))
(fp_line (start 6 -7) (end 7 -7) (layer F.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 7 -6) (layer F.SilkS) (width 0.15))
(fp_line (start -2.6 -3.1) (end 2.6 -3.1) (layer Eco2.User) (width 0.15))
(fp_line (start 2.6 -3.1) (end 2.6 -6.3) (layer Eco2.User) (width 0.15))
(fp_line (start 2.6 -6.3) (end -2.6 -6.3) (layer Eco2.User) (width 0.15))
(fp_line (start -2.6 -3.1) (end -2.6 -6.3) (layer Eco2.User) (width 0.15))
(fp_line (start -7 -6) (end -7 -7) (layer F.SilkS) (width 0.15))
(fp_line (start -7 -7) (end -6 -7) (layer B.SilkS) (width 0.15))
(fp_line (start -6 7) (end -7 7) (layer B.SilkS) (width 0.15))
(fp_line (start -7 7) (end -7 6) (layer B.SilkS) (width 0.15))
(fp_line (start 7 6) (end 7 7) (layer F.SilkS) (width 0.15))
(fp_line (start 7 7) (end 6 7) (layer B.SilkS) (width 0.15))
(fp_line (start 6 -7) (end 7 -7) (layer B.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 7 -6) (layer B.SilkS) (width 0.15))
(fp_line (start -6.9 6.9) (end 6.9 6.9) (layer Eco2.User) (width 0.15))
(fp_line (start 6.9 -6.9) (end -6.9 -6.9) (layer Eco2.User) (width 0.15))
(fp_line (start 6.9 -6.9) (end 6.9 6.9) (layer Eco2.User) (width 0.15))
(fp_line (start -6.9 6.9) (end -6.9 -6.9) (layer Eco2.User) (width 0.15))
(fp_line (start -7.5 -7.5) (end 7.5 -7.5) (layer Eco2.User) (width 0.15))
(fp_line (start 7.5 -7.5) (end 7.5 7.5) (layer Eco2.User) (width 0.15))
(fp_line (start 7.5 7.5) (end -7.5 7.5) (layer Eco2.User) (width 0.15))
(fp_line (start -7.5 7.5) (end -7.5 -7.5) (layer Eco2.User) (width 0.15))
(pad 1 thru_hole circle (at -5.9 0) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 4.2 -5.22) (size 0.9906 0.9906) (drill 0.9906) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at -5.22 -4.2) (size 0.9906 0.9906) (drill 0.9906) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 4.2 5.22) (size 0.9906 0.9906) (drill 0.9906) (layers *.Cu *.Mask))
(pad 2 thru_hole circle (at 5 3.8) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad 2 thru_hole circle (at -3.8 -5) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad 2 thru_hole circle (at -3.8 5) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
(pad 2 thru_hole circle (at -5 3.8) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad 1 thru_hole circle (at 0 5.9) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 5.22 -4.2) (size 0.9906 0.9906) (drill 0.9906) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 5.5 0) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 0 -5.5) (size 1.7018 1.7018) (drill 1.7018) (layers *.Cu *.Mask))
)
19 changes: 19 additions & 0 deletions README.md
@@ -0,0 +1,19 @@
an open source [KiCad](http://kicad-pcb.org) library of mechanical keyboard switch footprints for your [open source hardware](https://www.oshwa.org/definition/) keyboard designs

## Switches
### Kailh Low Profile "Choc"

Footprint | Description/notes | Preview
--------- | ----------------- | -------
PG1350 | Just a plain one-sided mount for [Kailh PG1350](http://kailh.com/en/Products/Ks/CS/) switches | ![PG1350](images/PG1350.png)
PG1350_reversible | Enables the switch to be mounted on either side of the PCB, similar to the switch mounts on the original Ergodox PCBs | ![PG1350 reversible](images/PG1350_reversible.png)
PG1350_rotatable | Enables the switch to be mounted on either side of the PCB *and* optionally rotated 90° by the person assembling the board. Note that one of the PCB mounting tabs will need to be broken off of the switch to fit in this mount (which one depends on the orientation). This option is intended to allow the board assembler to accomodate keycaps that only fit in a particular orientation. | ![PG1350 rotatable](images/PG1350_rotatable.png)

The plate footprint and outer edge of the switches themselves, as well as the LED mount area, are marked on the layer Eco2.User


------------------------

<a rel="license" href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png" /></a>

This work is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/).
Binary file added images/PG1350.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/PG1350_reversible.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/PG1350_rotatable.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit ca2cd47

Please sign in to comment.