Files
mikilab-kicad-library/footprints/other/castellated_edge.pretty/CASTELLATED_EDGE_1x20_P1.27MM.kicad_mod
T
micheleandClaude Sonnet 5 804e2a2cb8 Add generator for single-row castellated edge footprints
New scripts/generate_castellated_edge.py produces a reusable footprint
(round PTH pads + an embedded Edge.Cuts line through their centers) for
mounting a module flush onto another board's edge, ESP32-WROOM style --
distinct from the QFP/SSOP breakout-adapter footprints already in
footprints/other/castellated_breakouts.pretty/. Default pad size (1.0mm
dia / 0.5mm drill) matches the vias used in reference/kicad-castellated-breakouts.

Generated CASTELLATED_EDGE_1x20_P1.27MM (20 pins, 1.27mm pitch) into
footprints/other/castellated_edge.pretty/, registered as
MIKILAB_castellated_edge.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01T5pjBJQ7tf9pwsSs8rG2sm
2026-09-08 00:07:33 +02:00

33 lines
2.3 KiB
Plaintext

(footprint CASTELLATED_EDGE_1x20_P1.27MM (layer F.Cu) (tedit 00000000)
(descr "Single row of castellated edge pads, 20 pins, 1.27mm pitch. Align this row with the board outline (do not tent) so the mill/router cuts each pad in half, exposing plated copper on the board edge.")
(tags "castellated edge module")
(attr through_hole)
(fp_text reference REF** (at 0 -14.065) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value CASTELLATED_EDGE_1x20_P1.27MM (at 0 14.065) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(pad 1 thru_hole circle (at -12.065 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 2 thru_hole circle (at -10.795 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 3 thru_hole circle (at -9.525 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 4 thru_hole circle (at -8.255 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 5 thru_hole circle (at -6.985 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 6 thru_hole circle (at -5.715 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 7 thru_hole circle (at -4.445 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 8 thru_hole circle (at -3.175 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 9 thru_hole circle (at -1.905 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 10 thru_hole circle (at -0.635 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 11 thru_hole circle (at 0.635 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 12 thru_hole circle (at 1.905 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 13 thru_hole circle (at 3.175 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 14 thru_hole circle (at 4.445 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 15 thru_hole circle (at 5.715 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 16 thru_hole circle (at 6.985 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 17 thru_hole circle (at 8.255 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 18 thru_hole circle (at 9.525 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 19 thru_hole circle (at 10.795 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(pad 20 thru_hole circle (at 12.065 0) (size 1 1) (drill 0.5) (layers *.Cu *.Mask))
(fp_line (start -12.565 0) (end 12.565 0) (layer Edge.Cuts) (width 0.1))
)