2021-09-03 16:37:21 +00:00
|
|
|
units:
|
|
|
|
kx: cx
|
|
|
|
ky: cy
|
|
|
|
px: 2
|
|
|
|
py: 2
|
|
|
|
points:
|
|
|
|
key:
|
|
|
|
footprints:
|
|
|
|
choc_hotswap:
|
|
|
|
type: choc
|
|
|
|
params:
|
|
|
|
hotswap: true
|
|
|
|
reverse: true
|
|
|
|
keycaps: true
|
|
|
|
nets:
|
|
|
|
# from: P1
|
|
|
|
# to: P2
|
|
|
|
from: =colrow
|
|
|
|
to: =column_net
|
|
|
|
diode:
|
|
|
|
type: diode
|
|
|
|
nets:
|
|
|
|
# from: P3
|
|
|
|
# to: P4
|
|
|
|
from: =colrow
|
|
|
|
to: =row_net
|
|
|
|
anchor:
|
|
|
|
shift: [0, -5]
|
|
|
|
zones:
|
|
|
|
matrix:
|
|
|
|
# anchor:
|
|
|
|
# rotate: 5
|
|
|
|
key.padding: ky
|
|
|
|
columns:
|
|
|
|
pinky:
|
|
|
|
stagger: 0 ky
|
|
|
|
spread: kx
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P20
|
2021-09-03 16:37:21 +00:00
|
|
|
ring:
|
|
|
|
stagger: 0.7 ky
|
|
|
|
spread: kx
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P19
|
2021-09-03 16:37:21 +00:00
|
|
|
middle:
|
|
|
|
stagger: 0.2 ky
|
|
|
|
spread: kx
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P18
|
2021-09-03 16:37:21 +00:00
|
|
|
index:
|
|
|
|
stagger: -0.2 ky
|
|
|
|
spread: kx
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P15
|
2021-09-03 16:37:21 +00:00
|
|
|
inner:
|
|
|
|
stagger: -0.1 ky
|
|
|
|
spread: kx
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P14
|
2021-09-03 16:37:21 +00:00
|
|
|
rows:
|
|
|
|
bottom:
|
|
|
|
row_net: P6
|
2021-11-11 22:40:02 +00:00
|
|
|
home:
|
2021-09-03 16:37:21 +00:00
|
|
|
row_net: P5
|
2021-11-11 22:40:02 +00:00
|
|
|
top:
|
|
|
|
row_net: P4
|
2021-09-03 16:37:21 +00:00
|
|
|
thumbfan:
|
|
|
|
anchor:
|
|
|
|
ref: matrix_inner_bottom
|
|
|
|
shift: [-1.5 kx, -1 ky]
|
|
|
|
columns:
|
|
|
|
near:
|
|
|
|
spread: kx
|
|
|
|
rotate: -15
|
|
|
|
origin: [-0.5 kx, -0.5 ky]
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P18
|
2021-09-03 16:37:21 +00:00
|
|
|
home:
|
|
|
|
spread: kx
|
|
|
|
rotate: -15
|
|
|
|
origin: [-0.5 kx, -0.5 ky]
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P15
|
2021-09-03 16:37:21 +00:00
|
|
|
far:
|
|
|
|
spread: kx
|
|
|
|
rotate: -15
|
|
|
|
origin: [-0.5 kx, -0.5 ky]
|
|
|
|
key:
|
2021-11-11 22:40:02 +00:00
|
|
|
column_net: P14
|
2021-09-03 16:37:21 +00:00
|
|
|
rows:
|
|
|
|
thumb:
|
2021-11-11 22:40:02 +00:00
|
|
|
row_net: P7
|
2021-09-03 16:37:21 +00:00
|
|
|
outlines:
|
2021-11-11 22:40:02 +00:00
|
|
|
# board dimensions according to JLCPCB: 122.28 mm x 101.05 mm
|
2021-09-03 16:37:21 +00:00
|
|
|
exports:
|
|
|
|
raw:
|
|
|
|
- type: keys
|
|
|
|
side: left
|
|
|
|
size: [kx + px, ky + py]
|
|
|
|
corner: px
|
|
|
|
thumbfan_glue:
|
|
|
|
- type: polygon
|
|
|
|
points:
|
|
|
|
- ref: matrix_inner_bottom
|
|
|
|
shift: [0.5 kx + 0.5px, -0.5 ky + 0.5 py]
|
|
|
|
- ref: thumbfan_far_thumb
|
|
|
|
shift: [0.5 kx - 0.5px, 0.5 ky + 0.5 py]
|
|
|
|
- ref: thumbfan_far_thumb
|
|
|
|
shift: [0.5 kx - 0.5px, -0.5 ky - 0.5 py]
|
|
|
|
- ref: thumbfan_near_thumb
|
|
|
|
shift: [-0.5 kx + 0.5 px, -0.5 ky - 0.5 py]
|
|
|
|
- ref: matrix_pinky_bottom
|
|
|
|
shift: [0.5 kx - 0.5 py, -0.5 ky - 0.5 py]
|
|
|
|
- ref: matrix_pinky_home
|
|
|
|
- ref: matrix_inner_home
|
|
|
|
patch_outer:
|
|
|
|
- type: polygon
|
|
|
|
points:
|
|
|
|
- ref: matrix_ring_top
|
|
|
|
- ref: matrix_ring_bottom
|
|
|
|
- ref: matrix_pinky_bottom
|
|
|
|
shift: [-0.5 (kx + px), 0]
|
|
|
|
- ref: matrix_pinky_top
|
|
|
|
shift: [-0.5 (kx + px), 0]
|
|
|
|
patch_inner:
|
|
|
|
- type: polygon
|
|
|
|
points:
|
|
|
|
- ref: matrix_inner_top
|
|
|
|
shift: [0.5 (kx + px), 0]
|
|
|
|
- ref: matrix_inner_bottom
|
|
|
|
shift: [0.5 (kx + px), 0]
|
|
|
|
- ref: matrix_index_bottom
|
|
|
|
- ref: matrix_index_top
|
|
|
|
controller_area:
|
|
|
|
main:
|
|
|
|
type: rectangle
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_top
|
|
|
|
shift: [0 kx, -4.05 ky]
|
|
|
|
size: [32, 76.5]
|
|
|
|
corner: px
|
|
|
|
switches:
|
|
|
|
main:
|
|
|
|
type: keys
|
|
|
|
side: left
|
|
|
|
size: 14
|
|
|
|
bound: false
|
|
|
|
keycaps:
|
|
|
|
main:
|
|
|
|
type: keys
|
|
|
|
side: left
|
|
|
|
size: [kx, ky]
|
|
|
|
bound: false
|
|
|
|
corner: 1
|
|
|
|
keywell:
|
|
|
|
main:
|
|
|
|
type: outline
|
|
|
|
name: raw
|
|
|
|
patch_inner:
|
|
|
|
type: outline
|
|
|
|
name: patch_inner
|
|
|
|
operation: add
|
|
|
|
patch_outer:
|
|
|
|
type: outline
|
|
|
|
name: patch_outer
|
|
|
|
operation: add
|
|
|
|
thumbfan_glue:
|
|
|
|
type: outline
|
|
|
|
name: thumbfan_glue
|
|
|
|
operation: add
|
|
|
|
base_outline:
|
|
|
|
main:
|
|
|
|
type: outline
|
|
|
|
name: keywell
|
|
|
|
controller:
|
|
|
|
type: outline
|
|
|
|
name: controller_area
|
|
|
|
operation: add
|
|
|
|
screw_holes:
|
|
|
|
top_left:
|
|
|
|
type: circle
|
|
|
|
anchor:
|
|
|
|
- ref: matrix_ring_home
|
|
|
|
shift: [-0.5 kx, 0 ky]
|
2021-09-16 19:29:22 +00:00
|
|
|
radius: 1.05
|
2021-09-03 16:37:21 +00:00
|
|
|
bottom_left:
|
|
|
|
type: circle
|
|
|
|
anchor:
|
|
|
|
- ref: matrix_pinky_bottom
|
|
|
|
shift: [0.5 kx, 0]
|
2021-09-16 19:29:22 +00:00
|
|
|
radius: 1.05
|
2021-09-03 16:37:21 +00:00
|
|
|
top_right:
|
|
|
|
type: circle
|
|
|
|
anchor:
|
|
|
|
- ref: matrix_inner_top
|
|
|
|
shift: [-0.5 kx, 0]
|
2021-09-16 19:29:22 +00:00
|
|
|
radius: 1.05
|
2021-09-03 16:37:21 +00:00
|
|
|
palm:
|
|
|
|
type: circle
|
|
|
|
anchor:
|
|
|
|
- ref: matrix_index_bottom
|
|
|
|
shift: [0, -1.06 ky]
|
2021-09-16 19:29:22 +00:00
|
|
|
radius: 1.05
|
2021-09-03 16:37:21 +00:00
|
|
|
thumb:
|
|
|
|
type: circle
|
|
|
|
anchor:
|
|
|
|
- ref: thumbfan_far_thumb
|
|
|
|
shift: [-0.55 kx, 0]
|
2021-09-16 19:29:22 +00:00
|
|
|
radius: 1.05
|
2021-09-03 16:37:21 +00:00
|
|
|
mounting_holes:
|
|
|
|
$extends: outlines.exports.screw_holes
|
|
|
|
top_left:
|
2021-10-14 21:48:24 +00:00
|
|
|
radius: 2.05
|
2021-09-03 16:37:21 +00:00
|
|
|
bottom_left:
|
2021-10-14 21:48:24 +00:00
|
|
|
radius: 2.05
|
2021-09-03 16:37:21 +00:00
|
|
|
top_right:
|
2021-10-14 21:48:24 +00:00
|
|
|
radius: 2.05
|
2021-09-03 16:37:21 +00:00
|
|
|
palm:
|
2021-10-14 21:48:24 +00:00
|
|
|
radius: 2.05
|
2021-09-03 16:37:21 +00:00
|
|
|
thumb:
|
2021-10-14 21:48:24 +00:00
|
|
|
radius: 2.05
|
2021-09-03 16:37:21 +00:00
|
|
|
bottom_outline:
|
|
|
|
main:
|
|
|
|
type: outline
|
|
|
|
name: base_outline
|
|
|
|
screw_holes:
|
|
|
|
type: outline
|
2021-10-13 10:39:29 +00:00
|
|
|
# TODO use footprints with pad + via reinforcement as mounting holes
|
2021-09-03 16:37:21 +00:00
|
|
|
name: screw_holes
|
|
|
|
operation: subtract
|
|
|
|
plate:
|
|
|
|
main:
|
|
|
|
type: outline
|
|
|
|
name: keywell
|
|
|
|
switches:
|
|
|
|
type: outline
|
|
|
|
name: switches
|
|
|
|
operation: subtract
|
|
|
|
mounting_holes:
|
|
|
|
type: outline
|
2021-10-13 10:39:29 +00:00
|
|
|
# TODO use footprints with pad + via reinforcement as mounting holes
|
2021-09-03 16:37:21 +00:00
|
|
|
name: screw_holes
|
|
|
|
operation: subtract
|
|
|
|
pcb:
|
|
|
|
main:
|
|
|
|
type: outline
|
|
|
|
name: base_outline
|
|
|
|
mounting_holes:
|
|
|
|
type: outline
|
2021-10-13 10:39:29 +00:00
|
|
|
# TODO use plated through hole footprints as mounting holes
|
2021-09-03 16:37:21 +00:00
|
|
|
name: mounting_holes
|
|
|
|
operation: subtract
|
|
|
|
pcbs:
|
2021-09-16 19:29:22 +00:00
|
|
|
top_plate:
|
2021-11-11 22:40:02 +00:00
|
|
|
# include JLCJLCJLCJLC text somewhere
|
2021-10-13 10:39:29 +00:00
|
|
|
include_keys: false
|
2021-09-16 19:29:22 +00:00
|
|
|
outlines:
|
|
|
|
edge:
|
|
|
|
outline: plate
|
|
|
|
layer: Edge.Cuts
|
2021-12-10 21:30:14 +00:00
|
|
|
footprints:
|
|
|
|
jlc_order_number:
|
|
|
|
type: text
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_ring_home
|
|
|
|
shift: [-0.25 kx, 0.5 ky]
|
|
|
|
params:
|
|
|
|
text: "JLCJLCJLCJLC"
|
|
|
|
justify: left
|
2021-09-16 19:29:22 +00:00
|
|
|
bottom_plate:
|
2021-10-13 10:39:29 +00:00
|
|
|
include_keys: false
|
2021-09-16 19:29:22 +00:00
|
|
|
outlines:
|
|
|
|
edge:
|
|
|
|
outline: bottom_outline
|
|
|
|
layer: Edge.Cuts
|
|
|
|
board:
|
2021-09-03 16:37:21 +00:00
|
|
|
outlines:
|
|
|
|
edge:
|
|
|
|
outline: pcb
|
|
|
|
layer: Edge.Cuts
|
|
|
|
# TODO there's a way to add stuff to the silkscreen layer
|
|
|
|
footprints:
|
|
|
|
mcu_l:
|
|
|
|
type: promicro
|
|
|
|
params:
|
|
|
|
orientation: up
|
2021-11-11 22:40:02 +00:00
|
|
|
batteryPins: true
|
2021-09-03 16:37:21 +00:00
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_top
|
|
|
|
shift: [20, -11]
|
|
|
|
rotate: 270
|
|
|
|
mcu_r:
|
|
|
|
type: promicro
|
|
|
|
params:
|
|
|
|
orientation: down
|
2021-11-11 22:40:02 +00:00
|
|
|
batteryPins: true
|
2021-09-03 16:37:21 +00:00
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_top
|
|
|
|
shift: [22.5, -12.25]
|
|
|
|
rotate: 270
|
2021-11-11 22:40:02 +00:00
|
|
|
pad_plus:
|
|
|
|
type: pad
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_top
|
|
|
|
shift: [23, -18]
|
|
|
|
rotate: 0
|
|
|
|
params:
|
|
|
|
front: true
|
|
|
|
back: true
|
|
|
|
width: 1.5
|
|
|
|
height: 1.5
|
|
|
|
text: "B+"
|
|
|
|
nets:
|
|
|
|
net: Braw
|
|
|
|
pad_minus:
|
|
|
|
type: pad
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_top
|
|
|
|
shift: [23, -15]
|
|
|
|
rotate: 0
|
|
|
|
params:
|
|
|
|
front: true
|
|
|
|
back: true
|
|
|
|
width: 1.5
|
|
|
|
height: 1.5
|
|
|
|
text: "B-"
|
|
|
|
nets:
|
|
|
|
net: Bminus
|
|
|
|
trrs_l:
|
2021-09-03 16:37:21 +00:00
|
|
|
type: trrs
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_bottom
|
2021-11-11 22:40:02 +00:00
|
|
|
shift: [32, -15]
|
|
|
|
rotate: 270
|
|
|
|
params:
|
|
|
|
reverse: false
|
|
|
|
symmetric: false
|
|
|
|
# The naming of the nets on this footprint is different from the Corne schematics.
|
|
|
|
nets:
|
|
|
|
A: ""
|
|
|
|
B: VCC
|
|
|
|
C: GND
|
|
|
|
D: P0
|
|
|
|
trrs_r:
|
|
|
|
type: trrs
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_bottom
|
|
|
|
shift: [32, -13]
|
2021-09-03 16:37:21 +00:00
|
|
|
rotate: 270
|
|
|
|
params:
|
|
|
|
reverse: true
|
2021-11-11 22:40:02 +00:00
|
|
|
symmetric: false
|
|
|
|
# The naming of the nets on this footprint is different from the Corne schematics.
|
2021-09-03 16:37:21 +00:00
|
|
|
nets:
|
2021-11-11 22:40:02 +00:00
|
|
|
A: ""
|
|
|
|
B: VCC
|
2021-09-03 16:37:21 +00:00
|
|
|
C: GND
|
2021-11-11 22:40:02 +00:00
|
|
|
D: P0
|
|
|
|
jumper_l:
|
|
|
|
type: jumper
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_bottom
|
|
|
|
shift: [23.5, 0]
|
|
|
|
rotate: 270
|
|
|
|
params:
|
|
|
|
side: B
|
|
|
|
nets:
|
|
|
|
from: Braw
|
|
|
|
to: Bplus
|
|
|
|
jumper_r:
|
|
|
|
type: jumper
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_bottom
|
|
|
|
shift: [23.5, 0]
|
|
|
|
rotate: 270
|
|
|
|
params:
|
|
|
|
side: F
|
|
|
|
nets:
|
|
|
|
from: Braw
|
|
|
|
to: Bplus
|
|
|
|
slider_l:
|
|
|
|
type: slider
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_bottom
|
|
|
|
shift: [30, 0]
|
|
|
|
rotate: 270
|
|
|
|
params:
|
|
|
|
side: F
|
|
|
|
nets:
|
|
|
|
from: Braw
|
|
|
|
to: Bplus
|
|
|
|
slider_r:
|
|
|
|
type: slider
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_bottom
|
|
|
|
shift: [30, 0]
|
|
|
|
rotate: 270
|
|
|
|
params:
|
|
|
|
side: B
|
|
|
|
nets:
|
|
|
|
from: Braw
|
|
|
|
to: Bplus
|
2021-11-13 16:56:12 +00:00
|
|
|
reset:
|
2021-11-11 22:40:02 +00:00
|
|
|
type: button
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_inner_bottom
|
|
|
|
shift: [17, 0]
|
|
|
|
rotate: 270
|
|
|
|
params:
|
2021-11-13 16:56:12 +00:00
|
|
|
variant: 2_pin_th
|
2021-11-11 22:40:02 +00:00
|
|
|
nets:
|
|
|
|
from: GND
|
|
|
|
to: RST
|
|
|
|
info_l:
|
|
|
|
type: text
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_pinky_bottom
|
|
|
|
shift: [0.75 kx, 0]
|
|
|
|
params:
|
|
|
|
text: "samoklava v0.1\\nby soundmonster"
|
|
|
|
justify: left
|
|
|
|
info_r:
|
|
|
|
type: text
|
|
|
|
anchor:
|
|
|
|
ref:
|
|
|
|
- matrix_pinky_bottom
|
|
|
|
shift: [0.75 kx, 0]
|
|
|
|
params:
|
|
|
|
layer: B.SilkS
|
|
|
|
text: "samoklava v0.1\\nby soundmonster"
|
|
|
|
justify: right mirror
|
|
|
|
|