corax54 pcbs

This commit is contained in:
daniel
2024-02-10 13:35:58 +01:00
parent 029a0dbdb2
commit 1f1e045b47
37 changed files with 216844 additions and 3 deletions

11
.gitignore vendored
View File

@@ -4,9 +4,14 @@ output
.ninja*
# kicad tmp files
pcbs/pcbs/fp-info-cache
pcbs/pcbs/*-backups
pcb/pcbs/*.kicad_prl
*/pcbs/source
*/pcbs/points
*/pcbs/outlines/_*
*/pcbs/outlines/*.yaml
*/pcbs/outlines/*.svg
*/pcbs/pcbs/fp-info-cache
*/pcbs/pcbs/*-backups
*/pcb/pcbs/*.kicad_prl
*.lck
# zmk firmware binaries

708
corax54/ergogen/config.yaml Normal file
View File

@@ -0,0 +1,708 @@
units:
kx: cx # cx=18
ky: cy # cy=17
mbkx: 17.5
mbky: 16.5
padding: 2
px: kx+padding
py: ky+padding
mcu_height: 34
mcu_width: 18
# distance keys to mcu
mcu_padding: 1.5
scrollwheel_width: 17
scrollwheel_height: 14
screw_diameter: 4.7
screw_hole: 4.1
screen_screw_diameter: 4
screen_screw_hole: 2.2
switchplate_switch_cutout: 14
switchplate_scrollwheel_cutout_x: 17.5
switchplate_scrollwheel_cutout_y: 14.5
switchplate_screw_diameter: 3.3
switchplate_screw_hole: 2.2
points:
rotate: 5
zones:
matrix:
# fix placement on kicad
anchor.shift: [50, -150]
key:
tags: [switch]
padding: 1ky
spread: 1kx
columns:
outer:
rows:
num.skip: true
mod.skip: true
key:
column_net: row0
pinky:
rows:
mod.skip: true
key:
origin: [0, 8]
column_net: row1
ring:
rows:
mod.skip: true
key:
origin: [0, 8]
stagger: 0.66ky
splay: -5
column_net: row2
middle:
key:
stagger: 0.33ky
column_net: row3
rows:
mod:
column_net: row1
index:
key:
stagger: -0.33ky
column_net: row4
rows:
mod:
column_net: row2
inner:
rows:
mod.skip: true
key:
stagger: -2.5
column_net: row5
rows:
mod:
row_net: col4
tags: [switch_bottom]
bottom:
row_net: col3
tags: [switch_top]
home:
row_net: col2
tags: [switch_bottom]
top:
row_net: col1
tags: [switch_top]
num:
row_net: col0
tags: [switch_bottom]
thumbs:
anchor:
ref: matrix_middle_home
shift: [38, -44]
key:
tags: [switch]
padding: 1ky
spread: 1kx
columns:
layer:
key:
splay: -15
column_net: row3
space:
key:
width: 1.5kx
splay: 75
shift: [13-kx, -3]
column_net: row4
tags: [switch_space]
rows:
cluster:
row_net: col4
scrollwheel:
anchor:
ref: matrix_inner_bottom
columns:
scrollwheel:
key:
tags: [scrollwheel]
shift: [kx+mcu_padding-1.25, 0]
column_net: row5
width: scrollwheel_width
height: scrollwheel_height
rows:
scrollwheel:
row_net: col4
mcu:
anchor:
ref: matrix_inner_num
columns:
mcu:
key:
tags: [mcu]
width: mcu_height # footprint width/height unintuitive
height: mcu_width
rotate: -90
shift: [kx+mcu_padding, -mcu_width/2-0.3]
screw_top_left:
anchor:
ref.aggregate.parts: [matrix_ring_num, matrix_ring_top]
shift: [-11, 0]
columns.screw.key.tags: [screw]
screw_top_right:
anchor:
ref.aggregate.parts: [matrix_index_num, matrix_inner_num, matrix_index_top, matrix_inner_top]
columns.screw.key.tags: [screw]
screw_bottom_left:
anchor:
ref.aggregate.parts: [matrix_outer_home, matrix_outer_bottom, matrix_pinky_home, matrix_pinky_bottom]
columns.screw.key.tags: [screw]
screw_bottom_right:
anchor:
ref.aggregate.parts: [matrix_index_bottom, matrix_index_mod]
shift: [-0.5kx, 0]
columns.screw.key.tags: [screw]
screw_thumb:
anchor:
ref.aggregate.parts: [thumbs_layer_cluster, thumbs_space_cluster]
shift: [9, 7]
columns.screw.key.tags: [screw]
outlines:
board:
- what: polygon
operation: stack
fillet: 2
points:
- ref: matrix_outer_home
shift: [-0.5px, -0.5py]
- ref: matrix_outer_home
shift: [-0.5px, 0.5py]
- ref: matrix_outer_top
shift: [-0.5px, 0.5py]
- ref: matrix_pinky_num
shift: [-0.5px, 0.5py]
- ref: matrix_ring_num
shift: [-0.5px, 0.5py]
- ref: matrix_middle_num
shift: [-0.5px, 0.5py]
- ref: matrix_middle_num
shift: [0.5px, 0.5py]
- ref: matrix_inner_num
shift: [0.5px, 0.5py]
- ref: matrix_inner_num
shift: [0.5px+mcu_padding+mcu_width+0.25, 0.5py]
- ref: matrix_inner_bottom
shift: [0.5px+mcu_padding+mcu_width+0.25, -0.5py]
- ref: thumbs_space_cluster
shift: [0.5px, -0.5py]
- ref: thumbs_space_cluster
shift: [-0.5px, -0.5py]
- ref: matrix_index_mod
shift: [-0.5px, -0.5py]
- ref: matrix_pinky_bottom
shift: [0.5px, -0.5py]
- ref: matrix_outer_bottom
shift: [-0.5px, -0.5py]
_switchplate_base:
- what: polygon
operation: stack
fillet: 2
points:
- ref: matrix_outer_home
shift: [-0.5px, -0.5py]
- ref: matrix_outer_home
shift: [-0.5px, 0.5py]
- ref: matrix_outer_top
shift: [-0.5px, 0.5py]
- ref: matrix_pinky_num
shift: [-0.5px, 0.5py]
- ref: matrix_ring_num
shift: [-0.5px, 0.5py]
- ref: matrix_middle_num
shift: [-0.5px, 0.5py]
- ref: matrix_middle_num
shift: [0.5px, 0.5py]
- ref: matrix_inner_num
shift: [0.5px-0.5, 0.5py]
- ref: matrix_inner_bottom
shift: [0.5px-0.5, 0.5py+2.5]
- ref: matrix_inner_bottom
shift: [0.5px+mcu_padding+mcu_width+0.25, 0.5py+2.5]
- ref: matrix_inner_bottom
shift: [0.5px+mcu_padding+mcu_width+0.25, -0.5py]
- ref: thumbs_space_cluster
shift: [0.5px, -0.5py]
- ref: thumbs_space_cluster
shift: [-0.5px, -0.5py]
- ref: matrix_index_mod
shift: [-0.5px, -0.5py]
- ref: matrix_pinky_bottom
shift: [0.5px, -0.5py]
- ref: matrix_outer_bottom
shift: [-0.5px, -0.5py]
_switch_cutout:
- what: rectangle
where: [switch, switch_top, switch_bottom, switch_space]
size: switchplate_switch_cutout
bound: false
_scrollwheel_cutout:
- what: rectangle
where: [scrollwheel]
size: [switchplate_scrollwheel_cutout_x, switchplate_scrollwheel_cutout_y]
bound: false
_screw_holes:
- what: circle
where: [screw]
radius: 0.5switchplate_screw_hole
switchplate:
- what: outline
name: _switchplate_base
- what: outline
name: _switch_cutout
operation: subtract
- what: outline
name: _scrollwheel_cutout
operation: subtract
case:
- what: outline
name: board
- what: outline
name: _screw_holes
operation: subtract
pcbs:
keyboard:
outlines.main.outline: board
footprints:
choc_hotswap:
what: choc
where: [switch, switch_space, switch_bottom, switch_top]
params:
keycaps: true
reverse: true
hotswap: true
from: "{{column_net}}"
to: "{{colrow}}"
adjust:
rotate: 180
diode_bottom:
what: diode
where: [switch, switch_bottom]
params:
from: "{{colrow}}"
to: "{{row_net}}"
adjust:
rotate: 0
shift: [0, -9.5]
diode_top:
what: diode
where: [switch_top]
params:
from: "{{colrow}}"
to: "{{row_net}}"
adjust:
rotate: 0
shift: [0, 5.2]
diode_space:
what: diode
where: [switch_space]
params:
from: "{{colrow}}"
to: "{{row_net}}"
adjust:
rotate: -90
# 8.275 is exactly above the pad
shift: [8.275, 1]
scrollwheel:
what: scrollwheel_mirrored
where: [scrollwheel]
params:
from: "{{column_net}}"
to: "{{colrow}}"
A: ENCB_undef
B: GND_ENCA
C: ENCA_GND
D: undef_ENCB
scroll_diode:
what: diode
where: [scrollwheel]
params:
from: "{{colrow}}"
to: "{{row_net}}"
adjust:
shift: [-5, -9]
jumper_sw_left_a:
what: jumper
where: [scrollwheel]
params:
side: B
to: ENCB_undef
from: ENCB
adjust:
rotate: 90
shift: [-3, 3.81]
jumper_sw_left_gnd:
what: jumper
where: [scrollwheel]
params:
side: B
to: GND_ENCA
from: GND
adjust:
rotate: 90
shift: [-3, 1.27]
jumper_sw_left_ENCA:
what: jumper
where: [scrollwheel]
params:
side: B
to: ENCA_GND
from: ENCA
adjust:
rotate: 90
shift: [-3, -1.27]
jumper_sw_right_a:
what: jumper
where: [scrollwheel]
params:
side: F
to: undef_ENCB
from: ENCB
adjust:
rotate: 90
shift: [-3, -3.81]
jumper_sw_right_gnd:
what: jumper
where: [scrollwheel]
params:
side: F
to: ENCA_GND
from: GND
adjust:
rotate: 90
shift: [-3, -1.27]
jumper_sw_right_ENCA:
what: jumper
where: [scrollwheel]
params:
side: F
to: GND_ENCA
from: ENCA
adjust:
rotate: 90
shift: [-3, 1.27]
nicenano:
what: nicenano
where: mcu
params:
orientation: down
RAW: RAW_P1
GND1: GND_P0
RST: RST_GND
VCC: VCC_GND
P21: ENCA
P20: ENCB
P19: row0
P18: row1
P15: row2
P14: row3
P16: row4
P10: row5
P1: P1_RAW
P0: P0_GND
GND2: GND_RST
GND3: GND_VCC
P2: SDA
P3: SCL
P4: CS
P5: col0
P6: col1
P7: col2
P8: col3
P9: col4
jumper_left_raw:
what: jumper
where: mcu
params:
from: RAW
to: RAW_P1
side: B
adjust:
shift: [-11.45, -2.5]
rotate: 180
jumper_left_rst:
what: jumper
where: mcu
params:
from: RST
to: RST_GND
side: B
adjust:
shift: [-8.9, -2.5]
rotate: 180
jumper_left_vcc:
what: jumper
where: mcu
params:
from: VCC
to: VCC_GND
side: B
adjust:
shift: [-6.35, -2.5]
rotate: 180
jumper_left_gnd:
what: jumper
where: mcu
params:
from: GND
to: GND_RST
side: B
adjust:
shift: [-8.9, 2.5]
jumper_right_raw:
what: jumper
where: mcu
params:
from: RAW
to: P1_RAW
side: F
adjust:
shift: [-11.45, 2.5]
jumper_right_rst:
what: jumper
where: mcu
params:
from: RST
to: GND_RST
side: F
adjust:
shift: [-8.9, 2.5]
jumper_right_vcc:
what: jumper
where: mcu
params:
from: VCC
to: GND_VCC
side: F
adjust:
shift: [-6.35, 2.5]
jumper_right_gnd:
what: jumper
where: mcu
params:
from: GND
to: RST_GND
side: F
adjust:
shift: [-8.9, -2.5]
rotate: 180
niceview:
what: niceview
where: mcu
adjust:
shift: [20.5, 0]
rotate: 180
params:
outline: true
side: 'F'
SDA: NN_SDA_CS
SCL: NN_SCL_GND
VCC: NN_VCC
GND: NN_GND_SCL
CS: NN_CS_SDA
jumper_nv_left_sda:
what: jumper
where: mcu
params:
from: SDA
to: NN_SDA_CS
side: B
adjust:
shift: [20.50-2.5, -5.08]
rotate: -90
jumper_nv_left_scl:
what: jumper
where: mcu
params:
from: SCL
to: NN_SCL_GND
side: B
adjust:
shift: [20.50-2.5, -2.54]
rotate: -90
jumper_nv_left_vcc:
what: jumper
where: mcu
params:
from: VCC
to: NN_VCC
side: B
adjust:
shift: [20.50-2.5, 0]
rotate: -90
jumper_nv_left_gnd:
what: jumper
where: mcu
params:
from: GND
to: NN_GND_SCL
side: B
adjust:
shift: [20.50-2.5, 2.54]
rotate: -90
jumper_nv_left_cs:
what: jumper
where: mcu
params:
from: CS
to: NN_CS_SDA
side: B
adjust:
shift: [20.50-2.5, 5.08]
rotate: -90
jumper_nv_right_sda:
what: jumper
where: mcu
params:
from: SDA
to: NN_CS_SDA
side: F
adjust:
shift: [20.50-2.5, 5.08]
rotate: -90
jumper_nv_right_scl:
what: jumper
where: mcu
params:
from: SCL
to: NN_GND_SCL
side: F
adjust:
shift: [20.50-2.5, 2.54]
rotate: -90
jumper_nv_right_vcc:
what: jumper
where: mcu
params:
from: VCC
to: NN_VCC
side: F
adjust:
shift: [20.50-2.5, 0]
rotate: -90
jumper_nv_right_gnd:
what: jumper
where: mcu
params:
from: GND
to: NN_SCL_GND
side: F
adjust:
shift: [20.50-2.5, -2.54]
rotate: -90
jumper_nv_right_cs:
what: jumper
where: mcu
params:
from: CS
to: NN_SDA_CS
side: F
adjust:
shift: [20.50-2.5, -5.08]
rotate: -90
slider:
what: slider_reversible
where: mcu
adjust:
shift: [-17.1, 0]
rotate: 90
params:
side: F
reverse: true
from: switch_from
to: RAW
battery:
what: battery
where: mcu
adjust:
shift: [-17, 0]
params:
RAW: switch_from
reset:
what: reset
where: mcu
params:
from: GND
to: RST
adjust:
shift: [10+mcu_height/2, 0]
rotate: -90
plexi_inner:
what: hole
where: mcu
params:
size: screen_screw_diameter
drill: screen_screw_hole
adjust:
shift: [10+mcu_height/2, -mcu_width/2+1.5]
plexi_outer:
what: hole
where: mcu
params:
size: screen_screw_diameter
drill: screen_screw_hole
adjust:
shift: [10+mcu_height/2, mcu_width/2-1.5]
screw_holes:
what: hole
where: [screw]
params:
size: screw_diameter
drill: screw_hole
left_text:
what: text
where: matrix_middle_home
params:
text: "Left Hand Front"
side: F
knockout: true
fontsize: 1.6
adjust:
shift: [0, 4]
rotate: 90
right_text:
what: text
where: matrix_middle_home
params:
text: "Right Hand Front"
side: B
knockout: true
fontsize: 1.6
adjust:
rotate: 90
shift: [0, 4]
order_number_text:
what: text
where: [switch_space]
params:
side: B
text: "JLCJLCJLCJLC"
adjust:
rotate: 10
shift: [-9.5, 10]
name_text:
what: text
where: matrix_middle_mod
params:
text: "Corax54 rev. 1.1"
adjust:
rotate: 82
shift: [-9, -11]
name_text_right:
what: text
where: matrix_middle_mod
params:
side: B
text: "Corax54 rev. 1.1"
adjust:
rotate: 82
shift: [-9, -11]
switchplate:
outlines.main.outline: switchplate
footprints:
- what: hole
where: screw
params:
size: switchplate_screw_diameter
drill: switchplate_screw_hole

View File

@@ -0,0 +1,26 @@
module.exports = {
params: {
designator: 'Battery',
RAW: { type: 'net', value: 'RAW' },
GND: { type: 'net', value: 'GND' },
},
body: p => `
(module lib:niceview_headers (layer F.Cu) (tedit 648E0265)
${p.at /* parametric position */}
${''/* pin names */}
(fp_text user + (at 0 6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
(fp_text user - (at 0 -6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
(fp_text user + (at 0 6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
(fp_text user - (at 0 -6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15))))
${''/* pins */}
(pad 1 thru_hole rect (at 0 7.75 ${p.rot}) (size 1.4 1.4) (drill 0.8) (layers *.Cu *.SilkS *.Mask) ${p.RAW.str})
(pad 2 thru_hole circle (at 0 -7.75 ${p.rot}) (size 1.4 1.4) (drill 0.8) (layers *.Cu *.SilkS *.Mask) ${p.GND.str})
)
`
}

View File

@@ -0,0 +1,101 @@
// Kailh Choc PG1350
// Nets
// from: corresponds to pin 1
// to: corresponds to pin 2
// Params
// hotswap: default is false
// if true, will include holes and pads for Kailh choc hotswap sockets
// reverse: default is false
// if true, will flip the footprint such that the pcb can be reversible
// keycaps: default is false
// if true, will add choc sized keycap box around the footprint
//
// note: hotswap and reverse can be used simultaneously
module.exports = {
params: {
designator: 'S',
hotswap: false,
reverse: false,
keycaps: false,
from: undefined,
to: undefined
},
body: p => {
const standard = `
(module PG1350 (layer F.Cu) (tedit 5DD50112)
${p.at /* parametric position */}
${'' /* footprint reference */}
(fp_text reference "${p.ref}" (at 0 0) (layer F.SilkS) ${p.ref_hide} (effects (font (size 1.27 1.27) (thickness 0.15))))
(fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
${''/* middle shaft */}
(pad "" np_thru_hole circle (at 0 0) (size 3.429 3.429) (drill 3.429) (layers *.Cu *.Mask))
${''/* stabilizers */}
(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))
`
const keycap = `
${'' /* keycap marks */}
(fp_line (start -9 -8.5) (end 9 -8.5) (layer Dwgs.User) (width 0.15))
(fp_line (start 9 -8.5) (end 9 8.5) (layer Dwgs.User) (width 0.15))
(fp_line (start 9 8.5) (end -9 8.5) (layer Dwgs.User) (width 0.15))
(fp_line (start -9 8.5) (end -9 -8.5) (layer Dwgs.User) (width 0.15))
`
function pins(def_neg, def_pos, def_side) {
if(p.hotswap) {
return `
${''/* corner marks */}
(fp_line (start -7 -6) (end -7 -7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start -7 7) (end -6 7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start -6 -7) (end -7 -7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start -7 7) (end -7 6) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 7 6) (end 7 7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 6 -7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 6 7) (end 7 7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 7 -6) (layer ${def_side}.SilkS) (width 0.15))
${'' /* holes */}
(pad "" np_thru_hole circle (at ${def_pos}5 -3.75) (size 3 3) (drill 3) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at 0 -5.95) (size 3 3) (drill 3) (layers *.Cu *.Mask))
${'' /* net pads */}
(pad 1 smd rect (at ${def_neg}3.275 -5.95 ${p.rot}) (size 2.6 2.6) (layers ${def_side}.Cu ${def_side}.Paste ${def_side}.Mask) ${p.from.str})
(pad 2 smd rect (at ${def_pos}8.275 -3.75 ${p.rot}) (size 2.6 2.6) (layers ${def_side}.Cu ${def_side}.Paste ${def_side}.Mask) ${p.to.str})
`
} else {
return `
${''/* corner marks */}
(fp_line (start -7 -6) (end -7 -7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start -7 7) (end -6 7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start -6 -7) (end -7 -7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start -7 7) (end -7 6) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 7 6) (end 7 7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 6 -7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 6 7) (end 7 7) (layer ${def_side}.SilkS) (width 0.15))
(fp_line (start 7 -7) (end 7 -6) (layer ${def_side}.SilkS) (width 0.15))
${''/* pins */}
(pad 1 thru_hole circle (at ${def_pos}5 -3.8) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask) ${p.from.str})
(pad 2 thru_hole circle (at ${def_pos}0 -5.9) (size 2.032 2.032) (drill 1.27) (layers *.Cu *.Mask) ${p.to.str})
`
}
}
if(p.reverse) {
return `
${standard}
${p.keycaps ? keycap : ''}
${pins('-', '', 'B')}
${pins('', '-', 'F')})
`
} else {
return `
${standard}
${p.keycaps ? keycap : ''}
${pins('-', '', 'B')})
`
}
}
}

View File

@@ -0,0 +1,46 @@
module.exports = {
params: {
designator: 'D',
from: undefined,
to: undefined
},
body: p => `
(module ComboDiode (layer F.Cu) (tedit 5B24D78E)
${p.at /* parametric position */}
${'' /* footprint reference */}
(fp_text reference "${p.ref}" (at 0 0) (layer F.SilkS) ${p.ref_hide} (effects (font (size 1.27 1.27) (thickness 0.15))))
(fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
${''/* diode symbols */}
(fp_line (start 0.25 0) (end 0.75 0) (layer F.SilkS) (width 0.1))
(fp_line (start 0.25 0.4) (end -0.35 0) (layer F.SilkS) (width 0.1))
(fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer F.SilkS) (width 0.1))
(fp_line (start -0.35 0) (end 0.25 -0.4) (layer F.SilkS) (width 0.1))
(fp_line (start -0.35 0) (end -0.35 0.55) (layer F.SilkS) (width 0.1))
(fp_line (start -0.35 0) (end -0.35 -0.55) (layer F.SilkS) (width 0.1))
(fp_line (start -0.75 0) (end -0.35 0) (layer F.SilkS) (width 0.1))
(fp_line (start 0.25 0) (end 0.75 0) (layer B.SilkS) (width 0.1))
(fp_line (start 0.25 0.4) (end -0.35 0) (layer B.SilkS) (width 0.1))
(fp_line (start 0.25 -0.4) (end 0.25 0.4) (layer B.SilkS) (width 0.1))
(fp_line (start -0.35 0) (end 0.25 -0.4) (layer B.SilkS) (width 0.1))
(fp_line (start -0.35 0) (end -0.35 0.55) (layer B.SilkS) (width 0.1))
(fp_line (start -0.35 0) (end -0.35 -0.55) (layer B.SilkS) (width 0.1))
(fp_line (start -0.75 0) (end -0.35 0) (layer B.SilkS) (width 0.1))
${''/* SMD pads on both sides */}
(pad 1 smd rect (at -1.65 0 ${p.rot}) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) ${p.to.str})
(pad 2 smd rect (at 1.65 0 ${p.rot}) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) ${p.from.str})
(pad 1 smd rect (at -1.65 0 ${p.rot}) (size 0.9 1.2) (layers B.Cu B.Paste B.Mask) ${p.to.str})
(pad 2 smd rect (at 1.65 0 ${p.rot}) (size 0.9 1.2) (layers F.Cu F.Paste F.Mask) ${p.from.str})
${''/* vias */}
(pad 1 thru_hole circle (at -0.75 0 ${p.rot}) (size 0.6 0.6) (drill 0.3) (layers *.Cu *.Mask) ${p.to.str})
(pad 2 thru_hole circle (at 0.75 0 ${p.rot}) (size 0.6 0.6) (drill 0.3) (layers *.Cu *.Mask) ${p.from.str})
)
`
}

View File

@@ -0,0 +1,19 @@
module.exports = {
params: {
class: "MP",
size: 4.0,
drill: 2.2
},
body: (p) => {
return `
(module Hole (layer F.Cu) (tedit 5F7666C1)
${p.at /* parametric position */}
(fp_text reference "${p.ref}" (at 0 0.5) (layer F.SilkS) ${p.ref_hide}
(effects (font (size 1 1) (thickness 0.15)))
)
(pad "" thru_hole circle (at 0 0) (size ${p.size} ${p.size}) (drill ${p.drill}) (layers *.Cu *.Mask) (tstamp 75b224f0-3010-4e8c-bf32-f95a770c96d9))
)
`;
},
};

View File

@@ -0,0 +1,28 @@
module.exports = {
params: {
designator: 'J',
side: 'F',
from: undefined,
to: undefined
},
body: p => `
(module lib:Jumper (layer F.Cu) (tedit 5E1ADAC2)
${p.at /* parametric position */}
${'' /* footprint reference */}
(fp_text reference "${p.ref}" (at 0 0) (layer F.SilkS) ${p.ref_hide} (effects (font (size 1.27 1.27) (thickness 0.15))))
(fp_text value Jumper (at 0 -7.3) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))))
${'' /* pins */}
(pad 1 smd custom (at 0 -0.508 ${p.rot}) (size 0.1 0.1) (layers ${p.side}.Cu ${p.side}.Paste ${p.side}.Mask)
${p.to.str} (clearance 0.1) (zone_connect 0) (options (clearance outline) (anchor rect))
(primitives (gr_poly (pts (xy 0.6 -0.4) (xy -0.6 -0.4) (xy -0.6 -0.2) (xy 0 0.4) (xy 0.6 -0.2)) (width 0))))
(pad 2 smd custom (at 0 0.508 ${p.rot}) (size 1.2 0.5) (layers ${p.side}.Cu ${p.side}.Paste ${p.side}.Mask)
${p.from.str} (clearance 0.1) (zone_connect 0) (options (clearance outline) (anchor rect))
(primitives (gr_poly (pts (xy 0.6 0) (xy -0.6 0) (xy -0.6 -1) (xy 0 -0.4) (xy 0.6 -1)) (width 0))))
)
`
}

View File

@@ -0,0 +1,157 @@
// Arduino ProMicro atmega32u4au
// Params
// orientation: default is down
// if down, power led will face the pcb
// if up, power led will face away from pcb
module.exports = {
params: {
designator: 'MCU',
orientation: 'down',
RAW: { type: 'net', value: 'RAW' },
GND1: { type: 'net', value: 'GND' },
RST: { type: 'net', value: 'RST' },
VCC: { type: 'net', value: 'VCC' },
P21: { type: 'net', value: 'P21' },
P20: { type: 'net', value: 'P20' },
P19: { type: 'net', value: 'P19' },
P18: { type: 'net', value: 'P18' },
P15: { type: 'net', value: 'P15' },
P14: { type: 'net', value: 'P14' },
P16: { type: 'net', value: 'P16' },
P10: { type: 'net', value: 'P10' },
P1: { type: 'net', value: 'P1' },
P0: { type: 'net', value: 'P0' },
GND2: { type: 'net', value: 'GND' },
GND3: { type: 'net', value: 'GND' },
P2: { type: 'net', value: 'P2' },
P3: { type: 'net', value: 'P3' },
P4: { type: 'net', value: 'P4' },
P5: { type: 'net', value: 'P5' },
P6: { type: 'net', value: 'P6' },
P7: { type: 'net', value: 'P7' },
P8: { type: 'net', value: 'P8' },
P9: { type: 'net', value: 'P9' }
},
body: p => {
const standard = `
(module ProMicro (layer F.Cu) (tedit 5B307E4C)
${p.at /* parametric position */}
${'' /* footprint reference */}
(fp_text reference "${p.ref}" (at 0 0) (layer F.SilkS) ${p.ref_hide} (effects (font (size 1.27 1.27) (thickness 0.15))))
(fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
${''/* illustration of the (possible) USB port overhang */}
(fp_line (start -19.304 -3.81) (end -14.224 -3.81) (layer Dwgs.User) (width 0.15))
(fp_line (start -19.304 3.81) (end -19.304 -3.81) (layer Dwgs.User) (width 0.15))
(fp_line (start -14.224 3.81) (end -19.304 3.81) (layer Dwgs.User) (width 0.15))
(fp_line (start -14.224 -3.81) (end -14.224 3.81) (layer Dwgs.User) (width 0.15))
${''/* component outline */}
(fp_line (start -17.78 8.89) (end 15.24 8.89) (layer F.SilkS) (width 0.15))
(fp_line (start 15.24 8.89) (end 15.24 -8.89) (layer F.SilkS) (width 0.15))
(fp_line (start 15.24 -8.89) (end -17.78 -8.89) (layer F.SilkS) (width 0.15))
(fp_line (start -17.78 -8.89) (end -17.78 8.89) (layer F.SilkS) (width 0.15))
`
function pins(def_neg, def_pos) {
return `
${''/* pin names */}
(fp_text user RAW (at -13.97 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user RST (at -8.89 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user VCC (at -6.35 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user ENCA (at -3.81 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user ENCB (at -1.27 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user row0 (at 1.27 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user row1 (at 3.81 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user row2 (at 6.35 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user row3 (at 8.89 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user row4 (at 11.43 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user row5 (at 13.97 ${def_pos}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left)))
(fp_text user GND (at -8.89 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user SDA (at -3.81 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user SCL (at -1.27 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user CS (at 1.27 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user col0 (at 3.81 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user col1 (at 6.35 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user col2 (at 8.89 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user col3 (at 11.43 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user col4 (at 13.97 ${def_neg}6.3 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right)))
(fp_text user GND (at -8.89 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user ENCA (at -3.81 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user ENCB (at -1.27 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user row0 (at 1.27 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user row1 (at 3.81 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user row2 (at 6.35 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user row3 (at 8.89 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user row4 (at 11.43 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user row5 (at 13.97 ${def_pos}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify right mirror)))
(fp_text user RAW (at -13.97 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user RST (at -8.89 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user VCC (at -6.35 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user SDA (at -3.81 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user SCL (at -1.27 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user CS (at 1.27 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user col0 (at 3.81 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user col1 (at 6.35 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user col2 (at 8.89 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user col3 (at 11.43 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
(fp_text user col4 (at 13.97 ${def_neg}6.3 ${p.rot + 90}) (layer B.SilkS) (effects (font (size 0.8 0.8) (thickness 0.15)) (justify left mirror)))
${'' /* description */}
(fp_text user "Nice!Nano" (at 3.7 ${def_pos}1.2 ${p.rot}) (layer F.SilkS knockout) (effects (font (size 1.0 1.0) (thickness 0.15))))
(fp_text user "Place face down." (at 3.7 ${def_pos}-0.55 ${p.rot}) (layer F.SilkS) (effects (font (size 1.0 1.0) (thickness 0.15))))
(fp_text user "Solder jumpers on back." (at 3.7 ${def_pos}-1.8 ${p.rot}) (layer F.SilkS) (effects (font (size 1.0 1.0) (thickness 0.15))))
(fp_text user "Nice!Nano" (at 3.7 ${def_pos}1.2 ${p.rot}) (layer B.SilkS knockout) (effects (font (size 1.0 1.0) (thickness 0.15)) (justify mirror)))
(fp_text user "Place face down." (at 3.7 ${def_pos}-0.55 ${p.rot}) (layer B.SilkS) (effects (font (size 1.0 1.0) (thickness 0.15)) (justify mirror)))
(fp_text user "Solder jumpers on back." (at 3.7 ${def_pos}-1.8 ${p.rot}) (layer B.SilkS) (effects (font (size 1.0 1.0) (thickness 0.15)) (justify mirror)))
${''/* and now the actual pins */}
(pad 1 thru_hole circle (at -13.97 ${def_pos}7.62 ${p.rot}) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.RAW.str})
(pad 2 thru_hole circle (at -11.43 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.GND1.str})
(pad 3 thru_hole circle (at -8.89 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.RST.str})
(pad 4 thru_hole circle (at -6.35 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.VCC.str})
(pad 5 thru_hole circle (at -3.81 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P21.str})
(pad 6 thru_hole circle (at -1.27 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P20.str})
(pad 7 thru_hole circle (at 1.27 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P19.str})
(pad 8 thru_hole circle (at 3.81 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P18.str})
(pad 9 thru_hole circle (at 6.35 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P15.str})
(pad 10 thru_hole circle (at 8.89 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P14.str})
(pad 11 thru_hole circle (at 11.43 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P16.str})
(pad 12 thru_hole circle (at 13.97 ${def_pos}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P10.str})
(pad 13 thru_hole circle (at -13.97 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P1.str})
(pad 14 thru_hole circle (at -11.43 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P0.str})
(pad 15 thru_hole circle (at -8.89 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.GND2.str})
(pad 16 thru_hole circle (at -6.35 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.GND3.str})
(pad 17 thru_hole circle (at -3.81 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P2.str})
(pad 18 thru_hole circle (at -1.27 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P3.str})
(pad 19 thru_hole circle (at 1.27 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P4.str})
(pad 20 thru_hole circle (at 3.81 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P5.str})
(pad 21 thru_hole circle (at 6.35 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P6.str})
(pad 22 thru_hole circle (at 8.89 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P7.str})
(pad 23 thru_hole circle (at 11.43 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P8.str})
(pad 24 thru_hole circle (at 13.97 ${def_neg}7.62 0) (size 1.7526 1.7526) (drill 1.0922) (layers *.Cu *.SilkS *.Mask) ${p.P9.str})
${''/* rect around RAW */}
(pad "" thru_hole rect (at -13.97 7.62 ${p.rot}) (size 1.7526 1.7526) (drill 1.1) (layers F.Cu F.Mask) (zone_connect 0) ${p.RAW.str})
(pad "" thru_hole rect (at -13.97 -7.62 ${p.rot}) (size 1.7526 1.7526) (drill 1.1) (layers B.Cu B.Mask) (zone_connect 0) ${p.P1.str})
`
}
if (p.orientation == 'down') {
return `
${standard}
${pins('-', '')})
`
} else {
return `
${standard}
${pins('', '-')})
`
}
}
}

View File

@@ -0,0 +1,64 @@
module.exports = {
params: {
designator: 'Nice!View',
side: 'F',
outline: false,
VCC: { type: 'net', value: 'VCC' },
GND: { type: 'net', value: 'GND' },
SDA: undefined,
SCL: undefined,
CS: undefined,
},
body: p => {
const standard = `
(module lib:niceview_headers (layer F.Cu) (tedit 648E0265)
${p.at /* parametric position */}
${'' /* footprint reference */}
(fp_text reference "${p.ref}" (at -1.6 0) (layer F.SilkS) ${p.ref_hide} (effects (font (size 1.27 1.27) (thickness 0.15))))
(fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1 1) (thickness 0.15))))
${'' /* pins */}
(pad 4 thru_hole oval (at 0.0 -5.08 ${p.rot + 270}) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
${p.SDA.str})
(pad 3 thru_hole oval (at 0.0 -2.54 ${p.rot + 270}) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
${p.SCL.str})
(pad 2 thru_hole oval (at 0.0 0.00 ${p.rot + 270}) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
${p.VCC.str})
(pad 1 thru_hole oval (at 0.0 2.54 ${p.rot + 270}) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
${p.GND.str})
(pad 1 thru_hole oval (at 0.0 5.08 ${p.rot + 270}) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)
${p.CS.str})
${'' /* corner marks */}
(fp_line (start -1.25 -7) (end -1.25 7) (layer Dwgs.User) (width 0.15))
(fp_line (start -1.25 7) (end 34.75 7) (layer Dwgs.User) (width 0.15))
(fp_line (start 34.75 7) (end 34.75 -7) (layer Dwgs.User) (width 0.15))
(fp_line (start 34.75 -7) (end -1.25 -7) (layer Dwgs.User) (width 0.15))
`
function outline() {
return `
${'' /* Nice!View outline */}
(fp_line (start -1.25 -6.5) (end -1.25 6.5) (layer F.SilkS) (width 0.15))
(fp_line (start -1.25 6.5) (end 1.25 6.5) (layer F.SilkS) (width 0.15))
(fp_line (start 1.25 6.5) (end 1.25 -6.5) (layer F.SilkS) (width 0.15))
(fp_line (start 1.25 -6.5) (end -1.25 -6.5) (layer F.SilkS) (width 0.15))
${'' /* labels */}
(fp_text user Nice!View (at -2.5 0.00 ${p.rot+90}) (layer F.SilkS knockout) (effects (font (size 1.0 1.0) (thickness 0.15))))
(fp_text user Nice!View (at -2.5 0.00 ${p.rot+90}) (layer B.SilkS knockout) (effects (font (size 1.0 1.0) (thickness 0.15)) (justify mirror)))
`
}
if (p.outline) {
return `
${standard}
${outline()})
`
} else {
return `${standard})`
}
}
}

View File

@@ -0,0 +1,55 @@
module.exports = {
params: {
class: "B", // for Button
side: "F",
from: undefined,
to: undefined
},
body: (p) => `
(module kbd:ResetSW (layer F.Cu) (tedit 5B9559E6)
(descr "Two pin through hole Tactile Switch, the same as on the Corne")
(tags "Tactile Switch")
${p.at /* parametric position */}
${"" /* footprint reference */}
(fp_text reference "${p.ref}" (at 0 2.55) (layer F.SilkS) ${
p.ref_hide
} (effects (font (size 1 1) (thickness 0.15))))
(fp_text value "" (at 0 -2.55) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))))
${"" /* outline */}
(fp_text user RESET (at 0 0 ${
p.rot
}) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))))
(fp_text user RESET (at 0.127 0 ${
p.rot
}) (layer B.SilkS) (effects (font (size 1 1) (thickness 0.15)) (justify mirror)))
(fp_line (start 3 1.5) (end 3 1.75) (layer B.SilkS) (width 0.15))
(fp_line (start 3 1.75) (end -3 1.75) (layer B.SilkS) (width 0.15))
(fp_line (start -3 1.75) (end -3 1.5) (layer B.SilkS) (width 0.15))
(fp_line (start -3 -1.5) (end -3 -1.75) (layer B.SilkS) (width 0.15))
(fp_line (start -3 -1.75) (end 3 -1.75) (layer B.SilkS) (width 0.15))
(fp_line (start 3 -1.75) (end 3 -1.5) (layer B.SilkS) (width 0.15))
(fp_line (start -3 1.75) (end 3 1.75) (layer F.SilkS) (width 0.15))
(fp_line (start 3 1.75) (end 3 1.5) (layer F.SilkS) (width 0.15))
(fp_line (start -3 1.75) (end -3 1.5) (layer F.SilkS) (width 0.15))
(fp_line (start -3 -1.75) (end -3 -1.5) (layer F.SilkS) (width 0.15))
(fp_line (start -3 -1.75) (end 3 -1.75) (layer F.SilkS) (width 0.15))
(fp_line (start 3 -1.75) (end 3 -1.5) (layer F.SilkS) (width 0.15))
${"" /* pins */}
(pad 2 thru_hole circle (at -3.25 0 ${
p.rot
}) (size 2 2) (drill 1.3) (layers *.Cu *.Mask F.SilkS) ${
p.from.str
})
(pad 1 thru_hole circle (at 3.25 0 ${
p.rot
}) (size 2 2) (drill 1.3) (layers *.Cu *.Mask F.SilkS) ${
p.to.str
})
)
`
};

View File

@@ -0,0 +1,66 @@
// EC11 rotary encoder
//
// Nets
// from: corresponds to switch pin 1 (for button presses)
// to: corresponds to switch pin 2 (for button presses)
// A: corresponds to pin 1 (for rotary)
// B: corresponds to pin 2 (for rotary, should be GND)
// C: corresponds to pin 3 (for rotary)
module.exports = {
params: {
designator: 'ROT',
from: undefined,
to: undefined,
A: undefined,
B: undefined,
C: undefined
},
body: p => `
(module rotary_encoder (layer F.Cu) (tedit 603326DE)
${p.at /* parametric position */}
${'' /* footprint reference */}
(fp_text reference "${p.ref}" (at 0 0.5) (layer F.SilkS)
${p.ref_hide} (effects (font (size 1 1) (thickness 0.15))))
(fp_text value "" (at 0 8.89) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15))))
${''/* component outline */}
(fp_line (start -0.62 -0.04) (end 0.38 -0.04) (layer F.SilkS) (width 0.12))
(fp_line (start -0.12 -0.54) (end -0.12 0.46) (layer F.SilkS) (width 0.12))
(fp_line (start 5.98 3.26) (end 5.98 5.86) (layer F.SilkS) (width 0.12))
(fp_line (start 5.98 -1.34) (end 5.98 1.26) (layer F.SilkS) (width 0.12))
(fp_line (start 5.98 -5.94) (end 5.98 -3.34) (layer F.SilkS) (width 0.12))
(fp_line (start -3.12 -0.04) (end 2.88 -0.04) (layer F.Fab) (width 0.12))
(fp_line (start -0.12 -3.04) (end -0.12 2.96) (layer F.Fab) (width 0.12))
(fp_line (start -7.32 -4.14) (end -7.62 -3.84) (layer F.SilkS) (width 0.12))
(fp_line (start -7.92 -4.14) (end -7.32 -4.14) (layer F.SilkS) (width 0.12))
(fp_line (start -7.62 -3.84) (end -7.92 -4.14) (layer F.SilkS) (width 0.12))
(fp_line (start -6.22 -5.84) (end -6.22 5.86) (layer F.SilkS) (width 0.12))
(fp_line (start -2.12 -5.84) (end -6.22 -5.84) (layer F.SilkS) (width 0.12))
(fp_line (start -2.12 5.86) (end -6.22 5.86) (layer F.SilkS) (width 0.12))
(fp_line (start 5.98 5.86) (end 1.88 5.86) (layer F.SilkS) (width 0.12))
(fp_line (start 1.88 -5.94) (end 5.98 -5.94) (layer F.SilkS) (width 0.12))
(fp_line (start -6.12 -4.74) (end -5.12 -5.84) (layer F.Fab) (width 0.12))
(fp_line (start -6.12 5.76) (end -6.12 -4.74) (layer F.Fab) (width 0.12))
(fp_line (start 5.88 5.76) (end -6.12 5.76) (layer F.Fab) (width 0.12))
(fp_line (start 5.88 -5.84) (end 5.88 5.76) (layer F.Fab) (width 0.12))
(fp_line (start -5.12 -5.84) (end 5.88 -5.84) (layer F.Fab) (width 0.12))
(fp_line (start -8.87 -6.89) (end 7.88 -6.89) (layer F.CrtYd) (width 0.05))
(fp_line (start -8.87 -6.89) (end -8.87 6.81) (layer F.CrtYd) (width 0.05))
(fp_line (start 7.88 6.81) (end 7.88 -6.89) (layer F.CrtYd) (width 0.05))
(fp_line (start 7.88 6.81) (end -8.87 6.81) (layer F.CrtYd) (width 0.05))
(fp_circle (center -0.12 -0.04) (end 2.88 -0.04) (layer F.SilkS) (width 0.12))
(fp_circle (center -0.12 -0.04) (end 2.88 -0.04) (layer F.Fab) (width 0.12))
${''/* pin names */}
(pad A thru_hole rect (at -7.62 -2.54 ${p.rot}) (size 2 2) (drill 1) (layers *.Cu *.Mask) ${p.A.str})
(pad C thru_hole circle (at -7.62 -0.04) (size 2 2) (drill 1) (layers *.Cu *.Mask) ${p.C.str})
(pad B thru_hole circle (at -7.62 2.46) (size 2 2) (drill 1) (layers *.Cu *.Mask) ${p.B.str})
(pad 1 thru_hole circle (at 6.88 -2.54) (size 1.5 1.5) (drill 1) (layers *.Cu *.Mask) ${p.from.str})
(pad 2 thru_hole circle (at 6.88 2.46) (size 1.5 1.5) (drill 1) (layers *.Cu *.Mask) ${p.to.str})
)
`
}

View File

@@ -0,0 +1,95 @@
// Panasonic EVQWGD001 horizontal rotary encoder
//
// __________________
// (f) (t) | |
// | (1) | |
// | (2) | |
// | (3) | |
// | (4) | |
// |_( )___________|_|
//
// Nets
// from: corresponds to switch pin 1 (for button presses)
// to: corresponds to switch pin 2 (for button presses)
// A: corresponds to pin 1 (for rotary)
// B: corresponds to pin 2 (for rotary, should be GND)
// C: corresponds to pin 3 (for rotary)
// D: corresponds to pin 4 (for rotary, unused)
// Params
// reverse: default is false
// if true, will flip the footprint such that the pcb can be reversible
module.exports = {
params: {
designator: 'S',
reverse: false,
from: undefined,
to: undefined,
A: undefined,
B: undefined,
C: undefined,
D: undefined
},
body: p => {
const standard = `
(module RollerEncoder_Panasonic_EVQWGD001 (layer F.Cu) (tedit 6040A10C)
${p.at /* parametric position */}
(fp_text reference REF** (at 0 0 ${p.rot}) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))))
(fp_text value RollerEncoder_Panasonic_EVQWGD001 (at -0.1 9 ${p.rot}) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))))
${'' /* corner marks */}
(fp_line (start -8.4 -6.4) (end 8.4 -6.4) (layer F.SilkS) (width 0.12))
(fp_line (start 8.4 -6.4) (end 8.4 7.4) (layer F.SilkS) (width 0.12))
(fp_line (start 8.4 7.4) (end -8.4 7.4) (layer F.SilkS) (width 0.12))
(fp_line (start -8.4 7.4) (end -8.4 -6.4) (layer F.SilkS) (width 0.12))
(fp_line (start -8.4 6.4) (end 8.4 6.4) (layer B.SilkS) (width 0.12))
(fp_line (start 8.4 6.4) (end 8.4 -7.4) (layer B.SilkS) (width 0.12))
(fp_line (start 8.4 -7.4) (end -8.4 -7.4) (layer B.SilkS) (width 0.12))
(fp_line (start -8.4 -7.4) (end -8.4 6.4) (layer B.SilkS) (width 0.12))
(fp_text user "Scrollwheel" (at 0 0 ${p.rot + 90}) (layer F.SilkS knockout) (effects (font (size 1.0 1.0) (thickness 0.15))))
(fp_text user "EVQWGD001" (at 1.75 0 ${p.rot + 90}) (layer F.SilkS) (effects (font (size 1.0 1.0) (thickness 0.15))))
`
function pins(def_neg, def_pos) {
return `
${'' /* edge cuts */}
(fp_line (start ${def_pos}9.8 7.3) (end ${def_pos}9.8 -7.3) (layer Edge.Cuts) (width 0.15))
(fp_line (start ${def_pos}7.4 -7.3) (end ${def_pos}7.4 7.3) (layer Edge.Cuts) (width 0.15))
(fp_line (start ${def_pos}9.5 -7.6) (end ${def_pos}7.7 -7.6) (layer Edge.Cuts) (width 0.15))
(fp_line (start ${def_pos}7.7 7.6) (end ${def_pos}9.5 7.6) (layer Edge.Cuts) (width 0.15))
(fp_arc (start ${def_pos}7.7 7.3) (end ${def_pos}7.4 7.3) (angle ${def_neg}90) (layer Edge.Cuts) (width 0.15))
(fp_arc (start ${def_pos}9.5 7.3) (end ${def_pos}9.5 7.6) (angle ${def_neg}90) (layer Edge.Cuts) (width 0.15))
(fp_arc (start ${def_pos}7.7 -7.3) (end ${def_pos}7.7 -7.6) (angle ${def_neg}90) (layer Edge.Cuts) (width 0.15))
(fp_arc (start ${def_pos}9.5 -7.3) (end ${def_pos}9.8 -7.3) (angle ${def_neg}90) (layer Edge.Cuts) (width 0.15))
${'' /* pins */}
(pad S1 thru_hole circle (at ${def_neg}6.85 -6.2 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.from.str})
(pad S2 thru_hole circle (at ${def_neg}5 -6.2 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.to.str})
(pad A thru_hole circle (at ${def_neg}5.625 -3.81 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.A.str})
(pad B thru_hole circle (at ${def_neg}5.625 -1.27 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.B.str})
(pad C thru_hole circle (at ${def_neg}5.625 1.27 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.C.str})
(pad D thru_hole circle (at ${def_neg}5.625 3.81 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.D.str})
${'' /* mirror pins */}
(pad S1 thru_hole circle (at ${def_neg}6.85 6.2 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.from.str})
(pad S2 thru_hole circle (at ${def_neg}5 6.2 ${p.rot}) (size 1.6 1.6) (drill 0.9) (layers *.Cu *.Mask) ${p.to.str})
`
}
if(p.reverse) {
return `
${standard}
${pins('-', '')}
${pins('', '-')})
`
} else {
return `
${standard}
${pins('-', '')})
`
}
}
}

View File

@@ -0,0 +1,69 @@
module.exports = {
params: {
designator: 'T', // for Toggle
side: 'F',
reverse: false,
from: undefined,
to: undefined
},
body: p => {
const standard = `
(module E73:SPDT_C128955 (layer F.Cu) (tstamp 5BF2CC3C)
${p.at /* parametric position */}
${'' /* footprint reference */}
(fp_text reference "${p.ref}" (at 0 0) (layer F.SilkS) ${p.ref_hide} (effects (font (size 1.27 1.27) (thickness 0.15))))
(fp_text value "" (at 0 0) (layer F.SilkS) hide (effects (font (size 1.27 1.27) (thickness 0.15))))
${'' /* extra indicator for the slider */}
(fp_line (start -1.95 -3.85) (end 1.95 -3.85) (layer Dwgs.User) (width 0.15))
(fp_line (start 1.95 -3.85) (end 1.95 -1.35) (layer Dwgs.User) (width 0.15))
(fp_line (start -1.95 -1.35) (end -1.95 -3.85) (layer Dwgs.User) (width 0.15))
${'' /* bottom cutouts */}
(pad "" np_thru_hole circle (at 1.5 0) (size 1 1) (drill 0.9) (layers *.Cu *.Mask))
(pad "" np_thru_hole circle (at -1.5 0) (size 1 1) (drill 0.9) (layers *.Cu *.Mask))
`
function pads(side, left, right) {
return `
${'' /* outline */}
(fp_line (start 1.95 -1.35) (end -1.95 -1.35) (layer ${side}.SilkS) (width 0.15))
(fp_line (start 0 -1.35) (end -3.3 -1.35) (layer ${side}.SilkS) (width 0.15))
(fp_line (start -3.3 -1.35) (end -3.3 1.5) (layer ${side}.SilkS) (width 0.15))
(fp_line (start -3.3 1.5) (end 3.3 1.5) (layer ${side}.SilkS) (width 0.15))
(fp_line (start 3.3 1.5) (end 3.3 -1.35) (layer ${side}.SilkS) (width 0.15))
(fp_line (start 0 -1.35) (end 3.3 -1.35) (layer ${side}.SilkS) (width 0.15))
${'' /* side mounts */}
(pad "" smd rect (at 3.7 -1.1 ${p.rot}) (size 0.9 0.9) (layers ${side}.Cu ${side}.Paste ${side}.Mask))
(pad "" smd rect (at 3.7 1.1 ${p.rot}) (size 0.9 0.9) (layers ${side}.Cu ${side}.Paste ${side}.Mask))
(pad "" smd rect (at -3.7 1.1 ${p.rot}) (size 0.9 0.9) (layers ${side}.Cu ${side}.Paste ${side}.Mask))
(pad "" smd rect (at -3.7 -1.1 ${p.rot}) (size 0.9 0.9) (layers ${side}.Cu ${side}.Paste ${side}.Mask))
${'' /* pins */}
(pad 1 smd rect (at ${right}2.25 2.075 ${p.rot}) (size 0.9 1.25) (layers ${side}.Cu ${side}.Paste ${side}.Mask) ${p.from.str})
(pad 2 smd rect (at ${left}0.75 2.075 ${p.rot}) (size 0.9 1.25) (layers ${side}.Cu ${side}.Paste ${side}.Mask) ${p.to.str})
(pad 3 smd rect (at ${left}2.25 2.075 ${p.rot}) (size 0.9 1.25) (layers ${side}.Cu ${side}.Paste ${side}.Mask))
`
}
const left = p.side == 'F' ? '-' : ''
const right = p.side == 'F' ? '' : '-'
if (p.reverse) {
return `
${standard}
${pads(p.side, left, right)}
${pads(p.side == 'F' ? 'B' : 'F', right, left)}
)`
} else {
return `
${standard}
${pads(p.side, left, right)}
)`
}
}
}

View File

@@ -0,0 +1,19 @@
module.exports = {
params: {
text: '',
side: 'F',
knockout: false,
fontsize: 0.8
},
body: p => `
(module lib:text (layer F.Cu) (tedit 648E0265)
${p.at /* parametric position */}
(fp_text user "${p.text}" (at 0 0 ${p.rot + 90}) (layer ${p.side}.SilkS ${p.knockout ? "knockout" : ""}) (effects (font (size ${p.fontsize} ${p.fontsize}) (thickness 0.15)) ${p.side === 'F' ? "" : "(justify mirror)"} ))
)
`
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,947 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.10-7.0.10~ubuntu22.04.1*%
%TF.CreationDate,2024-02-09T13:23:23+01:00*%
%TF.ProjectId,keyboard,6b657962-6f61-4726-942e-6b696361645f,v1.0.0*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Soldermask,Bot*%
%TF.FilePolarity,Negative*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.10-7.0.10~ubuntu22.04.1) date 2024-02-09 13:23:23*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
G04 Aperture macros list*
%AMRoundRect*
0 Rectangle with rounded corners*
0 $1 Rounding radius*
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
0 Add a 4 corners polygon primitive as box body*
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
0 Add four circle primitives for the rounded corners*
1,1,$1+$1,$2,$3*
1,1,$1+$1,$4,$5*
1,1,$1+$1,$6,$7*
1,1,$1+$1,$8,$9*
0 Add four rect primitives between the rounded corners*
20,1,$1+$1,$2,$3,$4,$5,0*
20,1,$1+$1,$4,$5,$6,$7,0*
20,1,$1+$1,$6,$7,$8,$9,0*
20,1,$1+$1,$8,$9,$2,$3,0*%
%AMFreePoly0*
4,1,14,0.635355,0.435355,0.650000,0.400000,0.650000,0.200000,0.635355,0.164645,0.035355,-0.435355,0.000000,-0.450000,-0.035355,-0.435355,-0.635355,0.164645,-0.650000,0.200000,-0.650000,0.400000,-0.635355,0.435355,-0.600000,0.450000,0.600000,0.450000,0.635355,0.435355,0.635355,0.435355,$1*%
%AMFreePoly1*
4,1,16,0.635355,1.035355,0.650000,1.000000,0.650000,-0.250000,0.635355,-0.285355,0.600000,-0.300000,-0.600000,-0.300000,-0.635355,-0.285355,-0.650000,-0.250000,-0.650000,1.000000,-0.635355,1.035355,-0.600000,1.050000,-0.564645,1.035355,0.000000,0.470710,0.564645,1.035355,0.600000,1.050000,0.635355,1.035355,0.635355,1.035355,$1*%
G04 Aperture macros list end*
%ADD10RoundRect,0.050000X-0.450000X-0.450000X0.450000X-0.450000X0.450000X0.450000X-0.450000X0.450000X0*%
%ADD11C,1.100000*%
%ADD12RoundRect,0.050000X-0.450000X-0.625000X0.450000X-0.625000X0.450000X0.625000X-0.450000X0.625000X0*%
%ADD13C,1.801800*%
%ADD14C,3.100000*%
%ADD15C,3.529000*%
%ADD16RoundRect,0.050000X1.300000X1.300000X-1.300000X1.300000X-1.300000X-1.300000X1.300000X-1.300000X0*%
%ADD17RoundRect,0.050000X-0.450000X-0.600000X0.450000X-0.600000X0.450000X0.600000X-0.450000X0.600000X0*%
%ADD18C,0.700000*%
%ADD19RoundRect,0.050000X-0.876300X0.876300X-0.876300X-0.876300X0.876300X-0.876300X0.876300X0.876300X0*%
%ADD20C,1.852600*%
%ADD21RoundRect,0.050000X1.181751X1.408356X-1.408356X1.181751X-1.181751X-1.408356X1.408356X-1.181751X0*%
%ADD22C,4.800000*%
%ADD23C,4.100000*%
%ADD24FreePoly0,180.000000*%
%ADD25FreePoly1,180.000000*%
%ADD26FreePoly0,90.000000*%
%ADD27FreePoly1,90.000000*%
%ADD28FreePoly0,270.000000*%
%ADD29FreePoly1,270.000000*%
%ADD30RoundRect,0.050000X-0.395994X-0.636937X0.500581X-0.558497X0.395994X0.636937X-0.500581X0.558497X0*%
%ADD31RoundRect,0.050000X-0.700000X0.700000X-0.700000X-0.700000X0.700000X-0.700000X0.700000X0.700000X0*%
%ADD32C,1.500000*%
%ADD33O,1.800000X1.800000*%
%ADD34RoundRect,0.050000X-0.589958X-0.463087X0.279375X-0.696024X0.589958X0.463087X-0.279375X0.696024X0*%
%ADD35RoundRect,0.050000X-0.475833X1.775833X-1.775833X-0.475833X0.475833X-1.775833X1.775833X0.475833X0*%
%ADD36C,2.100000*%
%ADD37C,1.700000*%
%ADD38RoundRect,0.050000X1.592168X0.919239X-0.919239X1.592168X-1.592168X-0.919239X0.919239X-1.592168X0*%
%ADD39RoundRect,0.050000X-0.689711X-0.294615X0.089711X-0.744615X0.689711X0.294615X-0.089711X0.744615X0*%
G04 APERTURE END LIST*
D10*
%TO.C,T1*%
X160405700Y-53674001D03*
X160405700Y-55874001D03*
D11*
X162605700Y-54774001D03*
X165605700Y-54774001D03*
D10*
X167805700Y-53674001D03*
X167805700Y-55874001D03*
D12*
X161855700Y-56849001D03*
X164855700Y-56849001D03*
X166355700Y-56849001D03*
%TD*%
D13*
%TO.C,S20*%
X132105692Y-77074008D03*
D14*
X131605692Y-80824008D03*
X126605692Y-83024008D03*
X126605692Y-83024008D03*
D15*
X126605692Y-77074008D03*
D14*
X121605692Y-80824008D03*
D13*
X121105692Y-77074008D03*
D16*
X129880692Y-83024008D03*
X118330692Y-80824008D03*
%TD*%
D17*
%TO.C,D20*%
X88955699Y-71874007D03*
D18*
X89855699Y-71874007D03*
X91355699Y-71874007D03*
D17*
X92255699Y-71874007D03*
%TD*%
%TO.C,D26*%
X142955696Y-74374007D03*
D18*
X143855696Y-74374007D03*
X145355696Y-74374007D03*
D17*
X146255696Y-74374007D03*
%TD*%
D19*
%TO.C,MCU1*%
X171725688Y-57904005D03*
D20*
X156485688Y-57904005D03*
X156485688Y-60444005D03*
X156485688Y-62984005D03*
X156485688Y-65524005D03*
X156485688Y-68064005D03*
X156485688Y-70604005D03*
X156485688Y-73144005D03*
X156485688Y-75684005D03*
X156485688Y-78224005D03*
X156485688Y-80764005D03*
X156485688Y-83304005D03*
X156485688Y-85844005D03*
X171725688Y-57904005D03*
X171725688Y-60444005D03*
X171725688Y-62984005D03*
X171725688Y-65524005D03*
X171725688Y-68064005D03*
X171725688Y-70604005D03*
X171725688Y-73144005D03*
X171725688Y-75684005D03*
X171725688Y-78224005D03*
X171725688Y-80764005D03*
X171725688Y-83304005D03*
X171725688Y-85844005D03*
%TD*%
D13*
%TO.C,S22*%
X150105694Y-113574005D03*
D14*
X149605694Y-117324005D03*
X144605694Y-119524005D03*
X144605694Y-119524005D03*
D15*
X144605694Y-113574005D03*
D14*
X139605694Y-117324005D03*
D13*
X139105694Y-113574005D03*
D16*
X147880694Y-119524005D03*
X136330694Y-117324005D03*
%TD*%
D13*
%TO.C,S1*%
X60415238Y-124943808D03*
D14*
X60243975Y-128723116D03*
X55454744Y-131350523D03*
X55454744Y-131350523D03*
D15*
X54936167Y-125423165D03*
D14*
X50282028Y-129594674D03*
D13*
X49457096Y-125902522D03*
D21*
X58717281Y-131065088D03*
X47019490Y-129880109D03*
%TD*%
D13*
%TO.C,S9*%
X96105691Y-94074003D03*
D14*
X95605691Y-97824003D03*
X90605691Y-100024003D03*
X90605691Y-100024003D03*
D15*
X90605691Y-94074003D03*
D14*
X85605691Y-97824003D03*
D13*
X85105691Y-94074003D03*
D16*
X93880691Y-100024003D03*
X82330691Y-97824003D03*
%TD*%
D22*
%TO.C,_7*%
X117605698Y-119574006D03*
%TD*%
D17*
%TO.C,D19*%
X88955691Y-105874011D03*
D18*
X89855691Y-105874011D03*
X91355691Y-105874011D03*
D17*
X92255691Y-105874011D03*
%TD*%
%TO.C,D9*%
X124955694Y-137573999D03*
D18*
X125855694Y-137573999D03*
X127355694Y-137573999D03*
D17*
X128255694Y-137573999D03*
%TD*%
D22*
%TO.C,_6*%
X63161113Y-116171110D03*
%TD*%
D13*
%TO.C,S23*%
X150105690Y-96574001D03*
D14*
X149605690Y-100324001D03*
X144605690Y-102524001D03*
X144605690Y-102524001D03*
D15*
X144605690Y-96574001D03*
D14*
X139605690Y-100324001D03*
D13*
X139105690Y-96574001D03*
D16*
X147880690Y-102524001D03*
X136330690Y-100324001D03*
%TD*%
D23*
%TO.C,_3*%
X171605691Y-98873997D03*
%TD*%
D24*
%TO.C,J16*%
X161565699Y-90382000D03*
D25*
X161565699Y-89366000D03*
%TD*%
D13*
%TO.C,S2*%
X58933599Y-108008497D03*
D14*
X58762336Y-111787805D03*
X53973105Y-114415212D03*
X53973105Y-114415212D03*
D15*
X53454528Y-108487854D03*
D14*
X48800389Y-112659363D03*
D13*
X47975457Y-108967211D03*
D21*
X57235642Y-114129777D03*
X45537851Y-112944798D03*
%TD*%
D22*
%TO.C,_4*%
X79605694Y-68574003D03*
%TD*%
D17*
%TO.C,D22*%
X106955699Y-66264004D03*
D18*
X107855699Y-66264004D03*
X109355699Y-66264004D03*
D17*
X110255699Y-66264004D03*
%TD*%
D13*
%TO.C,S12*%
X114105694Y-122464005D03*
D14*
X113605694Y-126214005D03*
X108605694Y-128414005D03*
X108605694Y-128414005D03*
D15*
X108605694Y-122464005D03*
D14*
X103605694Y-126214005D03*
D13*
X103105694Y-122464005D03*
D16*
X111880694Y-128414005D03*
X100330694Y-126214005D03*
%TD*%
D13*
%TO.C,S24*%
X150105702Y-79574002D03*
D14*
X149605702Y-83324002D03*
X144605702Y-85524002D03*
X144605702Y-85524002D03*
D15*
X144605702Y-79574002D03*
D14*
X139605702Y-83324002D03*
D13*
X139105702Y-79574002D03*
D16*
X147880702Y-85524002D03*
X136330702Y-83324002D03*
%TD*%
D17*
%TO.C,D4*%
X88955699Y-103574005D03*
D18*
X89855699Y-103574005D03*
X91355699Y-103574005D03*
D17*
X92255699Y-103574005D03*
%TD*%
D22*
%TO.C,_8*%
X160984199Y-127797132D03*
%TD*%
D26*
%TO.C,J7*%
X161097692Y-60424001D03*
D27*
X162113692Y-60424001D03*
%TD*%
D26*
%TO.C,J2*%
X159347698Y-112304005D03*
D27*
X160363698Y-112304005D03*
%TD*%
D28*
%TO.C,J10*%
X167113695Y-62974005D03*
D29*
X166097695Y-62974005D03*
%TD*%
D17*
%TO.C,D8*%
X106955694Y-63964002D03*
D18*
X107855694Y-63964002D03*
X109355694Y-63964002D03*
D17*
X110255694Y-63964002D03*
%TD*%
D30*
%TO.C,D1*%
X52638789Y-118095508D03*
D18*
X53535364Y-118017068D03*
X55029656Y-117886334D03*
D30*
X55926231Y-117807894D03*
%TD*%
D13*
%TO.C,S3*%
X57451946Y-91073186D03*
D14*
X57280683Y-94852494D03*
X52491452Y-97479901D03*
X52491452Y-97479901D03*
D15*
X51972875Y-91552543D03*
D14*
X47318736Y-95724052D03*
D13*
X46493804Y-92031900D03*
D21*
X55753989Y-97194466D03*
X44056198Y-96009487D03*
%TD*%
D23*
%TO.C,_2*%
X156605701Y-98874007D03*
%TD*%
D13*
%TO.C,S10*%
X96105696Y-77074001D03*
D14*
X95605696Y-80824001D03*
X90605696Y-83024001D03*
X90605696Y-83024001D03*
D15*
X90605696Y-77074001D03*
D14*
X85605696Y-80824001D03*
D13*
X85105696Y-77074001D03*
D16*
X93880696Y-83024001D03*
X82330696Y-80824001D03*
%TD*%
D31*
%TO.C,*%
X156355698Y-54874006D03*
D32*
X171855698Y-54874006D03*
%TD*%
D13*
%TO.C,S6*%
X75383454Y-89504382D03*
D14*
X75212191Y-93283690D03*
X70422960Y-95911097D03*
X70422960Y-95911097D03*
D15*
X69904383Y-89983739D03*
D14*
X65250244Y-94155248D03*
D13*
X64425312Y-90463096D03*
D21*
X73685497Y-95625662D03*
X61987706Y-94440683D03*
%TD*%
D17*
%TO.C,D25*%
X142955694Y-108374009D03*
D18*
X143855694Y-108374009D03*
X145355694Y-108374009D03*
D17*
X146255694Y-108374009D03*
%TD*%
D24*
%TO.C,J15*%
X159025697Y-90382007D03*
D25*
X159025697Y-89366007D03*
%TD*%
D17*
%TO.C,D24*%
X124955695Y-71874001D03*
D18*
X125855695Y-71874001D03*
X127355695Y-71874001D03*
D17*
X128255695Y-71874001D03*
%TD*%
D13*
%TO.C,S16*%
X114105697Y-54464005D03*
D14*
X113605697Y-58214005D03*
X108605697Y-60414005D03*
X108605697Y-60414005D03*
D15*
X108605697Y-54464005D03*
D14*
X103605697Y-58214005D03*
D13*
X103105697Y-54464005D03*
D16*
X111880697Y-60414005D03*
X100330697Y-58214005D03*
%TD*%
D33*
%TO.C,Nice!View1*%
X166645699Y-92374001D03*
X169185699Y-92374001D03*
X164105699Y-92374001D03*
X161565699Y-92374001D03*
X159025699Y-92374001D03*
%TD*%
D17*
%TO.C,D10*%
X124955698Y-103574004D03*
D18*
X125855698Y-103574004D03*
X127355698Y-103574004D03*
D17*
X128255698Y-103574004D03*
%TD*%
%TO.C,D28*%
X156205696Y-122574004D03*
D18*
X157105696Y-122574004D03*
X158605696Y-122574004D03*
D17*
X159505696Y-122574004D03*
%TD*%
D13*
%TO.C,S5*%
X76865099Y-106439688D03*
D14*
X76693836Y-110218996D03*
X71904605Y-112846403D03*
X71904605Y-112846403D03*
D15*
X71386028Y-106919045D03*
D14*
X66731889Y-111090554D03*
D13*
X65906957Y-107398402D03*
D21*
X75167142Y-112560968D03*
X63469351Y-111375989D03*
%TD*%
D13*
%TO.C,S8*%
X96105702Y-111074006D03*
D14*
X95605702Y-114824006D03*
X90605702Y-117024006D03*
X90605702Y-117024006D03*
D15*
X90605702Y-111074006D03*
D14*
X85605702Y-114824006D03*
D13*
X85105702Y-111074006D03*
D16*
X93880702Y-117024006D03*
X82330702Y-114824006D03*
%TD*%
D26*
%TO.C,J8*%
X161097698Y-62974001D03*
D27*
X162113698Y-62974001D03*
%TD*%
D17*
%TO.C,D6*%
X106955698Y-131963998D03*
D18*
X107855698Y-131963998D03*
X109355698Y-131963998D03*
D17*
X110255698Y-131963998D03*
%TD*%
D34*
%TO.C,D14*%
X142553138Y-141213247D03*
D18*
X143422472Y-141446184D03*
X144871360Y-141834412D03*
D34*
X145740694Y-142067349D03*
%TD*%
D13*
%TO.C,S27*%
X166840443Y-138189733D03*
D14*
X169838038Y-140497746D03*
X169243294Y-145927873D03*
X169243294Y-145927873D03*
D15*
X164090443Y-142952873D03*
D14*
X164838038Y-149158000D03*
D13*
X161340443Y-147716013D03*
D35*
X170880794Y-143091640D03*
X163200538Y-151994233D03*
%TD*%
D17*
%TO.C,D23*%
X124955695Y-105874000D03*
D18*
X125855695Y-105874000D03*
X127355695Y-105874000D03*
D17*
X128255695Y-105874000D03*
%TD*%
%TO.C,D12*%
X142955701Y-106074002D03*
D18*
X143855701Y-106074002D03*
X145355701Y-106074002D03*
D17*
X146255701Y-106074002D03*
%TD*%
D13*
%TO.C,S19*%
X132105699Y-94074005D03*
D14*
X131605699Y-97824005D03*
X126605699Y-100024005D03*
X126605699Y-100024005D03*
D15*
X126605699Y-94074005D03*
D14*
X121605699Y-97824005D03*
D13*
X121105699Y-94074005D03*
D16*
X129880699Y-100024005D03*
X118330699Y-97824005D03*
%TD*%
D13*
%TO.C,S14*%
X114105694Y-88464004D03*
D14*
X113605694Y-92214004D03*
X108605694Y-94414004D03*
X108605694Y-94414004D03*
D15*
X108605694Y-88464004D03*
D14*
X103605694Y-92214004D03*
D13*
X103105694Y-88464004D03*
D16*
X111880694Y-94414004D03*
X100330694Y-92214004D03*
%TD*%
D13*
%TO.C,S13*%
X114105698Y-105464004D03*
D14*
X113605698Y-109214004D03*
X108605698Y-111414004D03*
X108605698Y-111414004D03*
D15*
X108605698Y-105464004D03*
D14*
X103605698Y-109214004D03*
D13*
X103105698Y-105464004D03*
D16*
X111880698Y-111414004D03*
X100330698Y-109214004D03*
%TD*%
D13*
%TO.C,S18*%
X132105698Y-111074008D03*
D14*
X131605698Y-114824008D03*
X126605698Y-117024008D03*
X126605698Y-117024008D03*
D15*
X126605698Y-111074008D03*
D14*
X121605698Y-114824008D03*
D13*
X121105698Y-111074008D03*
D16*
X129880698Y-117024008D03*
X118330698Y-114824008D03*
%TD*%
D36*
%TO.C,_1*%
X160855690Y-98874000D03*
X167355690Y-98874000D03*
%TD*%
D30*
%TO.C,D16*%
X49875945Y-86516140D03*
D18*
X50772520Y-86437700D03*
X52266812Y-86306966D03*
D30*
X53163387Y-86228526D03*
%TD*%
%TO.C,D17*%
X70770747Y-118817960D03*
D18*
X71667322Y-118739520D03*
X73161614Y-118608786D03*
D30*
X74058189Y-118530346D03*
%TD*%
D17*
%TO.C,D13*%
X142955702Y-72074001D03*
D18*
X143855702Y-72074001D03*
X145355702Y-72074001D03*
D17*
X146255702Y-72074001D03*
%TD*%
D37*
%TO.C,REF\u002A\u002A*%
X157230689Y-109764005D03*
X157230689Y-112304005D03*
X157230689Y-114844005D03*
X157230689Y-117384005D03*
X156005689Y-107374005D03*
X156005689Y-119774005D03*
X157855689Y-107374005D03*
X157855689Y-119774005D03*
%TD*%
D13*
%TO.C,S15*%
X114105698Y-71464005D03*
D14*
X113605698Y-75214005D03*
X108605698Y-77414005D03*
X108605698Y-77414005D03*
D15*
X108605698Y-71464005D03*
D14*
X103605698Y-75214005D03*
D13*
X103105698Y-71464005D03*
D16*
X111880698Y-77414005D03*
X100330698Y-75214005D03*
%TD*%
D13*
%TO.C,S21*%
X132105690Y-60074001D03*
D14*
X131605690Y-63824001D03*
X126605690Y-66024001D03*
X126605690Y-66024001D03*
D15*
X126605690Y-60074001D03*
D14*
X121605690Y-63824001D03*
D13*
X121105690Y-60074001D03*
D16*
X129880690Y-66024001D03*
X118330690Y-63824001D03*
%TD*%
D24*
%TO.C,J17*%
X164105695Y-90382002D03*
D25*
X164105695Y-89366002D03*
%TD*%
D30*
%TO.C,D15*%
X52839240Y-120386761D03*
D18*
X53735815Y-120308321D03*
X55230107Y-120177587D03*
D30*
X56126682Y-120099147D03*
%TD*%
D13*
%TO.C,S11*%
X96105698Y-60074002D03*
D14*
X95605698Y-63824002D03*
X90605698Y-66024002D03*
X90605698Y-66024002D03*
D15*
X90605698Y-60074002D03*
D14*
X85605698Y-63824002D03*
D13*
X85105698Y-60074002D03*
D16*
X93880698Y-66024002D03*
X82330698Y-63824002D03*
%TD*%
D30*
%TO.C,D2*%
X70570285Y-116526704D03*
D18*
X71466860Y-116448264D03*
X72961152Y-116317530D03*
D30*
X73857727Y-116239090D03*
%TD*%
D13*
%TO.C,S26*%
X151918293Y-133887513D03*
D14*
X150464759Y-137380325D03*
X145065728Y-138211267D03*
X145065728Y-138211267D03*
D15*
X146605701Y-132464008D03*
D14*
X140805500Y-134792135D03*
D13*
X141293109Y-131040503D03*
D38*
X148229135Y-139058899D03*
X137642093Y-133944502D03*
%TD*%
D30*
%TO.C,D3*%
X67606995Y-82656078D03*
D18*
X68503570Y-82577638D03*
X69997862Y-82446904D03*
D30*
X70894437Y-82368464D03*
%TD*%
D13*
%TO.C,S7*%
X73901813Y-72569071D03*
D14*
X73730550Y-76348379D03*
X68941319Y-78975786D03*
X68941319Y-78975786D03*
D15*
X68422742Y-73048428D03*
D14*
X63768603Y-77219937D03*
D13*
X62943671Y-73527785D03*
D21*
X72203856Y-78690351D03*
X60506065Y-77505372D03*
%TD*%
D39*
%TO.C,D27*%
X165932968Y-134461509D03*
D18*
X166712391Y-134911509D03*
X168011429Y-135661509D03*
D39*
X168790852Y-136111509D03*
%TD*%
D13*
%TO.C,S25*%
X150105694Y-62574002D03*
D14*
X149605694Y-66324002D03*
X144605694Y-68524002D03*
X144605694Y-68524002D03*
D15*
X144605694Y-62574002D03*
D14*
X139605694Y-66324002D03*
D13*
X139105694Y-62574002D03*
D16*
X147880694Y-68524002D03*
X136330694Y-66324002D03*
%TD*%
D17*
%TO.C,D21*%
X106955700Y-100264000D03*
D18*
X107855700Y-100264000D03*
X109355700Y-100264000D03*
D17*
X110255700Y-100264000D03*
%TD*%
D13*
%TO.C,S4*%
X78346756Y-123375000D03*
D14*
X78175493Y-127154308D03*
X73386262Y-129781715D03*
X73386262Y-129781715D03*
D15*
X72867685Y-123854357D03*
D14*
X68213546Y-128025866D03*
D13*
X67388614Y-124333714D03*
D21*
X76648799Y-129496280D03*
X64951008Y-128311301D03*
%TD*%
D13*
%TO.C,S17*%
X132105699Y-128073999D03*
D14*
X131605699Y-131823999D03*
X126605699Y-134023999D03*
X126605699Y-134023999D03*
D15*
X126605699Y-128073999D03*
D14*
X121605699Y-131823999D03*
D13*
X121105699Y-128073999D03*
D16*
X129880699Y-134023999D03*
X118330699Y-131823999D03*
%TD*%
D26*
%TO.C,J9*%
X161097688Y-65523999D03*
D27*
X162113688Y-65523999D03*
%TD*%
D22*
%TO.C,_5*%
X135605700Y-69823998D03*
%TD*%
D17*
%TO.C,D11*%
X124955699Y-69574006D03*
D18*
X125855699Y-69574006D03*
X127355699Y-69574006D03*
D17*
X128255699Y-69574006D03*
%TD*%
D26*
%TO.C,J3*%
X159347696Y-114844003D03*
D27*
X160363696Y-114844003D03*
%TD*%
D24*
%TO.C,J19*%
X169185693Y-90382002D03*
D25*
X169185693Y-89366002D03*
%TD*%
D17*
%TO.C,D5*%
X88955704Y-69574007D03*
D18*
X89855704Y-69574007D03*
X91355704Y-69574007D03*
D17*
X92255704Y-69574007D03*
%TD*%
D26*
%TO.C,J1*%
X159347701Y-109764009D03*
D27*
X160363701Y-109764009D03*
%TD*%
D17*
%TO.C,D7*%
X106955698Y-97964002D03*
D18*
X107855698Y-97964002D03*
X109355698Y-97964002D03*
D17*
X110255698Y-97964002D03*
%TD*%
D30*
%TO.C,D18*%
X67807446Y-84947330D03*
D18*
X68704021Y-84868890D03*
X70198313Y-84738156D03*
D30*
X71094888Y-84659716D03*
%TD*%
D24*
%TO.C,J18*%
X166645694Y-90382002D03*
D25*
X166645694Y-89366002D03*
%TD*%
M02*

View File

@@ -0,0 +1,393 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.10-7.0.10~ubuntu22.04.1*%
%TF.CreationDate,2024-02-09T13:23:23+01:00*%
%TF.ProjectId,keyboard,6b657962-6f61-4726-942e-6b696361645f,v1.0.0*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Paste,Bot*%
%TF.FilePolarity,Positive*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.10-7.0.10~ubuntu22.04.1) date 2024-02-09 13:23:23*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
G04 Aperture macros list*
%AMRotRect*
0 Rectangle, with rotation*
0 The origin of the aperture is its center*
0 $1 length*
0 $2 width*
0 $3 Rotation angle, in degrees counterclockwise*
0 Add horizontal line*
21,1,$1,$2,0,0,$3*%
%AMFreePoly0*
4,1,6,0.600000,0.200000,0.000000,-0.400000,-0.600000,0.200000,-0.600000,0.400000,0.600000,0.400000,0.600000,0.200000,0.600000,0.200000,$1*%
%AMFreePoly1*
4,1,6,0.600000,-0.250000,-0.600000,-0.250000,-0.600000,1.000000,0.000000,0.400000,0.600000,1.000000,0.600000,-0.250000,0.600000,-0.250000,$1*%
G04 Aperture macros list end*
%ADD10R,0.900000X0.900000*%
%ADD11R,0.900000X1.250000*%
%ADD12R,2.600000X2.600000*%
%ADD13R,0.900000X1.200000*%
%ADD14RotRect,2.600000X2.600000X185.000000*%
%ADD15FreePoly0,180.000000*%
%ADD16FreePoly1,180.000000*%
%ADD17FreePoly0,90.000000*%
%ADD18FreePoly1,90.000000*%
%ADD19FreePoly0,270.000000*%
%ADD20FreePoly1,270.000000*%
%ADD21RotRect,0.900000X1.200000X5.000000*%
%ADD22RotRect,0.900000X1.200000X345.000000*%
%ADD23RotRect,2.600000X2.600000X240.000000*%
%ADD24RotRect,2.600000X2.600000X165.000000*%
%ADD25RotRect,0.900000X1.200000X330.000000*%
G04 APERTURE END LIST*
D10*
%TO.C,T1*%
X160405700Y-53674001D03*
X160405700Y-55874001D03*
X167805700Y-53674001D03*
X167805700Y-55874001D03*
D11*
X161855700Y-56849001D03*
X164855700Y-56849001D03*
X166355700Y-56849001D03*
%TD*%
D12*
%TO.C,S20*%
X129880692Y-83024008D03*
X118330692Y-80824008D03*
%TD*%
D13*
%TO.C,D20*%
X88955699Y-71874007D03*
X92255699Y-71874007D03*
%TD*%
%TO.C,D26*%
X142955696Y-74374007D03*
X146255696Y-74374007D03*
%TD*%
D12*
%TO.C,S22*%
X147880694Y-119524005D03*
X136330694Y-117324005D03*
%TD*%
D14*
%TO.C,S1*%
X58717281Y-131065088D03*
X47019490Y-129880109D03*
%TD*%
D12*
%TO.C,S9*%
X93880691Y-100024003D03*
X82330691Y-97824003D03*
%TD*%
D13*
%TO.C,D19*%
X88955691Y-105874011D03*
X92255691Y-105874011D03*
%TD*%
%TO.C,D9*%
X124955694Y-137573999D03*
X128255694Y-137573999D03*
%TD*%
D12*
%TO.C,S23*%
X147880690Y-102524001D03*
X136330690Y-100324001D03*
%TD*%
D15*
%TO.C,J16*%
X161565699Y-90382000D03*
D16*
X161565699Y-89366000D03*
%TD*%
D14*
%TO.C,S2*%
X57235642Y-114129777D03*
X45537851Y-112944798D03*
%TD*%
D13*
%TO.C,D22*%
X106955699Y-66264004D03*
X110255699Y-66264004D03*
%TD*%
D12*
%TO.C,S12*%
X111880694Y-128414005D03*
X100330694Y-126214005D03*
%TD*%
%TO.C,S24*%
X147880702Y-85524002D03*
X136330702Y-83324002D03*
%TD*%
D13*
%TO.C,D4*%
X88955699Y-103574005D03*
X92255699Y-103574005D03*
%TD*%
D17*
%TO.C,J7*%
X161097692Y-60424001D03*
D18*
X162113692Y-60424001D03*
%TD*%
D17*
%TO.C,J2*%
X159347698Y-112304005D03*
D18*
X160363698Y-112304005D03*
%TD*%
D19*
%TO.C,J10*%
X167113695Y-62974005D03*
D20*
X166097695Y-62974005D03*
%TD*%
D13*
%TO.C,D8*%
X106955694Y-63964002D03*
X110255694Y-63964002D03*
%TD*%
D21*
%TO.C,D1*%
X52638789Y-118095508D03*
X55926231Y-117807894D03*
%TD*%
D14*
%TO.C,S3*%
X55753989Y-97194466D03*
X44056198Y-96009487D03*
%TD*%
D12*
%TO.C,S10*%
X93880696Y-83024001D03*
X82330696Y-80824001D03*
%TD*%
D14*
%TO.C,S6*%
X73685497Y-95625662D03*
X61987706Y-94440683D03*
%TD*%
D13*
%TO.C,D25*%
X142955694Y-108374009D03*
X146255694Y-108374009D03*
%TD*%
D15*
%TO.C,J15*%
X159025697Y-90382007D03*
D16*
X159025697Y-89366007D03*
%TD*%
D13*
%TO.C,D24*%
X124955695Y-71874001D03*
X128255695Y-71874001D03*
%TD*%
D12*
%TO.C,S16*%
X111880697Y-60414005D03*
X100330697Y-58214005D03*
%TD*%
D13*
%TO.C,D10*%
X124955698Y-103574004D03*
X128255698Y-103574004D03*
%TD*%
%TO.C,D28*%
X156205696Y-122574004D03*
X159505696Y-122574004D03*
%TD*%
D14*
%TO.C,S5*%
X75167142Y-112560968D03*
X63469351Y-111375989D03*
%TD*%
D12*
%TO.C,S8*%
X93880702Y-117024006D03*
X82330702Y-114824006D03*
%TD*%
D17*
%TO.C,J8*%
X161097698Y-62974001D03*
D18*
X162113698Y-62974001D03*
%TD*%
D13*
%TO.C,D6*%
X106955698Y-131963998D03*
X110255698Y-131963998D03*
%TD*%
D22*
%TO.C,D14*%
X142553138Y-141213247D03*
X145740694Y-142067349D03*
%TD*%
D23*
%TO.C,S27*%
X170880794Y-143091640D03*
X163200538Y-151994233D03*
%TD*%
D13*
%TO.C,D23*%
X124955695Y-105874000D03*
X128255695Y-105874000D03*
%TD*%
%TO.C,D12*%
X142955701Y-106074002D03*
X146255701Y-106074002D03*
%TD*%
D12*
%TO.C,S19*%
X129880699Y-100024005D03*
X118330699Y-97824005D03*
%TD*%
%TO.C,S14*%
X111880694Y-94414004D03*
X100330694Y-92214004D03*
%TD*%
%TO.C,S13*%
X111880698Y-111414004D03*
X100330698Y-109214004D03*
%TD*%
%TO.C,S18*%
X129880698Y-117024008D03*
X118330698Y-114824008D03*
%TD*%
D21*
%TO.C,D16*%
X49875945Y-86516140D03*
X53163387Y-86228526D03*
%TD*%
%TO.C,D17*%
X70770747Y-118817960D03*
X74058189Y-118530346D03*
%TD*%
D13*
%TO.C,D13*%
X142955702Y-72074001D03*
X146255702Y-72074001D03*
%TD*%
D12*
%TO.C,S15*%
X111880698Y-77414005D03*
X100330698Y-75214005D03*
%TD*%
%TO.C,S21*%
X129880690Y-66024001D03*
X118330690Y-63824001D03*
%TD*%
D15*
%TO.C,J17*%
X164105695Y-90382002D03*
D16*
X164105695Y-89366002D03*
%TD*%
D21*
%TO.C,D15*%
X52839240Y-120386761D03*
X56126682Y-120099147D03*
%TD*%
D12*
%TO.C,S11*%
X93880698Y-66024002D03*
X82330698Y-63824002D03*
%TD*%
D21*
%TO.C,D2*%
X70570285Y-116526704D03*
X73857727Y-116239090D03*
%TD*%
D24*
%TO.C,S26*%
X148229135Y-139058899D03*
X137642093Y-133944502D03*
%TD*%
D21*
%TO.C,D3*%
X67606995Y-82656078D03*
X70894437Y-82368464D03*
%TD*%
D14*
%TO.C,S7*%
X72203856Y-78690351D03*
X60506065Y-77505372D03*
%TD*%
D25*
%TO.C,D27*%
X165932968Y-134461509D03*
X168790852Y-136111509D03*
%TD*%
D12*
%TO.C,S25*%
X147880694Y-68524002D03*
X136330694Y-66324002D03*
%TD*%
D13*
%TO.C,D21*%
X106955700Y-100264000D03*
X110255700Y-100264000D03*
%TD*%
D14*
%TO.C,S4*%
X76648799Y-129496280D03*
X64951008Y-128311301D03*
%TD*%
D12*
%TO.C,S17*%
X129880699Y-134023999D03*
X118330699Y-131823999D03*
%TD*%
D17*
%TO.C,J9*%
X161097688Y-65523999D03*
D18*
X162113688Y-65523999D03*
%TD*%
D13*
%TO.C,D11*%
X124955699Y-69574006D03*
X128255699Y-69574006D03*
%TD*%
D17*
%TO.C,J3*%
X159347696Y-114844003D03*
D18*
X160363696Y-114844003D03*
%TD*%
D15*
%TO.C,J19*%
X169185693Y-90382002D03*
D16*
X169185693Y-89366002D03*
%TD*%
D13*
%TO.C,D5*%
X88955704Y-69574007D03*
X92255704Y-69574007D03*
%TD*%
D17*
%TO.C,J1*%
X159347701Y-109764009D03*
D18*
X160363701Y-109764009D03*
%TD*%
D13*
%TO.C,D7*%
X106955698Y-97964002D03*
X110255698Y-97964002D03*
%TD*%
D21*
%TO.C,D18*%
X67807446Y-84947330D03*
X71094888Y-84659716D03*
%TD*%
D15*
%TO.C,J18*%
X166645694Y-90382002D03*
D16*
X166645694Y-89366002D03*
%TD*%
M02*

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,139 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.10-7.0.10~ubuntu22.04.1*%
%TF.CreationDate,2024-02-09T13:23:23+01:00*%
%TF.ProjectId,keyboard,6b657962-6f61-4726-942e-6b696361645f,v1.0.0*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Profile,NP*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.10-7.0.10~ubuntu22.04.1) date 2024-02-09 13:23:23*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%TA.AperFunction,Profile*%
%ADD10C,0.150000*%
%TD*%
G04 APERTURE END LIST*
D10*
X176948674Y-139681747D02*
X168161707Y-154901250D01*
X118822748Y-45012896D02*
X154388651Y-53025099D01*
X165734793Y-155776660D02*
X116794287Y-137643875D01*
X174355700Y-55074001D02*
G75*
G03*
X172355691Y-53074000I-2000000J1D01*
G01*
X41755731Y-82315940D02*
G75*
G03*
X41258088Y-83819069I1494749J-1328810D01*
G01*
X41258090Y-83819066D02*
X45627899Y-133766178D01*
X116406962Y-137543074D02*
X83897548Y-132483990D01*
X80837317Y-50501804D02*
G75*
G03*
X80398048Y-50699487I595483J-1910096D01*
G01*
X116794284Y-137643883D02*
G75*
G03*
X116406963Y-137543078I-694984J-1875817D01*
G01*
X118822748Y-45012897D02*
G75*
G03*
X118383206Y-44964006I-439548J-1951403D01*
G01*
X176948647Y-139681732D02*
G75*
G03*
X177183091Y-138316996I-1731947J1000032D01*
G01*
X154828192Y-53074008D02*
X172355691Y-53074000D01*
X174389249Y-123254838D02*
X177183092Y-138316996D01*
X165734804Y-155776631D02*
G75*
G03*
X168161707Y-154901250I694896J1875331D01*
G01*
X80837319Y-50501810D02*
X98315050Y-45054590D01*
X174355692Y-55074001D02*
X174355693Y-122890079D01*
X83897547Y-132483998D02*
G75*
G03*
X83415695Y-132467824I-307547J-1976702D01*
G01*
X98910144Y-44964011D02*
G75*
G03*
X98315049Y-45054591I56J-2000489D01*
G01*
X83415698Y-132467820D02*
X47794595Y-135584263D01*
X57891982Y-64299521D02*
X80398048Y-50699478D01*
X41755736Y-82315940D02*
X57431614Y-64682461D01*
X98910144Y-44964001D02*
X118383205Y-44964000D01*
X174355696Y-122890079D02*
G75*
G03*
X174389250Y-123254837I2001304J179D01*
G01*
X45627846Y-133766183D02*
G75*
G03*
X47794595Y-135584262I1992454J174383D01*
G01*
X57891988Y-64299530D02*
G75*
G03*
X57431619Y-64682462I1034812J-1712270D01*
G01*
X154388650Y-53025102D02*
G75*
G03*
X154828192Y-53074008I439550J1950802D01*
G01*
%TO.C,REF\u002A\u002A*%
X170255689Y-106274005D02*
X170255689Y-120874005D01*
X170555689Y-121174005D02*
X172355689Y-121174005D01*
X172355689Y-105974005D02*
X170555689Y-105974005D01*
X172655689Y-120874005D02*
X172655689Y-106274005D01*
X170555689Y-105974005D02*
G75*
G03*
X170255689Y-106274005I0J-300000D01*
G01*
X170255689Y-120874005D02*
G75*
G03*
X170555689Y-121174005I300000J0D01*
G01*
X172655689Y-106274005D02*
G75*
G03*
X172355689Y-105974005I-300000J0D01*
G01*
X172355689Y-121174005D02*
G75*
G03*
X172655689Y-120874005I0J300000D01*
G01*
%TD*%
M02*

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,946 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.10-7.0.10~ubuntu22.04.1*%
%TF.CreationDate,2024-02-09T13:23:23+01:00*%
%TF.ProjectId,keyboard,6b657962-6f61-4726-942e-6b696361645f,v1.0.0*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Soldermask,Top*%
%TF.FilePolarity,Negative*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.10-7.0.10~ubuntu22.04.1) date 2024-02-09 13:23:23*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
G04 Aperture macros list*
%AMRoundRect*
0 Rectangle with rounded corners*
0 $1 Rounding radius*
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
0 Add a 4 corners polygon primitive as box body*
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
0 Add four circle primitives for the rounded corners*
1,1,$1+$1,$2,$3*
1,1,$1+$1,$4,$5*
1,1,$1+$1,$6,$7*
1,1,$1+$1,$8,$9*
0 Add four rect primitives between the rounded corners*
20,1,$1+$1,$2,$3,$4,$5,0*
20,1,$1+$1,$4,$5,$6,$7,0*
20,1,$1+$1,$6,$7,$8,$9,0*
20,1,$1+$1,$8,$9,$2,$3,0*%
%AMFreePoly0*
4,1,14,0.635355,0.435355,0.650000,0.400000,0.650000,0.200000,0.635355,0.164645,0.035355,-0.435355,0.000000,-0.450000,-0.035355,-0.435355,-0.635355,0.164645,-0.650000,0.200000,-0.650000,0.400000,-0.635355,0.435355,-0.600000,0.450000,0.600000,0.450000,0.635355,0.435355,0.635355,0.435355,$1*%
%AMFreePoly1*
4,1,16,0.635355,1.035355,0.650000,1.000000,0.650000,-0.250000,0.635355,-0.285355,0.600000,-0.300000,-0.600000,-0.300000,-0.635355,-0.285355,-0.650000,-0.250000,-0.650000,1.000000,-0.635355,1.035355,-0.600000,1.050000,-0.564645,1.035355,0.000000,0.470710,0.564645,1.035355,0.600000,1.050000,0.635355,1.035355,0.635355,1.035355,$1*%
G04 Aperture macros list end*
%ADD10RoundRect,0.050000X-0.450000X-0.450000X0.450000X-0.450000X0.450000X0.450000X-0.450000X0.450000X0*%
%ADD11C,1.100000*%
%ADD12RoundRect,0.050000X-0.450000X-0.625000X0.450000X-0.625000X0.450000X0.625000X-0.450000X0.625000X0*%
%ADD13C,1.801800*%
%ADD14C,3.100000*%
%ADD15C,3.529000*%
%ADD16RoundRect,0.050000X1.300000X1.300000X-1.300000X1.300000X-1.300000X-1.300000X1.300000X-1.300000X0*%
%ADD17RoundRect,0.050000X-0.450000X-0.600000X0.450000X-0.600000X0.450000X0.600000X-0.450000X0.600000X0*%
%ADD18C,0.700000*%
%ADD19RoundRect,0.050000X-0.876300X0.876300X-0.876300X-0.876300X0.876300X-0.876300X0.876300X0.876300X0*%
%ADD20C,1.852600*%
%ADD21RoundRect,0.050000X1.181751X1.408356X-1.408356X1.181751X-1.181751X-1.408356X1.408356X-1.181751X0*%
%ADD22C,4.800000*%
%ADD23FreePoly0,270.000000*%
%ADD24FreePoly1,270.000000*%
%ADD25FreePoly0,90.000000*%
%ADD26FreePoly1,90.000000*%
%ADD27C,4.100000*%
%ADD28FreePoly0,180.000000*%
%ADD29FreePoly1,180.000000*%
%ADD30RoundRect,0.050000X-0.395994X-0.636937X0.500581X-0.558497X0.395994X0.636937X-0.500581X0.558497X0*%
%ADD31RoundRect,0.050000X-0.700000X0.700000X-0.700000X-0.700000X0.700000X-0.700000X0.700000X0.700000X0*%
%ADD32C,1.500000*%
%ADD33O,1.800000X1.800000*%
%ADD34RoundRect,0.050000X-0.589958X-0.463087X0.279375X-0.696024X0.589958X0.463087X-0.279375X0.696024X0*%
%ADD35RoundRect,0.050000X-0.475833X1.775833X-1.775833X-0.475833X0.475833X-1.775833X1.775833X0.475833X0*%
%ADD36C,2.100000*%
%ADD37C,1.700000*%
%ADD38RoundRect,0.050000X1.592168X0.919239X-0.919239X1.592168X-1.592168X-0.919239X0.919239X-1.592168X0*%
%ADD39RoundRect,0.050000X-0.689711X-0.294615X0.089711X-0.744615X0.689711X0.294615X-0.089711X0.744615X0*%
G04 APERTURE END LIST*
D10*
%TO.C,T1*%
X160405700Y-53674001D03*
X160405700Y-55874001D03*
D11*
X162605700Y-54774001D03*
X165605700Y-54774001D03*
D10*
X167805700Y-53674001D03*
X167805700Y-55874001D03*
D12*
X166355700Y-56849001D03*
X163355700Y-56849001D03*
X161855700Y-56849001D03*
%TD*%
D13*
%TO.C,S20*%
X132105692Y-77074008D03*
D14*
X131605692Y-80824008D03*
X126605692Y-83024008D03*
X126605692Y-83024008D03*
D15*
X126605692Y-77074008D03*
D14*
X121605692Y-80824008D03*
D13*
X121105692Y-77074008D03*
D16*
X123330692Y-83024008D03*
X134880692Y-80824008D03*
%TD*%
D17*
%TO.C,D20*%
X88955699Y-71874007D03*
D18*
X89855699Y-71874007D03*
X91355699Y-71874007D03*
D17*
X92255699Y-71874007D03*
%TD*%
%TO.C,D26*%
X142955696Y-74374007D03*
D18*
X143855696Y-74374007D03*
X145355696Y-74374007D03*
D17*
X146255696Y-74374007D03*
%TD*%
D19*
%TO.C,MCU1*%
X156485688Y-57904005D03*
D20*
X156485688Y-57904005D03*
X156485688Y-60444005D03*
X156485688Y-62984005D03*
X156485688Y-65524005D03*
X156485688Y-68064005D03*
X156485688Y-70604005D03*
X156485688Y-73144005D03*
X156485688Y-75684005D03*
X156485688Y-78224005D03*
X156485688Y-80764005D03*
X156485688Y-83304005D03*
X156485688Y-85844005D03*
X171725688Y-57904005D03*
X171725688Y-60444005D03*
X171725688Y-62984005D03*
X171725688Y-65524005D03*
X171725688Y-68064005D03*
X171725688Y-70604005D03*
X171725688Y-73144005D03*
X171725688Y-75684005D03*
X171725688Y-78224005D03*
X171725688Y-80764005D03*
X171725688Y-83304005D03*
X171725688Y-85844005D03*
%TD*%
D13*
%TO.C,S22*%
X150105694Y-113574005D03*
D14*
X149605694Y-117324005D03*
X144605694Y-119524005D03*
X144605694Y-119524005D03*
D15*
X144605694Y-113574005D03*
D14*
X139605694Y-117324005D03*
D13*
X139105694Y-113574005D03*
D16*
X141330694Y-119524005D03*
X152880694Y-117324005D03*
%TD*%
D13*
%TO.C,S1*%
X60415238Y-124943808D03*
D14*
X60243975Y-128723116D03*
X55454744Y-131350523D03*
X55454744Y-131350523D03*
D15*
X54936167Y-125423165D03*
D14*
X50282028Y-129594674D03*
D13*
X49457096Y-125902522D03*
D21*
X52192206Y-131635959D03*
X63506512Y-128437681D03*
%TD*%
D13*
%TO.C,S9*%
X96105691Y-94074003D03*
D14*
X95605691Y-97824003D03*
X90605691Y-100024003D03*
X90605691Y-100024003D03*
D15*
X90605691Y-94074003D03*
D14*
X85605691Y-97824003D03*
D13*
X85105691Y-94074003D03*
D16*
X87330691Y-100024003D03*
X98880691Y-97824003D03*
%TD*%
D22*
%TO.C,_7*%
X117605698Y-119574006D03*
%TD*%
D17*
%TO.C,D19*%
X88955691Y-105874011D03*
D18*
X89855691Y-105874011D03*
X91355691Y-105874011D03*
D17*
X92255691Y-105874011D03*
%TD*%
D23*
%TO.C,J11*%
X167113699Y-60424006D03*
D24*
X166097699Y-60424006D03*
%TD*%
D25*
%TO.C,J4*%
X159347687Y-117383996D03*
D26*
X160363687Y-117383996D03*
%TD*%
D17*
%TO.C,D9*%
X124955694Y-137573999D03*
D18*
X125855694Y-137573999D03*
X127355694Y-137573999D03*
D17*
X128255694Y-137573999D03*
%TD*%
D22*
%TO.C,_6*%
X63161113Y-116171110D03*
%TD*%
D13*
%TO.C,S23*%
X150105690Y-96574001D03*
D14*
X149605690Y-100324001D03*
X144605690Y-102524001D03*
X144605690Y-102524001D03*
D15*
X144605690Y-96574001D03*
D14*
X139605690Y-100324001D03*
D13*
X139105690Y-96574001D03*
D16*
X141330690Y-102524001D03*
X152880690Y-100324001D03*
%TD*%
D27*
%TO.C,_3*%
X171605691Y-98873997D03*
%TD*%
D13*
%TO.C,S2*%
X58933599Y-108008497D03*
D14*
X58762336Y-111787805D03*
X53973105Y-114415212D03*
X53973105Y-114415212D03*
D15*
X53454528Y-108487854D03*
D14*
X48800389Y-112659363D03*
D13*
X47975457Y-108967211D03*
D21*
X50710567Y-114700648D03*
X62024873Y-111502370D03*
%TD*%
D22*
%TO.C,_4*%
X79605694Y-68574003D03*
%TD*%
D28*
%TO.C,J20*%
X169185693Y-90382002D03*
D29*
X169185693Y-89366002D03*
%TD*%
D17*
%TO.C,D22*%
X106955699Y-66264004D03*
D18*
X107855699Y-66264004D03*
X109355699Y-66264004D03*
D17*
X110255699Y-66264004D03*
%TD*%
D13*
%TO.C,S12*%
X114105694Y-122464005D03*
D14*
X113605694Y-126214005D03*
X108605694Y-128414005D03*
X108605694Y-128414005D03*
D15*
X108605694Y-122464005D03*
D14*
X103605694Y-126214005D03*
D13*
X103105694Y-122464005D03*
D16*
X105330694Y-128414005D03*
X116880694Y-126214005D03*
%TD*%
D13*
%TO.C,S24*%
X150105702Y-79574002D03*
D14*
X149605702Y-83324002D03*
X144605702Y-85524002D03*
X144605702Y-85524002D03*
D15*
X144605702Y-79574002D03*
D14*
X139605702Y-83324002D03*
D13*
X139105702Y-79574002D03*
D16*
X141330702Y-85524002D03*
X152880702Y-83324002D03*
%TD*%
D17*
%TO.C,D4*%
X88955699Y-103574005D03*
D18*
X89855699Y-103574005D03*
X91355699Y-103574005D03*
D17*
X92255699Y-103574005D03*
%TD*%
D22*
%TO.C,_8*%
X160984199Y-127797132D03*
%TD*%
D28*
%TO.C,J23*%
X161565699Y-90382000D03*
D29*
X161565699Y-89366000D03*
%TD*%
D23*
%TO.C,J13*%
X167113698Y-65524002D03*
D24*
X166097698Y-65524002D03*
%TD*%
D17*
%TO.C,D8*%
X106955694Y-63964002D03*
D18*
X107855694Y-63964002D03*
X109355694Y-63964002D03*
D17*
X110255694Y-63964002D03*
%TD*%
D30*
%TO.C,D1*%
X52638789Y-118095508D03*
D18*
X53535364Y-118017068D03*
X55029656Y-117886334D03*
D30*
X55926231Y-117807894D03*
%TD*%
D13*
%TO.C,S3*%
X57451946Y-91073186D03*
D14*
X57280683Y-94852494D03*
X52491452Y-97479901D03*
X52491452Y-97479901D03*
D15*
X51972875Y-91552543D03*
D14*
X47318736Y-95724052D03*
D13*
X46493804Y-92031900D03*
D21*
X49228914Y-97765337D03*
X60543220Y-94567059D03*
%TD*%
D27*
%TO.C,_2*%
X156605701Y-98874007D03*
%TD*%
D13*
%TO.C,S10*%
X96105696Y-77074001D03*
D14*
X95605696Y-80824001D03*
X90605696Y-83024001D03*
X90605696Y-83024001D03*
D15*
X90605696Y-77074001D03*
D14*
X85605696Y-80824001D03*
D13*
X85105696Y-77074001D03*
D16*
X87330696Y-83024001D03*
X98880696Y-80824001D03*
%TD*%
D31*
%TO.C,*%
X156355698Y-54874006D03*
D32*
X171855698Y-54874006D03*
%TD*%
D13*
%TO.C,S6*%
X75383454Y-89504382D03*
D14*
X75212191Y-93283690D03*
X70422960Y-95911097D03*
X70422960Y-95911097D03*
D15*
X69904383Y-89983739D03*
D14*
X65250244Y-94155248D03*
D13*
X64425312Y-90463096D03*
D21*
X67160422Y-96196533D03*
X78474728Y-92998255D03*
%TD*%
D17*
%TO.C,D25*%
X142955694Y-108374009D03*
D18*
X143855694Y-108374009D03*
X145355694Y-108374009D03*
D17*
X146255694Y-108374009D03*
%TD*%
%TO.C,D24*%
X124955695Y-71874001D03*
D18*
X125855695Y-71874001D03*
X127355695Y-71874001D03*
D17*
X128255695Y-71874001D03*
%TD*%
D13*
%TO.C,S16*%
X114105697Y-54464005D03*
D14*
X113605697Y-58214005D03*
X108605697Y-60414005D03*
X108605697Y-60414005D03*
D15*
X108605697Y-54464005D03*
D14*
X103605697Y-58214005D03*
D13*
X103105697Y-54464005D03*
D16*
X105330697Y-60414005D03*
X116880697Y-58214005D03*
%TD*%
D33*
%TO.C,Nice!View1*%
X166645699Y-92374001D03*
X169185699Y-92374001D03*
X164105699Y-92374001D03*
X161565699Y-92374001D03*
X159025699Y-92374001D03*
%TD*%
D17*
%TO.C,D10*%
X124955698Y-103574004D03*
D18*
X125855698Y-103574004D03*
X127355698Y-103574004D03*
D17*
X128255698Y-103574004D03*
%TD*%
%TO.C,D28*%
X156205696Y-122574004D03*
D18*
X157105696Y-122574004D03*
X158605696Y-122574004D03*
D17*
X159505696Y-122574004D03*
%TD*%
D28*
%TO.C,J22*%
X164105695Y-90382002D03*
D29*
X164105695Y-89366002D03*
%TD*%
D13*
%TO.C,S5*%
X76865099Y-106439688D03*
D14*
X76693836Y-110218996D03*
X71904605Y-112846403D03*
X71904605Y-112846403D03*
D15*
X71386028Y-106919045D03*
D14*
X66731889Y-111090554D03*
D13*
X65906957Y-107398402D03*
D21*
X68642067Y-113131839D03*
X79956373Y-109933561D03*
%TD*%
D13*
%TO.C,S8*%
X96105702Y-111074006D03*
D14*
X95605702Y-114824006D03*
X90605702Y-117024006D03*
X90605702Y-117024006D03*
D15*
X90605702Y-111074006D03*
D14*
X85605702Y-114824006D03*
D13*
X85105702Y-111074006D03*
D16*
X87330702Y-117024006D03*
X98880702Y-114824006D03*
%TD*%
D17*
%TO.C,D6*%
X106955698Y-131963998D03*
D18*
X107855698Y-131963998D03*
X109355698Y-131963998D03*
D17*
X110255698Y-131963998D03*
%TD*%
D34*
%TO.C,D14*%
X142553138Y-141213247D03*
D18*
X143422472Y-141446184D03*
X144871360Y-141834412D03*
D34*
X145740694Y-142067349D03*
%TD*%
D25*
%TO.C,J14*%
X161097698Y-62974001D03*
D26*
X162113698Y-62974001D03*
%TD*%
D13*
%TO.C,S27*%
X166840443Y-138189733D03*
D14*
X169838038Y-140497746D03*
X169243294Y-145927873D03*
X169243294Y-145927873D03*
D15*
X164090443Y-142952873D03*
D14*
X164838038Y-149158000D03*
D13*
X161340443Y-147716013D03*
D35*
X167605794Y-148764106D03*
X171475538Y-137661513D03*
%TD*%
D28*
%TO.C,J21*%
X166645694Y-90382002D03*
D29*
X166645694Y-89366002D03*
%TD*%
D17*
%TO.C,D23*%
X124955695Y-105874000D03*
D18*
X125855695Y-105874000D03*
X127355695Y-105874000D03*
D17*
X128255695Y-105874000D03*
%TD*%
%TO.C,D12*%
X142955701Y-106074002D03*
D18*
X143855701Y-106074002D03*
X145355701Y-106074002D03*
D17*
X146255701Y-106074002D03*
%TD*%
D13*
%TO.C,S19*%
X132105699Y-94074005D03*
D14*
X131605699Y-97824005D03*
X126605699Y-100024005D03*
X126605699Y-100024005D03*
D15*
X126605699Y-94074005D03*
D14*
X121605699Y-97824005D03*
D13*
X121105699Y-94074005D03*
D16*
X123330699Y-100024005D03*
X134880699Y-97824005D03*
%TD*%
D13*
%TO.C,S14*%
X114105694Y-88464004D03*
D14*
X113605694Y-92214004D03*
X108605694Y-94414004D03*
X108605694Y-94414004D03*
D15*
X108605694Y-88464004D03*
D14*
X103605694Y-92214004D03*
D13*
X103105694Y-88464004D03*
D16*
X105330694Y-94414004D03*
X116880694Y-92214004D03*
%TD*%
D13*
%TO.C,S13*%
X114105698Y-105464004D03*
D14*
X113605698Y-109214004D03*
X108605698Y-111414004D03*
X108605698Y-111414004D03*
D15*
X108605698Y-105464004D03*
D14*
X103605698Y-109214004D03*
D13*
X103105698Y-105464004D03*
D16*
X105330698Y-111414004D03*
X116880698Y-109214004D03*
%TD*%
D25*
%TO.C,J5*%
X159347696Y-114844003D03*
D26*
X160363696Y-114844003D03*
%TD*%
D25*
%TO.C,J6*%
X159347698Y-112304005D03*
D26*
X160363698Y-112304005D03*
%TD*%
D13*
%TO.C,S18*%
X132105698Y-111074008D03*
D14*
X131605698Y-114824008D03*
X126605698Y-117024008D03*
X126605698Y-117024008D03*
D15*
X126605698Y-111074008D03*
D14*
X121605698Y-114824008D03*
D13*
X121105698Y-111074008D03*
D16*
X123330698Y-117024008D03*
X134880698Y-114824008D03*
%TD*%
D36*
%TO.C,_1*%
X160855690Y-98874000D03*
X167355690Y-98874000D03*
%TD*%
D30*
%TO.C,D16*%
X49875945Y-86516140D03*
D18*
X50772520Y-86437700D03*
X52266812Y-86306966D03*
D30*
X53163387Y-86228526D03*
%TD*%
D23*
%TO.C,J12*%
X167113695Y-62974005D03*
D24*
X166097695Y-62974005D03*
%TD*%
D28*
%TO.C,J24*%
X159025697Y-90382007D03*
D29*
X159025697Y-89366007D03*
%TD*%
D30*
%TO.C,D17*%
X70770747Y-118817960D03*
D18*
X71667322Y-118739520D03*
X73161614Y-118608786D03*
D30*
X74058189Y-118530346D03*
%TD*%
D17*
%TO.C,D13*%
X142955702Y-72074001D03*
D18*
X143855702Y-72074001D03*
X145355702Y-72074001D03*
D17*
X146255702Y-72074001D03*
%TD*%
D37*
%TO.C,REF\u002A\u002A*%
X157230689Y-109764005D03*
X157230689Y-112304005D03*
X157230689Y-114844005D03*
X157230689Y-117384005D03*
X156005689Y-107374005D03*
X156005689Y-119774005D03*
X157855689Y-107374005D03*
X157855689Y-119774005D03*
%TD*%
D13*
%TO.C,S15*%
X114105698Y-71464005D03*
D14*
X113605698Y-75214005D03*
X108605698Y-77414005D03*
X108605698Y-77414005D03*
D15*
X108605698Y-71464005D03*
D14*
X103605698Y-75214005D03*
D13*
X103105698Y-71464005D03*
D16*
X105330698Y-77414005D03*
X116880698Y-75214005D03*
%TD*%
D13*
%TO.C,S21*%
X132105690Y-60074001D03*
D14*
X131605690Y-63824001D03*
X126605690Y-66024001D03*
X126605690Y-66024001D03*
D15*
X126605690Y-60074001D03*
D14*
X121605690Y-63824001D03*
D13*
X121105690Y-60074001D03*
D16*
X123330690Y-66024001D03*
X134880690Y-63824001D03*
%TD*%
D30*
%TO.C,D15*%
X52839240Y-120386761D03*
D18*
X53735815Y-120308321D03*
X55230107Y-120177587D03*
D30*
X56126682Y-120099147D03*
%TD*%
D13*
%TO.C,S11*%
X96105698Y-60074002D03*
D14*
X95605698Y-63824002D03*
X90605698Y-66024002D03*
X90605698Y-66024002D03*
D15*
X90605698Y-60074002D03*
D14*
X85605698Y-63824002D03*
D13*
X85105698Y-60074002D03*
D16*
X87330698Y-66024002D03*
X98880698Y-63824002D03*
%TD*%
D30*
%TO.C,D2*%
X70570285Y-116526704D03*
D18*
X71466860Y-116448264D03*
X72961152Y-116317530D03*
D30*
X73857727Y-116239090D03*
%TD*%
D13*
%TO.C,S26*%
X151918293Y-133887513D03*
D14*
X150464759Y-137380325D03*
X145065728Y-138211267D03*
X145065728Y-138211267D03*
D15*
X146605701Y-132464008D03*
D14*
X140805500Y-134792135D03*
D13*
X141293109Y-131040503D03*
D38*
X141902321Y-137363634D03*
X153628166Y-138227957D03*
%TD*%
D30*
%TO.C,D3*%
X67606995Y-82656078D03*
D18*
X68503570Y-82577638D03*
X69997862Y-82446904D03*
D30*
X70894437Y-82368464D03*
%TD*%
D13*
%TO.C,S7*%
X73901813Y-72569071D03*
D14*
X73730550Y-76348379D03*
X68941319Y-78975786D03*
X68941319Y-78975786D03*
D15*
X68422742Y-73048428D03*
D14*
X63768603Y-77219937D03*
D13*
X62943671Y-73527785D03*
D21*
X65678781Y-79261222D03*
X76993087Y-76062944D03*
%TD*%
D39*
%TO.C,D27*%
X165932968Y-134461509D03*
D18*
X166712391Y-134911509D03*
X168011429Y-135661509D03*
D39*
X168790852Y-136111509D03*
%TD*%
D13*
%TO.C,S25*%
X150105694Y-62574002D03*
D14*
X149605694Y-66324002D03*
X144605694Y-68524002D03*
X144605694Y-68524002D03*
D15*
X144605694Y-62574002D03*
D14*
X139605694Y-66324002D03*
D13*
X139105694Y-62574002D03*
D16*
X141330694Y-68524002D03*
X152880694Y-66324002D03*
%TD*%
D17*
%TO.C,D21*%
X106955700Y-100264000D03*
D18*
X107855700Y-100264000D03*
X109355700Y-100264000D03*
D17*
X110255700Y-100264000D03*
%TD*%
D13*
%TO.C,S4*%
X78346756Y-123375000D03*
D14*
X78175493Y-127154308D03*
X73386262Y-129781715D03*
X73386262Y-129781715D03*
D15*
X72867685Y-123854357D03*
D14*
X68213546Y-128025866D03*
D13*
X67388614Y-124333714D03*
D21*
X70123724Y-130067151D03*
X81438030Y-126868873D03*
%TD*%
D13*
%TO.C,S17*%
X132105699Y-128073999D03*
D14*
X131605699Y-131823999D03*
X126605699Y-134023999D03*
X126605699Y-134023999D03*
D15*
X126605699Y-128073999D03*
D14*
X121605699Y-131823999D03*
D13*
X121105699Y-128073999D03*
D16*
X123330699Y-134023999D03*
X134880699Y-131823999D03*
%TD*%
D22*
%TO.C,_5*%
X135605700Y-69823998D03*
%TD*%
D17*
%TO.C,D11*%
X124955699Y-69574006D03*
D18*
X125855699Y-69574006D03*
X127355699Y-69574006D03*
D17*
X128255699Y-69574006D03*
%TD*%
%TO.C,D5*%
X88955704Y-69574007D03*
D18*
X89855704Y-69574007D03*
X91355704Y-69574007D03*
D17*
X92255704Y-69574007D03*
%TD*%
%TO.C,D7*%
X106955698Y-97964002D03*
D18*
X107855698Y-97964002D03*
X109355698Y-97964002D03*
D17*
X110255698Y-97964002D03*
%TD*%
D30*
%TO.C,D18*%
X67807446Y-84947330D03*
D18*
X68704021Y-84868890D03*
X70198313Y-84738156D03*
D30*
X71094888Y-84659716D03*
%TD*%
M02*

View File

@@ -0,0 +1,393 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.10-7.0.10~ubuntu22.04.1*%
%TF.CreationDate,2024-02-09T13:23:23+01:00*%
%TF.ProjectId,keyboard,6b657962-6f61-4726-942e-6b696361645f,v1.0.0*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Paste,Top*%
%TF.FilePolarity,Positive*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.10-7.0.10~ubuntu22.04.1) date 2024-02-09 13:23:23*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
G04 Aperture macros list*
%AMRotRect*
0 Rectangle, with rotation*
0 The origin of the aperture is its center*
0 $1 length*
0 $2 width*
0 $3 Rotation angle, in degrees counterclockwise*
0 Add horizontal line*
21,1,$1,$2,0,0,$3*%
%AMFreePoly0*
4,1,6,0.600000,0.200000,0.000000,-0.400000,-0.600000,0.200000,-0.600000,0.400000,0.600000,0.400000,0.600000,0.200000,0.600000,0.200000,$1*%
%AMFreePoly1*
4,1,6,0.600000,-0.250000,-0.600000,-0.250000,-0.600000,1.000000,0.000000,0.400000,0.600000,1.000000,0.600000,-0.250000,0.600000,-0.250000,$1*%
G04 Aperture macros list end*
%ADD10R,0.900000X0.900000*%
%ADD11R,0.900000X1.250000*%
%ADD12R,2.600000X2.600000*%
%ADD13R,0.900000X1.200000*%
%ADD14RotRect,2.600000X2.600000X185.000000*%
%ADD15FreePoly0,270.000000*%
%ADD16FreePoly1,270.000000*%
%ADD17FreePoly0,90.000000*%
%ADD18FreePoly1,90.000000*%
%ADD19FreePoly0,180.000000*%
%ADD20FreePoly1,180.000000*%
%ADD21RotRect,0.900000X1.200000X5.000000*%
%ADD22RotRect,0.900000X1.200000X345.000000*%
%ADD23RotRect,2.600000X2.600000X240.000000*%
%ADD24RotRect,2.600000X2.600000X165.000000*%
%ADD25RotRect,0.900000X1.200000X330.000000*%
G04 APERTURE END LIST*
D10*
%TO.C,T1*%
X160405700Y-53674001D03*
X160405700Y-55874001D03*
X167805700Y-53674001D03*
X167805700Y-55874001D03*
D11*
X166355700Y-56849001D03*
X163355700Y-56849001D03*
X161855700Y-56849001D03*
%TD*%
D12*
%TO.C,S20*%
X123330692Y-83024008D03*
X134880692Y-80824008D03*
%TD*%
D13*
%TO.C,D20*%
X88955699Y-71874007D03*
X92255699Y-71874007D03*
%TD*%
%TO.C,D26*%
X142955696Y-74374007D03*
X146255696Y-74374007D03*
%TD*%
D12*
%TO.C,S22*%
X141330694Y-119524005D03*
X152880694Y-117324005D03*
%TD*%
D14*
%TO.C,S1*%
X52192206Y-131635959D03*
X63506512Y-128437681D03*
%TD*%
D12*
%TO.C,S9*%
X87330691Y-100024003D03*
X98880691Y-97824003D03*
%TD*%
D13*
%TO.C,D19*%
X88955691Y-105874011D03*
X92255691Y-105874011D03*
%TD*%
D15*
%TO.C,J11*%
X167113699Y-60424006D03*
D16*
X166097699Y-60424006D03*
%TD*%
D17*
%TO.C,J4*%
X159347687Y-117383996D03*
D18*
X160363687Y-117383996D03*
%TD*%
D13*
%TO.C,D9*%
X124955694Y-137573999D03*
X128255694Y-137573999D03*
%TD*%
D12*
%TO.C,S23*%
X141330690Y-102524001D03*
X152880690Y-100324001D03*
%TD*%
D14*
%TO.C,S2*%
X50710567Y-114700648D03*
X62024873Y-111502370D03*
%TD*%
D19*
%TO.C,J20*%
X169185693Y-90382002D03*
D20*
X169185693Y-89366002D03*
%TD*%
D13*
%TO.C,D22*%
X106955699Y-66264004D03*
X110255699Y-66264004D03*
%TD*%
D12*
%TO.C,S12*%
X105330694Y-128414005D03*
X116880694Y-126214005D03*
%TD*%
%TO.C,S24*%
X141330702Y-85524002D03*
X152880702Y-83324002D03*
%TD*%
D13*
%TO.C,D4*%
X88955699Y-103574005D03*
X92255699Y-103574005D03*
%TD*%
D19*
%TO.C,J23*%
X161565699Y-90382000D03*
D20*
X161565699Y-89366000D03*
%TD*%
D15*
%TO.C,J13*%
X167113698Y-65524002D03*
D16*
X166097698Y-65524002D03*
%TD*%
D13*
%TO.C,D8*%
X106955694Y-63964002D03*
X110255694Y-63964002D03*
%TD*%
D21*
%TO.C,D1*%
X52638789Y-118095508D03*
X55926231Y-117807894D03*
%TD*%
D14*
%TO.C,S3*%
X49228914Y-97765337D03*
X60543220Y-94567059D03*
%TD*%
D12*
%TO.C,S10*%
X87330696Y-83024001D03*
X98880696Y-80824001D03*
%TD*%
D14*
%TO.C,S6*%
X67160422Y-96196533D03*
X78474728Y-92998255D03*
%TD*%
D13*
%TO.C,D25*%
X142955694Y-108374009D03*
X146255694Y-108374009D03*
%TD*%
%TO.C,D24*%
X124955695Y-71874001D03*
X128255695Y-71874001D03*
%TD*%
D12*
%TO.C,S16*%
X105330697Y-60414005D03*
X116880697Y-58214005D03*
%TD*%
D13*
%TO.C,D10*%
X124955698Y-103574004D03*
X128255698Y-103574004D03*
%TD*%
%TO.C,D28*%
X156205696Y-122574004D03*
X159505696Y-122574004D03*
%TD*%
D19*
%TO.C,J22*%
X164105695Y-90382002D03*
D20*
X164105695Y-89366002D03*
%TD*%
D14*
%TO.C,S5*%
X68642067Y-113131839D03*
X79956373Y-109933561D03*
%TD*%
D12*
%TO.C,S8*%
X87330702Y-117024006D03*
X98880702Y-114824006D03*
%TD*%
D13*
%TO.C,D6*%
X106955698Y-131963998D03*
X110255698Y-131963998D03*
%TD*%
D22*
%TO.C,D14*%
X142553138Y-141213247D03*
X145740694Y-142067349D03*
%TD*%
D17*
%TO.C,J14*%
X161097698Y-62974001D03*
D18*
X162113698Y-62974001D03*
%TD*%
D23*
%TO.C,S27*%
X167605794Y-148764106D03*
X171475538Y-137661513D03*
%TD*%
D19*
%TO.C,J21*%
X166645694Y-90382002D03*
D20*
X166645694Y-89366002D03*
%TD*%
D13*
%TO.C,D23*%
X124955695Y-105874000D03*
X128255695Y-105874000D03*
%TD*%
%TO.C,D12*%
X142955701Y-106074002D03*
X146255701Y-106074002D03*
%TD*%
D12*
%TO.C,S19*%
X123330699Y-100024005D03*
X134880699Y-97824005D03*
%TD*%
%TO.C,S14*%
X105330694Y-94414004D03*
X116880694Y-92214004D03*
%TD*%
%TO.C,S13*%
X105330698Y-111414004D03*
X116880698Y-109214004D03*
%TD*%
D17*
%TO.C,J5*%
X159347696Y-114844003D03*
D18*
X160363696Y-114844003D03*
%TD*%
D17*
%TO.C,J6*%
X159347698Y-112304005D03*
D18*
X160363698Y-112304005D03*
%TD*%
D12*
%TO.C,S18*%
X123330698Y-117024008D03*
X134880698Y-114824008D03*
%TD*%
D21*
%TO.C,D16*%
X49875945Y-86516140D03*
X53163387Y-86228526D03*
%TD*%
D15*
%TO.C,J12*%
X167113695Y-62974005D03*
D16*
X166097695Y-62974005D03*
%TD*%
D19*
%TO.C,J24*%
X159025697Y-90382007D03*
D20*
X159025697Y-89366007D03*
%TD*%
D21*
%TO.C,D17*%
X70770747Y-118817960D03*
X74058189Y-118530346D03*
%TD*%
D13*
%TO.C,D13*%
X142955702Y-72074001D03*
X146255702Y-72074001D03*
%TD*%
D12*
%TO.C,S15*%
X105330698Y-77414005D03*
X116880698Y-75214005D03*
%TD*%
%TO.C,S21*%
X123330690Y-66024001D03*
X134880690Y-63824001D03*
%TD*%
D21*
%TO.C,D15*%
X52839240Y-120386761D03*
X56126682Y-120099147D03*
%TD*%
D12*
%TO.C,S11*%
X87330698Y-66024002D03*
X98880698Y-63824002D03*
%TD*%
D21*
%TO.C,D2*%
X70570285Y-116526704D03*
X73857727Y-116239090D03*
%TD*%
D24*
%TO.C,S26*%
X141902321Y-137363634D03*
X153628166Y-138227957D03*
%TD*%
D21*
%TO.C,D3*%
X67606995Y-82656078D03*
X70894437Y-82368464D03*
%TD*%
D14*
%TO.C,S7*%
X65678781Y-79261222D03*
X76993087Y-76062944D03*
%TD*%
D25*
%TO.C,D27*%
X165932968Y-134461509D03*
X168790852Y-136111509D03*
%TD*%
D12*
%TO.C,S25*%
X141330694Y-68524002D03*
X152880694Y-66324002D03*
%TD*%
D13*
%TO.C,D21*%
X106955700Y-100264000D03*
X110255700Y-100264000D03*
%TD*%
D14*
%TO.C,S4*%
X70123724Y-130067151D03*
X81438030Y-126868873D03*
%TD*%
D12*
%TO.C,S17*%
X123330699Y-134023999D03*
X134880699Y-131823999D03*
%TD*%
D13*
%TO.C,D11*%
X124955699Y-69574006D03*
X128255699Y-69574006D03*
%TD*%
%TO.C,D5*%
X88955704Y-69574007D03*
X92255704Y-69574007D03*
%TD*%
%TO.C,D7*%
X106955698Y-97964002D03*
X110255698Y-97964002D03*
%TD*%
D21*
%TO.C,D18*%
X67807446Y-84947330D03*
X71094888Y-84659716D03*
%TD*%
M02*

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,215 @@
M48
; DRILL file {KiCad 7.0.10-7.0.10~ubuntu22.04.1} date Fri 09 Feb 2024 01:23:24 PM CET
; FORMAT={-:-/ absolute / metric / decimal}
; #@! TF.CreationDate,2024-02-09T13:23:24+01:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.10-7.0.10~ubuntu22.04.1
; #@! TF.FileFunction,NonPlated,1,2,NPTH
FMAT,2
METRIC
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
T1C0.900
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
T2C1.702
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
T3C3.000
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
T4C3.429
%
G90
G05
T1
X162.606Y-54.774
X165.606Y-54.774
T2
X46.494Y-92.032
X47.975Y-108.967
X49.457Y-125.903
X57.452Y-91.073
X58.934Y-108.008
X60.415Y-124.944
X62.944Y-73.528
X64.425Y-90.463
X65.907Y-107.398
X67.389Y-124.334
X73.902Y-72.569
X75.383Y-89.504
X76.865Y-106.44
X78.347Y-123.375
X85.106Y-94.074
X85.106Y-77.074
X85.106Y-60.074
X85.106Y-111.074
X96.106Y-94.074
X96.106Y-77.074
X96.106Y-60.074
X96.106Y-111.074
X103.106Y-88.464
X103.106Y-122.464
X103.106Y-54.464
X103.106Y-71.464
X103.106Y-105.464
X114.106Y-88.464
X114.106Y-122.464
X114.106Y-54.464
X114.106Y-71.464
X114.106Y-105.464
X121.106Y-60.074
X121.106Y-77.074
X121.106Y-111.074
X121.106Y-94.074
X121.106Y-128.074
X132.106Y-60.074
X132.106Y-77.074
X132.106Y-111.074
X132.106Y-94.074
X132.106Y-128.074
X139.106Y-96.574
X139.106Y-62.574
X139.106Y-113.574
X139.106Y-79.574
X141.293Y-131.041
X150.106Y-96.574
X150.106Y-62.574
X150.106Y-113.574
X150.106Y-79.574
X151.918Y-133.888
X161.34Y-147.716
X166.84Y-138.19
T3
X47.319Y-95.724
X48.8Y-112.659
X50.282Y-129.595
X52.491Y-97.48
X52.491Y-97.48
X53.973Y-114.415
X53.973Y-114.415
X55.455Y-131.351
X55.455Y-131.351
X57.281Y-94.852
X58.762Y-111.788
X60.244Y-128.723
X63.769Y-77.22
X65.25Y-94.155
X66.732Y-111.091
X68.214Y-128.026
X68.941Y-78.976
X68.941Y-78.976
X70.423Y-95.911
X70.423Y-95.911
X71.905Y-112.846
X71.905Y-112.846
X73.386Y-129.782
X73.386Y-129.782
X73.731Y-76.348
X75.212Y-93.284
X76.694Y-110.219
X78.175Y-127.154
X85.606Y-97.824
X85.606Y-80.824
X85.606Y-63.824
X85.606Y-114.824
X90.606Y-100.024
X90.606Y-100.024
X90.606Y-83.024
X90.606Y-83.024
X90.606Y-66.024
X90.606Y-66.024
X90.606Y-117.024
X90.606Y-117.024
X95.606Y-97.824
X95.606Y-80.824
X95.606Y-63.824
X95.606Y-114.824
X103.606Y-92.214
X103.606Y-126.214
X103.606Y-58.214
X103.606Y-75.214
X103.606Y-109.214
X108.606Y-94.414
X108.606Y-94.414
X108.606Y-128.414
X108.606Y-128.414
X108.606Y-60.414
X108.606Y-60.414
X108.606Y-77.414
X108.606Y-77.414
X108.606Y-111.414
X108.606Y-111.414
X113.606Y-92.214
X113.606Y-126.214
X113.606Y-58.214
X113.606Y-75.214
X113.606Y-109.214
X121.606Y-63.824
X121.606Y-80.824
X121.606Y-114.824
X121.606Y-97.824
X121.606Y-131.824
X126.606Y-66.024
X126.606Y-66.024
X126.606Y-83.024
X126.606Y-83.024
X126.606Y-117.024
X126.606Y-117.024
X126.606Y-100.024
X126.606Y-100.024
X126.606Y-134.024
X126.606Y-134.024
X131.606Y-63.824
X131.606Y-80.824
X131.606Y-114.824
X131.606Y-97.824
X131.606Y-131.824
X139.606Y-100.324
X139.606Y-66.324
X139.606Y-117.324
X139.606Y-83.324
X140.805Y-134.792
X144.606Y-102.524
X144.606Y-102.524
X144.606Y-68.524
X144.606Y-68.524
X144.606Y-119.524
X144.606Y-119.524
X144.606Y-85.524
X144.606Y-85.524
X145.066Y-138.211
X145.066Y-138.211
X149.606Y-100.324
X149.606Y-66.324
X149.606Y-117.324
X149.606Y-83.324
X150.465Y-137.38
X164.838Y-149.158
X169.243Y-145.928
X169.243Y-145.928
X169.838Y-140.498
T4
X51.973Y-91.553
X53.455Y-108.488
X54.936Y-125.423
X68.423Y-73.048
X69.904Y-89.984
X71.386Y-106.919
X72.868Y-123.854
X90.606Y-94.074
X90.606Y-77.074
X90.606Y-60.074
X90.606Y-111.074
X108.606Y-88.464
X108.606Y-122.464
X108.606Y-54.464
X108.606Y-71.464
X108.606Y-105.464
X126.606Y-60.074
X126.606Y-77.074
X126.606Y-111.074
X126.606Y-94.074
X126.606Y-128.074
X144.606Y-96.574
X144.606Y-62.574
X144.606Y-113.574
X144.606Y-79.574
X146.606Y-132.464
X164.09Y-142.953
M30

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,272 @@
M48
; DRILL file {KiCad 7.0.10-7.0.10~ubuntu22.04.1} date Fri 09 Feb 2024 01:23:24 PM CET
; FORMAT={-:-/ absolute / metric / decimal}
; #@! TF.CreationDate,2024-02-09T13:23:24+01:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.10-7.0.10~ubuntu22.04.1
; #@! TF.FileFunction,Plated,1,2,PTH
FMAT,2
METRIC
; #@! TA.AperFunction,Plated,PTH,ViaDrill
T1C0.300
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T2C0.300
; #@! TA.AperFunction,Plated,PTH,ViaDrill
T3C0.400
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T4C0.800
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T5C0.900
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T6C1.000
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T7C1.092
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T8C1.100
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T9C1.300
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T10C2.200
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T11C4.100
%
G90
G05
T1
X55.69Y-84.74
X55.911Y-103.771
X57.15Y-104.86
X57.53Y-86.99
X58.45Y-118.18
X60.97Y-121.43
X71.59Y-73.13
X73.853Y-102.804
X74.32Y-84.42
X74.85Y-100.92
X76.66Y-116.05
X77.56Y-118.42
X93.412Y-89.071
X94.91Y-71.33
X94.94Y-105.39
X98.01Y-118.88
X101.37Y-97.63
X101.58Y-64.63
X110.16Y-115.7
X111.402Y-86.671
X112.52Y-120.67
X112.61Y-98.59
X113.05Y-64.56
X128.59Y-121.89
X129.402Y-91.73
X129.93Y-124.26
X130.92Y-70.2
X130.98Y-104.28
X134.09Y-108.45
X147.402Y-92.39
X148.64Y-93.54
X148.92Y-72.71
X149.75Y-108.74
X149.808Y-90.938
X149.81Y-88.54
X149.81Y-91.738
X149.823Y-90.139
X149.825Y-89.339
X150.182Y-107.424
X150.182Y-106.54
X151.37Y-130.1
X152.182Y-95.05
X152.36Y-63.32
X152.64Y-119.76
X152.982Y-95.06
X153.782Y-95.06
X156.2Y-92.71
X159.026Y-88.362
X159.035Y-68.087
X160.06Y-138.82
X161.566Y-88.362
X161.61Y-70.587
X162.935Y-69.187
X163.11Y-63.962
X163.16Y-66.487
X163.26Y-137.82
X163.84Y-107.12
X164.085Y-108.687
X164.106Y-88.212
X164.11Y-65.537
X164.272Y-60.424
X164.835Y-112.287
X165.11Y-61.987
X165.935Y-109.787
X166.646Y-87.087
X167.835Y-71.787
X169.186Y-88.212
T2
X50.773Y-86.438
X52.267Y-86.307
X53.535Y-118.017
X53.736Y-120.308
X55.03Y-117.886
X55.23Y-120.178
X68.504Y-82.578
X68.704Y-84.869
X69.998Y-82.447
X70.198Y-84.738
X71.467Y-116.448
X71.667Y-118.74
X72.961Y-116.318
X73.162Y-118.609
X89.856Y-105.874
X89.856Y-71.874
X89.856Y-103.574
X89.856Y-69.574
X91.356Y-105.874
X91.356Y-71.874
X91.356Y-103.574
X91.356Y-69.574
X107.856Y-63.964
X107.856Y-97.964
X107.856Y-131.964
X107.856Y-66.264
X107.856Y-100.264
X109.356Y-63.964
X109.356Y-97.964
X109.356Y-131.964
X109.356Y-66.264
X109.356Y-100.264
X125.856Y-137.574
X125.856Y-71.874
X125.856Y-105.874
X125.856Y-103.574
X125.856Y-69.574
X127.356Y-137.574
X127.356Y-71.874
X127.356Y-105.874
X127.356Y-103.574
X127.356Y-69.574
X143.422Y-141.446
X143.856Y-108.374
X143.856Y-74.374
X143.856Y-106.074
X143.856Y-72.074
X144.871Y-141.834
X145.356Y-108.374
X145.356Y-74.374
X145.356Y-106.074
X145.356Y-72.074
X157.106Y-122.574
X158.606Y-122.574
X166.712Y-134.912
X168.011Y-135.662
T3
X49.281Y-93.396
X50.703Y-110.339
X52.237Y-127.269
X55.116Y-94.692
X56.539Y-111.635
X58.072Y-128.566
X65.688Y-74.886
X67.222Y-91.816
X68.644Y-108.759
X70.178Y-125.69
X71.523Y-76.182
X73.057Y-93.113
X74.479Y-110.055
X76.013Y-126.986
X87.704Y-95.671
X87.712Y-61.669
X87.757Y-112.671
X87.764Y-78.669
X93.404Y-97.471
X93.412Y-63.469
X93.457Y-114.471
X93.464Y-80.469
X105.694Y-90.061
X105.698Y-124.063
X105.702Y-56.059
X105.747Y-107.061
X105.754Y-73.059
X111.394Y-91.861
X111.398Y-125.863
X111.402Y-57.859
X111.447Y-108.861
X111.454Y-74.859
X123.694Y-95.681
X123.702Y-61.679
X123.704Y-129.673
X123.747Y-112.681
X123.754Y-78.679
X129.394Y-97.481
X129.402Y-63.479
X129.404Y-131.473
X129.447Y-114.481
X129.454Y-80.479
X141.694Y-98.171
X141.702Y-64.169
X141.747Y-115.171
X141.754Y-81.169
X143.391Y-133.261
X147.394Y-99.971
X147.402Y-65.969
X147.447Y-116.971
X147.454Y-82.969
X148.431Y-136.475
X163.965Y-146.284
X168.374Y-142.247
T4
X156.356Y-54.874
X171.856Y-54.874
T5
X156.006Y-107.374
X156.006Y-119.774
X157.231Y-109.764
X157.231Y-112.304
X157.231Y-114.844
X157.231Y-117.384
X157.856Y-107.374
X157.856Y-119.774
T6
X159.026Y-92.374
X161.566Y-92.374
X164.106Y-92.374
X166.646Y-92.374
X169.186Y-92.374
T7
X156.486Y-57.904
X156.486Y-60.444
X156.486Y-62.984
X156.486Y-65.524
X156.486Y-68.064
X156.486Y-70.604
X156.486Y-73.144
X156.486Y-75.684
X156.486Y-78.224
X156.486Y-80.764
X156.486Y-83.304
X156.486Y-85.844
X171.726Y-57.904
X171.726Y-60.444
X171.726Y-62.984
X171.726Y-65.524
X171.726Y-68.064
X171.726Y-70.604
X171.726Y-73.144
X171.726Y-75.684
X171.726Y-78.224
X171.726Y-80.764
X171.726Y-83.304
X171.726Y-85.844
T8
X156.486Y-57.904
X171.726Y-57.904
T9
X160.856Y-98.874
X167.356Y-98.874
T10
X156.606Y-98.874
X171.606Y-98.874
T11
X63.161Y-116.171
X79.606Y-68.574
X117.606Y-119.574
X135.606Y-69.824
X160.984Y-127.797
M30

View File

@@ -0,0 +1,127 @@
{
"Header": {
"GenerationSoftware": {
"Vendor": "KiCad",
"Application": "Pcbnew",
"Version": "7.0.10-7.0.10~ubuntu22.04.1"
},
"CreationDate": "2024-02-09T13:23:23+01:00"
},
"GeneralSpecs": {
"ProjectId": {
"Name": "keyboard",
"GUID": "6b657962-6f61-4726-942e-6b696361645f",
"Revision": "v1.0.0"
},
"Size": {
"X": 136.1162,
"Y": 111.0872
},
"LayerNumber": 2,
"BoardThickness": 1.6,
"Finish": "None"
},
"DesignRules": [
{
"Layers": "Outer",
"PadToPad": 0.0,
"PadToTrack": 0.0,
"TrackToTrack": 0.2,
"MinLineWidth": 0.2,
"TrackToRegion": 0.5,
"RegionToRegion": 0.5
}
],
"FilesAttributes": [
{
"Path": "keyboard-F_Cu.gtl",
"FileFunction": "Copper,L1,Top",
"FilePolarity": "Positive"
},
{
"Path": "keyboard-B_Cu.gbl",
"FileFunction": "Copper,L2,Bot",
"FilePolarity": "Positive"
},
{
"Path": "keyboard-F_Paste.gtp",
"FileFunction": "SolderPaste,Top",
"FilePolarity": "Positive"
},
{
"Path": "keyboard-B_Paste.gbp",
"FileFunction": "SolderPaste,Bot",
"FilePolarity": "Positive"
},
{
"Path": "keyboard-F_Silkscreen.gto",
"FileFunction": "Legend,Top",
"FilePolarity": "Positive"
},
{
"Path": "keyboard-B_Silkscreen.gbo",
"FileFunction": "Legend,Bot",
"FilePolarity": "Positive"
},
{
"Path": "keyboard-F_Mask.gts",
"FileFunction": "SolderMask,Top",
"FilePolarity": "Negative"
},
{
"Path": "keyboard-B_Mask.gbs",
"FileFunction": "SolderMask,Bot",
"FilePolarity": "Negative"
},
{
"Path": "keyboard-Edge_Cuts.gm1",
"FileFunction": "Profile",
"FilePolarity": "Positive"
}
],
"MaterialStackup": [
{
"Type": "Legend",
"Name": "Top Silk Screen"
},
{
"Type": "SolderPaste",
"Name": "Top Solder Paste"
},
{
"Type": "SolderMask",
"Thickness": 0.01,
"Name": "Top Solder Mask"
},
{
"Type": "Copper",
"Thickness": 0.035,
"Name": "F.Cu"
},
{
"Type": "Dielectric",
"Thickness": 1.51,
"Material": "FR4",
"Name": "F.Cu/B.Cu",
"Notes": "Type: dielectric layer 1 (from F.Cu to B.Cu)"
},
{
"Type": "Copper",
"Thickness": 0.035,
"Name": "B.Cu"
},
{
"Type": "SolderMask",
"Thickness": 0.01,
"Name": "Bottom Solder Mask"
},
{
"Type": "SolderPaste",
"Name": "Bottom Solder Paste"
},
{
"Type": "Legend",
"Name": "Bottom Silk Screen"
}
]
}

View File

@@ -0,0 +1,388 @@
0
SECTION
2
HEADER
9
$INSUNITS
70
4
0
ENDSEC
0
SECTION
2
TABLES
0
TABLE
2
LTYPE
0
LTYPE
72
65
70
64
2
CONTINUOUS
3
______
73
0
40
0
0
ENDTAB
0
TABLE
2
LAYER
0
ENDTAB
0
ENDSEC
0
SECTION
2
ENTITIES
0
LINE
8
0
10
47.7233632
20
-86.5320081
11
52.0931698
21
-136.4791253
0
LINE
8
0
10
48.2210045
20
-85.0288898
11
63.8968888
21
-67.3954028
0
LINE
8
0
10
64.3572593
20
-67.0124671
11
86.8633229
21
-53.4124275
0
LINE
8
0
10
87.3026004
20
-53.2147578
11
104.7803165
21
-47.7675362
0
LINE
8
0
10
105.3754167
20
-47.6769486
11
124.848482
21
-47.6769486
0
LINE
8
0
10
125.2880222
20
-47.7258452
11
160.8539217
21
-55.738052
0
LINE
8
0
10
161.2934619
20
-55.7869486
11
178.820972
21
-55.7869486
0
LINE
8
0
10
180.820972
20
-57.7869486
11
180.820972
21
-125.6030296
0
LINE
8
0
10
180.8545146
20
-125.9677834
11
183.6483598
21
-141.0299394
0
LINE
8
0
10
183.4139533
20
-142.3946932
11
174.6269734
21
-157.6141888
0
LINE
8
0
10
172.2000692
20
-158.4896031
11
123.2595624
21
-140.3568227
0
LINE
8
0
10
122.8722457
20
-140.2560231
11
90.3628218
21
-135.196936
0
LINE
8
0
10
89.8809737
20
-135.1807605
11
54.2598706
21
-138.2972033
0
ARC
8
0
10
49.7157527
20
-86.3576967
40
2
50
138.3634216
51
184.9999976
0
ARC
8
0
10
65.3916369
20
-68.7242098
40
2
50
121.1438711
51
138.3634216
0
ARC
8
0
10
87.8977006
20
-55.1241702
40
2
50
107.3105158
51
121.1438711
0
ARC
8
0
10
105.3754167
20
-49.6769486
40
2
50
90
51
107.3105158
0
ARC
8
0
10
124.848482
20
-49.6769486
40
2
50
77.3044699
51
90
0
ARC
8
0
10
161.2934619
20
-53.7869486
40
2
50
257.3044699
51
270
0
ARC
8
0
10
178.820972
20
-57.7869486
40
2
50
0
51
90
0
ARC
8
0
10
182.820972
20
-125.6030296
40
2
50
180
51
190.5082382
0
ARC
8
0
10
181.6819025
20
-141.3946932
40
2
50
329.9999999
51
10.5082382
0
ARC
8
0
10
172.8949226
20
-156.6141888
40
2
50
249.67
51
329.9999999
0
ARC
8
0
10
122.5647091
20
-142.232237
40
2
50
69.67
51
81.154631
0
ARC
8
0
10
90.0552851
20
-137.1731499
40
2
50
81.154631
51
94.9999976
0
ARC
8
0
10
54.0855592
20
-136.3048139
40
2
50
184.9999976
51
274.9999976
0
ENDSEC
0
EOF

View File

@@ -0,0 +1,438 @@
0
SECTION
2
HEADER
9
$INSUNITS
70
4
0
ENDSEC
0
SECTION
2
TABLES
0
TABLE
2
LTYPE
0
LTYPE
72
65
70
64
2
CONTINUOUS
3
______
73
0
40
0
0
ENDTAB
0
TABLE
2
LAYER
0
ENDTAB
0
ENDSEC
0
SECTION
2
ENTITIES
0
LINE
8
0
10
47.7233632
20
-86.5320081
11
52.0931698
21
-136.4791253
0
LINE
8
0
10
48.2210045
20
-85.0288898
11
63.8968888
21
-67.3954028
0
LINE
8
0
10
64.3572593
20
-67.0124671
11
86.8633229
21
-53.4124275
0
LINE
8
0
10
87.3026004
20
-53.2147578
11
104.7803165
21
-47.7675362
0
LINE
8
0
10
105.3754167
20
-47.6769486
11
124.848482
21
-47.6769486
0
LINE
8
0
10
125.2880222
20
-47.7258452
11
160.8539217
21
-55.738052
0
LINE
8
0
10
161.2934619
20
-55.7869486
11
178.820972
21
-55.7869486
0
LINE
8
0
10
180.820972
20
-57.7869486
11
180.820972
21
-125.6030296
0
LINE
8
0
10
180.8545146
20
-125.9677834
11
183.6483598
21
-141.0299394
0
LINE
8
0
10
183.4139533
20
-142.3946932
11
174.6269734
21
-157.6141888
0
LINE
8
0
10
172.2000692
20
-158.4896031
11
123.2595624
21
-140.3568227
0
LINE
8
0
10
122.8722457
20
-140.2560231
11
90.3628218
21
-135.196936
0
LINE
8
0
10
89.8809737
20
-135.1807605
11
54.2598706
21
-138.2972033
0
ARC
8
0
10
49.7157527
20
-86.3576967
40
2
50
138.3634216
51
184.9999976
0
ARC
8
0
10
65.3916369
20
-68.7242098
40
2
50
121.1438711
51
138.3634216
0
ARC
8
0
10
87.8977006
20
-55.1241702
40
2
50
107.3105158
51
121.1438711
0
ARC
8
0
10
105.3754167
20
-49.6769486
40
2
50
90
51
107.3105158
0
ARC
8
0
10
124.848482
20
-49.6769486
40
2
50
77.3044699
51
90
0
ARC
8
0
10
161.2934619
20
-53.7869486
40
2
50
257.3044699
51
270
0
ARC
8
0
10
178.820972
20
-57.7869486
40
2
50
0
51
90
0
ARC
8
0
10
182.820972
20
-125.6030296
40
2
50
180
51
190.5082382
0
ARC
8
0
10
181.6819025
20
-141.3946932
40
2
50
329.9999999
51
10.5082382
0
ARC
8
0
10
172.8949226
20
-156.6141888
40
2
50
249.67
51
329.9999999
0
ARC
8
0
10
122.5647091
20
-142.232237
40
2
50
69.67
51
81.154631
0
ARC
8
0
10
90.0552851
20
-137.1731499
40
2
50
81.154631
51
94.9999976
0
ARC
8
0
10
54.0855592
20
-136.3048139
40
2
50
184.9999976
51
274.9999976
0
CIRCLE
8
0
10
86.070972
20
-71.2869486
40
1.1
0
CIRCLE
8
0
10
142.070972
20
-72.5369486
40
1.1
0
CIRCLE
8
0
10
69.6263772
20
-118.8840511
40
1.1
0
CIRCLE
8
0
10
124.070972
20
-122.2869487
40
1.1
0
CIRCLE
8
0
10
167.4494743
20
-130.5100759
40
1.1
0
ENDSEC
0
EOF

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,77 @@
{
"board": {
"active_layer": 31,
"active_layer_preset": "All Layers",
"auto_track_width": true,
"hidden_netclasses": [],
"hidden_nets": [],
"high_contrast_mode": 0,
"net_color_mode": 1,
"opacity": {
"images": 0.6,
"pads": 1.0,
"tracks": 1.0,
"vias": 1.0,
"zones": 0.6
},
"selection_filter": {
"dimensions": true,
"footprints": true,
"graphics": true,
"keepouts": true,
"lockedItems": false,
"otherItems": true,
"pads": true,
"text": true,
"tracks": true,
"vias": true,
"zones": true
},
"visible_items": [
0,
1,
2,
3,
4,
5,
8,
9,
10,
11,
12,
13,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
32,
33,
34,
35,
36,
39,
40
],
"visible_layers": "fffffff_ffffffff",
"zone_display_mode": 0
},
"meta": {
"filename": "keyboard.kicad_prl",
"version": 3
},
"project": {
"files": []
}
}

View File

@@ -0,0 +1,337 @@
{
"board": {
"3dviewports": [],
"design_settings": {
"defaults": {
"board_outline_line_width": 0.049999999999999996,
"copper_line_width": 0.19999999999999998,
"copper_text_italic": false,
"copper_text_size_h": 1.5,
"copper_text_size_v": 1.5,
"copper_text_thickness": 0.3,
"copper_text_upright": false,
"courtyard_line_width": 0.049999999999999996,
"dimension_precision": 4,
"dimension_units": 3,
"dimensions": {
"arrow_length": 1270000,
"extension_offset": 500000,
"keep_text_aligned": true,
"suppress_zeroes": false,
"text_position": 0,
"units_format": 1
},
"fab_line_width": 0.09999999999999999,
"fab_text_italic": false,
"fab_text_size_h": 1.0,
"fab_text_size_v": 1.0,
"fab_text_thickness": 0.15,
"fab_text_upright": false,
"other_line_width": 0.09999999999999999,
"other_text_italic": false,
"other_text_size_h": 1.0,
"other_text_size_v": 1.0,
"other_text_thickness": 0.15,
"other_text_upright": false,
"pads": {
"drill": 0.762,
"height": 1.524,
"width": 1.524
},
"silk_line_width": 0.09999999999999999,
"silk_text_italic": false,
"silk_text_size_h": 1.0,
"silk_text_size_v": 1.0,
"silk_text_thickness": 0.09999999999999999,
"silk_text_upright": false,
"zones": {
"min_clearance": 0.5
}
},
"diff_pair_dimensions": [
{
"gap": 0.0,
"via_gap": 0.0,
"width": 0.0
}
],
"drc_exclusions": [
"solder_mask_bridge|104030694|127114005|104a5b69-e457-432a-a9a3-5e4c500a1972|1777e1cc-7b82-45c8-9d1a-061728432724",
"solder_mask_bridge|104030694|93114004|557eb9f4-eed9-4e39-9e6c-8dddd6337dc5|1b17ba93-da7a-4231-8b93-b5e76f085b62",
"solder_mask_bridge|104030697|59114005|b21a7a3c-a74f-4fa4-8803-dcfcf7a8b807|4c13388c-e796-45a0-a3d5-3f101da3ae70",
"solder_mask_bridge|104030698|110114004|baca8942-87af-4673-8788-0419295551fd|84424ac9-ad09-4ad1-8a1d-9c8c6ba0922a",
"solder_mask_bridge|104030698|76114005|c0a0b395-3cc0-412c-b346-f7744abed4c7|dd7561d7-c658-463f-8681-52c8831f2806",
"solder_mask_bridge|113180694|127114005|b2d1d35f-2d94-40be-8961-92e05ef25c88|c52a720c-19f1-44ec-9237-59fcf3da8c3b",
"solder_mask_bridge|113180694|93114004|b373ed9d-be9a-4fee-8f30-083e4f8f4c91|b5bfb23b-fbc9-4a44-8619-bc40862379b0",
"solder_mask_bridge|113180697|59114005|d3b68646-a5a3-4d3c-a6f5-491fc85b3c59|bd8756cc-82d8-4376-96aa-11905c364885",
"solder_mask_bridge|113180698|110114004|4167cc01-0082-4c46-b452-d30649c9af43|6e60c210-47d9-4d1d-9bfe-c2dad1311818",
"solder_mask_bridge|113180698|76114005|aa85ca48-9f1d-4b00-98aa-50ccce781847|e2e8a551-8b4b-4169-ba2a-bbee2266930f",
"solder_mask_bridge|122030690|64724001|e99eed51-0d0d-49cb-af15-b6562ae03353|8bcd0c6b-5023-40d9-ac10-4859cc135f47",
"solder_mask_bridge|122030692|81724008|8f923f6c-99f0-48ae-844a-39fd24062f3c|a6e9dfa7-fb63-4a60-b377-f408a371b517",
"solder_mask_bridge|122030698|115724008|4953b42b-2792-4787-b5d3-6c66fe69cec1|904d806d-235a-415f-be2e-6f4599e50e5c",
"solder_mask_bridge|122030699|132723999|0f10d5cb-d1c4-417c-89c8-d8bd889fd39b|bd54baa8-3196-4b66-b608-e66b66cf8ff7",
"solder_mask_bridge|122030699|98724005|57e64c0c-26f8-4764-a1e6-d14eee93a843|91f8d041-8351-4635-9947-40d706ced367",
"solder_mask_bridge|131180690|64724001|48a25d32-25dd-4280-a555-f694ab652cea|11e5c364-6ca0-452f-adfc-c10109cef3c5",
"solder_mask_bridge|131180692|81724008|d3cc27ff-f66c-4a5d-83f3-a9561d05fda5|6c99dfe2-fbf4-466a-b8ff-7ed4cf72537f",
"solder_mask_bridge|131180698|115724008|9ffc1c86-1404-4066-97ea-f7fe883b9619|52310250-6e20-4c16-8757-0061f955fc00",
"solder_mask_bridge|131180699|132723999|905a31d8-bf2a-4e44-813f-2cda775043bf|49484b22-065a-4102-b41a-9125b1d38fc1",
"solder_mask_bridge|131180699|98724005|cd8b43ee-017d-4b9e-b13e-d1f728ec1d37|08fbf776-ffa8-4b2b-b5ad-50c45e7ab21b",
"solder_mask_bridge|135605700|67624002|4a0da02a-edd0-47bb-8ea6-c798ea8489fb|52adc031-c5c6-4b72-b233-01ffa02b0755",
"solder_mask_bridge|140030690|101224001|7c7f34eb-39d4-4637-962b-2957ecb537d5|89db864a-236c-4307-ac4f-8b3547a5656a",
"solder_mask_bridge|140030694|118224005|911f84b4-74e1-4dfe-a47d-6babfbe5982c|f9693cfa-47ba-4d63-9506-f28f95a0cb44",
"solder_mask_bridge|140030694|67224002|3579f2ad-a8f2-4a43-b0f8-a8c5bcbd7c5e|4443a0f4-d13f-4ad5-b4a7-ad9b639e82d1",
"solder_mask_bridge|140030702|84224002|3c40213e-9486-4791-b9a7-e6733f44253f|d49bedaa-9bd4-40e7-b56e-c97696813ac7",
"solder_mask_bridge|140983082|135771466|68d051a0-7bee-4d85-b67d-bbf100d82921|3b142564-fa02-4ecf-b400-13edbd933450",
"solder_mask_bridge|149180690|101224001|1b6f22e5-dd24-4d9f-a1e3-c3df9f051382|cb0c3742-0e07-48a7-a84f-dd6af06429b5",
"solder_mask_bridge|149180694|118224005|d833df53-d590-46fa-ab4e-4e80ca2d6b77|04d97899-781e-445b-bd62-4ff7628c55fa",
"solder_mask_bridge|149180694|67224002|49e0b0c5-3ebd-43fc-9632-20e1ba401fbe|4ade704b-d6b3-4a57-a778-2e68332aa45d",
"solder_mask_bridge|149180702|84224002|7b2701f8-f92c-4c11-9cfb-be2e3e23acd2|b16162b2-cc69-45cf-b734-7c2169d7ebdf",
"solder_mask_bridge|149821303|138139660|cfe94c9d-b117-49fe-b7e5-c6e4eb3dfbe6|3c415678-50cc-4052-a5ea-209af96afe6e",
"solder_mask_bridge|165829961|149239939|a3df75f8-21ac-4bcd-becb-51e3ccd495cc|ed3dfe7a-c16a-4d2e-b531-767bde6f2b3b",
"solder_mask_bridge|170404961|141315807|af917639-0607-4ca3-84a6-b6a7641fb4bf|19ad3160-c448-4c6d-bf51-cd49d91b73db",
"solder_mask_bridge|47820558|96583586|41f139ac-ea81-4da7-81bd-c9aae944332b|0297e30e-b49d-48c2-932e-014ca45a08df",
"solder_mask_bridge|49302211|113518897|83a2edbe-6e00-4d1c-96c7-90ac713506cf|af1da7d8-66a1-4b52-b222-3383ed07d970",
"solder_mask_bridge|50783850|130454208|55d95ee0-ebe8-440f-8234-4591249b9ef5|130ebe48-20b4-4095-8fed-7d92172396a8",
"solder_mask_bridge|56935740|95786110|894abc57-b44b-49ae-9614-85cba5324933|c1648d22-b483-483f-9c44-c9f7ee9e5328",
"solder_mask_bridge|58417393|112721421|043b3c4f-229c-4d50-a618-810ad801f142|0c13724e-679c-4e1c-af38-ea6f0629aa05",
"solder_mask_bridge|59899032|129656732|90e40ef2-d9c6-4fd4-9ba2-db47d6daa80b|6bf39f70-66e5-45a7-a51c-7f45bd1efe72",
"solder_mask_bridge|64270425|78079471|73c42c8c-a3cb-4752-b3e6-13bd8af2bf89|04d8e753-1fe8-49f9-bf18-5197aaa0c950",
"solder_mask_bridge|65752066|95014782|0c823781-6ab8-40bb-aeea-b631eb49e71b|cf88874a-358d-4064-b5a3-31cb3e3c73d2",
"solder_mask_bridge|67233711|111950088|3e94bb81-4dce-4f14-83b0-1956ab5206fd|be22db98-9154-4475-9c96-4bf9824cc775",
"solder_mask_bridge|68715368|128885400|95ebee41-873e-4eb2-a25e-b0e711c12abc|b6c28197-efee-41da-81b0-e328e722578b",
"solder_mask_bridge|73385607|77281995|e5bf3a0d-caa8-44f6-a6d1-8b5ea497a25c|7897b7ed-faa7-438d-a7ae-629f59366b65",
"solder_mask_bridge|74867248|94217306|76f0473e-0816-415d-8d85-74793442d85a|38e435fa-b1fe-48c5-a635-8786c62ef3c5",
"solder_mask_bridge|76348893|111152612|d315c04c-59f2-4e5c-968e-b1967e2c6ff7|170c949d-3be8-4921-9dd8-77db4072682d",
"solder_mask_bridge|77830550|128087924|35d11723-4ee6-4702-83b6-a3da10a4d1c8|6831aa48-bec2-49f9-b7fb-046144e0b45b",
"solder_mask_bridge|86030691|98724003|d3d85dd8-b438-4abc-979e-cf0d8f037117|9312ba2a-6c7d-4315-a65f-8737342b273f",
"solder_mask_bridge|86030696|81724001|8506f3d7-536f-43f8-9d88-2da51b3abcb4|fff3c97f-8d22-4611-91bd-03514cea801c",
"solder_mask_bridge|86030698|64724002|0ec90f5d-a82e-4f79-ba00-7d6af4adb82c|dbd467a2-fd84-4500-a3c0-94bd8a9cb7e0",
"solder_mask_bridge|86030702|115724006|b2754bcc-b7cd-45f8-8d9c-319f829ae827|75511ad5-4d69-45af-abee-f6bfcdcfa77a",
"solder_mask_bridge|95180691|98724003|d29f53c2-1b9b-4787-80f8-1ec6ddf2ccbb|d5b49a21-e178-4813-b78b-40d70241266e",
"solder_mask_bridge|95180696|81724001|15d6e012-f2f7-4459-b716-0239b5171128|6f4302e2-799e-4f72-831e-0542ae1a2a7a",
"solder_mask_bridge|95180698|64724002|df09022d-59c3-4ae9-b643-8352be1f7d22|34c6ca28-eeb4-47e2-90fd-07ceb689172e",
"solder_mask_bridge|95180702|115724006|0ca9443d-a3ba-475a-b2a1-2ea784685f97|6802f46e-3be8-4e4f-8d61-824a24186a20"
],
"meta": {
"version": 2
},
"rule_severities": {
"annular_width": "error",
"clearance": "ignore",
"connection_width": "warning",
"copper_edge_clearance": "ignore",
"copper_sliver": "warning",
"courtyards_overlap": "error",
"diff_pair_gap_out_of_range": "error",
"diff_pair_uncoupled_length_too_long": "error",
"drill_out_of_range": "error",
"duplicate_footprints": "warning",
"extra_footprint": "warning",
"footprint": "error",
"footprint_type_mismatch": "ignore",
"hole_clearance": "ignore",
"hole_near_hole": "error",
"invalid_outline": "error",
"isolated_copper": "warning",
"item_on_disabled_layer": "error",
"items_not_allowed": "error",
"length_out_of_range": "error",
"lib_footprint_issues": "warning",
"lib_footprint_mismatch": "warning",
"malformed_courtyard": "error",
"microvia_drill_out_of_range": "error",
"missing_courtyard": "ignore",
"missing_footprint": "warning",
"net_conflict": "warning",
"npth_inside_courtyard": "ignore",
"padstack": "warning",
"pth_inside_courtyard": "ignore",
"shorting_items": "error",
"silk_edge_clearance": "warning",
"silk_over_copper": "warning",
"silk_overlap": "warning",
"skew_out_of_range": "error",
"solder_mask_bridge": "error",
"starved_thermal": "error",
"text_height": "warning",
"text_thickness": "warning",
"through_hole_pad_without_hole": "error",
"too_many_vias": "error",
"track_dangling": "warning",
"track_width": "error",
"tracks_crossing": "error",
"unconnected_items": "error",
"unresolved_variable": "error",
"via_dangling": "warning",
"zones_intersect": "error"
},
"rules": {
"max_error": 0.005,
"min_clearance": 0.0,
"min_connection": 0.0,
"min_copper_edge_clearance": 0.5,
"min_hole_clearance": 0.25,
"min_hole_to_hole": 0.25,
"min_microvia_diameter": 0.19999999999999998,
"min_microvia_drill": 0.09999999999999999,
"min_resolved_spokes": 2,
"min_silk_clearance": 0.0,
"min_text_height": 0.7999999999999999,
"min_text_thickness": 0.08,
"min_through_hole_diameter": 0.3,
"min_track_width": 0.0,
"min_via_annular_width": 0.09999999999999999,
"min_via_diameter": 0.5,
"solder_mask_to_copper_clearance": 0.0,
"use_height_for_length_calcs": true
},
"teardrop_options": [
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 5,
"td_on_pad_in_zone": false,
"td_onpadsmd": true,
"td_onroundshapesonly": false,
"td_ontrackend": false,
"td_onviapad": true
}
],
"teardrop_parameters": [
{
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_target_name": "td_round_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_target_name": "td_rect_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_target_name": "td_track_end",
"td_width_to_size_filter_ratio": 0.9
}
],
"track_widths": [
0.0
],
"via_dimensions": [
{
"diameter": 0.0,
"drill": 0.0
}
],
"zones_allow_external_fillets": false
},
"layer_presets": [],
"viewports": []
},
"boards": [],
"cvpcb": {
"equivalence_files": []
},
"libraries": {
"pinned_footprint_libs": [],
"pinned_symbol_libs": []
},
"meta": {
"filename": "keyboard.kicad_pro",
"version": 1
},
"net_settings": {
"classes": [
{
"bus_width": 12,
"clearance": 0.2,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "Default",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.2,
"via_diameter": 0.6,
"via_drill": 0.3,
"wire_width": 6
},
{
"bus_width": 12,
"clearance": 0.25,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "Large",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.2,
"via_diameter": 0.6,
"via_drill": 0.3,
"wire_width": 6
},
{
"bus_width": 12,
"clearance": 0.25,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "Normal",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.2,
"via_diameter": 0.6,
"via_drill": 0.3,
"wire_width": 6
}
],
"meta": {
"version": 3
},
"net_colors": null,
"netclass_assignments": null,
"netclass_patterns": [
{
"netclass": "Normal",
"pattern": "RST_GND"
}
]
},
"pcbnew": {
"last_paths": {
"gencad": "",
"idf": "",
"netlist": "./",
"specctra_dsn": "",
"step": "",
"vrml": ""
},
"page_layout_descr_file": ""
},
"schematic": {
"legacy_lib_dir": "",
"legacy_lib_list": []
},
"sheets": [],
"text_variables": {}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,300 @@
(kicad_pcb (version 20171130) (host pcbnew 5.1.6)
(page A3)
(title_block
(title switchplate)
(rev v1.0.0)
(company Unknown)
)
(general
(thickness 1.6)
)
(layers
(0 F.Cu signal)
(31 B.Cu signal)
(32 B.Adhes user)
(33 F.Adhes user)
(34 B.Paste user)
(35 F.Paste user)
(36 B.SilkS user)
(37 F.SilkS user)
(38 B.Mask user)
(39 F.Mask user)
(40 Dwgs.User user)
(41 Cmts.User user)
(42 Eco1.User user)
(43 Eco2.User user)
(44 Edge.Cuts user)
(45 Margin user)
(46 B.CrtYd user)
(47 F.CrtYd user)
(48 B.Fab user)
(49 F.Fab user)
)
(setup
(last_trace_width 0.25)
(trace_clearance 0.2)
(zone_clearance 0.508)
(zone_45_only no)
(trace_min 0.2)
(via_size 0.8)
(via_drill 0.4)
(via_min_size 0.4)
(via_min_drill 0.3)
(uvia_size 0.3)
(uvia_drill 0.1)
(uvias_allowed no)
(uvia_min_size 0.2)
(uvia_min_drill 0.1)
(edge_width 0.05)
(segment_width 0.2)
(pcb_text_width 0.3)
(pcb_text_size 1.5 1.5)
(mod_edge_width 0.12)
(mod_text_size 1 1)
(mod_text_width 0.15)
(pad_size 1.524 1.524)
(pad_drill 0.762)
(pad_to_mask_clearance 0.05)
(aux_axis_origin 0 0)
(visible_elements FFFFFF7F)
(pcbplotparams
(layerselection 0x010fc_ffffffff)
(usegerberextensions false)
(usegerberattributes true)
(usegerberadvancedattributes true)
(creategerberjobfile true)
(excludeedgelayer true)
(linewidth 0.100000)
(plotframeref false)
(viasonmask false)
(mode 1)
(useauxorigin false)
(hpglpennumber 1)
(hpglpenspeed 20)
(hpglpendiameter 15.000000)
(psnegative false)
(psa4output false)
(plotreference true)
(plotvalue true)
(plotinvisibletext false)
(padsonsilk false)
(subtractmaskfromsilk false)
(outputformat 1)
(mirror false)
(drillshape 1)
(scaleselection 1)
(outputdirectory ""))
)
(net 0 "")
(net_class Default "This is the default net class."
(clearance 0.2)
(trace_width 0.25)
(via_dia 0.8)
(via_drill 0.4)
(uvia_dia 0.3)
(uvia_drill 0.1)
(add_net "")
)
(module Hole (layer F.Cu) (tedit 5F7666C1)
(at 86.070972 71.2869486 0)
(fp_text reference "_1" (at 0 0.5) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(pad "" thru_hole circle (at 0 0) (size 3.3 3.3) (drill 2.2) (layers *.Cu *.Mask) (tstamp 75b224f0-3010-4e8c-bf32-f95a770c96d9))
)
(module Hole (layer F.Cu) (tedit 5F7666C1)
(at 142.070972 72.5369486 0)
(fp_text reference "_2" (at 0 0.5) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(pad "" thru_hole circle (at 0 0) (size 3.3 3.3) (drill 2.2) (layers *.Cu *.Mask) (tstamp 75b224f0-3010-4e8c-bf32-f95a770c96d9))
)
(module Hole (layer F.Cu) (tedit 5F7666C1)
(at 69.6263772 118.8840511 5)
(fp_text reference "_3" (at 0 0.5) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(pad "" thru_hole circle (at 0 0) (size 3.3 3.3) (drill 2.2) (layers *.Cu *.Mask) (tstamp 75b224f0-3010-4e8c-bf32-f95a770c96d9))
)
(module Hole (layer F.Cu) (tedit 5F7666C1)
(at 124.070972 122.2869487 0)
(fp_text reference "_4" (at 0 0.5) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(pad "" thru_hole circle (at 0 0) (size 3.3 3.3) (drill 2.2) (layers *.Cu *.Mask) (tstamp 75b224f0-3010-4e8c-bf32-f95a770c96d9))
)
(module Hole (layer F.Cu) (tedit 5F7666C1)
(at 167.4494743 130.5100759 22.5)
(fp_text reference "_5" (at 0 0.5) (layer F.SilkS) hide
(effects (font (size 1 1) (thickness 0.15)))
)
(pad "" thru_hole circle (at 0 0) (size 3.3 3.3) (drill 2.2) (layers *.Cu *.Mask) (tstamp 75b224f0-3010-4e8c-bf32-f95a770c96d9))
)
(gr_line (start 47.723363248427795 86.53200814646101) (end 52.09316980970455 136.47912530921678) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 48.2210045067659 85.02888978984446) (end 63.896888777211764 67.39540284719092) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 64.35725928329127 67.01246712979616) (end 86.86332290844136 53.41242748975397) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 87.30260035270608 53.21475776300555) (end 104.78031650054527 47.7675362) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 105.37541670054526 47.6769486) (end 124.84542669729015 47.6769486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 125.29085267061812 47.72718051675183) (end 159.01639797332797 55.43180506983674) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 160.570972 57.381573153084915) (end 160.570972 102.2869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 162.570972 104.2869487) (end 178.820972 104.2869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 180.820972 106.2869487) (end 180.820972 125.60302959656383) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 180.8545146179318 125.9677833932376) (end 183.6483598457414 141.02993941670184) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 183.41395326367325 142.39469321337566) (end 174.62697336139277 157.61418878270445) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 172.20006919397125 158.489603094775) (end 123.25956242781616 140.35682265988308) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.87224567558854 140.25602307431805) (end 90.36282175663328 135.19693604937402) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 89.88097374067975 135.18076053832712) (end 54.25987061914657 138.2972033171396) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 49.715752657110194 86.35769674570133) (end 48.2210044571102 85.02888974570133) (angle -46.63657592093867) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 65.39163692755596 68.72420980304773) (end 64.35725932755597 67.01246710304773) (angle -17.21955057250915) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 87.89770055270607 55.12417016300555) (end 87.30260035270607 53.21475776300555) (angle -13.833355255349204) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 105.37541670054526 49.6769486) (end 105.37541670054526 47.6769486) (angle -17.31051580173535) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 124.84542669729015 49.6769486) (end 125.29085269729015 47.7271805) (angle -12.868430106634506) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 158.570972 57.381573153084915) (end 160.570972 57.381573153084915) (angle -77.13156989336589) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 162.570972 102.2869487) (end 160.570972 102.2869487) (angle -90) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 178.820972 106.2869487) (end 180.820972 106.2869487) (angle -90) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 182.820972 125.60302959656383) (end 180.820972 125.60302959656383) (angle -10.508238166374014) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 181.68190246367323 141.39469321337572) (end 183.41395326367322 142.39469321337572) (angle -40.508238274791836) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 172.89492256139275 156.6141887827045) (end 172.20006916139275 158.4896030827045) (angle -80.32999991007301) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 122.5647090603946 142.2322369719536) (end 123.2595624603946 140.3568226719536) (angle -11.484631048738763) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 90.05528514143933 137.17314994700956) (end 90.36282174143933 135.19693604700956) (angle -13.845366520279839) (layer Edge.Cuts) (width 0.15))
(gr_arc (start 54.08555921838697 136.3048139084572) (end 52.09316981838697 136.47912530845718) (angle -90.00000000000028) (layer Edge.Cuts) (width 0.15))
(gr_line (start 55.03817600000001 135.7195608) (end 68.9849018 134.4993804) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 68.9849018 134.4993804) (end 67.7647214 120.5526546) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 67.7647214 120.5526546) (end 53.8179956 121.772835) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 53.8179956 121.772835) (end 55.03817600000001 135.7195608) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 53.556528400000005 118.7842509) (end 67.5032542 117.5640705) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 67.5032542 117.5640705) (end 66.2830738 103.6173447) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 66.2830738 103.6173447) (end 52.336348 104.83752510000001) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 52.336348 104.83752510000001) (end 53.556528400000005 118.7842509) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 52.074880699999994 101.8489411) (end 66.02160649999999 100.6287607) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 66.02160649999999 100.6287607) (end 64.8014261 86.6820349) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 64.8014261 86.6820349) (end 50.8547003 87.90221530000001) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 50.8547003 87.90221530000001) (end 52.074880699999994 101.8489411) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 72.9696806 134.15075739999997) (end 86.9164064 132.930577) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 86.9164064 132.930577) (end 85.696226 118.98385119999999) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 85.696226 118.98385119999999) (end 71.7495002 120.2040316) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 71.7495002 120.2040316) (end 72.9696806 134.15075739999997) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 71.48803290000001 117.2154476) (end 85.4347587 115.9952672) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 85.4347587 115.9952672) (end 84.2145783 102.0485414) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 84.2145783 102.0485414) (end 70.2678525 103.26872180000001) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 70.2678525 103.26872180000001) (end 71.48803290000001 117.2154476) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 70.0063853 100.2801377) (end 83.9531111 99.0599573) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 83.9531111 99.0599573) (end 82.7329307 85.1132315) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 82.7329307 85.1132315) (end 68.7862049 86.3334119) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 68.7862049 86.3334119) (end 70.0063853 100.2801377) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 68.5247377 83.3448278) (end 82.4714635 82.1246474) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 82.4714635 82.1246474) (end 81.2512831 68.1779216) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 81.2512831 68.1779216) (end 67.3045573 69.39810200000001) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 67.3045573 69.39810200000001) (end 68.5247377 83.3448278) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.0709721 120.7869487) (end 104.0709721 120.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.0709721 120.7869487) (end 104.0709721 106.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.0709721 106.7869487) (end 90.0709721 106.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.0709721 106.7869487) (end 90.0709721 120.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.0709721 103.7869487) (end 104.0709721 103.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.0709721 103.7869487) (end 104.0709721 89.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.0709721 89.7869487) (end 90.0709721 89.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.0709721 89.7869487) (end 90.0709721 103.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.070972 86.7869487) (end 104.070972 86.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.070972 86.7869487) (end 104.070972 72.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.070972 72.7869487) (end 90.070972 72.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.070972 72.7869487) (end 90.070972 86.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.070972 69.7869486) (end 104.070972 69.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.070972 69.7869486) (end 104.070972 55.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 104.070972 55.7869486) (end 90.070972 55.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 90.070972 55.7869486) (end 90.070972 69.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.070972 132.1769487) (end 122.070972 132.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.070972 132.1769487) (end 122.070972 118.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.070972 118.1769487) (end 108.070972 118.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.070972 118.1769487) (end 108.070972 132.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.070972 115.1769487) (end 122.070972 115.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.070972 115.1769487) (end 122.070972 101.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.070972 101.1769487) (end 108.070972 101.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.070972 101.1769487) (end 108.070972 115.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.070972 98.1769487) (end 122.070972 98.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.070972 98.1769487) (end 122.070972 84.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.070972 84.1769487) (end 108.070972 84.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.070972 84.1769487) (end 108.070972 98.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.0709719 81.1769487) (end 122.0709719 81.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.0709719 81.1769487) (end 122.0709719 67.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.0709719 67.1769487) (end 108.0709719 67.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.0709719 67.1769487) (end 108.0709719 81.1769487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.0709719 64.1769486) (end 122.0709719 64.1769486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.0709719 64.1769486) (end 122.0709719 50.1769486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 122.0709719 50.1769486) (end 108.0709719 50.1769486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 108.0709719 50.1769486) (end 108.0709719 64.1769486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.0709721 137.7869487) (end 140.0709721 137.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.0709721 137.7869487) (end 140.0709721 123.78694870000001) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.0709721 123.78694870000001) (end 126.0709721 123.78694870000001) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.0709721 123.78694870000001) (end 126.0709721 137.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.0709721 120.7869487) (end 140.0709721 120.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.0709721 120.7869487) (end 140.0709721 106.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.0709721 106.7869487) (end 126.0709721 106.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.0709721 106.7869487) (end 126.0709721 120.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.07097200000001 103.7869487) (end 140.070972 103.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.070972 103.7869487) (end 140.070972 89.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.070972 89.7869487) (end 126.07097200000001 89.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.07097200000001 89.7869487) (end 126.07097200000001 103.7869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.07097200000001 86.7869486) (end 140.070972 86.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.070972 86.7869486) (end 140.070972 72.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.070972 72.7869486) (end 126.07097200000001 72.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.07097200000001 72.7869486) (end 126.07097200000001 86.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.07097200000001 69.7869486) (end 140.070972 69.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.070972 69.7869486) (end 140.070972 55.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 140.070972 55.7869486) (end 126.07097200000001 55.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 126.07097200000001 55.7869486) (end 126.07097200000001 69.7869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 123.2869487) (end 158.070972 123.2869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 123.2869487) (end 158.070972 109.2869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 109.2869487) (end 144.070972 109.2869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 109.2869487) (end 144.070972 123.2869487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 106.2869486) (end 158.070972 106.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 106.2869486) (end 158.070972 92.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 92.2869486) (end 144.070972 92.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 92.2869486) (end 144.070972 106.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 89.2869486) (end 158.070972 89.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 89.2869486) (end 158.070972 75.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 75.2869486) (end 144.070972 75.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 75.2869486) (end 144.070972 89.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 72.2869486) (end 158.070972 72.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 72.2869486) (end 158.070972 58.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.070972 58.2869486) (end 144.070972 58.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.070972 58.2869486) (end 144.070972 72.2869486) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 144.4977578 140.1266961) (end 158.0207194 143.7501627) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 158.0207194 143.7501627) (end 161.644186 130.2272011) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 161.644186 130.2272011) (end 148.1212244 126.6037345) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 148.1212244 126.6037345) (end 144.4977578 140.1266961) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 173.1178909 155.2279963) (end 180.1178909 143.1036407) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 180.1178909 143.1036407) (end 167.9935353 136.1036407) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 167.9935353 136.1036407) (end 160.9935353 148.2279963) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 160.9935353 148.2279963) (end 173.1178909 155.2279963) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 160.570972 123.5369487) (end 178.070972 123.5369487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 178.070972 123.5369487) (end 178.070972 109.0369487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 178.070972 109.0369487) (end 160.570972 109.0369487) (angle 90) (layer Edge.Cuts) (width 0.15))
(gr_line (start 160.570972 109.0369487) (end 160.570972 123.5369487) (angle 90) (layer Edge.Cuts) (width 0.15))
)

File diff suppressed because it is too large Load Diff