From b782236c5ba4fc5ab637d5be1156f497bd065a96 Mon Sep 17 00:00:00 2001 From: Willem Oldemans Date: Sat, 17 Apr 2021 15:03:47 +0200 Subject: [PATCH 1/2] updated testpoint --- .../3,5mm_straight_square.kicad_mod | 24 +- MySymbols.pretty/TestPoint_SMD_R.kicad_mod | 9 +- ...Zero_Socketed_THT_2MountingHoles.kicad_mod | 131 +++++++++ ...keted_THT_FaceDown_MountingHoles.kicad_mod | 250 ++++++++---------- 4 files changed, 265 insertions(+), 149 deletions(-) create mode 100644 kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_2MountingHoles.kicad_mod diff --git a/MySymbols.pretty/3,5mm_straight_square.kicad_mod b/MySymbols.pretty/3,5mm_straight_square.kicad_mod index 6c2e1438..735be297 100644 --- a/MySymbols.pretty/3,5mm_straight_square.kicad_mod +++ b/MySymbols.pretty/3,5mm_straight_square.kicad_mod @@ -1,20 +1,20 @@ -(module 3,5mm_straight_square (layer F.Cu) (tedit 6062226B) +(module 3,5mm_straight_square (layer F.Cu) (tedit 60788681) (fp_text reference REF** (at 7.112 4.064) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) (fp_text value 3,5mm_straight_square (at 0.762 -6.35) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))) ) - (fp_circle (center 0 0) (end 4.2 0) (layer Dwgs.User) (width 0.12)) - (fp_line (start -2.54 -5.25) (end 2.54 -5.25) (layer F.SilkS) (width 0.12)) - (fp_line (start 4.5 -4.572) (end 4.5 5.25) (layer F.SilkS) (width 0.12)) - (fp_line (start 4.5 5.25) (end -4.5 5.25) (layer F.SilkS) (width 0.12)) - (fp_line (start -4.5 5.25) (end -4.5 -4.572) (layer F.SilkS) (width 0.12)) - (fp_line (start -4.5 -4.572) (end -2.54 -5.25) (layer F.SilkS) (width 0.12)) - (fp_line (start 4.5 -4.572) (end 2.54 -5.25) (layer F.SilkS) (width 0.12)) - (fp_line (start 0 -4.2) (end 0 4.2) (layer Dwgs.User) (width 0.12)) (fp_line (start -4.2 0) (end 4.2 0) (layer Dwgs.User) (width 0.12)) - (pad 3 thru_hole oval (at 0 -4.05) (size 4 2) (drill oval 3 1) (layers *.Cu *.Mask)) - (pad 1 thru_hole oval (at 3.55 -0.85 90) (size 3.5 2) (drill oval 2.5 1) (layers *.Cu *.Mask)) - (pad 2 thru_hole oval (at 0 4.05) (size 3.5 2) (drill oval 2.5 1) (layers *.Cu *.Mask)) + (fp_line (start 0 -4.2) (end 0 4.2) (layer Dwgs.User) (width 0.12)) + (fp_line (start 4.5 -4.572) (end 2.54 -5.25) (layer F.SilkS) (width 0.12)) + (fp_line (start -4.5 -4.572) (end -2.54 -5.25) (layer F.SilkS) (width 0.12)) + (fp_line (start -4.5 5.25) (end -4.5 -4.572) (layer F.SilkS) (width 0.12)) + (fp_line (start 4.5 5.25) (end -4.5 5.25) (layer F.SilkS) (width 0.12)) + (fp_line (start 4.5 -4.572) (end 4.5 5.25) (layer F.SilkS) (width 0.12)) + (fp_line (start -2.54 -5.25) (end 2.54 -5.25) (layer F.SilkS) (width 0.12)) + (fp_circle (center 0 0) (end 4.2 0) (layer Dwgs.User) (width 0.12)) + (pad 2 thru_hole oval (at 0 -4.05) (size 4 2) (drill oval 3 1) (layers *.Cu *.Mask)) + (pad 1 thru_hole oval (at -3.55 -0.85 90) (size 3.5 2) (drill oval 2.5 1) (layers *.Cu *.Mask)) + (pad 3 thru_hole oval (at 0 4.05) (size 3.5 2) (drill oval 2.5 1) (layers *.Cu *.Mask)) ) diff --git a/MySymbols.pretty/TestPoint_SMD_R.kicad_mod b/MySymbols.pretty/TestPoint_SMD_R.kicad_mod index a8b42dbb..f25ae3bf 100644 --- a/MySymbols.pretty/TestPoint_SMD_R.kicad_mod +++ b/MySymbols.pretty/TestPoint_SMD_R.kicad_mod @@ -1,9 +1,10 @@ -(module TestPoint_SMD_R (layer F.Cu) (tedit 602EC615) - (fp_text reference REF** (at -3.5 -2.5) (layer F.SilkS) +(module TestPoint_SMD_R (layer F.Cu) (tedit 607AC878) + (fp_text reference REF** (at -0.9 -1) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) - (fp_text value TestPoint_SMD_R (at 0 -0.5) (layer F.Fab) + (fp_text value TestPoint_SMD_R (at 0 1.1) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))) ) - (pad 1 smd circle (at 0 -2.5) (size 1 1) (layers F.Cu F.Paste F.Mask)) + (fp_circle (center 0 0) (end -0.1 -0.7) (layer F.SilkS) (width 0.12)) + (pad 1 smd circle (at 0 0) (size 1 1) (layers F.Cu F.Paste F.Mask)) ) diff --git a/kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_2MountingHoles.kicad_mod b/kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_2MountingHoles.kicad_mod new file mode 100644 index 00000000..7176f63d --- /dev/null +++ b/kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_2MountingHoles.kicad_mod @@ -0,0 +1,131 @@ +(module Raspberry_Pi_Zero_Socketed_THT_2MountingHoles (layer F.Cu) (tedit 60701C04) + (descr "Raspberry Pi Zero using through hole straight pin socket, 2x20, 2.54mm pitch, https://www.raspberrypi.org/documentation/hardware/raspberrypi/mechanical/rpi_MECH_Zero_1p2.pdf") + (tags "raspberry pi zero through hole") + (fp_text reference REF** (at -5 28.956 270) (layer F.SilkS) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_text value Raspberry_Pi_Zero_Socketed_THT_2MountingHoles (at 11.5 28.956 90) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_line (start 26.56 54.766) (end 26.56 58.456) (layer F.SilkS) (width 0.12)) + (fp_line (start 27.26 54.766) (end 26.56 54.766) (layer F.SilkS) (width 0.12)) + (fp_line (start 27.26 43.346) (end 27.26 54.766) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 43.346) (end 27.26 43.346) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 24.116) (end 26.56 43.346) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 11.516) (end 26.56 15.996) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 15.996) (end 28.36 24.116) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 24.116) (end 26.56 24.116) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 15.996) (end 28.36 15.996) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 11.516) (end 26.56 11.516) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 3.396) (end 28.36 11.516) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 3.396) (end 28.36 3.396) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.94 -3.604) (end -0.5 -3.604) (layer F.SilkS) (width 0.12)) + (fp_line (start 20.06 -4.804) (end 20.06 -3.604) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.94 -4.804) (end 20.06 -4.804) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.94 -3.604) (end 2.94 -4.804) (layer F.SilkS) (width 0.12)) + (fp_line (start 23.5 -3.544) (end 20 -3.544) (layer F.Fab) (width 0.1)) + (fp_line (start 20 -3.544) (end 20 -4.744) (layer F.Fab) (width 0.1)) + (fp_line (start 3 -4.744) (end 20 -4.744) (layer F.Fab) (width 0.1)) + (fp_line (start 3 -3.544) (end 3 -4.744) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 24.056) (end 26.5 43.406) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 11.456) (end 26.5 16.056) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 3.456) (end 26.5 -0.544) (layer F.Fab) (width 0.1)) + (fp_line (start 28.3 16.056) (end 28.3 24.056) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 16.056) (end 28.3 16.056) (layer F.Fab) (width 0.1)) + (fp_line (start 28.3 24.056) (end 26.5 24.056) (layer F.Fab) (width 0.1)) + (fp_line (start -3.5 -0.544) (end -3.5 58.456) (layer F.Fab) (width 0.1)) + (fp_line (start -0.5 61.456) (end 23.5 61.456) (layer F.Fab) (width 0.1)) + (fp_line (start -0.5 -3.544) (end 3 -3.544) (layer F.Fab) (width 0.1)) + (fp_line (start -2.54 3.556) (end -2.54 54.356) (layer F.Fab) (width 0.1)) + (fp_line (start 2.54 3.556) (end -2.54 3.556) (layer F.Fab) (width 0.1)) + (fp_line (start -2.6 54.416) (end -2.6 3.496) (layer F.SilkS) (width 0.12)) + (fp_line (start -2.6 54.416) (end 0 54.416) (layer F.SilkS) (width 0.12)) + (fp_line (start 3.03 54.886) (end 3.03 3.086) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.07 54.886) (end 3.03 54.886) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.07 3.086) (end -3.07 54.886) (layer F.CrtYd) (width 0.05)) + (fp_line (start 3.03 3.086) (end -3.07 3.086) (layer F.CrtYd) (width 0.05)) + (fp_line (start 0 54.416) (end 0 51.816) (layer F.SilkS) (width 0.12)) + (fp_line (start 0 51.816) (end 2.6 51.816) (layer F.SilkS) (width 0.12)) + (fp_line (start 1.27 54.416) (end 2.6 54.416) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.6 54.416) (end 2.6 53.086) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.6 51.816) (end 2.6 3.496) (layer F.SilkS) (width 0.12)) + (fp_line (start -2.6 3.496) (end 2.6 3.496) (layer F.SilkS) (width 0.12)) + (fp_line (start 1.54 54.356) (end 2.54 53.356) (layer F.Fab) (width 0.1)) + (fp_line (start -2.54 54.356) (end 1.54 54.356) (layer F.Fab) (width 0.1)) + (fp_line (start 2.54 53.356) (end 2.54 3.556) (layer F.Fab) (width 0.1)) + (fp_line (start 20.06 -3.604) (end 23.5 -3.604) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 -0.544) (end 26.56 3.396) (layer F.SilkS) (width 0.12)) + (fp_line (start -0.5 61.516) (end 23.5 61.516) (layer F.SilkS) (width 0.12)) + (fp_line (start -3.56 -0.544) (end -3.56 58.456) (layer F.SilkS) (width 0.12)) + (fp_line (start -3.75 -3.794) (end -3.75 61.706) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.75 61.706) (end 4.064 61.706) (layer F.CrtYd) (width 0.05)) + (fp_line (start 26.5 54.706) (end 27.2 54.706) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 43.406) (end 27.2 43.406) (layer F.Fab) (width 0.1)) + (fp_line (start 27.2 43.406) (end 27.2 54.706) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 54.706) (end 26.5 58.456) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 3.456) (end 28.3 3.456) (layer F.Fab) (width 0.1)) + (fp_line (start 28.3 3.456) (end 28.3 11.456) (layer F.Fab) (width 0.1)) + (fp_line (start 28.3 11.456) (end 26.5 11.456) (layer F.Fab) (width 0.1)) + (fp_line (start -3.75 -3.794) (end 4.064 -3.794) (layer F.CrtYd) (width 0.05)) + (fp_line (start 4.064 -3.794) (end 4.064 61.706) (layer F.CrtYd) (width 0.05)) + (fp_arc (start 23.5 58.456) (end 23.5 61.516) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start 23.5 -0.544) (end 26.5 -0.544) (angle -90) (layer F.Fab) (width 0.1)) + (fp_arc (start -0.5 58.456) (end -3.56 58.456) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start -0.5 -0.544) (end -0.5 -3.604) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start 23.5 -0.544) (end 26.56 -0.544) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start 23.5 58.456) (end 23.5 61.456) (angle -90) (layer F.Fab) (width 0.1)) + (fp_arc (start -0.5 58.456) (end -3.5 58.456) (angle -90) (layer F.Fab) (width 0.1)) + (fp_arc (start -0.5 -0.544) (end -0.5 -3.544) (angle -90) (layer F.Fab) (width 0.1)) + (fp_text user %R (at 0 28.956 270) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.15))) + ) + (pad 6 thru_hole oval (at -1.27 48.006 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 3 thru_hole oval (at 1.27 50.546 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 15 thru_hole oval (at 1.27 35.306 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 16 thru_hole oval (at -1.27 35.306 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 4 thru_hole oval (at -1.27 50.546 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 5 thru_hole oval (at 1.27 48.006 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 2 thru_hole oval (at -1.27 53.086 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 1 thru_hole rect (at 1.27 53.086 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 23 thru_hole oval (at 1.27 25.146 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 24 thru_hole oval (at -1.27 25.146 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 11 thru_hole oval (at 1.27 40.386 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 12 thru_hole oval (at -1.27 40.386 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 27 thru_hole oval (at 1.27 20.066 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 28 thru_hole oval (at -1.27 20.066 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 13 thru_hole oval (at 1.27 37.846 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 14 thru_hole oval (at -1.27 37.846 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 9 thru_hole oval (at 1.27 42.926 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 10 thru_hole oval (at -1.27 42.926 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 19 thru_hole oval (at 1.27 30.226 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 20 thru_hole oval (at -1.27 30.226 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 37 thru_hole oval (at 1.27 7.366 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 38 thru_hole oval (at -1.27 7.366 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 33 thru_hole oval (at 1.27 12.446 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 34 thru_hole oval (at -1.27 12.446 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 35 thru_hole oval (at 1.27 9.906 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 36 thru_hole oval (at -1.27 9.906 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 17 thru_hole oval (at 1.27 32.766 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 18 thru_hole oval (at -1.27 32.766 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 31 thru_hole oval (at 1.27 14.986 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 32 thru_hole oval (at -1.27 14.986 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 7 thru_hole oval (at 1.27 45.466 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 8 thru_hole oval (at -1.27 45.466 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 29 thru_hole oval (at 1.27 17.526 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 30 thru_hole oval (at -1.27 17.526 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 21 thru_hole oval (at 1.27 27.686 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 22 thru_hole oval (at -1.27 27.686 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 25 thru_hole oval (at 1.27 22.606 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 26 thru_hole oval (at -1.27 22.606 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 39 thru_hole oval (at 1.27 4.826 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 40 thru_hole oval (at -1.27 4.826 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad "" np_thru_hole circle (at 0 57.956 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) + (solder_mask_margin 1.625)) + (pad "" np_thru_hole circle (at 0 -0.044 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) + (solder_mask_margin 1.625)) + (model ${KISYS3DMOD}/Module.3dshapes/Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles.wrl + (at (xyz 0 0 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 0)) + ) +) diff --git a/kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles.kicad_mod b/kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles.kicad_mod index ac77accf..19bf8917 100644 --- a/kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles.kicad_mod +++ b/kicad-footprints/Module.pretty/Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles.kicad_mod @@ -1,147 +1,131 @@ -(module Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles (layer F.Cu) (tedit 5C6350CC) +(module Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles (layer F.Cu) (tedit 60701B56) (descr "Raspberry Pi Zero using through hole straight pin socket, 2x20, 2.54mm pitch, https://www.raspberrypi.org/documentation/hardware/raspberrypi/mechanical/rpi_MECH_Zero_1p2.pdf") (tags "raspberry pi zero through hole") - (fp_text reference REF** (at -6.27 24.13 90) (layer F.SilkS) + (fp_text reference REF** (at -5 28.956 270) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) - (fp_text value Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles (at 10.23 24.13 270) (layer F.Fab) + (fp_text value Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles (at 11.5 28.956 90) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))) ) - (fp_line (start 27.03 41.63) (end 25.23 41.63) (layer F.Fab) (width 0.1)) - (fp_line (start 27.03 49.63) (end 27.03 41.63) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 49.63) (end 27.03 49.63) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 -1.62) (end 25.23 -5.37) (layer F.Fab) (width 0.1)) - (fp_line (start 25.93 9.68) (end 25.93 -1.62) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 9.68) (end 25.93 9.68) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 -1.62) (end 25.93 -1.62) (layer F.Fab) (width 0.1)) - (fp_line (start 19.23 56.88) (end 25.48 56.88) (layer F.CrtYd) (width 0.05)) - (fp_line (start -5.02 56.88) (end 1.23 56.88) (layer F.CrtYd) (width 0.05)) - (fp_line (start 25.48 50.13) (end 25.48 56.88) (layer F.CrtYd) (width 0.05)) - (fp_line (start 25.48 37.53) (end 25.48 41.13) (layer F.CrtYd) (width 0.05)) - (fp_line (start 25.48 -2.12) (end 25.48 -8.62) (layer F.CrtYd) (width 0.05)) - (fp_line (start -5.02 -8.62) (end 25.48 -8.62) (layer F.CrtYd) (width 0.05)) - (fp_arc (start 22.23 -5.37) (end 22.23 -8.43) (angle 90) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.48 28.53) (end 25.48 10.18) (layer F.CrtYd) (width 0.05)) - (fp_line (start -5.02 56.88) (end -5.02 -8.62) (layer F.CrtYd) (width 0.05)) - (fp_line (start 19.23 58.33) (end 1.23 58.33) (layer F.CrtYd) (width 0.05)) - (fp_line (start 19.23 58.33) (end 19.23 56.88) (layer F.CrtYd) (width 0.05)) - (fp_line (start 1.23 58.33) (end 1.23 56.88) (layer F.CrtYd) (width 0.05)) - (fp_line (start 26.43 -2.12) (end 26.43 10.18) (layer F.CrtYd) (width 0.05)) - (fp_line (start 26.43 -2.12) (end 25.48 -2.12) (layer F.CrtYd) (width 0.05)) - (fp_line (start 26.43 10.18) (end 25.48 10.18) (layer F.CrtYd) (width 0.05)) - (fp_line (start 27.53 28.53) (end 25.48 28.53) (layer F.CrtYd) (width 0.05)) - (fp_line (start 27.53 37.53) (end 27.53 28.53) (layer F.CrtYd) (width 0.05)) - (fp_line (start 27.53 37.53) (end 25.48 37.53) (layer F.CrtYd) (width 0.05)) - (fp_line (start 27.53 50.13) (end 27.53 41.13) (layer F.CrtYd) (width 0.05)) - (fp_line (start 27.53 41.13) (end 25.48 41.13) (layer F.CrtYd) (width 0.05)) - (fp_line (start 27.53 50.13) (end 25.48 50.13) (layer F.CrtYd) (width 0.05)) - (fp_arc (start 22.23 53.63) (end 25.23 53.63) (angle 90) (layer F.Fab) (width 0.1)) - (fp_arc (start -1.77 -5.37) (end -4.83 -5.37) (angle 90) (layer F.SilkS) (width 0.12)) - (fp_arc (start -1.77 53.63) (end -1.77 56.69) (angle 90) (layer F.SilkS) (width 0.12)) - (fp_line (start -4.83 53.63) (end -4.83 -5.37) (layer F.SilkS) (width 0.12)) - (fp_line (start -1.77 -8.43) (end 22.23 -8.43) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.29 53.63) (end 25.29 49.69) (layer F.SilkS) (width 0.12)) - (fp_line (start 18.79 56.69) (end 22.23 56.69) (layer F.SilkS) (width 0.12)) - (fp_arc (start 22.23 53.63) (end 25.29 53.63) (angle 90) (layer F.SilkS) (width 0.12)) - (fp_arc (start 22.23 -5.37) (end 22.23 -8.37) (angle 90) (layer F.Fab) (width 0.1)) - (fp_arc (start -1.77 -5.37) (end -4.77 -5.37) (angle 90) (layer F.Fab) (width 0.1)) - (fp_arc (start -1.77 53.63) (end -1.77 56.63) (angle 90) (layer F.Fab) (width 0.1)) - (fp_line (start 1.27 -0.27) (end 1.27 49.53) (layer F.Fab) (width 0.1)) - (fp_line (start -3.81 -1.27) (end 0.27 -1.27) (layer F.Fab) (width 0.1)) - (fp_line (start 0.27 -1.27) (end 1.27 -0.27) (layer F.Fab) (width 0.1)) - (fp_line (start -3.87 49.59) (end 1.33 49.59) (layer F.SilkS) (width 0.12)) - (fp_line (start 1.33 1.27) (end 1.33 49.59) (layer F.SilkS) (width 0.12)) - (fp_line (start 1.33 -1.33) (end 1.33 0) (layer F.SilkS) (width 0.12)) - (fp_line (start 0 -1.33) (end 1.33 -1.33) (layer F.SilkS) (width 0.12)) - (fp_line (start -1.27 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12)) - (fp_line (start -1.27 -1.33) (end -1.27 1.27) (layer F.SilkS) (width 0.12)) - (fp_line (start 1.76 50) (end -4.34 50) (layer F.CrtYd) (width 0.05)) - (fp_line (start -4.34 50) (end -4.34 -1.8) (layer F.CrtYd) (width 0.05)) - (fp_line (start -4.34 -1.8) (end 1.76 -1.8) (layer F.CrtYd) (width 0.05)) - (fp_line (start 1.76 -1.8) (end 1.76 50) (layer F.CrtYd) (width 0.05)) - (fp_line (start -3.87 -1.33) (end -1.27 -1.33) (layer F.SilkS) (width 0.12)) - (fp_line (start -3.87 -1.33) (end -3.87 49.59) (layer F.SilkS) (width 0.12)) - (fp_line (start 1.27 49.53) (end -3.81 49.53) (layer F.Fab) (width 0.1)) - (fp_line (start -3.81 49.53) (end -3.81 -1.27) (layer F.Fab) (width 0.1)) - (fp_text user %R (at -1.27 24.13 90) (layer F.Fab) + (fp_line (start 4.064 -3.794) (end 4.064 61.706) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.75 -3.794) (end 4.064 -3.794) (layer F.CrtYd) (width 0.05)) + (fp_line (start 28.3 11.456) (end 26.5 11.456) (layer F.Fab) (width 0.1)) + (fp_line (start 28.3 3.456) (end 28.3 11.456) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 3.456) (end 28.3 3.456) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 54.706) (end 26.5 58.456) (layer F.Fab) (width 0.1)) + (fp_line (start 27.2 43.406) (end 27.2 54.706) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 43.406) (end 27.2 43.406) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 54.706) (end 27.2 54.706) (layer F.Fab) (width 0.1)) + (fp_line (start -3.75 61.706) (end 4.064 61.706) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.75 -3.794) (end -3.75 61.706) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.56 -0.544) (end -3.56 58.456) (layer F.SilkS) (width 0.12)) + (fp_line (start -0.5 61.516) (end 23.5 61.516) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 -0.544) (end 26.56 3.396) (layer F.SilkS) (width 0.12)) + (fp_line (start 20.06 -3.604) (end 23.5 -3.604) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.54 53.356) (end 2.54 3.556) (layer F.Fab) (width 0.1)) + (fp_line (start -2.54 54.356) (end 1.54 54.356) (layer F.Fab) (width 0.1)) + (fp_line (start 1.54 54.356) (end 2.54 53.356) (layer F.Fab) (width 0.1)) + (fp_line (start -2.6 3.496) (end 2.6 3.496) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.6 51.816) (end 2.6 3.496) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.6 54.416) (end 2.6 53.086) (layer F.SilkS) (width 0.12)) + (fp_line (start 1.27 54.416) (end 2.6 54.416) (layer F.SilkS) (width 0.12)) + (fp_line (start 0 51.816) (end 2.6 51.816) (layer F.SilkS) (width 0.12)) + (fp_line (start 0 54.416) (end 0 51.816) (layer F.SilkS) (width 0.12)) + (fp_line (start 3.03 3.086) (end -3.07 3.086) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.07 3.086) (end -3.07 54.886) (layer F.CrtYd) (width 0.05)) + (fp_line (start -3.07 54.886) (end 3.03 54.886) (layer F.CrtYd) (width 0.05)) + (fp_line (start 3.03 54.886) (end 3.03 3.086) (layer F.CrtYd) (width 0.05)) + (fp_line (start -2.6 54.416) (end 0 54.416) (layer F.SilkS) (width 0.12)) + (fp_line (start -2.6 54.416) (end -2.6 3.496) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.54 3.556) (end -2.54 3.556) (layer F.Fab) (width 0.1)) + (fp_line (start -2.54 3.556) (end -2.54 54.356) (layer F.Fab) (width 0.1)) + (fp_line (start -0.5 -3.544) (end 3 -3.544) (layer F.Fab) (width 0.1)) + (fp_line (start -0.5 61.456) (end 23.5 61.456) (layer F.Fab) (width 0.1)) + (fp_line (start -3.5 -0.544) (end -3.5 58.456) (layer F.Fab) (width 0.1)) + (fp_line (start 28.3 24.056) (end 26.5 24.056) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 16.056) (end 28.3 16.056) (layer F.Fab) (width 0.1)) + (fp_line (start 28.3 16.056) (end 28.3 24.056) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 3.456) (end 26.5 -0.544) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 11.456) (end 26.5 16.056) (layer F.Fab) (width 0.1)) + (fp_line (start 26.5 24.056) (end 26.5 43.406) (layer F.Fab) (width 0.1)) + (fp_line (start 3 -3.544) (end 3 -4.744) (layer F.Fab) (width 0.1)) + (fp_line (start 3 -4.744) (end 20 -4.744) (layer F.Fab) (width 0.1)) + (fp_line (start 20 -3.544) (end 20 -4.744) (layer F.Fab) (width 0.1)) + (fp_line (start 23.5 -3.544) (end 20 -3.544) (layer F.Fab) (width 0.1)) + (fp_line (start 2.94 -3.604) (end 2.94 -4.804) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.94 -4.804) (end 20.06 -4.804) (layer F.SilkS) (width 0.12)) + (fp_line (start 20.06 -4.804) (end 20.06 -3.604) (layer F.SilkS) (width 0.12)) + (fp_line (start 2.94 -3.604) (end -0.5 -3.604) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 3.396) (end 28.36 3.396) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 3.396) (end 28.36 11.516) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 11.516) (end 26.56 11.516) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 15.996) (end 28.36 15.996) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 24.116) (end 26.56 24.116) (layer F.SilkS) (width 0.12)) + (fp_line (start 28.36 15.996) (end 28.36 24.116) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 11.516) (end 26.56 15.996) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 24.116) (end 26.56 43.346) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 43.346) (end 27.26 43.346) (layer F.SilkS) (width 0.12)) + (fp_line (start 27.26 43.346) (end 27.26 54.766) (layer F.SilkS) (width 0.12)) + (fp_line (start 27.26 54.766) (end 26.56 54.766) (layer F.SilkS) (width 0.12)) + (fp_line (start 26.56 54.766) (end 26.56 58.456) (layer F.SilkS) (width 0.12)) + (fp_arc (start 23.5 58.456) (end 23.5 61.516) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start 23.5 -0.544) (end 26.5 -0.544) (angle -90) (layer F.Fab) (width 0.1)) + (fp_arc (start -0.5 58.456) (end -3.56 58.456) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start -0.5 -0.544) (end -0.5 -3.604) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start 23.5 -0.544) (end 26.56 -0.544) (angle -90) (layer F.SilkS) (width 0.12)) + (fp_arc (start 23.5 58.456) (end 23.5 61.456) (angle -90) (layer F.Fab) (width 0.1)) + (fp_arc (start -0.5 58.456) (end -3.5 58.456) (angle -90) (layer F.Fab) (width 0.1)) + (fp_arc (start -0.5 -0.544) (end -0.5 -3.544) (angle -90) (layer F.Fab) (width 0.1)) + (fp_text user %R (at 0 28.956 270) (layer F.Fab) (effects (font (size 1 1) (thickness 0.15))) ) - (fp_line (start -1.77 56.63) (end 1.73 56.63) (layer F.Fab) (width 0.1)) - (fp_line (start -1.77 -8.37) (end 22.23 -8.37) (layer F.Fab) (width 0.1)) - (fp_line (start -4.77 53.63) (end -4.77 -5.37) (layer F.Fab) (width 0.1)) - (fp_line (start 27.03 29.03) (end 25.23 29.03) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 37.03) (end 27.03 37.03) (layer F.Fab) (width 0.1)) - (fp_line (start 27.03 37.03) (end 27.03 29.03) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 49.63) (end 25.23 53.63) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 41.63) (end 25.23 37.03) (layer F.Fab) (width 0.1)) - (fp_line (start 25.23 29.03) (end 25.23 9.68) (layer F.Fab) (width 0.1)) - (fp_line (start 1.73 56.63) (end 1.73 57.83) (layer F.Fab) (width 0.1)) - (fp_line (start 1.73 57.83) (end 18.73 57.83) (layer F.Fab) (width 0.1)) - (fp_line (start 18.73 56.63) (end 18.73 57.83) (layer F.Fab) (width 0.1)) - (fp_line (start 22.23 56.63) (end 18.73 56.63) (layer F.Fab) (width 0.1)) - (fp_line (start 1.67 56.69) (end 1.67 57.89) (layer F.SilkS) (width 0.12)) - (fp_line (start 1.67 57.89) (end 18.79 57.89) (layer F.SilkS) (width 0.12)) - (fp_line (start 18.79 57.89) (end 18.79 56.69) (layer F.SilkS) (width 0.12)) - (fp_line (start 1.67 56.69) (end -1.77 56.69) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.29 49.69) (end 27.09 49.69) (layer F.SilkS) (width 0.12)) - (fp_line (start 27.09 49.69) (end 27.09 41.57) (layer F.SilkS) (width 0.12)) - (fp_line (start 27.09 41.57) (end 25.29 41.57) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.29 37.09) (end 27.09 37.09) (layer F.SilkS) (width 0.12)) - (fp_line (start 27.09 28.97) (end 25.29 28.97) (layer F.SilkS) (width 0.12)) - (fp_line (start 27.09 37.09) (end 27.09 28.97) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.29 41.57) (end 25.29 37.09) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.29 28.97) (end 25.29 9.74) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.29 9.74) (end 25.99 9.74) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.99 9.74) (end 25.99 -1.68) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.99 -1.68) (end 25.29 -1.68) (layer F.SilkS) (width 0.12)) - (fp_line (start 25.29 -1.68) (end 25.29 -5.37) (layer F.SilkS) (width 0.12)) - (pad 6 thru_hole oval (at -2.54 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 3 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 15 thru_hole oval (at 0 17.78) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 16 thru_hole oval (at -2.54 17.78) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 4 thru_hole oval (at -2.54 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 5 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 2 thru_hole oval (at -2.54 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 23 thru_hole oval (at 0 27.94) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 24 thru_hole oval (at -2.54 27.94) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 11 thru_hole oval (at 0 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 12 thru_hole oval (at -2.54 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 27 thru_hole oval (at 0 33.02) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 28 thru_hole oval (at -2.54 33.02) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 13 thru_hole oval (at 0 15.24) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 14 thru_hole oval (at -2.54 15.24) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 9 thru_hole oval (at 0 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 10 thru_hole oval (at -2.54 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 19 thru_hole oval (at 0 22.86) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 20 thru_hole oval (at -2.54 22.86) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 37 thru_hole oval (at 0 45.72) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 38 thru_hole oval (at -2.54 45.72) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 33 thru_hole oval (at 0 40.64) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 34 thru_hole oval (at -2.54 40.64) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 35 thru_hole oval (at 0 43.18) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 36 thru_hole oval (at -2.54 43.18) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 17 thru_hole oval (at 0 20.32) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 18 thru_hole oval (at -2.54 20.32) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 31 thru_hole oval (at 0 38.1) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 32 thru_hole oval (at -2.54 38.1) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 7 thru_hole oval (at 0 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 8 thru_hole oval (at -2.54 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 29 thru_hole oval (at 0 35.56) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 30 thru_hole oval (at -2.54 35.56) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 21 thru_hole oval (at 0 25.4) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 22 thru_hole oval (at -2.54 25.4) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 25 thru_hole oval (at 0 30.48) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 26 thru_hole oval (at -2.54 30.48) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 39 thru_hole oval (at 0 48.26) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad 40 thru_hole oval (at -2.54 48.26) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) - (pad "" np_thru_hole circle (at -1.27 -4.87 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) + (pad 6 thru_hole oval (at -1.27 48.006 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 3 thru_hole oval (at 1.27 50.546 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 15 thru_hole oval (at 1.27 35.306 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 16 thru_hole oval (at -1.27 35.306 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 4 thru_hole oval (at -1.27 50.546 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 5 thru_hole oval (at 1.27 48.006 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 2 thru_hole oval (at -1.27 53.086 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 1 thru_hole rect (at 1.27 53.086 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 23 thru_hole oval (at 1.27 25.146 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 24 thru_hole oval (at -1.27 25.146 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 11 thru_hole oval (at 1.27 40.386 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 12 thru_hole oval (at -1.27 40.386 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 27 thru_hole oval (at 1.27 20.066 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 28 thru_hole oval (at -1.27 20.066 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 13 thru_hole oval (at 1.27 37.846 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 14 thru_hole oval (at -1.27 37.846 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 9 thru_hole oval (at 1.27 42.926 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 10 thru_hole oval (at -1.27 42.926 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 19 thru_hole oval (at 1.27 30.226 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 20 thru_hole oval (at -1.27 30.226 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 37 thru_hole oval (at 1.27 7.366 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 38 thru_hole oval (at -1.27 7.366 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 33 thru_hole oval (at 1.27 12.446 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 34 thru_hole oval (at -1.27 12.446 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 35 thru_hole oval (at 1.27 9.906 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 36 thru_hole oval (at -1.27 9.906 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 17 thru_hole oval (at 1.27 32.766 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 18 thru_hole oval (at -1.27 32.766 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 31 thru_hole oval (at 1.27 14.986 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 32 thru_hole oval (at -1.27 14.986 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 7 thru_hole oval (at 1.27 45.466 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 8 thru_hole oval (at -1.27 45.466 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 29 thru_hole oval (at 1.27 17.526 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 30 thru_hole oval (at -1.27 17.526 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 21 thru_hole oval (at 1.27 27.686 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 22 thru_hole oval (at -1.27 27.686 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 25 thru_hole oval (at 1.27 22.606 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 26 thru_hole oval (at -1.27 22.606 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 39 thru_hole oval (at 1.27 4.826 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad 40 thru_hole oval (at -1.27 4.826 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) + (pad "" np_thru_hole circle (at 0 57.956 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) (solder_mask_margin 1.625)) - (pad "" np_thru_hole circle (at 21.73 53.13 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) + (pad "" np_thru_hole circle (at 23 -0.044 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) (solder_mask_margin 1.625)) - (pad "" np_thru_hole circle (at 21.73 -4.87 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) + (pad "" np_thru_hole circle (at 23 57.956 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) (solder_mask_margin 1.625)) - (pad "" np_thru_hole circle (at -1.27 53.13 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) + (pad "" np_thru_hole circle (at 0 -0.044 90) (size 2.75 2.75) (drill 2.75) (layers *.Cu *.Mask) (solder_mask_margin 1.625)) (model ${KISYS3DMOD}/Module.3dshapes/Raspberry_Pi_Zero_Socketed_THT_FaceDown_MountingHoles.wrl (at (xyz 0 0 0)) From 9e7d2deae923ad055d530ab9c9a525577e3ca3d7 Mon Sep 17 00:00:00 2001 From: Willem Oldemans Date: Tue, 20 Apr 2021 08:20:43 +0200 Subject: [PATCH 2/2] added bom.py --- .DS_Store | Bin 12292 -> 12292 bytes BOM scripts/bom.py | 109 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 109 insertions(+) create mode 100644 BOM scripts/bom.py diff --git a/.DS_Store b/.DS_Store index 69893685dd5f08d534c2308645a9af1ee9a86a41..47a623a3e587491810fc154c292f35a0f57d0ea9 100644 GIT binary patch literal 12292 zcmeHNYit`u5T3cDaOOyJ2`!-}0Yjjnty}EoSwz8k6lhaO$fHRgG_`%#B!mP=fCS9$o+HOeoPw0J7Ik!cKrOY0tkKPJE76(K zM+|+mFK(IX;RLmm#iM3CP0V_;X?7cT2<~{wGR;oQHXOrBZ0~pU{SIqmH=5Mczr(gt zPAk7zzd`pGT;=Q;9ZA;N-lnH)qCVftODifbyK?o_bsILe+|b@}v{WrCzhIf7>@YMv z;TU@jJ=HsEXwJ~~s2$f6nvodn8!>DnX6ikO=&)XfL7$KJx@d*p-=B^dx2FwfOs$q> zUR!mEU)iP6KyJ1)b~jCZT^9V8U*h-gWG$^JovxbOVP%b9>9J{8YSd+16I7I*eMUl4 zZTC^3u;TAEqcPo7HJ^A+eS_lf8xf;Y+uh1*mMQ-JxHUXXL$Teu>#q0vceBTCjoMB} zQcut;9de)DO0Tq?wKZ!Rf1z@|%|okr*)?nsk~3B57N$jy(A}*Z1lOvoDmY1p(j!t&W65Sw%81RS<#}*aEvr z>&D;#cm$q;*Wh({13rS!;24~MAK(}G9sYnn;V&%45-dd(%g~QCxC&R}8mz+zHe(C6 zV<&cDH}>Fd7()$p+=~{baTNFC7~YHb)G6LwVqXwTI|RvIrLL$m6pN;I zc9Z7!Se7~QKN{Oc+Bu*uYqb(i)F2@5a4^u+SbyMvPp-H!ym9lM;jue1cOJOwG4UFheYw)?Yq|7sM%_j^ z&)(;;dPPqHo&^4n5@72?fHI>ImyQd{mkzox2*KJJgy4z(lOMqA0xpfXbX-v0mHP0m zL`7F-0Yp3RPW1t|9C7KmprSjV=nm*U8C?$rMR&jeX9tW3>RmkvcoLW@fu&S67wn%D z*k3w0J@&7>@utmN+8Y-v_CK~%p#9|+Rs@&}(6q660xb)8oki5SIGuy@Nsyj{a}Hkf zfb~)G2`;XzQZCK94Ee4^FX1|Uzs#Hn^<2SyxpIX}s9s$niZ#kAnee=Njwl8z*U98T zs1h$K;mTSc`3Y)~C>XO3y7CL(rxFxT$c@*r@G( zE^sLOxqLn0Die+`k#FOWpSwvdu8+{U(EWu1veN9h86zKuf=&wLuZ32U zZXMC~Y_LB^nun*6=4r($7iBW*n;L_G^>tw$+^lN|2I_0WQ-Yg3cuDxp4Fy1caPtYi zYR)+1TuBy?Or8wI9C}wz0*gul%>S367TWl(y+MwT4tCC>u$UZ}DdWst38plfgW+!4 zP)oAuu3b9t;dFu;w%XcUA5q>~@~3{^&+j)+&!^3aFFBO+%)tQNYU+7o<#bTRfI-UpNae>! z{c|_KO{$NPG^3Pr5yxWs9OfZ`tazD1&ZAqN$Y+f+<|yqaXBv#G$YdHCLbTBuu5B#1 z)ymKYr5Vx4LGKK~DV-shqjR)4&k&Ge6>yy>p7x*pf4cJ$rnhwVkL~|&A{S(a^M9Pl zyLb}tB(OLofW>XyZ7npmtV5kYOt#k^puC4NON?(^P~L?u?shzH<6H4m7a|s(=zoO$ nAv!K7{iAf+4*|^Mpp|F;`Ju)$e}>Sr|GAFIq%F!*vH$-9YrQR| delta 2391 zcmeH{ZERCj7{|~5t{eBRm+h|Wwr=#&cI(*Ky3p>ufb4w&V~nv)w(&B$wPTg89qmA1 z>QG2DD2h3Wf({H4@dX27kJ{G#HDxz!B|7B3x7 zmQoCQqduLkNHIuW&iN=?GD4Zd*19}32@Mtv18boPY?2id1b zV!2wmo|n$@tCTk{@#3Yo#VSB1D>$2 z<$<6td^_LD^F30snpY|%H+cQSp}$u^31n1}l@&);ZTq8e|>*NNx z1sxJ$gc-TWLq2Ar7$qn}IqI+o%~*_X^uddMtU&l*g2@m5jJdW*n0?*)iynsE} zivu`}H*o~-;xsH`B4L6lb;;h_Eu7E4#=5bZre6E%2 z=6bjRqW*D+UCB!As$IDIwHtaVdy~lSwdZ(!G=)#sMQ4a#$3di$E{~Q-mMNBd=Py{; zR2IFK5r>2h)->Nnl@4i&f(<{e5M#^MTcmi_!&o>YkA(@WeX+36VX;UY!zLCwT^79* z$Dk0@y=4v-LJQop^?FIi@QAI=lUYc#ptg>cQF_huIn`SbYlOj2-8BOaCi6U0GpXy* zz@%P+rD#JtR-y+U^fKWC2x1895XJ}|!YH=j5hnYS*ny|;9CkD5$C&sB@G4%z>xkkg zj^hM9XgEcGv>6ikL_Tq9BAv+UozC+DFZ4*Jkr7vg(_wX$mp zGS(H*pGMU#?88ggk2i1<@8Nx%!daZdd5q&re1!>I!S@XJ8@R~{oPkT_j9ea<&$+nS zTpeS50o|UliYaPtWPplIcPeVRQ_+h_iU6s`wDb(CA}n)5y2sSPq*$I(B#Cy#dZc(2 zMRT4=ote`bM3=claV;rMO^Xh*UPD=Qi*pqBl60{ZS*#KSiNto-npG>36h0>>@h9Xw zxk#>%ADF~{G9wXSf{j_oEVxmnaova(jcY~N7}s75YFtO~pvLv1OkjoUXBpSF-ON?S z@G=AY6$bWOD%i(x0`K5Me9DBr7;VnlkEoIVB@P)h#b%6JtrNIA@0D(s!&>1i`xozJ z^klXLgqcZ}6jU^gm5kbQ_A4TTEFU4m#7Dw3H`OwUr+3-qI}U8o20W7u zcxk2EVJ&hh2X;9t*y-J_aymD+*u#$UpTCBgKtOeY$!wwn_U1``6f block in kicad_netlist_reader.py + components = net.getInterestingComponents() + + compfields = net.gatherComponentFieldUnion(components) + partfields = net.gatherLibPartFieldUnion() + + # remove Reference, Value, Datasheet, and Footprint, they will come from 'columns' below + partfields -= set( ['Reference', 'Value', 'Datasheet', 'Footprint'] ) + + columnset = compfields | partfields # union + + # prepend an initial 'hard coded' list and put the enchillada into list 'columns' + columns = ['Item', 'Qty', 'Reference(s)', 'Value', 'LibPart', 'Footprint', 'Datasheet'] + sorted(list(columnset)) + + # Create a new csv writer object to use as the output formatter + out = csv.writer(f, lineterminator='\n', delimiter=',', quotechar='\"', quoting=csv.QUOTE_MINIMAL) + + row = [] + + # Get all of the components in groups of matching parts + values + # (see kicad_netlist_reader.py) + if args.single: + grouped = [[c] for c in components] + else: + grouped = net.groupComponents(components) + + # Output header row + out.writerow(columns) + + # Output component information organized by group, aka as collated: + item = 0 + for group in grouped: + del row[:] + refs = [] + + # Add the reference of every component in the group and keep a reference + # to the component so that the other data can be filled in once per group + for component in group: + refs.append(component.getRef()) + c = component + + ref_string = ", ".join(natsort.natsorted(refs)) + if args.digikey and len(ref_string) > 48: + ref_string = ref_string[:45] + "..." + + # Fill in the component groups common data + # columns = ['Item', 'Qty', 'Reference(s)', 'Value', 'LibPart', 'Footprint', 'Datasheet'] + sorted(list(columnset)) + item += 1 + row.append( item ) + row.append( len(group) * args.quantity ) + row.append( ref_string ) + row.append( c.getValue() ) + row.append( c.getLibName() + ":" + c.getPartName() ) + row.append( net.getGroupFootprint(group) ) + row.append( net.getGroupDatasheet(group) ) + + # from column 7 upwards, use the fieldnames to grab the data + for field in columns[7:]: + row.append( net.getGroupField(group, field) ); + + out.writerow(row) + + f.close() + +if __name__ == "__main__": + main()