Files
corax-keyboard/ergogen/footprints/niceview.js
daniel 99a37eb0cc Squashed commit of the following:
commit bb18cddcc8
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 11:43:33 2023 +0200

    update gerbers

commit df5ee882de
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 11:43:15 2023 +0200

    pcb render

commit 14c23b0fa8
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 11:34:24 2023 +0200

    add icon svg

commit 6ec17faa04
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 11:31:08 2023 +0200

    Update README.md

commit b65a183fe3
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 11:30:20 2023 +0200

    routed rev 1.1

commit 9ce5d4ee41
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 09:46:20 2023 +0200

    add rev and order number to ergogen config

commit c0575a7352
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 08:56:18 2023 +0200

    make text on pcb better readable

commit 03692059b5
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 08:44:04 2023 +0200

    fix mcu labels

commit 6edd65c0c5
Author: daniel <github@dbauer.me>
Date:   Sat Aug 5 08:34:36 2023 +0200

    incr. diode to socket distance
2023-08-05 11:44:37 +02:00

65 lines
2.7 KiB
JavaScript

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})`
}
}
}