added mounting, case

This commit is contained in:
Emily Zeng 2023-10-28 01:10:18 -04:00
parent f5ce2160b7
commit 65e0fb66c6
2 changed files with 165 additions and 7 deletions

View File

@ -8,6 +8,27 @@ units:
py: ky + 2
center_x: 112.65
center_y: -127
# Defaults to M2 Screws
screwSize: 1.5
standoffSize: 2.5
# 65.9, 81
mounting_1_x: center_x-46.75
mounting_1_y: center_y+46
# 146.65, 81
mounting_2_x: center_x+34
mounting_2_y: center_y+46
# 158.5, 146 mm
mounting_3_x: center_x+45.85
mounting_3_y: center_y-19
# 125.65, 172
mounting_4_x: center_x+13
mounting_4_y: center_y-45
# 102.65, 142
mounting_5_x: center_x-10
mounting_5_y: center_y-15
# 65.9, 138
mounting_6_x: center_x-46.75
mounting_6_y: center_y-11.0
points:
zones:
matrix:
@ -113,14 +134,101 @@ outlines:
- shift: [-23.5, 23.5]
- shift: [-51.5, 0]
fillet: 2
case_outline_xl:
- what: polygon
points:
- shift: [center_x-59, center_y+58]
- shift: [119, 0]
- shift: [0, -119]
- shift: [-43, 0]
- shift: [-23.5, 23.5]
- shift: [-52.5, 0]
fillet: 2
mounting:
- what: circle
where.shift: [mounting_1_x, mounting_1_y]
radius: screwSize
- what: circle
where.shift: [mounting_2_x, mounting_2_y]
radius: screwSize
- what: circle
where.shift: [mounting_3_x, mounting_3_y]
radius: screwSize
- what: circle
where.shift: [mounting_4_x, mounting_4_y]
radius: screwSize
- what: circle
where.shift: [mounting_5_x, mounting_5_y]
radius: screwSize
- what: circle
where.shift: [mounting_6_x, mounting_6_y]
radius: screwSize
standoff:
- what: circle
where.shift: [mounting_1_x, mounting_1_y]
radius: standoffSize
- what: circle
where.shift: [mounting_2_x, mounting_2_y]
radius: standoffSize
- what: circle
where.shift: [mounting_3_x, mounting_3_y]
radius: standoffSize
- what: circle
where.shift: [mounting_4_x, mounting_4_y]
radius: standoffSize
- what: circle
where.shift: [mounting_5_x, mounting_5_y]
radius: standoffSize
- what: circle
where.shift: [mounting_6_x, mounting_6_y]
radius: standoffSize
case_outline_combo:
- name: case_outline
- operation: stack
name: pcb_outline
- operation: stack
name: keys
- operation: stack
name: thumb
- ^case_outline_xl
- ^pcb_outline
- ^keys
- ^thumb
- ^mounting
- ^standoff
cases:
bottom:
- name: case_outline
extrude: 1
xlBottom:
- name: case_outline_xl
extrude: 1
_outerWall:
- name: case_outline_xl
extrude: 5.6
_innerWall:
- name: case_outline
extrude: 5.6
wall:
- what: case
name: _outerWall
operation: add
- what: case
name: _innerWall
operation: subtract
_holes:
- name: mounting
extrude: 4
_standoffs:
- name: standoff
extrude: 4
case:
- what: case
name: _standoffs
operation: add
- what: case
name: _holes
operation: subtract
- what: case
name: xlBottom
operation: add
- what: case
name: wall
operation: add
pcbs:
board:
outlines.edge:
@ -206,7 +314,26 @@ pcbs:
jst:
what: jstph_reversible
where:
shift: [center_x-11, center_y-17]
shift: [center_x-11, center_y-28.5]
rotate: 180
params:
pos: Bplus
neg: GND
mounting_hole_1:
what: mountinghole
where.shift: [mounting_1_x, mounting_1_y]
mounting_hole_2:
what: mountinghole
where.shift: [mounting_2_x, mounting_2_y]
mounting_hole_3:
what: mountinghole
where.shift: [mounting_3_x, mounting_3_y]
mounting_hole_4:
what: mountinghole
where.shift: [mounting_4_x, mounting_4_y]
mounting_hole_5:
what: mountinghole
where.shift: [mounting_5_x, mounting_5_y]
mounting_hole_6:
what: mountinghole
where.shift: [mounting_6_x, mounting_6_y]

View File

@ -0,0 +1,31 @@
// MountingHole_2.2mm_M2_Pad_Via
// TODO add more sizes as param?
module.exports = {
nets: {
net: undefined
},
params: {
class: 'HOLE',
},
body: p => `
(module "MountingHole_2.2mm_M2_Pad_Via" (version 20210722) (generator pcbnew) (layer "F.Cu")
(tedit 56DDB9C7)
${p.at /* parametric position */}
(fp_text reference "${p.ref}" (at 0 -3.2) (layer "F.SilkS") ${p.ref_hide}
(effects (font (size 1 1) (thickness 0.15)))
(tstamp b68bb25c-687d-44b1-b966-dad4cac66b35)
)
(fp_circle (center 0 0) (end 2.45 0) (layer "F.CrtYd") (width 0.05) (fill none) (tstamp b2688462-c375-45d3-9095-3425fb17c88f))
(pad "1" thru_hole circle locked (at 1.166726 1.166726) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp 2a7fc905-328f-4bbb-9222-ca8d15d03a86))
(pad "1" thru_hole circle locked (at 0 0) (size 4.4 4.4) (drill 2.2) (layers *.Cu *.Mask) (tstamp 47ee1d53-0551-4b6d-bc24-3f3f14c73c36))
(pad "1" thru_hole circle locked (at 0 1.65) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp 4eef65bc-4add-40d7-8319-14dcdbae0d44))
(pad "1" thru_hole circle locked (at 1.166726 -1.166726) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp 56155f4d-2ebc-4ad4-8d82-7aa7846deba8))
(pad "1" thru_hole circle locked (at -1.65 0) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp 787d6162-1d3c-4def-859e-6532ce27c1ef))
(pad "1" thru_hole circle locked (at -1.166726 -1.166726) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp 8d699d12-7099-4814-bbe6-11bc74c6e8b2))
(pad "1" thru_hole circle locked (at -1.166726 1.166726) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp 95ab0420-a56b-46ee-98ad-5072a1a93a6f))
(pad "1" thru_hole circle locked (at 1.65 0) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp cde0acf2-b3b4-46de-9f6e-3ab519744000))
(pad "1" thru_hole circle locked (at 0 -1.65) (size 0.7 0.7) (drill 0.4) (layers *.Cu *.Mask) (tstamp ff0de415-ae11-46fb-b780-c24aee621212))
)`
}