Add combined OLED footprint and add it in config
This commit is contained in:
parent
c351f3be78
commit
ecc40cb455
|
|
@ -479,16 +479,17 @@ pcbs:
|
|||
adjust:
|
||||
shift: [19.704, 0.5 kp -0.125 kp -19.3 -0.340]
|
||||
rotate: -90
|
||||
|
||||
|
||||
oled:
|
||||
what: oled
|
||||
what: combined_oled
|
||||
where: matrix_inner_top
|
||||
params:
|
||||
SDA: SDA
|
||||
SCL: SCL
|
||||
P3: SCL
|
||||
P4: SDA
|
||||
oled: both
|
||||
reverse: true
|
||||
adjust:
|
||||
shift: [0.5 ks + 4.161, 0.5 kp -0.125 kp - 19.3 - 22.65 - 0.398]
|
||||
rotate: 90
|
||||
shift: [0.5 ks + 10.147, 0.5 kp -0.125 kp - 19.3 - 22.65 - 0.398 + 3.652]
|
||||
|
||||
reset_switch:
|
||||
what: reset_switch
|
||||
|
|
|
|||
|
|
@ -0,0 +1,838 @@
|
|||
module.exports = {
|
||||
params: {
|
||||
designator: 'LED',
|
||||
P1: {type: 'net', value: 'GND'},
|
||||
P2: {type: 'net', value: 'VCC'},
|
||||
P3: {type: 'net', value: 'SCK_SCL'},
|
||||
P4: {type: 'net', value: 'MOSI_SDA'},
|
||||
P5: {type: 'net', value: 'CS'},
|
||||
oled: 'both', // Any of 128x32, nice_view, both
|
||||
reverse: true,
|
||||
side: 'F',
|
||||
},
|
||||
body: p => {
|
||||
const standard_opening = `
|
||||
(module "combined_oled" (layer F.Cu)
|
||||
${p.at /* parametric position */}
|
||||
|
||||
(fp_text reference "${p.ref}" (at 0 5.6) (layer F.SilkS) ${p.ref_hide}
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
)
|
||||
(fp_text value "combined_oled" (at 0 -14.1) (layer F.Fab)
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
)
|
||||
`
|
||||
const oled_standard = `
|
||||
(fp_line (start -5.99 -34.338) (end 6.01 -34.338)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start -5.99 -32.088) (end 6.01 -32.088)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start -5.99 -2.088) (end 6.01 -2.088)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start -5.99 3.662) (end -5.99 -34.338)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start -5.99 3.662) (end 6.01 3.662)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start -3.77 -3.398) (end -3.77 -25.778)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start -3.77 -3.398) (end 1.75 -3.398)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start 1.75 -25.778) (end -3.77 -25.778)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start 1.75 -3.398) (end 1.75 -25.778)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
(fp_line (start 6.01 -34.338) (end 6.01 3.662)
|
||||
(stroke (width 0.12) (type solid)) (layer "Dwgs.User"))
|
||||
`
|
||||
const oled_front = `
|
||||
(fp_text user "VCC" (at 1.27 -4.138 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "SCL" (at -1.27 -4.064 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "SDA" (at -3.81 -4.064 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "GND" (at 3.81 -4.238 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(pad 4 thru_hole circle (at -3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P4.str})
|
||||
(pad 3 thru_hole circle (at -1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P3.str})
|
||||
(pad 2 thru_hole circle (at 1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P2.str})
|
||||
(pad 1 thru_hole circle (at 3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P1.str})
|
||||
`
|
||||
const oled_back = `
|
||||
(fp_text user "SCL" (at 1.2 -4.138 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "SDA" (at 3.74 -4.064 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "VCC" (at -1.34 -4.238 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "GND" (at -3.9 -4.318 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(pad 1 thru_hole circle (at -3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P1.str})
|
||||
(pad 2 thru_hole circle (at -1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P2.str})
|
||||
(pad 3 thru_hole circle (at 1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P3.str})
|
||||
(pad 4 thru_hole circle (at 3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P4.str})
|
||||
`
|
||||
const oled_reversible_pads = `
|
||||
(pad "" thru_hole circle (at -3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" thru_hole circle (at -1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" thru_hole circle (at 1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" thru_hole circle (at 3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
`
|
||||
const oled_reversible_solder_bridges = `
|
||||
(fp_text user "SCL" (at 1.2 -4.138 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "SDA" (at 3.74 -4.064 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "VCC" (at -1.34 -4.238 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "GND" (at -3.9 -4.318 270 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "VCC" (at 1.27 -4.138 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "SCL" (at -1.27 -4.064 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "SDA" (at -3.81 -4.064 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "GND" (at 3.81 -4.238 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(pad "" smd custom (at -3.81 0.254 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at -3.81 0.254 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at -3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" smd custom (at -1.27 0.254 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at -1.27 0.254 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at -1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" smd custom (at 1.27 0.254 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at 1.27 0.254 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at 1.27 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" smd custom (at 3.81 0.254 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at 3.81 0.254 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at 3.81 2.062) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad 1 smd custom (at -3.81 -0.762 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P1.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 1 smd custom (at 3.81 -0.762 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P1.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 2 smd custom (at -1.27 -0.762 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P2.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 2 smd custom (at 1.27 -0.762 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P2.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 3 smd custom (at -1.27 -0.762 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P3.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 3 smd custom (at 1.27 -0.762 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P3.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 4 smd custom (at -3.81 -0.762 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P4.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 4 smd custom (at 3.81 -0.762 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P4.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
`
|
||||
const nice_view_standard = `
|
||||
(fp_rect (start 7 1.3) (end -6.68 -34.7)
|
||||
(stroke (width 0.12) (type solid)) (fill none) (layer "Dwgs.User"))
|
||||
(fp_rect (start 7 1.3) (end -6.68 -34.7)
|
||||
(stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
|
||||
`
|
||||
const nice_view_front = `
|
||||
(fp_text user "GND" (at 2.54 -6.24 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "MOSI/SDA" (at -5.1 -10.64 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "VCC" (at 0 -6.14 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "CS" (at 5.1 -5.14 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "SCK/SCL" (at -2.54 -9.94 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(pad 4 thru_hole circle (at -5.08 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P4.str})
|
||||
(pad 3 thru_hole circle (at -2.54 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P3.str})
|
||||
(pad 2 thru_hole circle (at 0 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P2.str})
|
||||
(pad 1 thru_hole circle (at 2.54 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P1.str})
|
||||
(pad 5 thru_hole circle (at 5.08 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P5.str})
|
||||
`
|
||||
const nice_view_back = `
|
||||
(fp_text user "CS" (at -5.17 -5.14 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "MOSI/SDA" (at 5.03 -10.64 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "VCC" (at -0.07 -6.14 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "SCK/SCL" (at 2.47 -9.94 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "GND" (at -2.61 -6.24 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(pad 5 thru_hole circle (at -5.08 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P5.str})
|
||||
(pad 1 thru_hole circle (at -2.54 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P1.str})
|
||||
(pad 2 thru_hole circle (at 0 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P2.str})
|
||||
(pad 3 thru_hole circle (at 2.54 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P3.str})
|
||||
(pad 4 thru_hole circle (at 5.08 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask") ${p.P4.str})
|
||||
`
|
||||
const nice_view_reversible = `
|
||||
(fp_text user "CS" (at -5.17 -5.14 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "MOSI/SDA" (at 5.03 -10.64 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "VCC" (at -0.07 -6.14 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "SCK/SCL" (at 2.47 -9.94 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "GND" (at -2.61 -6.24 -90 unlocked) (layer "B.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right mirror))
|
||||
)
|
||||
(fp_text user "GND" (at 2.54 -6.24 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "MOSI/SDA" (at -5.1 -10.64 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "VCC" (at 0 -6.14 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "CS" (at 5.1 -5.14 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_text user "SCK/SCL" (at -2.54 -9.94 90 unlocked) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)) (justify right))
|
||||
)
|
||||
(fp_line (start -5.08 -1.748) (end -5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -2.54 -1.748) (end -2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 0 -1.748) (end 0 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 2.54 -1.748) (end 2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 5.08 -1.748) (end 5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -5.08 -1.748) (end -5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start -2.54 -1.748) (end -2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 0 -1.748) (end 0 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 2.54 -1.748) (end 2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 5.08 -1.748) (end 5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(pad "" smd custom (at -5.08 -1.748 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at -5.08 -1.748 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at -5.08 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" smd custom (at -2.54 -1.748 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at -2.54 -1.748 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at -2.54 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" smd custom (at 0 -1.748 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at 0 -1.748 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at 0 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" smd custom (at 2.54 -1.748 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at 2.54 -1.748 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at 2.54 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad "" smd custom (at 5.08 -1.748 180) (size 0.1 0.1) (layers "F.Cu" "F.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" smd custom (at 5.08 -1.748 180) (size 0.1 0.1) (layers "B.Cu" "B.Mask")
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad "" thru_hole circle (at 5.08 0) (size 1.7526 1.7526) (drill 1.0922) (layers "*.Cu" "*.Mask"))
|
||||
(pad 5 smd custom (at -5.08 -2.764 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P5.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 1 smd custom (at 2.54 -2.764 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P1.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 1 smd custom (at -2.54 -2.764 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P1.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 2 smd custom (at 0 -2.764 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P2.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 3 smd custom (at -2.54 -2.764 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P3.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 2 smd custom (at 0 -2.764 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P2.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 4 smd custom (at -5.08 -2.764 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P4.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 3 smd custom (at 2.54 -2.764 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P3.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 4 smd custom (at 5.08 -2.764 180) (size 1.2 0.5) (layers "B.Cu" "B.Mask") ${p.P4.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
(pad 5 smd custom (at 5.08 -2.764 180) (size 1.2 0.5) (layers "F.Cu" "F.Mask") ${p.P5.str}
|
||||
(clearance 0.1) (zone_connect 0) (thermal_bridge_angle 45)
|
||||
(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) (fill yes))
|
||||
))
|
||||
`
|
||||
const both_connections = `
|
||||
(fp_line (start -5.08 -1.748) (end -5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -5.08 -1.748) (end -3.7846 -0.4526)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -3.7846 -0.4526) (end -3.7846 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -2.54 -1.748) (end -2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -2.54 -1.748) (end -1.2446 -0.4526)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -1.2446 -0.4526) (end -1.2446 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 0 -1.748) (end 0 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 0 -1.748) (end 1.2954 -0.4526)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 1.2954 -0.4526) (end 1.2954 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 2.54 -1.748) (end 2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 2.54 -1.748) (end 3.8354 -0.4526)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 3.8354 -0.4526) (end 3.8354 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start 5.08 -1.748) (end 5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "F.Cu"))
|
||||
(fp_line (start -5.08 -1.748) (end -5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start -3.7846 -0.4526) (end -3.7846 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start -3.7846 -0.4526) (end -2.4892 -1.748)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start -2.54 -1.748) (end -2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start -1.2446 -0.4526) (end -1.2446 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start -1.2446 -0.4526) (end 0.0508 -1.748)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 0 -1.748) (end 0 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 1.2954 -0.4526) (end 1.2954 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 1.2954 -0.4526) (end 2.5908 -1.748)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 2.54 -1.748) (end 2.54 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 3.8354 -0.4526) (end 3.8354 1.1857)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 3.8354 -0.4526) (end 5.1308 -1.748)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
(fp_line (start 5.08 -1.748) (end 5.08 -0.8763)
|
||||
(stroke (width 0.2) (type default)) (layer "B.Cu"))
|
||||
`
|
||||
const standard_closing = `
|
||||
)
|
||||
`
|
||||
|
||||
let final = standard_opening;
|
||||
|
||||
if(p.oled == "128x32"){
|
||||
final += oled_standard;
|
||||
if(p.reverse) {
|
||||
final += oled_reversible_pads;
|
||||
final += oled_reversible_solder_bridges;
|
||||
} else {
|
||||
if(p.side == "F") {
|
||||
final += oled_front;
|
||||
}
|
||||
if(p.side == "B") {
|
||||
final += oled_back;
|
||||
}
|
||||
}
|
||||
} else if(p.oled == "nice_view"){
|
||||
final += nice_view_standard;
|
||||
if(p.reverse) {
|
||||
final += nice_view_reversible;
|
||||
} else {
|
||||
if(p.side == "F") {
|
||||
final += nice_view_front;
|
||||
}
|
||||
if(p.side == "B") {
|
||||
final += nice_view_back;
|
||||
}
|
||||
}
|
||||
} else if(p.oled == "both"){
|
||||
final += oled_standard;
|
||||
final += nice_view_standard;
|
||||
if(p.reverse) {
|
||||
final += oled_reversible_pads;
|
||||
final += nice_view_reversible;
|
||||
final += both_connections;
|
||||
} else {
|
||||
if(p.side == "F") {
|
||||
final += oled_front;
|
||||
final += nice_view_front;
|
||||
}
|
||||
if(p.side == "B") {
|
||||
final += oled_back;
|
||||
final += nice_view_back;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
final += standard_closing;
|
||||
|
||||
return final;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue