From 1d6dcd9f28990bed0b80f3309ebb27f1ce5ccb58 Mon Sep 17 00:00:00 2001 From: Ashton Johnson Date: Sun, 23 Oct 2016 20:11:10 -0500 Subject: [PATCH 1/8] Added Template for Raspberry Pi 40 Pin Models. Added Mounting Hole Schematic Symbol. --- library/device.lib | 1756 +++++++++-------- template/raspberrypi-gpio-40pin/meta/brd.png | Bin 0 -> 46690 bytes template/raspberrypi-gpio-40pin/meta/icon.png | Bin 0 -> 5374 bytes .../raspberrypi-gpio-40pin/meta/info.html | 34 + .../raspberrypi-gpio-40pin.cmp | 10 + .../raspberrypi-gpio-40pin.kicad_pcb | 407 ++++ .../raspberrypi-gpio-40pin.lib | 166 ++ .../raspberrypi-gpio-40pin.net | 190 ++ .../raspberrypi-gpio-40pin.pro | 173 ++ .../raspberrypi-gpio-40pin.sch | 354 ++++ .../raspberrypi-gpio-40pin.stf | 1 + 11 files changed, 2223 insertions(+), 868 deletions(-) create mode 100755 template/raspberrypi-gpio-40pin/meta/brd.png create mode 100755 template/raspberrypi-gpio-40pin/meta/icon.png create mode 100755 template/raspberrypi-gpio-40pin/meta/info.html create mode 100644 template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp create mode 100644 template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb create mode 100644 template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.lib create mode 100644 template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net create mode 100644 template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro create mode 100644 template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch create mode 100644 template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.stf diff --git a/library/device.lib b/library/device.lib index 106f9199..7553dc11 100644 --- a/library/device.lib +++ b/library/device.lib @@ -13,8 +13,8 @@ S -90 -7 90 -17 0 1 0 F S -90 50 90 40 0 1 0 F S -62 -30 58 -50 0 1 0 F S -62 27 58 7 0 1 0 F -P 2 0 1 10 20 95 60 95 N -P 2 0 1 10 40 115 40 75 N +P 2 0 1 10 20 95 60 95 N +P 2 0 1 10 40 115 40 75 N X ~ 1 0 150 100 D 50 50 1 1 P X ~ 2 0 -150 100 U 50 50 1 1 P ENDDRAW @@ -35,8 +35,8 @@ $FPLIST Capacitor* $ENDFPLIST DRAW -P 2 0 1 20 -80 -30 80 -30 N -P 2 0 1 20 -80 30 80 30 N +P 2 0 1 20 -80 -30 80 -30 N +P 2 0 1 20 -80 30 80 30 N X ~ 1 0 150 110 D 50 50 1 1 P X ~ 2 0 -150 110 U 50 50 1 1 P ENDDRAW @@ -64,8 +64,8 @@ S -90 20 90 20 0 1 0 N S 90 -20 -90 -40 0 1 0 F S 90 40 -90 40 0 1 0 N S 90 40 90 20 0 1 0 N -P 2 0 1 0 -70 90 -30 90 N -P 2 0 1 0 -50 110 -50 70 N +P 2 0 1 0 -70 90 -30 90 N +P 2 0 1 0 -50 110 -50 70 N X ~ 1 0 150 110 D 50 50 1 1 P X ~ 2 0 -150 110 U 50 50 1 1 P ENDDRAW @@ -89,9 +89,9 @@ $FPLIST $ENDFPLIST DRAW A 0 -150 128 1287 513 0 1 20 N -80 -50 80 -50 -P 2 0 1 20 -80 30 80 30 N -P 2 0 1 0 -70 90 -30 90 N -P 2 0 1 0 -50 70 -50 110 N +P 2 0 1 20 -80 30 80 30 N +P 2 0 1 0 -70 90 -30 90 N +P 2 0 1 0 -50 70 -50 110 N X ~ 1 0 150 110 D 50 50 1 1 P X ~ 2 0 -150 130 U 50 50 1 1 P ENDDRAW @@ -115,9 +115,9 @@ $FPLIST $ENDFPLIST DRAW A 0 -140 125 1186 614 0 1 12 N -60 -30 60 -30 -P 2 0 1 12 -60 20 60 20 N -P 2 0 1 0 -50 60 -30 60 N -P 2 0 1 0 -40 50 -40 70 N +P 2 0 1 12 -60 20 60 20 N +P 2 0 1 0 -50 60 -30 60 N +P 2 0 1 0 -40 50 -40 70 N X ~ 1 0 100 80 D 50 50 1 1 P X ~ 2 0 -100 80 U 50 50 1 1 P ENDDRAW @@ -142,8 +142,8 @@ $ENDFPLIST DRAW S -60 -12 60 -27 0 1 0 F S -60 27 60 12 0 1 0 N -P 2 0 1 0 -50 60 -30 60 N -P 2 0 1 0 -40 50 -40 70 N +P 2 0 1 0 -50 60 -30 60 N +P 2 0 1 0 -40 50 -40 70 N X ~ 1 0 100 73 D 50 50 1 1 P X ~ 2 0 -100 73 U 50 50 1 1 P ENDDRAW @@ -161,8 +161,8 @@ $FPLIST $ENDFPLIST DRAW S -50 100 50 -100 0 1 12 N -P 2 0 1 12 -100 -50 -100 50 N -P 2 0 1 12 100 -50 100 50 N +P 2 0 1 12 -100 -50 -100 50 N +P 2 0 1 12 100 -50 100 50 N X 1 1 -150 0 50 R 50 50 1 1 P X 2 2 150 0 50 L 50 50 1 1 P ENDDRAW @@ -176,10 +176,10 @@ F1 "CRYSTAL_SMD" 100 -100 50 H V L CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 -70 -100 70 -100 N -P 2 0 1 16 -70 50 -70 -50 N -P 2 0 1 16 70 50 70 -50 N -P 5 0 1 12 -40 40 40 40 40 -40 -40 -40 -40 40 f +P 2 0 1 0 -70 -100 70 -100 N +P 2 0 1 16 -70 50 -70 -50 N +P 2 0 1 16 70 50 70 -50 N +P 5 0 1 12 -40 40 40 40 40 -40 -40 -40 -40 40 f X 1 1 -200 0 130 R 50 50 1 1 P X 2 2 200 0 130 L 50 50 1 1 P X case 3 0 -200 100 U 50 50 1 1 P @@ -198,8 +198,8 @@ $FPLIST $ENDFPLIST DRAW S -30 -60 30 60 0 1 0 N -P 2 0 1 0 -50 -30 -50 30 N -P 2 0 1 0 50 -30 50 30 N +P 2 0 1 0 -50 -30 -50 30 N +P 2 0 1 0 50 -30 50 30 N X 1 1 -100 0 50 R 50 50 1 1 P X 2 2 100 0 50 L 50 50 1 1 P ENDDRAW @@ -213,11 +213,11 @@ F1 "CTRIM" 120 -140 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 20 -80 -30 80 -30 N -P 2 0 1 20 -80 30 80 30 N -P 2 0 1 12 50 100 -50 -100 N -P 2 0 1 12 50 100 20 90 N -P 2 0 1 12 50 100 60 70 N +P 2 0 1 20 -80 -30 80 -30 N +P 2 0 1 20 -80 30 80 30 N +P 2 0 1 12 50 100 -50 -100 N +P 2 0 1 12 50 100 20 90 N +P 2 0 1 12 50 100 60 70 N X ~ 1 0 150 120 D 50 50 1 1 P X ~ 2 0 -150 120 U 50 50 1 1 P ENDDRAW @@ -238,8 +238,8 @@ $FPLIST Capacitor* $ENDFPLIST DRAW -P 2 0 1 13 -60 -20 60 -20 N -P 2 0 1 12 -60 20 60 20 N +P 2 0 1 13 -60 -20 60 -20 N +P 2 0 1 12 -60 20 60 20 N X ~ 1 0 100 80 D 50 50 1 1 P X ~ 2 0 -100 80 U 50 50 1 1 P ENDDRAW @@ -261,8 +261,8 @@ $FPLIST D_* $ENDFPLIST DRAW -P 2 0 1 6 -50 50 -50 -50 N -P 3 0 1 0 50 50 -50 0 50 -50 F +P 2 0 1 6 -50 50 -50 -50 N +P 3 0 1 0 50 50 -50 0 50 -50 F X K 1 -150 0 100 R 50 50 1 1 P X A 2 150 0 100 L 50 50 1 1 P ENDDRAW @@ -284,7 +284,7 @@ A 0 50 50 899 1 0 1 0 N 0 100 50 50 A 0 50 50 -1 -899 0 1 0 N 50 50 0 1 A 0 150 50 899 1 0 1 0 N 0 200 50 150 A 0 150 50 -1 -899 0 1 0 N 50 150 0 101 -P 2 0 1 0 -100 200 -100 -200 N +P 2 0 1 0 -100 200 -100 -200 N X 1 1 0 300 100 D 50 50 1 1 P X 2 2 0 -300 100 U 50 50 1 1 P X COMMUN 3 -200 0 100 R 50 50 1 1 I @@ -299,22 +299,22 @@ F1 "D_BRIDGE" 300 200 50 H V L CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 0 0 -300 0 -200 -100 N -P 2 0 0 0 -300 0 -200 100 N -P 2 0 0 8 -150 -250 -50 -150 N -P 2 0 0 8 -150 250 -50 150 N -P 2 0 0 0 0 -300 -100 -200 N -P 2 0 0 0 0 -300 100 -200 N -P 2 0 0 0 0 300 -100 200 N -P 2 0 0 0 0 300 100 200 N -P 2 0 0 8 150 -50 250 -150 N -P 2 0 0 8 150 50 250 150 N -P 2 0 0 0 300 0 200 -100 N -P 2 0 0 0 300 0 200 100 N -P 4 0 0 0 -250 -150 -150 -50 -100 -200 -250 -150 F -P 4 0 0 0 -150 50 -250 150 -100 200 -150 50 F -P 4 0 0 0 50 -150 150 -250 200 -100 50 -150 F -P 4 0 0 0 50 150 150 250 200 100 50 150 F +P 2 0 0 0 -300 0 -200 -100 N +P 2 0 0 0 -300 0 -200 100 N +P 2 0 0 8 -150 -250 -50 -150 N +P 2 0 0 8 -150 250 -50 150 N +P 2 0 0 0 0 -300 -100 -200 N +P 2 0 0 0 0 -300 100 -200 N +P 2 0 0 0 0 300 -100 200 N +P 2 0 0 0 0 300 100 200 N +P 2 0 0 8 150 -50 250 -150 N +P 2 0 0 8 150 50 250 150 N +P 2 0 0 0 300 0 200 -100 N +P 2 0 0 0 300 0 200 100 N +P 4 0 0 0 -250 -150 -150 -50 -100 -200 -250 -150 F +P 4 0 0 0 -150 50 -250 150 -100 200 -150 50 F +P 4 0 0 0 50 -150 150 -250 200 -100 50 -150 F +P 4 0 0 0 50 150 150 250 200 100 50 150 F X - 1 -400 0 100 R 50 50 1 1 I X ~ 2 0 -400 100 U 50 50 1 1 I X + 3 400 0 100 L 50 50 1 1 I @@ -337,8 +337,8 @@ $FPLIST *_Diode_* $ENDFPLIST DRAW -P 3 0 1 0 50 50 -50 0 50 -50 F -P 6 0 1 8 -75 25 -75 50 -50 50 -50 -50 -25 -50 -25 -25 N +P 3 0 1 0 50 50 -50 0 50 -50 F +P 6 0 1 8 -75 25 -75 50 -50 50 -50 -50 -25 -50 -25 -25 N X K 1 -150 0 100 R 50 50 1 1 P X A 2 150 0 100 L 50 50 1 1 P ENDDRAW @@ -359,10 +359,10 @@ $FPLIST *_Diode_* $ENDFPLIST DRAW -P 2 0 1 0 -30 -40 -30 40 N -P 3 0 1 0 -30 -40 -20 -40 -20 -30 N -P 3 0 1 0 -30 40 -40 40 -40 30 N -P 4 0 1 0 30 -40 -30 0 30 40 30 -40 F +P 2 0 1 0 -30 -40 -30 40 N +P 3 0 1 0 -30 -40 -20 -40 -20 -30 N +P 3 0 1 0 -30 40 -40 40 -40 30 N +P 4 0 1 0 30 -40 -30 0 30 40 30 -40 F X K 1 -100 0 70 R 50 50 1 1 P X A 2 100 0 70 L 50 50 1 1 P ENDDRAW @@ -376,16 +376,16 @@ F1 "D_Schottky_x2_ACom_AKK" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -150 50 -150 -50 -150 -50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -150 50 -170 50 -170 40 -170 40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -130 -40 -130 -50 -150 -50 -150 -50 -150 -50 N -P 6 0 1 10 -50 -50 -150 0 -50 50 -50 -50 -50 -50 -50 -50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -150 50 -150 -50 -150 -50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -150 50 -170 50 -170 40 -170 40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -130 -40 -130 -50 -150 -50 -150 -50 -150 -50 N +P 6 0 1 10 -50 -50 -150 0 -50 50 -50 -50 -50 -50 -50 -50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X A 1 0 -200 100 U 50 50 0 1 P X K 2 -300 0 150 R 50 50 0 1 P X K 3 300 0 150 L 50 50 0 1 P @@ -400,16 +400,16 @@ F1 "D_Schottky_x2_ACom_KAK" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -150 50 -150 -50 -150 -50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -150 50 -170 50 -170 40 -170 40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -130 -40 -130 -50 -150 -50 -150 -50 -150 -50 N -P 6 0 1 10 -50 -50 -150 0 -50 50 -50 -50 -50 -50 -50 -50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -150 50 -150 -50 -150 -50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -150 50 -170 50 -170 40 -170 40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -130 -40 -130 -50 -150 -50 -150 -50 -150 -50 N +P 6 0 1 10 -50 -50 -150 0 -50 50 -50 -50 -50 -50 -50 -50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X K 1 -300 0 150 R 50 50 0 1 P X A 2 0 -200 100 U 50 50 0 1 P X K 3 300 0 150 L 50 50 0 1 P @@ -424,16 +424,16 @@ F1 "D_Schottky_x2_ACom_KKA" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -150 50 -150 -50 -150 -50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -150 50 -170 50 -170 40 -170 40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -130 -40 -130 -50 -150 -50 -150 -50 -150 -50 N -P 6 0 1 10 -50 -50 -150 0 -50 50 -50 -50 -50 -50 -50 -50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -150 50 -150 -50 -150 -50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -150 50 -170 50 -170 40 -170 40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -130 -40 -130 -50 -150 -50 -150 -50 -150 -50 N +P 6 0 1 10 -50 -50 -150 0 -50 50 -50 -50 -50 -50 -50 -50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X K 1 -300 0 150 R 50 50 0 1 P X K 2 300 0 150 L 50 50 0 1 P X A 3 0 -200 100 U 50 50 0 1 P @@ -448,16 +448,16 @@ F1 "D_Schottky_x2_KCom_AAK" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 50 -50 50 50 50 50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 50 -50 70 -50 70 -40 70 -40 N -P 4 0 1 10 50 50 30 50 30 40 30 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 150 -50 50 0 150 50 150 -50 150 -50 150 -50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 50 -50 50 50 50 50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 50 -50 70 -50 70 -40 70 -40 N +P 4 0 1 10 50 50 30 50 30 40 30 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 150 -50 50 0 150 50 150 -50 150 -50 150 -50 N X A 1 -300 0 150 R 50 50 0 1 P X A 2 300 0 150 L 50 50 0 1 P X K 3 0 -200 100 U 50 50 0 1 P @@ -472,16 +472,16 @@ F1 "D_Schottky_x2_KCom_AKA" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 50 -50 50 50 50 50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 50 -50 70 -50 70 -40 70 -40 N -P 4 0 1 10 50 50 30 50 30 40 30 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 150 -50 50 0 150 50 150 -50 150 -50 150 -50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 50 -50 50 50 50 50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 50 -50 70 -50 70 -40 70 -40 N +P 4 0 1 10 50 50 30 50 30 40 30 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 150 -50 50 0 150 50 150 -50 150 -50 150 -50 N X A 1 -300 0 150 R 50 50 0 1 P X K 2 0 -200 100 U 50 50 0 1 P X A 3 300 0 150 L 50 50 0 1 P @@ -496,16 +496,16 @@ F1 "D_Schottky_x2_KCom_KAA" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 50 -50 50 50 50 50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 50 -50 70 -50 70 -40 70 -40 N -P 4 0 1 10 50 50 30 50 30 40 30 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 150 -50 50 0 150 50 150 -50 150 -50 150 -50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 50 -50 50 50 50 50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 50 -50 70 -50 70 -40 70 -40 N +P 4 0 1 10 50 50 30 50 30 40 30 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 150 -50 50 0 150 50 150 -50 150 -50 150 -50 N X K 1 0 -200 100 U 50 50 0 1 P X A 2 -300 0 150 R 50 50 0 1 P X A 3 300 0 150 L 50 50 0 1 P @@ -520,17 +520,17 @@ F1 "D_Schottky_x2_Serial_ACK" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 2 0 1 0 250 0 300 0 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 2 0 1 0 250 0 300 0 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X A 1 -300 0 150 R 50 50 0 1 P X common 2 0 -200 100 U 50 50 0 1 P X K 3 300 0 150 L 50 50 0 1 P @@ -545,17 +545,17 @@ F1 "D_Schottky_x2_Serial_AKC" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 2 0 1 0 250 0 300 0 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 2 0 1 0 250 0 300 0 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X A 1 -300 0 150 R 50 50 0 1 P X K 2 300 0 150 L 50 50 0 1 P X common 3 0 -200 100 U 50 50 0 1 P @@ -570,16 +570,16 @@ F1 "D_Schottky_x2_Serial_CAK" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X common 1 0 -200 100 U 50 50 0 1 P X A 2 -300 0 150 R 50 50 0 1 P X K 3 300 0 150 L 50 50 0 1 P @@ -594,16 +594,16 @@ F1 "D_Schottky_x2_Serial_CKA" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X common 1 0 -200 100 U 50 50 0 1 P X K 2 300 0 150 L 50 50 0 1 P X A 3 -300 0 150 R 50 50 0 1 P @@ -618,16 +618,16 @@ F1 "D_Schottky_x2_Serial_KAC" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X K 1 300 0 150 L 50 50 0 1 P X A 2 -300 0 150 R 50 50 0 1 P X common 3 0 -200 100 U 50 50 0 1 P @@ -642,17 +642,17 @@ F1 "D_Schottky_x2_Serial_KCA" 0 100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 0 -100 N -P 2 0 1 0 250 0 300 0 N -P 3 0 1 10 -50 -50 -50 50 -50 50 N -P 3 0 1 10 -50 0 50 0 50 0 N -P 3 0 1 10 150 50 150 -50 150 -50 N -P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N -P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N -P 4 0 1 10 150 50 130 50 130 40 130 40 N -P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N -P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N -P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N +P 2 0 1 0 0 0 0 -100 N +P 2 0 1 0 250 0 300 0 N +P 3 0 1 10 -50 -50 -50 50 -50 50 N +P 3 0 1 10 -50 0 50 0 50 0 N +P 3 0 1 10 150 50 150 -50 150 -50 N +P 4 0 1 10 -50 -50 -30 -50 -30 -40 -30 -40 N +P 4 0 1 10 150 -50 170 -50 170 -40 170 -40 N +P 4 0 1 10 150 50 130 50 130 40 130 40 N +P 5 0 1 10 -70 40 -70 50 -50 50 -50 50 -50 50 N +P 6 0 1 10 -150 50 -50 0 -150 -50 -150 50 -150 50 -150 50 N +P 6 0 1 10 50 50 150 0 50 -50 50 50 50 50 50 50 N X K 1 300 0 150 L 50 50 0 1 P X common 2 0 -200 100 U 50 50 0 1 P X A 3 -300 0 150 R 50 50 0 1 P @@ -674,8 +674,8 @@ $FPLIST *_Diode_* $ENDFPLIST DRAW -P 2 0 1 0 -30 -40 -30 40 N -P 4 0 1 0 30 -40 -30 0 30 40 30 -40 F +P 2 0 1 0 -30 -40 -30 40 N +P 4 0 1 0 30 -40 -30 0 30 40 30 -40 F X K 1 -100 0 70 R 50 50 1 1 P X A 2 100 0 70 L 50 50 1 1 P ENDDRAW @@ -712,8 +712,8 @@ A -50 0 50 1 1799 0 1 0 N 0 0 -100 0 A 0 0 0 0 0 0 1 0 N 0 0 0 0 A 50 0 50 1 1799 0 1 0 N 100 0 0 0 A 150 0 50 1 1799 0 1 0 N 200 0 100 0 -P 3 0 1 0 -200 -100 200 -100 200 -100 N -P 5 0 1 0 -200 -60 120 -60 200 -60 200 -60 200 -60 N +P 3 0 1 0 -200 -100 200 -100 200 -100 N +P 5 0 1 0 -200 -60 120 -60 200 -60 200 -60 200 -60 N X VI 1 -300 0 100 R 50 50 1 1 P X GND 2 0 -200 100 U 50 50 1 1 P X VO 3 300 0 100 L 50 50 1 1 P @@ -749,7 +749,7 @@ $ENDFPLIST DRAW S -50 20 -30 -20 0 1 0 F S -50 20 50 -20 0 1 0 N -P 2 0 1 0 -50 0 50 0 N +P 2 0 1 0 -50 0 50 0 N X ~ 1 -100 0 50 R 50 50 1 1 W X ~ 2 100 0 50 L 50 50 1 1 w ENDDRAW @@ -768,7 +768,7 @@ $FPLIST $ENDFPLIST DRAW S -50 20 50 -20 0 1 0 N -P 2 0 1 0 -50 0 50 0 N +P 2 0 1 0 -50 0 50 0 N X ~ 1 -100 0 50 R 50 50 1 1 P X ~ 2 100 0 50 L 50 50 1 1 P ENDDRAW @@ -782,8 +782,8 @@ F1 "HEATSINK" 0 -50 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 10 0 1 10 -25 50 -50 50 -50 150 -75 150 -75 50 -100 50 -100 150 -125 150 -125 0 -50 0 f -P 13 0 1 10 -25 50 -25 150 0 150 0 50 25 50 25 150 50 150 50 50 75 50 75 150 100 150 100 0 -50 0 f +P 10 0 1 10 -25 50 -50 50 -50 150 -75 150 -75 50 -100 50 -100 150 -125 150 -125 0 -50 0 f +P 13 0 1 10 -25 50 -25 150 0 150 0 50 25 50 25 150 50 150 50 50 75 50 75 150 100 150 100 0 -50 0 f ENDDRAW ENDDEF # @@ -907,10 +907,10 @@ $FPLIST LED_* $ENDFPLIST DRAW -P 2 0 1 0 -50 50 -50 -50 N -P 3 0 1 0 -80 -25 -125 -65 -120 -40 N -P 3 0 1 0 -65 -40 -110 -80 -105 -55 N -P 3 0 1 0 50 50 -50 0 50 -50 F +P 2 0 1 0 -50 50 -50 -50 N +P 3 0 1 0 -80 -25 -125 -65 -120 -40 N +P 3 0 1 0 -65 -40 -110 -80 -105 -55 N +P 3 0 1 0 50 50 -50 0 50 -50 F X K 1 -200 0 150 R 50 50 1 1 P X A 2 200 0 150 L 50 50 1 1 P ENDDRAW @@ -925,18 +925,18 @@ F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 0 0 180 0 1 10 f -P 2 0 1 0 -180 0 -100 0 N -P 2 0 1 0 -25 -50 -25 -150 N -P 2 0 1 0 -25 150 -25 50 N -P 2 0 1 0 150 -100 75 -100 N -P 2 0 1 0 150 100 75 100 N -P 3 0 1 0 -30 -125 -75 -165 -70 -140 N -P 3 0 1 0 -30 75 -75 35 -70 60 N -P 3 0 1 0 -15 -140 -60 -180 -55 -155 N -P 3 0 1 0 -15 60 -60 20 -55 45 N -P 3 0 1 0 75 -50 -25 -100 75 -150 F -P 3 0 1 0 75 150 -25 100 75 50 F -P 4 0 1 0 0 100 -100 100 -100 -100 0 -100 N +P 2 0 1 0 -180 0 -100 0 N +P 2 0 1 0 -25 -50 -25 -150 N +P 2 0 1 0 -25 150 -25 50 N +P 2 0 1 0 150 -100 75 -100 N +P 2 0 1 0 150 100 75 100 N +P 3 0 1 0 -30 -125 -75 -165 -70 -140 N +P 3 0 1 0 -30 75 -75 35 -70 60 N +P 3 0 1 0 -15 -140 -60 -180 -55 -155 N +P 3 0 1 0 -15 60 -60 20 -55 45 N +P 3 0 1 0 75 -50 -25 -100 75 -150 F +P 3 0 1 0 75 150 -25 100 75 50 F +P 4 0 1 0 0 100 -100 100 -100 -100 0 -100 N X A1 1 300 100 150 L 50 50 1 1 I X K 2 -300 0 120 R 50 50 1 1 I X A2 3 300 -100 150 L 50 50 1 1 I @@ -956,23 +956,23 @@ S 25 50 25 50 0 1 0 N S 25 150 25 250 0 1 0 N S 25 250 25 250 0 1 0 N S 150 300 -150 -300 0 1 0 f -P 2 0 1 0 -75 -200 -150 -200 N -P 2 0 1 0 -75 -150 -75 -250 N -P 2 0 1 0 -75 0 -150 0 N -P 2 0 1 0 -75 200 -150 200 N -P 2 0 1 0 25 0 150 0 N -P 3 0 1 0 -75 50 -75 -50 -75 -50 N -P 3 0 1 0 -75 250 -75 150 -75 150 N -P 4 0 1 0 -78 -116 -98 -116 -78 -126 -78 -126 N -P 4 0 1 0 -65 80 -85 80 -65 70 -65 70 N -P 4 0 1 0 -65 280 -85 280 -65 270 -65 270 N -P 4 0 1 0 25 200 75 200 75 -200 25 -200 N -P 5 0 1 0 -5 -150 -55 -140 -45 -130 -85 -120 -85 -120 N -P 5 0 1 0 25 -150 25 -250 -75 -200 25 -150 25 -150 F -P 6 0 1 0 -5 50 -55 60 -45 70 -85 80 -85 80 -85 80 N -P 6 0 1 0 -5 250 -55 260 -45 270 -85 280 -85 280 -85 280 N -P 6 0 1 0 25 50 25 -50 -75 0 25 50 25 50 25 50 F -P 6 0 1 0 25 250 25 150 -75 200 25 250 25 250 25 250 F +P 2 0 1 0 -75 -200 -150 -200 N +P 2 0 1 0 -75 -150 -75 -250 N +P 2 0 1 0 -75 0 -150 0 N +P 2 0 1 0 -75 200 -150 200 N +P 2 0 1 0 25 0 150 0 N +P 3 0 1 0 -75 50 -75 -50 -75 -50 N +P 3 0 1 0 -75 250 -75 150 -75 150 N +P 4 0 1 0 -78 -116 -98 -116 -78 -126 -78 -126 N +P 4 0 1 0 -65 80 -85 80 -65 70 -65 70 N +P 4 0 1 0 -65 280 -85 280 -65 270 -65 270 N +P 4 0 1 0 25 200 75 200 75 -200 25 -200 N +P 5 0 1 0 -5 -150 -55 -140 -45 -130 -85 -120 -85 -120 N +P 5 0 1 0 25 -150 25 -250 -75 -200 25 -150 25 -150 F +P 6 0 1 0 -5 50 -55 60 -45 70 -85 80 -85 80 -85 80 N +P 6 0 1 0 -5 250 -55 260 -45 270 -85 280 -85 280 -85 280 N +P 6 0 1 0 25 50 25 -50 -75 0 25 50 25 50 25 50 F +P 6 0 1 0 25 250 25 150 -75 200 25 250 25 250 25 250 F X RED_CATHODE 1 -300 200 150 R 50 50 1 1 P X COMMON_ANODE 2 300 0 150 L 50 50 1 1 P X BLUE_CATHODE 3 -300 -200 150 R 50 50 1 1 P @@ -993,23 +993,23 @@ S 75 50 75 50 0 1 0 N S 75 150 75 250 0 1 0 N S 75 250 75 250 0 1 0 N S 150 300 -150 -300 0 1 0 f -P 2 0 1 0 -25 -150 -25 -250 N -P 2 0 1 0 -25 0 -150 0 N -P 2 0 1 0 75 -200 150 -200 N -P 2 0 1 0 75 0 150 0 N -P 2 0 1 0 75 200 150 200 N -P 3 0 1 0 -25 50 -25 -50 -25 -50 N -P 3 0 1 0 -25 250 -25 150 -25 150 N -P 4 0 1 0 -28 -116 -48 -116 -28 -126 -28 -126 N -P 4 0 1 0 -25 200 -75 200 -75 -200 -25 -200 N -P 4 0 1 0 -15 80 -35 80 -15 70 -15 70 N -P 4 0 1 0 -15 280 -35 280 -15 270 -15 270 N -P 5 0 1 0 45 -150 -5 -140 5 -130 -35 -120 -35 -120 N -P 5 0 1 0 75 -150 75 -250 -25 -200 75 -150 75 -150 F -P 6 0 1 0 45 50 -5 60 5 70 -35 80 -35 80 -35 80 N -P 6 0 1 0 45 250 -5 260 5 270 -35 280 -35 280 -35 280 N -P 6 0 1 0 75 50 75 -50 -25 0 75 50 75 50 75 50 F -P 6 0 1 0 75 250 75 150 -25 200 75 250 75 250 75 250 F +P 2 0 1 0 -25 -150 -25 -250 N +P 2 0 1 0 -25 0 -150 0 N +P 2 0 1 0 75 -200 150 -200 N +P 2 0 1 0 75 0 150 0 N +P 2 0 1 0 75 200 150 200 N +P 3 0 1 0 -25 50 -25 -50 -25 -50 N +P 3 0 1 0 -25 250 -25 150 -25 150 N +P 4 0 1 0 -28 -116 -48 -116 -28 -126 -28 -126 N +P 4 0 1 0 -25 200 -75 200 -75 -200 -25 -200 N +P 4 0 1 0 -15 80 -35 80 -15 70 -15 70 N +P 4 0 1 0 -15 280 -35 280 -15 270 -15 270 N +P 5 0 1 0 45 -150 -5 -140 5 -130 -35 -120 -35 -120 N +P 5 0 1 0 75 -150 75 -250 -25 -200 75 -150 75 -150 F +P 6 0 1 0 45 50 -5 60 5 70 -35 80 -35 80 -35 80 N +P 6 0 1 0 45 250 -5 260 5 270 -35 280 -35 280 -35 280 N +P 6 0 1 0 75 50 75 -50 -25 0 75 50 75 50 75 50 F +P 6 0 1 0 75 250 75 150 -25 200 75 250 75 250 75 250 F X RED_ANODE 1 300 200 150 L 50 50 1 1 P X COMMON_CATHODE 2 -300 0 150 R 50 50 1 1 P X BLUE_ANODE 3 300 -200 150 L 50 50 1 1 P @@ -1025,32 +1025,32 @@ F1 "LED_RGB" 0 350 50 H V C CNN F2 "" 0 -50 50 H V C CNN F3 "" 0 -50 50 H V C CNN DRAW -T 0 -75 -250 50 0 0 0 B Normal 0 C C -T 0 -75 -50 50 0 0 0 G Normal 0 C C -T 0 -75 150 50 0 0 0 R Normal 0 C C +T 0 -75 -250 50 0 0 0 B Normal 0 C C +T 0 -75 -50 50 0 0 0 G Normal 0 C C +T 0 -75 150 50 0 0 0 R Normal 0 C C S 50 -50 50 50 0 1 0 N S 50 50 50 50 0 1 0 N S 50 150 50 250 0 1 0 N S 50 250 50 250 0 1 0 N S 100 300 -100 -300 0 1 0 f -P 2 0 1 0 -50 -200 -100 -200 N -P 2 0 1 0 -50 -150 -50 -250 N -P 2 0 1 0 -50 0 -100 0 N -P 2 0 1 0 -50 200 -100 200 N -P 2 0 1 0 50 -200 100 -200 N -P 2 0 1 0 50 0 100 0 N -P 2 0 1 0 50 200 100 200 N -P 3 0 1 0 -50 50 -50 -50 -50 -50 N -P 3 0 1 0 -50 250 -50 150 -50 150 N -P 4 0 1 0 -53 -116 -73 -116 -53 -126 -53 -126 N -P 4 0 1 0 -40 80 -60 80 -40 70 -40 70 N -P 4 0 1 0 -40 280 -60 280 -40 270 -40 270 N -P 5 0 1 0 20 -150 -30 -140 -20 -130 -60 -120 -60 -120 N -P 5 0 1 0 50 -150 50 -250 -50 -200 50 -150 50 -150 F -P 6 0 1 0 20 50 -30 60 -20 70 -60 80 -60 80 -60 80 N -P 6 0 1 0 20 250 -30 260 -20 270 -60 280 -60 280 -60 280 N -P 6 0 1 0 50 50 50 -50 -50 0 50 50 50 50 50 50 F -P 6 0 1 0 50 250 50 150 -50 200 50 250 50 250 50 250 F +P 2 0 1 0 -50 -200 -100 -200 N +P 2 0 1 0 -50 -150 -50 -250 N +P 2 0 1 0 -50 0 -100 0 N +P 2 0 1 0 -50 200 -100 200 N +P 2 0 1 0 50 -200 100 -200 N +P 2 0 1 0 50 0 100 0 N +P 2 0 1 0 50 200 100 200 N +P 3 0 1 0 -50 50 -50 -50 -50 -50 N +P 3 0 1 0 -50 250 -50 150 -50 150 N +P 4 0 1 0 -53 -116 -73 -116 -53 -126 -53 -126 N +P 4 0 1 0 -40 80 -60 80 -40 70 -40 70 N +P 4 0 1 0 -40 280 -60 280 -40 270 -40 270 N +P 5 0 1 0 20 -150 -30 -140 -20 -130 -60 -120 -60 -120 N +P 5 0 1 0 50 -150 50 -250 -50 -200 50 -150 50 -150 F +P 6 0 1 0 20 50 -30 60 -20 70 -60 80 -60 80 -60 80 N +P 6 0 1 0 20 250 -30 260 -20 270 -60 280 -60 280 -60 280 N +P 6 0 1 0 50 50 50 -50 -50 0 50 50 50 50 50 50 F +P 6 0 1 0 50 250 50 150 -50 200 50 250 50 250 50 250 F X RC 1 -200 200 100 R 50 50 1 1 P X GC 2 -200 0 100 R 50 50 1 1 P X BC 3 -200 -200 100 R 50 50 1 1 P @@ -1068,31 +1068,31 @@ F1 "LED_RGB_CA" 0 -350 50 H V C CNN F2 "" -45 -50 50 H V C CNN F3 "" -45 -50 50 H V C CNN DRAW -T 0 0 -120 25 0 0 0 B Normal 0 C C -T 0 0 80 25 0 0 0 G Normal 0 C C -T 0 0 280 25 0 0 0 R Normal 0 C C +T 0 0 -120 25 0 0 0 B Normal 0 C C +T 0 0 80 25 0 0 0 G Normal 0 C C +T 0 0 280 25 0 0 0 R Normal 0 C C S 30 -50 30 50 0 1 0 N S 30 50 30 50 0 1 0 N S 30 150 30 250 0 1 0 N S 30 250 30 250 0 1 0 N S 100 300 -100 -300 0 1 0 f -P 2 0 1 0 -70 -200 -100 -200 N -P 2 0 1 0 -70 -150 -70 -250 N -P 2 0 1 0 -70 0 -100 0 N -P 2 0 1 0 -70 200 -100 200 N -P 2 0 1 0 100 0 30 0 N -P 3 0 1 0 -70 50 -70 -50 -70 -50 N -P 3 0 1 0 -70 250 -70 150 -70 150 N -P 4 0 1 0 -73 -116 -93 -116 -73 -126 -73 -126 N -P 4 0 1 0 -60 80 -80 80 -60 70 -60 70 N -P 4 0 1 0 -60 280 -80 280 -60 270 -60 270 N -P 4 0 1 0 30 200 70 200 70 -200 30 -200 N -P 5 0 1 0 0 -150 -50 -140 -40 -130 -80 -120 -80 -120 N -P 5 0 1 0 30 -150 30 -250 -70 -200 30 -150 30 -150 F -P 6 0 1 0 0 50 -50 60 -40 70 -80 80 -80 80 -80 80 N -P 6 0 1 0 0 250 -50 260 -40 270 -80 280 -80 280 -80 280 N -P 6 0 1 0 30 50 30 -50 -70 0 30 50 30 50 30 50 F -P 6 0 1 0 30 250 30 150 -70 200 30 250 30 250 30 250 F +P 2 0 1 0 -70 -200 -100 -200 N +P 2 0 1 0 -70 -150 -70 -250 N +P 2 0 1 0 -70 0 -100 0 N +P 2 0 1 0 -70 200 -100 200 N +P 2 0 1 0 100 0 30 0 N +P 3 0 1 0 -70 50 -70 -50 -70 -50 N +P 3 0 1 0 -70 250 -70 150 -70 150 N +P 4 0 1 0 -73 -116 -93 -116 -73 -126 -73 -126 N +P 4 0 1 0 -60 80 -80 80 -60 70 -60 70 N +P 4 0 1 0 -60 280 -80 280 -60 270 -60 270 N +P 4 0 1 0 30 200 70 200 70 -200 30 -200 N +P 5 0 1 0 0 -150 -50 -140 -40 -130 -80 -120 -80 -120 N +P 5 0 1 0 30 -150 30 -250 -70 -200 30 -150 30 -150 F +P 6 0 1 0 0 50 -50 60 -40 70 -80 80 -80 80 -80 80 N +P 6 0 1 0 0 250 -50 260 -40 270 -80 280 -80 280 -80 280 N +P 6 0 1 0 30 50 30 -50 -70 0 30 50 30 50 30 50 F +P 6 0 1 0 30 250 30 150 -70 200 30 250 30 250 30 250 F X ~ 1 200 0 100 L 50 50 1 1 P X R 2 -200 200 100 R 50 50 1 1 P X G 3 -200 0 100 R 50 50 1 1 P @@ -1108,32 +1108,32 @@ F1 "LED_RGB_EP" 0 350 50 H V C CNN F2 "" 0 -50 50 H V C CNN F3 "" 0 -50 50 H V C CNN DRAW -T 0 -75 -250 50 0 0 0 B Normal 0 C C -T 0 -75 -50 50 0 0 0 G Normal 0 C C -T 0 -75 150 50 0 0 0 R Normal 0 C C +T 0 -75 -250 50 0 0 0 B Normal 0 C C +T 0 -75 -50 50 0 0 0 G Normal 0 C C +T 0 -75 150 50 0 0 0 R Normal 0 C C S 50 -50 50 50 0 1 0 N S 50 50 50 50 0 1 0 N S 50 150 50 250 0 1 0 N S 50 250 50 250 0 1 0 N S 100 300 -100 -300 0 1 0 f -P 2 0 1 0 -50 -200 -100 -200 N -P 2 0 1 0 -50 -150 -50 -250 N -P 2 0 1 0 -50 0 -100 0 N -P 2 0 1 0 -50 200 -100 200 N -P 2 0 1 0 50 -200 100 -200 N -P 2 0 1 0 50 200 100 200 N -P 2 0 1 0 100 0 50 0 N -P 3 0 1 0 -50 50 -50 -50 -50 -50 N -P 3 0 1 0 -50 250 -50 150 -50 150 N -P 4 0 1 0 -53 -116 -73 -116 -53 -126 -53 -126 N -P 4 0 1 0 -40 80 -60 80 -40 70 -40 70 N -P 4 0 1 0 -40 280 -60 280 -40 270 -40 270 N -P 5 0 1 0 20 -150 -30 -140 -20 -130 -60 -120 -60 -120 N -P 5 0 1 0 50 -150 50 -250 -50 -200 50 -150 50 -150 F -P 6 0 1 0 20 50 -30 60 -20 70 -60 80 -60 80 -60 80 N -P 6 0 1 0 20 250 -30 260 -20 270 -60 280 -60 280 -60 280 N -P 6 0 1 0 50 50 50 -50 -50 0 50 50 50 50 50 50 F -P 6 0 1 0 50 250 50 150 -50 200 50 250 50 250 50 250 F +P 2 0 1 0 -50 -200 -100 -200 N +P 2 0 1 0 -50 -150 -50 -250 N +P 2 0 1 0 -50 0 -100 0 N +P 2 0 1 0 -50 200 -100 200 N +P 2 0 1 0 50 -200 100 -200 N +P 2 0 1 0 50 200 100 200 N +P 2 0 1 0 100 0 50 0 N +P 3 0 1 0 -50 50 -50 -50 -50 -50 N +P 3 0 1 0 -50 250 -50 150 -50 150 N +P 4 0 1 0 -53 -116 -73 -116 -53 -126 -53 -126 N +P 4 0 1 0 -40 80 -60 80 -40 70 -40 70 N +P 4 0 1 0 -40 280 -60 280 -40 270 -40 270 N +P 5 0 1 0 20 -150 -30 -140 -20 -130 -60 -120 -60 -120 N +P 5 0 1 0 50 -150 50 -250 -50 -200 50 -150 50 -150 F +P 6 0 1 0 20 50 -30 60 -20 70 -60 80 -60 80 -60 80 N +P 6 0 1 0 20 250 -30 260 -20 270 -60 280 -60 280 -60 280 N +P 6 0 1 0 50 50 50 -50 -50 0 50 50 50 50 50 50 F +P 6 0 1 0 50 250 50 150 -50 200 50 250 50 250 50 250 F X RC 1 -200 200 100 R 50 50 1 1 P X GC 2 -200 0 100 R 50 50 1 1 P X BC 3 -200 -200 100 R 50 50 1 1 P @@ -1156,15 +1156,35 @@ $FPLIST LED_* $ENDFPLIST DRAW -P 2 0 1 0 -30 -40 -30 40 N -P 4 0 1 0 30 -40 -30 0 30 40 30 -40 F -P 5 0 1 0 0 30 -20 50 -10 50 -20 50 -20 40 N -P 5 0 1 0 20 50 0 70 10 70 0 70 0 60 N +P 2 0 1 0 -30 -40 -30 40 N +P 4 0 1 0 30 -40 -30 0 30 40 30 -40 F +P 5 0 1 0 0 30 -20 50 -10 50 -20 50 -20 40 N +P 5 0 1 0 20 50 0 70 10 70 0 70 0 60 N X K 1 -100 0 70 R 50 50 1 1 P X A 2 100 0 70 L 50 50 1 1 P ENDDRAW ENDDEF # +# MOUNTING_HOLE +# +DEF MOUNTING_HOLE MH 0 40 Y Y 1 F N +F0 "MH" 0 150 50 H V C CNN +F1 "MOUNTING_HOLE" 375 -50 50 H V C CNN +F2 "" 0 0 50 H V C CNN +F3 "" 0 0 50 H V C CNN +DRAW +S -100 100 100 0 0 1 0 N +S -50 0 50 -150 0 1 0 N +P 2 0 1 0 -50 -150 50 -125 N +P 2 0 1 0 50 -100 -50 -125 N +P 2 0 1 0 50 -75 -50 -100 N +P 2 0 1 0 50 -50 -50 -75 N +P 2 0 1 0 50 -25 -50 -50 N +P 2 0 1 0 50 0 -50 -25 N +X ~ 1 -100 -150 50 R 50 50 1 1 I +ENDDRAW +ENDDEF +# # POT # DEF POT RV 0 40 Y N 1 F N @@ -1174,7 +1194,7 @@ F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW S -100 40 100 -40 0 1 0 N -P 3 0 1 0 0 40 -20 60 20 60 F +P 3 0 1 0 0 40 -20 60 20 60 F X 1 1 -150 0 50 R 50 50 1 1 P X 2 2 0 150 100 D 50 50 1 1 P X 3 3 150 0 50 L 50 50 1 1 P @@ -1189,23 +1209,23 @@ F1 "POT_Dual" 290 -300 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -T 0 -20 -100 30 0 0 0 H Normal 0 C C -T 0 -20 300 30 0 0 0 H Normal 0 C C -T 0 -20 -300 30 0 0 0 L Normal 0 C C -T 0 -20 100 30 0 0 0 L Normal 0 C C +T 0 -20 -100 30 0 0 0 H Normal 0 C C +T 0 -20 300 30 0 0 0 H Normal 0 C C +T 0 -20 -300 30 0 0 0 L Normal 0 C C +T 0 -20 100 30 0 0 0 L Normal 0 C C S -100 250 -100 250 0 1 0 N S -100 250 -100 250 0 1 0 N S -100 250 -100 250 0 1 0 N S -100 250 -100 250 0 1 0 N S -50 -50 50 -350 0 1 10 f S -50 350 50 50 0 1 10 f -P 4 0 1 0 200 200 80 200 80 200 80 200 N -P 5 0 1 0 80 -220 80 -180 50 -200 80 -220 80 -220 N -P 5 0 1 0 150 -200 100 -180 130 -150 150 -200 150 -200 N -P 5 0 1 0 200 -200 80 -200 80 -200 80 -200 80 -200 N -P 6 0 1 0 80 180 80 220 50 200 80 180 80 180 80 180 N -P 6 0 1 0 110 160 100 150 100 -150 110 -160 110 -160 110 -160 N -P 6 0 1 0 150 200 100 180 130 150 150 200 150 200 150 200 N +P 4 0 1 0 200 200 80 200 80 200 80 200 N +P 5 0 1 0 80 -220 80 -180 50 -200 80 -220 80 -220 N +P 5 0 1 0 150 -200 100 -180 130 -150 150 -200 150 -200 N +P 5 0 1 0 200 -200 80 -200 80 -200 80 -200 80 -200 N +P 6 0 1 0 80 180 80 220 50 200 80 180 80 180 80 180 N +P 6 0 1 0 110 160 100 150 100 -150 110 -160 110 -160 110 -160 N +P 6 0 1 0 150 200 100 180 130 150 150 200 150 200 150 200 N X 1 1 -150 300 100 R 50 50 1 1 P X 2 2 300 200 100 L 50 50 1 1 P X 3 3 -150 100 100 R 50 50 1 1 P @@ -1224,15 +1244,15 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X C 1 100 200 100 D 50 50 1 1 P X E 2 100 -200 100 U 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1248,15 +1268,15 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X C 1 100 200 100 D 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X E 3 100 -200 100 U 50 50 1 1 P @@ -1272,15 +1292,15 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X E 1 100 -200 100 U 50 50 1 1 P X C 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1296,16 +1316,16 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 2 0 1 0 100 100 200 100 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 2 0 1 0 100 100 200 100 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X E 1 100 -200 100 U 50 50 1 1 P X C 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1322,15 +1342,15 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X E 1 100 -200 100 U 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X C 3 100 200 100 D 50 50 1 1 P @@ -1346,15 +1366,15 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X G 1 -200 0 210 R 50 50 1 1 I X C 2 100 200 100 D 50 50 1 1 P X E 3 100 -200 100 U 50 50 1 1 P @@ -1370,16 +1390,16 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 2 0 1 0 100 100 200 100 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 2 0 1 0 100 100 200 100 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X G 1 -200 0 210 R 50 50 1 1 I X C 2 100 200 100 D 50 50 1 1 P X E 3 100 -200 100 U 50 50 1 1 P @@ -1396,15 +1416,15 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 10 30 -40 30 -80 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 10 30 80 30 40 N -P 2 0 1 0 100 -95 30 -60 N -P 2 0 1 0 100 -35 30 0 N -P 2 0 1 0 100 95 30 60 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F -P 4 0 1 0 85 75 75 95 40 65 85 75 F +P 2 0 1 10 30 -40 30 -80 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 10 30 80 30 40 N +P 2 0 1 0 100 -95 30 -60 N +P 2 0 1 0 100 -35 30 0 N +P 2 0 1 0 100 95 30 60 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 85 -75 75 -95 40 -65 85 -75 F +P 4 0 1 0 85 75 75 95 40 65 85 75 F X G 1 -200 0 210 R 50 50 1 1 I X E 2 100 -200 100 U 50 50 1 1 P X C 3 100 200 100 D 50 50 1 1 P @@ -1420,10 +1440,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F X D 1 100 200 100 D 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X S 3 100 -200 100 U 50 50 1 1 P @@ -1439,10 +1459,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F X D 1 100 200 100 D 50 50 1 1 P X S 2 100 -200 100 U 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1458,10 +1478,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F X G 1 -200 0 210 R 50 50 1 1 I X D 2 100 200 100 D 50 50 1 1 P X S 3 100 -200 100 U 50 50 1 1 P @@ -1477,10 +1497,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F X G 1 -200 0 210 R 50 50 1 1 I X S 2 100 -200 100 U 50 50 1 1 P X D 3 100 200 100 D 50 50 1 1 P @@ -1496,10 +1516,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F X S 1 100 -200 100 U 50 50 1 1 P X D 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1515,10 +1535,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 0 0 -40 15 -40 -15 0 0 F X S 1 100 -200 100 U 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X D 3 100 200 100 D 50 50 1 1 P @@ -1534,17 +1554,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X D 1 100 200 100 D 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X S 3 100 -200 100 U 50 50 1 1 P @@ -1560,17 +1580,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X D 1 100 200 100 D 50 50 1 1 P X S 2 100 -200 100 U 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1586,17 +1606,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X G 1 -200 0 210 R 50 50 1 1 I X D 2 100 200 100 D 50 50 1 1 P X S 3 100 -200 100 U 50 50 1 1 P @@ -1612,18 +1632,18 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 2 0 1 0 100 100 200 100 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 2 0 1 0 100 100 200 100 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X G 1 -200 0 210 R 50 50 1 1 I X D 2 100 200 100 D 50 50 1 1 P X S 3 100 -200 100 U 50 50 1 1 P @@ -1640,17 +1660,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X G 1 -200 0 210 R 50 50 1 1 I X S 2 100 -200 100 U 50 50 1 1 P X D 3 100 200 100 D 50 50 1 1 P @@ -1666,17 +1686,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X S 1 100 -200 100 U 50 50 1 1 P X D 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1692,18 +1712,18 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 2 0 1 0 100 100 200 100 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 2 0 1 0 100 100 200 100 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X S 1 100 -200 100 U 50 50 1 1 P X D 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1720,17 +1740,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 40 0 80 15 80 -15 40 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 40 0 80 15 80 -15 40 0 F X S 1 100 -200 100 U 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X D 3 100 200 100 D 50 50 1 1 P @@ -1746,10 +1766,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X B 1 -200 0 225 R 50 50 1 1 I X C 2 100 200 100 D 50 50 1 1 P X E 3 100 -200 100 U 50 50 1 1 P @@ -1765,11 +1785,11 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 2 0 1 0 100 100 200 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 2 0 1 0 100 100 200 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X B 1 -200 0 225 R 50 50 1 1 I X C 2 100 200 100 D 50 50 1 1 P X E 3 100 -200 100 U 50 50 1 1 P @@ -1786,10 +1806,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X B 1 -200 0 225 R 50 50 1 1 I X E 2 100 -200 100 U 50 50 1 1 P X C 3 100 200 100 D 50 50 1 1 P @@ -1805,10 +1825,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X C 1 100 200 100 D 50 50 1 1 P X B 2 -200 0 225 R 50 50 1 1 I X E 3 100 -200 100 U 50 50 1 1 P @@ -1824,10 +1844,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X C 1 100 200 100 D 50 50 1 1 P X E 2 100 -200 100 U 50 50 1 1 P X B 3 -200 0 225 R 50 50 1 1 I @@ -1843,10 +1863,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X E 1 100 -200 100 U 50 50 1 1 P X B 2 -200 0 225 R 50 50 1 1 P X C 3 100 200 100 D 50 50 1 1 P @@ -1862,10 +1882,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X E 1 100 -200 100 U 50 50 1 1 P X C 2 100 200 100 D 50 50 1 1 P X B 3 -200 0 225 R 50 50 1 1 P @@ -1881,11 +1901,11 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 2 0 1 0 100 100 200 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F +P 2 0 1 0 25 25 100 100 N +P 2 0 1 0 100 100 200 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F X E 1 100 -200 100 U 50 50 1 1 P X C 2 100 200 100 D 50 50 1 1 P X B 3 -200 0 225 R 50 50 1 1 P @@ -1901,14 +1921,14 @@ F1 "Q_PHOTO_NPN" 150 -100 50 H V L CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 0 0 75 -75 N -P 2 0 1 0 0 0 100 100 N -P 2 0 1 0 0 100 0 -100 N -P 5 0 1 0 -30 -50 -30 -30 -50 -50 -30 -50 -30 -50 N -P 5 0 1 0 50 -100 100 -100 100 -50 50 -100 50 -100 N -P 6 0 1 0 -110 10 -70 -30 -70 -10 -30 -50 -30 -50 -30 -50 N -P 6 0 1 0 -110 80 -70 40 -70 60 -30 20 -30 20 -30 20 N -P 6 0 1 0 -30 20 -30 40 -50 20 -30 20 -30 20 -30 20 N +P 2 0 1 0 0 0 75 -75 N +P 2 0 1 0 0 0 100 100 N +P 2 0 1 0 0 100 0 -100 N +P 5 0 1 0 -30 -50 -30 -30 -50 -50 -30 -50 -30 -50 N +P 5 0 1 0 50 -100 100 -100 100 -50 50 -100 50 -100 N +P 6 0 1 0 -110 10 -70 -30 -70 -10 -30 -50 -30 -50 -30 -50 N +P 6 0 1 0 -110 80 -70 40 -70 60 -30 20 -30 20 -30 20 N +P 6 0 1 0 -30 20 -30 40 -50 20 -30 20 -30 20 -30 20 N X E 1 100 -200 100 U 50 50 1 1 P X C 3 100 200 100 D 50 50 1 1 P ENDDRAW @@ -1923,10 +1943,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F X D 1 100 200 100 D 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X S 3 100 -200 100 U 50 50 1 1 P @@ -1942,10 +1962,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F X D 1 100 200 100 D 50 50 1 1 P X S 2 100 -200 100 U 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -1961,10 +1981,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F X G 1 -200 0 210 R 50 50 1 1 I X D 2 100 200 100 D 50 50 1 1 P X S 3 100 -200 100 U 50 50 1 1 P @@ -1980,10 +2000,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F X G 1 -200 0 210 R 50 50 1 1 I X S 2 100 -200 100 U 50 50 1 1 P X D 3 100 200 100 D 50 50 1 1 P @@ -1999,10 +2019,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F X S 1 100 -200 100 U 50 50 1 1 P X D 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -2018,10 +2038,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 3 0 1 0 100 -100 100 -50 10 -50 N -P 3 0 1 0 100 100 100 55 10 55 N -P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F +P 3 0 1 10 10 75 10 -75 10 -75 N +P 3 0 1 0 100 -100 100 -50 10 -50 N +P 3 0 1 0 100 100 100 55 10 55 N +P 4 0 1 0 -45 0 -5 15 -5 -15 -45 0 F X S 1 100 -200 100 U 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X D 3 100 200 100 D 50 50 1 1 P @@ -2037,17 +2057,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X D 1 100 200 100 D 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X S 3 100 -200 100 U 50 50 1 1 P @@ -2063,17 +2083,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X D 1 100 200 100 D 50 50 1 1 P X S 2 100 -200 100 U 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -2089,17 +2109,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X G 1 -200 0 210 R 50 50 1 1 I X D 2 100 200 100 D 50 50 1 1 P X S 3 100 -200 100 U 50 50 1 1 P @@ -2115,18 +2135,18 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 2 0 1 0 200 100 100 100 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 2 0 1 0 200 100 100 100 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X G 1 -200 0 210 R 50 50 1 1 I X D 2 100 200 100 D 50 50 1 1 P X S 3 100 -200 100 U 50 50 1 1 P @@ -2143,17 +2163,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X G 1 -200 0 210 R 50 50 1 1 I X S 2 100 -200 100 U 50 50 1 1 P X D 3 100 200 100 D 50 50 1 1 P @@ -2169,17 +2189,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X S 1 100 -200 100 U 50 50 1 1 P X D 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -2195,18 +2215,18 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 2 0 1 0 200 100 100 100 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 2 0 1 0 200 100 100 100 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X S 1 100 -200 100 U 50 50 1 1 P X D 2 100 200 100 D 50 50 1 1 P X G 3 -200 0 210 R 50 50 1 1 I @@ -2223,17 +2243,17 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 30 -70 100 -70 N -P 2 0 1 10 30 -50 30 -90 N -P 2 0 1 0 30 0 100 0 N -P 2 0 1 10 30 20 30 -20 N -P 2 0 1 0 30 70 100 70 N -P 2 0 1 10 30 90 30 50 N -P 2 0 1 0 100 -70 100 -100 N -P 2 0 1 0 100 -70 100 0 N -P 2 0 1 0 100 100 100 70 N -P 3 0 1 10 10 75 10 -75 10 -75 N -P 4 0 1 0 90 0 50 -15 50 15 90 0 F +P 2 0 1 0 30 -70 100 -70 N +P 2 0 1 10 30 -50 30 -90 N +P 2 0 1 0 30 0 100 0 N +P 2 0 1 10 30 20 30 -20 N +P 2 0 1 0 30 70 100 70 N +P 2 0 1 10 30 90 30 50 N +P 2 0 1 0 100 -70 100 -100 N +P 2 0 1 0 100 -70 100 0 N +P 2 0 1 0 100 100 100 70 N +P 3 0 1 10 10 75 10 -75 10 -75 N +P 4 0 1 0 90 0 50 -15 50 15 90 0 F X S 1 100 -200 100 U 50 50 1 1 P X G 2 -200 0 210 R 50 50 1 1 I X D 3 100 200 100 D 50 50 1 1 P @@ -2249,10 +2269,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X B 1 -200 0 225 R 50 50 1 1 I X C 2 100 200 100 D 50 50 1 1 P X E 3 100 -200 100 U 50 50 1 1 P @@ -2268,11 +2288,11 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 2 0 1 0 200 100 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 2 0 1 0 200 100 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X B 1 -200 0 225 R 50 50 1 1 I X C 2 100 200 100 D 50 50 1 1 P X E 3 100 -200 100 U 50 50 1 1 P @@ -2289,10 +2309,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X B 1 -200 0 225 R 50 50 1 1 I X E 2 100 -200 100 U 50 50 1 1 P X C 3 100 200 100 D 50 50 1 1 P @@ -2308,10 +2328,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X C 1 100 200 100 D 50 50 1 1 P X B 2 -200 0 225 R 50 50 1 1 I X E 3 100 -200 100 U 50 50 1 1 P @@ -2327,10 +2347,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X C 1 100 200 100 D 50 50 1 1 P X E 2 100 -200 100 U 50 50 1 1 P X B 3 -200 0 225 R 50 50 1 1 I @@ -2346,10 +2366,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X E 1 100 -200 100 U 50 50 1 1 P X B 2 -200 0 225 R 50 50 1 1 I X C 3 100 200 100 D 50 50 1 1 P @@ -2365,10 +2385,10 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X E 1 100 -200 100 U 50 50 1 1 P X C 2 100 200 100 D 50 50 1 1 P X B 3 -200 0 225 R 50 50 1 1 I @@ -2384,11 +2404,11 @@ F2 "" 200 100 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW C 50 0 111 0 1 10 N -P 2 0 1 0 25 25 100 100 N -P 2 0 1 0 200 100 100 100 N -P 3 0 1 0 25 -25 100 -100 100 -100 N -P 3 0 1 20 25 75 25 -75 25 -75 N -P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F +P 2 0 1 0 25 25 100 100 N +P 2 0 1 0 200 100 100 100 N +P 3 0 1 0 25 -25 100 -100 100 -100 N +P 3 0 1 20 25 75 25 -75 25 -75 N +P 5 0 1 0 90 -70 70 -90 50 -50 90 -70 90 -70 F X E 1 100 -200 100 U 50 50 1 1 P X C 2 100 200 100 D 50 50 1 1 P X B 3 -200 0 225 R 50 50 1 1 I @@ -2422,30 +2442,30 @@ F1 "RF_SHIELD_ONE_PIECE" 0 100 50 H V C CNN F2 "" 0 -100 50 H V C CNN F3 "" 0 -100 50 H V C CNN DRAW -P 2 0 1 10 -600 -200 -600 -100 N -P 2 0 1 10 -600 -50 -600 50 N -P 2 0 1 10 -600 100 -600 200 N -P 2 0 1 10 -500 300 -400 300 N -P 2 0 1 10 -400 -300 -500 -300 N -P 2 0 1 10 -250 -300 -350 -300 N -P 2 0 1 10 -250 300 -350 300 N -P 2 0 1 10 -100 -300 -200 -300 N -P 2 0 1 10 -100 300 -200 300 N -P 2 0 1 10 -50 -300 50 -300 N -P 2 0 1 10 50 300 -50 300 N -P 2 0 1 10 100 -300 200 -300 N -P 2 0 1 10 200 300 100 300 N -P 2 0 1 10 250 -300 350 -300 N -P 2 0 1 10 350 300 250 300 N -P 2 0 1 10 400 -300 500 -300 N -P 2 0 1 10 500 300 400 300 N -P 2 0 1 10 600 -200 600 -100 N -P 2 0 1 10 600 -50 600 50 N -P 2 0 1 10 600 100 600 200 N -P 3 0 1 10 -600 250 -600 300 -550 300 N -P 3 0 1 10 -550 -300 -600 -300 -600 -250 N -P 3 0 1 10 550 -300 600 -300 600 -250 N -P 3 0 1 10 600 250 600 300 550 300 N +P 2 0 1 10 -600 -200 -600 -100 N +P 2 0 1 10 -600 -50 -600 50 N +P 2 0 1 10 -600 100 -600 200 N +P 2 0 1 10 -500 300 -400 300 N +P 2 0 1 10 -400 -300 -500 -300 N +P 2 0 1 10 -250 -300 -350 -300 N +P 2 0 1 10 -250 300 -350 300 N +P 2 0 1 10 -100 -300 -200 -300 N +P 2 0 1 10 -100 300 -200 300 N +P 2 0 1 10 -50 -300 50 -300 N +P 2 0 1 10 50 300 -50 300 N +P 2 0 1 10 100 -300 200 -300 N +P 2 0 1 10 200 300 100 300 N +P 2 0 1 10 250 -300 350 -300 N +P 2 0 1 10 350 300 250 300 N +P 2 0 1 10 400 -300 500 -300 N +P 2 0 1 10 500 300 400 300 N +P 2 0 1 10 600 -200 600 -100 N +P 2 0 1 10 600 -50 600 50 N +P 2 0 1 10 600 100 600 200 N +P 3 0 1 10 -600 250 -600 300 -550 300 N +P 3 0 1 10 -550 -300 -600 -300 -600 -250 N +P 3 0 1 10 550 -300 600 -300 600 -250 N +P 3 0 1 10 600 250 600 300 550 300 N X SHIELD 1 0 -400 100 U 50 50 1 1 P ENDDRAW ENDDEF @@ -2458,31 +2478,31 @@ F1 "RF_SHIELD_TWO_PIECES" 0 100 50 H V C CNN F2 "" 0 -100 50 H V C CNN F3 "" 0 -100 50 H V C CNN DRAW -P 2 0 1 10 -600 -200 -600 -100 N -P 2 0 1 10 -600 -50 -600 50 N -P 2 0 1 10 -600 100 -600 200 N -P 2 0 1 10 -500 300 -400 300 N -P 2 0 1 10 -400 -300 -500 -300 N -P 2 0 1 10 -250 -300 -350 -300 N -P 2 0 1 10 -250 300 -350 300 N -P 2 0 1 10 -100 -300 -200 -300 N -P 2 0 1 10 -100 300 -200 300 N -P 2 0 1 10 -50 -300 50 -300 N -P 2 0 1 10 50 300 -50 300 N -P 2 0 1 10 100 -300 200 -300 N -P 2 0 1 10 200 300 100 300 N -P 2 0 1 10 250 -300 350 -300 N -P 2 0 1 10 350 300 250 300 N -P 2 0 1 10 400 -300 500 -300 N -P 2 0 1 10 500 300 400 300 N -P 2 0 1 10 600 -200 600 -100 N -P 2 0 1 10 600 -50 600 50 N -P 2 0 1 10 600 100 600 200 N -P 3 0 1 10 -600 250 -600 300 -550 300 N -P 3 0 1 10 -550 -300 -600 -300 -600 -250 N -P 3 0 1 10 550 -300 600 -300 600 -250 N -P 3 0 1 10 600 250 600 300 550 300 N -P 4 0 1 10 -700 200 -700 450 700 450 700 200 N +P 2 0 1 10 -600 -200 -600 -100 N +P 2 0 1 10 -600 -50 -600 50 N +P 2 0 1 10 -600 100 -600 200 N +P 2 0 1 10 -500 300 -400 300 N +P 2 0 1 10 -400 -300 -500 -300 N +P 2 0 1 10 -250 -300 -350 -300 N +P 2 0 1 10 -250 300 -350 300 N +P 2 0 1 10 -100 -300 -200 -300 N +P 2 0 1 10 -100 300 -200 300 N +P 2 0 1 10 -50 -300 50 -300 N +P 2 0 1 10 50 300 -50 300 N +P 2 0 1 10 100 -300 200 -300 N +P 2 0 1 10 200 300 100 300 N +P 2 0 1 10 250 -300 350 -300 N +P 2 0 1 10 350 300 250 300 N +P 2 0 1 10 400 -300 500 -300 N +P 2 0 1 10 500 300 400 300 N +P 2 0 1 10 600 -200 600 -100 N +P 2 0 1 10 600 -50 600 50 N +P 2 0 1 10 600 100 600 200 N +P 3 0 1 10 -600 250 -600 300 -550 300 N +P 3 0 1 10 -550 -300 -600 -300 -600 -250 N +P 3 0 1 10 550 -300 600 -300 600 -250 N +P 3 0 1 10 600 250 600 300 550 300 N +P 4 0 1 10 -700 200 -700 450 700 450 700 200 N X SHIELD 1 0 -400 100 U 50 50 1 1 P ENDDRAW ENDDEF @@ -2498,13 +2518,13 @@ DRAW A 0 0 120 -899 899 0 1 10 N 0 -120 0 120 C 0 0 75 0 1 10 N S -200 200 200 -200 0 1 10 f -P 2 0 1 10 -10 -70 -10 70 N -P 2 0 1 10 0 -120 20 -140 N -P 2 0 1 10 0 -120 20 -100 N -P 2 0 1 10 0 -70 0 70 N -P 2 0 1 10 0 120 20 100 N -P 2 0 1 10 10 70 10 -70 N -P 2 0 1 10 20 140 0 120 N +P 2 0 1 10 -10 -70 -10 70 N +P 2 0 1 10 0 -120 20 -140 N +P 2 0 1 10 0 -120 20 -100 N +P 2 0 1 10 0 -70 0 70 N +P 2 0 1 10 0 120 20 100 N +P 2 0 1 10 10 70 10 -70 N +P 2 0 1 10 20 140 0 120 N X A 1 -300 100 100 R 50 50 1 1 I X C 2 -300 0 100 R 50 50 1 1 I X B 3 -300 -100 100 R 50 50 1 1 I @@ -2523,16 +2543,16 @@ A 0 0 120 -899 899 0 1 10 N 0 -120 0 120 C 0 0 75 0 1 10 N C 160 40 5 0 1 10 N S -200 200 200 -200 0 1 10 f -P 2 0 1 10 -10 -70 -10 70 N -P 2 0 1 10 0 -120 20 -140 N -P 2 0 1 10 0 -120 20 -100 N -P 2 0 1 10 0 -70 0 70 N -P 2 0 1 10 0 120 20 100 N -P 2 0 1 10 10 70 10 -70 N -P 2 0 1 10 20 140 0 120 N -P 2 0 1 10 160 40 180 -35 N -P 3 0 1 10 200 -100 160 -100 160 -40 N -P 3 0 1 10 200 100 160 100 160 40 N +P 2 0 1 10 -10 -70 -10 70 N +P 2 0 1 10 0 -120 20 -140 N +P 2 0 1 10 0 -120 20 -100 N +P 2 0 1 10 0 -70 0 70 N +P 2 0 1 10 0 120 20 100 N +P 2 0 1 10 10 70 10 -70 N +P 2 0 1 10 20 140 0 120 N +P 2 0 1 10 160 40 180 -35 N +P 3 0 1 10 200 -100 160 -100 160 -40 N +P 3 0 1 10 200 100 160 100 160 40 N X A 1 -300 100 100 R 50 50 1 1 I X C 2 -300 0 100 R 50 50 1 1 I X B 3 -300 -100 100 R 50 50 1 1 I @@ -2549,7 +2569,7 @@ F1 "RR8" 30 0 50 V V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 6 0 1 0 -50 -400 -50 500 50 500 100 450 100 -400 -50 -400 N +P 6 0 1 0 -50 -400 -50 500 50 500 100 450 100 -400 -50 -400 N X COM 1 -350 450 300 R 50 50 1 1 P I X 2 2 -350 350 300 R 50 50 1 1 P I X 3 3 -350 250 300 R 50 50 1 1 P I @@ -2570,7 +2590,7 @@ F1 "RR9" 30 0 50 V V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 6 0 1 0 -50 -450 -50 550 50 550 100 500 100 -450 -50 -450 N +P 6 0 1 0 -50 -450 -50 550 50 550 100 500 100 -450 -50 -450 N X COM 1 -350 500 300 R 50 50 1 1 P I X 2 2 -350 400 300 R 50 50 1 1 P I X 3 3 -350 300 300 R 50 50 1 1 P I @@ -2593,8 +2613,8 @@ F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW S -40 150 40 -150 0 1 0 N -P 2 0 1 0 -70 -120 80 120 N -P 3 0 1 0 80 90 80 120 50 110 F +P 2 0 1 0 -70 -120 80 120 N +P 3 0 1 0 80 90 80 120 50 110 F X ~ 1 0 250 100 D 50 50 1 1 P X ~ 2 0 -250 100 U 50 50 1 1 P ENDDRAW @@ -2608,11 +2628,11 @@ F1 "R_PACK4" 0 -50 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 5 0 1 0 -100 400 -100 0 100 0 100 400 -100 400 N -P 7 0 1 0 -100 50 -80 70 -40 30 0 70 40 30 80 70 100 50 N -P 7 0 1 0 -100 150 -80 170 -40 130 0 170 40 130 80 170 100 150 N -P 7 0 1 0 -100 250 -80 270 -40 230 0 270 40 230 80 270 100 250 N -P 7 0 1 0 -100 350 -80 370 -40 330 0 370 40 330 80 370 100 350 N +P 5 0 1 0 -100 400 -100 0 100 0 100 400 -100 400 N +P 7 0 1 0 -100 50 -80 70 -40 30 0 70 40 30 80 70 100 50 N +P 7 0 1 0 -100 150 -80 170 -40 130 0 170 40 130 80 170 100 150 N +P 7 0 1 0 -100 250 -80 270 -40 230 0 270 40 230 80 270 100 250 N +P 7 0 1 0 -100 350 -80 370 -40 330 0 370 40 330 80 370 100 350 N X P1 1 -200 350 100 R 50 50 1 1 P X P2 2 -200 250 100 R 50 50 1 1 P X P3 3 -200 150 100 R 50 50 1 1 P @@ -2633,14 +2653,14 @@ F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW S -100 400 100 -400 0 1 0 N -P 7 0 1 0 -100 -350 -80 -330 -40 -370 0 -330 40 -370 80 -330 100 -350 N -P 7 0 1 0 -100 -250 -80 -230 -40 -270 0 -230 40 -270 80 -230 100 -250 N -P 7 0 1 0 -100 -150 -80 -130 -40 -170 0 -130 40 -170 80 -130 100 -150 N -P 7 0 1 0 -100 -50 -80 -30 -40 -70 0 -30 40 -70 80 -30 100 -50 N -P 7 0 1 0 -100 50 -80 70 -40 30 0 70 40 30 80 70 100 50 N -P 7 0 1 0 -100 150 -80 170 -40 130 0 170 40 130 80 170 100 150 N -P 7 0 1 0 -100 250 -80 270 -40 230 0 270 40 230 80 270 100 250 N -P 7 0 1 0 -100 350 -80 370 -40 330 0 370 40 330 80 370 100 350 N +P 7 0 1 0 -100 -350 -80 -330 -40 -370 0 -330 40 -370 80 -330 100 -350 N +P 7 0 1 0 -100 -250 -80 -230 -40 -270 0 -230 40 -270 80 -230 100 -250 N +P 7 0 1 0 -100 -150 -80 -130 -40 -170 0 -130 40 -170 80 -130 100 -150 N +P 7 0 1 0 -100 -50 -80 -30 -40 -70 0 -30 40 -70 80 -30 100 -50 N +P 7 0 1 0 -100 50 -80 70 -40 30 0 70 40 30 80 70 100 50 N +P 7 0 1 0 -100 150 -80 170 -40 130 0 170 40 130 80 170 100 150 N +P 7 0 1 0 -100 250 -80 270 -40 230 0 270 40 230 80 270 100 250 N +P 7 0 1 0 -100 350 -80 370 -40 330 0 370 40 330 80 370 100 350 N X P1 1 -200 350 100 R 50 50 1 1 P X P2 2 -200 250 100 R 50 50 1 1 P X P3 3 -200 150 100 R 50 50 1 1 P @@ -2674,33 +2694,33 @@ $ENDFPLIST DRAW C 0 0 180 0 1 0 N S -40 150 40 -150 0 1 12 N -P 2 0 1 0 -180 90 -280 190 N -P 2 0 1 0 -180 90 -210 90 N -P 2 0 1 0 -180 90 -180 120 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -240 240 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -170 140 N -P 2 0 1 0 -140 140 -140 170 N -P 2 0 1 0 -140 140 -140 170 N -P 2 0 1 0 -140 140 -140 170 N -P 2 0 1 0 -140 140 -140 170 N -P 2 0 1 0 -140 140 -140 170 N -P 2 0 1 0 -140 140 -140 170 N -P 2 0 1 0 -140 140 -140 170 N -P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -180 90 -280 190 N +P 2 0 1 0 -180 90 -210 90 N +P 2 0 1 0 -180 90 -180 120 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -240 240 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -170 140 N +P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -140 140 -140 170 N +P 2 0 1 0 -140 140 -140 170 N X ~ 1 0 250 100 D 50 50 1 1 P X ~ 2 0 -250 100 U 50 50 1 1 P ENDDRAW @@ -2732,10 +2752,10 @@ F1 "SCHDPAK" 0 -100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 100 0 50 0 N -P 2 0 1 0 100 50 100 -50 N -P 3 0 1 0 50 50 -50 0 50 -50 F -P 6 0 1 0 -75 25 -75 50 -50 50 -50 -50 -25 -50 -25 -25 N +P 2 0 1 0 100 0 50 0 N +P 2 0 1 0 100 50 100 -50 N +P 3 0 1 0 50 50 -50 0 50 -50 F +P 6 0 1 0 -75 25 -75 50 -50 50 -50 -50 -25 -50 -25 -25 N X A 1 200 -50 100 L 50 50 1 1 P X K 2 -200 0 150 R 50 50 1 1 P X A 3 200 50 100 L 50 50 1 1 I @@ -2750,8 +2770,8 @@ F1 "SPEAKER" -100 -250 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 4 0 0 0 100 150 250 300 250 -300 100 -150 N -P 5 0 0 0 -100 150 100 150 100 -150 -100 -150 -100 150 F +P 4 0 0 0 100 150 250 300 250 -300 100 -150 N +P 5 0 0 0 -100 150 100 150 100 -150 -100 -150 -100 150 F X 1 1 -300 100 200 R 50 50 1 1 I X 2 2 -300 -100 200 R 50 50 1 1 I ENDDRAW @@ -2767,7 +2787,7 @@ F3 "" 0 0 50 H V C CNN DRAW C 0 0 150 0 1 0 N S 300 300 -300 -300 0 1 0 f -P 11 0 1 0 -10 -100 -10 80 -30 60 -50 60 0 110 50 60 30 60 10 80 10 -100 -10 -100 -10 -100 N +P 11 0 1 0 -10 -100 -10 80 -30 60 -50 60 0 110 50 60 30 60 10 80 10 -100 -10 -100 -10 -100 N X CM 1 500 250 200 L 50 50 1 1 P X D0 2 500 100 200 L 50 50 1 1 P X D1 3 500 0 200 L 50 50 1 1 P @@ -2788,9 +2808,9 @@ C -150 -200 50 0 0 0 N C -150 200 50 0 0 0 N C 150 -200 50 0 0 0 N C 150 200 50 0 0 0 N -P 2 0 0 0 -100 -200 100 -100 N -P 2 0 0 0 -100 200 100 300 N -P 2 0 0 0 0 250 0 -150 N +P 2 0 0 0 -100 -200 100 -100 N +P 2 0 0 0 -100 200 100 300 N +P 2 0 0 0 0 250 0 -150 N X 1 1 -300 -200 100 R 50 50 1 1 I X 2 2 300 -200 100 L 50 50 1 1 I X 3 3 -300 200 100 R 50 50 1 1 I @@ -2810,9 +2830,9 @@ C -80 -100 20 0 0 0 f C -80 100 20 0 0 0 f C 80 -100 20 0 0 0 f C 80 100 20 0 0 0 f -P 2 0 0 0 -60 -100 50 -40 N -P 2 0 0 0 -60 100 50 160 N -P 2 0 0 0 0 120 0 -60 N +P 2 0 0 0 -60 -100 50 -40 N +P 2 0 0 0 -60 100 50 160 N +P 2 0 0 0 0 120 0 -60 N X 1 1 -200 -100 100 R 50 50 1 1 I X 2 2 200 -100 100 L 50 50 1 1 I X 3 3 -200 100 100 R 50 50 1 1 I @@ -2829,7 +2849,7 @@ F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW S -170 50 170 60 0 1 0 N -P 4 0 1 0 -40 60 -30 90 30 90 40 60 N +P 4 0 1 0 -40 60 -30 90 30 90 40 60 N X 1 1 -300 0 200 R 50 50 0 1 P I X 2 2 300 0 200 L 50 50 0 1 P I ENDDRAW @@ -2845,10 +2865,10 @@ F3 "" 0 0 50 H V C CNN DRAW C -60 60 10 0 1 0 N C 60 -60 10 0 1 0 N -P 3 0 1 0 -100 100 -60 60 -60 60 N -P 4 0 1 0 60 -60 100 -100 100 -100 100 -100 N -P 6 0 1 0 -10 60 10 70 70 10 60 -10 60 -10 60 -10 N -P 7 0 1 0 -50 80 80 -50 90 -40 -40 90 -50 80 -50 80 -50 80 N +P 3 0 1 0 -100 100 -60 60 -60 60 N +P 4 0 1 0 60 -60 100 -100 100 -100 100 -100 N +P 6 0 1 0 -10 60 10 70 70 10 60 -10 60 -10 60 -10 N +P 7 0 1 0 -50 80 80 -50 90 -40 -40 90 -50 80 -50 80 -50 80 N X 1 1 -100 100 0 R 50 50 0 1 P X 2 2 100 -100 0 L 50 50 0 1 P ENDDRAW @@ -2864,9 +2884,9 @@ F3 "" 0 200 50 H V C CNN DRAW C -90 0 10 0 1 0 N C 90 0 10 0 1 0 N -P 2 0 1 0 -110 30 110 30 N -P 4 0 1 0 -110 30 -110 40 110 40 110 30 N -P 4 0 1 0 -50 40 -40 60 40 60 50 40 N +P 2 0 1 0 -110 30 110 30 N +P 4 0 1 0 -110 30 -110 40 110 40 110 30 N +P 4 0 1 0 -50 40 -40 60 40 60 50 40 N X 1 1 -150 0 50 R 50 50 0 1 P X 2 2 150 0 50 L 50 50 0 1 P ENDDRAW @@ -2888,7 +2908,7 @@ C -125 0 25 0 1 0 N C 125 -100 25 0 1 0 N C 125 0 25 0 1 0 N C 125 100 25 0 1 0 N -P 2 0 1 0 -100 0 100 100 N +P 2 0 1 0 -100 0 100 100 N X 1 1 300 100 150 L 50 50 1 1 P X 2 2 300 0 150 L 50 50 1 1 P X 3 3 -300 0 150 R 50 50 1 1 P @@ -2912,7 +2932,7 @@ C -85 0 15 0 1 0 f C 85 -100 15 0 1 0 f C 85 0 15 0 1 0 f C 85 100 15 0 1 0 f -P 2 0 1 0 -70 0 60 90 N +P 2 0 1 0 -70 0 60 90 N X 1 1 200 100 100 L 50 50 1 1 P X 2 2 200 0 100 L 50 50 1 1 P X 3 3 -200 0 100 R 50 50 1 1 P @@ -2931,7 +2951,7 @@ DRAW C -150 0 50 0 0 0 N C 150 -100 50 0 0 0 N C 150 100 50 0 1 0 N -P 2 0 1 0 -100 0 150 50 N +P 2 0 1 0 -100 0 150 50 N X 1 1 500 100 300 L 50 50 1 1 P X 2 2 -500 0 300 R 50 50 1 1 P X 3 3 500 -100 300 L 50 50 1 1 P @@ -2948,7 +2968,7 @@ F3 "" 0 0 50 H V C CNN DRAW C -80 0 20 0 0 0 f C 80 -100 20 0 0 0 f -P 2 0 0 0 -60 0 70 40 N +P 2 0 0 0 -60 0 70 40 N C 80 100 20 0 1 0 f C 90 0 20 0 1 0 f X 1 1 200 100 100 L 50 50 1 1 P @@ -2968,7 +2988,7 @@ DRAW C -80 0 14 0 0 0 f C 80 -100 14 0 0 0 f C 80 100 14 0 1 0 f -P 2 0 1 0 -60 0 110 60 N +P 2 0 1 0 -60 0 110 60 N X 1 1 200 100 100 L 50 50 1 1 P X 2 2 -200 0 100 R 50 50 1 1 P X 3 3 200 -100 100 L 50 50 1 1 P @@ -2986,7 +3006,7 @@ DRAW C -80 0 20 0 0 0 f C 80 -100 20 0 0 0 f C 80 100 20 0 1 0 f -P 2 0 1 0 -60 0 90 60 N +P 2 0 1 0 -60 0 90 60 N X A 1 200 100 100 L 50 50 1 1 P X B 2 -200 0 100 R 50 50 1 1 P X C 3 200 -100 100 L 50 50 1 1 P @@ -3006,7 +3026,7 @@ F3 "" 0 0 50 H V C CNN DRAW C -150 0 50 0 0 0 N C 150 0 50 0 0 0 N -P 2 0 0 0 -100 0 100 100 N +P 2 0 0 0 -100 0 100 100 N X 1 1 -500 0 300 R 50 50 1 1 I X 2 2 500 0 300 L 50 50 1 1 I ENDDRAW @@ -3022,7 +3042,7 @@ F3 "" 0 0 50 H V C CNN DRAW C -80 0 20 0 0 0 f C 80 0 20 0 0 0 f -P 2 0 0 0 -60 0 60 70 N +P 2 0 0 0 -60 0 60 70 N X 1 1 -200 0 100 R 50 50 1 1 I X 2 2 200 0 100 L 50 50 1 1 I ENDDRAW @@ -3036,7 +3056,7 @@ F1 "TEST" 0 250 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 6 0 1 0 0 200 -50 150 0 100 50 150 0 200 0 200 N +P 6 0 1 0 0 200 -50 150 0 100 50 150 0 200 0 200 N X ~ 1 0 0 100 U 50 50 1 1 P ENDDRAW ENDDEF @@ -3055,7 +3075,7 @@ $FPLIST $ENDFPLIST DRAW S -40 100 40 -100 0 1 8 N -P 5 0 1 10 -75 125 -75 75 75 -75 75 -125 75 -125 N +P 5 0 1 10 -75 125 -75 75 75 -75 75 -125 75 -125 N X ~ 1 0 200 100 D 50 50 1 1 P X ~ 2 0 -200 100 U 50 50 1 1 P ENDDRAW @@ -3069,9 +3089,9 @@ F1 "THYRISTOR" 0 -100 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 -50 50 -50 -50 N -P 3 0 1 0 50 50 -50 0 50 -50 F -P 4 0 1 0 -50 0 -100 50 -100 50 -100 50 N +P 2 0 1 0 -50 50 -50 -50 N +P 3 0 1 0 50 50 -50 0 50 -50 F +P 4 0 1 0 -50 0 -100 50 -100 50 -100 50 N X K 1 -200 0 150 R 50 50 1 1 P X A 2 200 0 150 L 50 50 1 1 P X G 3 -100 200 150 D 50 50 1 1 P @@ -3102,8 +3122,8 @@ A 100 150 50 899 -1799 0 1 0 N 100 200 51 150 A 100 150 50 1799 -899 0 1 0 N 51 150 100 101 A 101 -150 50 910 -1799 0 1 0 N 101 -100 52 -150 A 101 -150 50 -912 -1799 0 1 0 N 101 -199 52 -150 -P 2 0 1 0 -25 200 -25 -200 N -P 2 0 1 0 25 -200 25 200 N +P 2 0 1 0 -25 200 -25 -200 N +P 2 0 1 0 25 -200 25 200 N X AA 1 -400 200 300 R 50 50 1 1 P X AB 2 -400 -200 300 R 50 50 1 1 P X SA 3 400 -200 300 L 50 50 1 1 P @@ -3135,8 +3155,8 @@ A 100 150 50 899 -1799 0 1 0 N 100 200 51 150 A 100 150 50 1799 -899 0 1 0 N 51 150 100 101 A 101 -150 50 910 -1799 0 1 0 N 101 -100 52 -150 A 101 -150 50 -912 -1799 0 1 0 N 101 -199 52 -150 -P 2 0 1 0 -25 200 -25 -200 N -P 2 0 1 0 25 -200 25 200 N +P 2 0 1 0 -25 200 -25 -200 N +P 2 0 1 0 25 -200 25 200 N X AA 1 -300 200 200 R 50 50 1 1 P X AB 4 -300 -200 200 R 50 50 1 1 P X SA 5 300 -200 200 L 50 50 1 1 P @@ -3172,8 +3192,8 @@ A 100 250 50 899 -1799 0 1 0 N 100 300 51 250 A 100 250 50 1799 -899 0 1 0 N 51 250 100 201 A 100 350 50 899 -1799 0 1 0 N 100 400 51 350 A 100 350 50 1799 -899 0 1 0 N 51 350 100 301 -P 2 0 1 0 -20 -400 -20 400 N -P 2 0 1 0 20 400 20 -400 N +P 2 0 1 0 -20 -400 -20 400 N +P 2 0 1 0 20 400 20 -400 N X AA 1 -400 200 300 R 50 50 1 1 P X AB 2 -400 -200 300 R 50 50 1 1 P X SA 3 400 400 300 L 50 50 1 1 P @@ -3207,9 +3227,9 @@ A 100 150 50 899 -1799 0 1 0 N 100 200 51 150 A 100 150 50 1799 -899 0 1 0 N 51 150 100 101 A 101 -150 50 910 -1799 0 1 0 N 101 -100 52 -150 A 101 -150 50 -912 -1799 0 1 0 N 101 -199 52 -150 -P 2 0 1 0 -25 200 -25 -200 N -P 2 0 1 0 25 -200 25 200 N -P 9 0 1 10 -150 250 -100 300 100 300 150 250 150 -250 100 -300 -100 -300 -150 -250 -150 250 f +P 2 0 1 0 -25 200 -25 -200 N +P 2 0 1 0 25 -200 25 200 N +P 9 0 1 10 -150 250 -100 300 100 300 150 250 150 -250 100 -300 -100 -300 -150 -250 -150 250 f X ~ 0 0 -400 100 U 50 50 1 1 I X AA 1 -400 200 300 R 50 50 1 1 P X AB 2 -400 -200 300 R 50 50 1 1 P @@ -3242,8 +3262,8 @@ A 100 150 50 899 -1799 0 1 0 N 100 200 51 150 A 100 150 50 1799 -899 0 1 0 N 51 150 100 101 A 101 -150 50 910 -1799 0 1 0 N 101 -100 52 -150 A 101 -150 50 -912 -1799 0 1 0 N 101 -199 52 -150 -P 2 0 1 0 -25 200 -25 -200 N -P 2 0 1 0 25 -200 25 200 N +P 2 0 1 0 -25 200 -25 -200 N +P 2 0 1 0 25 -200 25 200 N X PR1 1 -400 200 300 R 50 50 1 1 P X PM 2 -400 0 300 R 50 50 1 1 P X PR2 3 -400 -200 300 R 50 50 1 1 P @@ -3280,8 +3300,8 @@ A 100 250 50 899 -1799 0 1 0 N 100 300 51 250 A 100 250 50 1799 -899 0 1 0 N 51 250 100 201 A 100 350 50 899 -1799 0 1 0 N 100 400 51 350 A 100 350 50 1799 -899 0 1 0 N 51 350 100 301 -P 2 0 1 0 -20 -400 -20 400 N -P 2 0 1 0 20 400 20 -400 N +P 2 0 1 0 -20 -400 -20 400 N +P 2 0 1 0 20 400 20 -400 N X IN+ 1 -400 200 300 R 50 50 1 1 P X PM 2 -400 0 300 R 50 50 1 1 P X IN- 3 -400 -200 300 R 50 50 1 1 P @@ -3300,11 +3320,11 @@ F1 "TRIAC" -300 -250 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 -300 -50 0 -50 N -P 2 0 1 0 -150 -50 -300 -200 N -P 2 0 1 0 0 200 300 200 N -P 3 0 1 0 -300 200 -150 -50 0 200 F -P 3 0 1 0 150 200 0 -50 300 -50 F +P 2 0 1 0 -300 -50 0 -50 N +P 2 0 1 0 -150 -50 -300 -200 N +P 2 0 1 0 0 200 300 200 N +P 3 0 1 0 -300 200 -150 -50 0 200 F +P 3 0 1 0 150 200 0 -50 300 -50 F X ~ 1 0 -250 200 U 50 50 1 1 P X ~ 2 0 400 200 D 50 50 1 1 P X ~ 3 -500 -200 200 R 50 50 1 1 I @@ -3319,9 +3339,9 @@ F1 "TVS" 0 -150 50 H V C CNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 12 0 50 0 -50 N -P 4 0 1 0 -100 50 -100 -50 0 0 -100 50 F -P 4 0 1 0 0 0 100 50 100 -50 0 0 F +P 2 0 1 12 0 50 0 -50 N +P 4 0 1 0 -100 50 -100 -50 0 0 -100 50 F +P 4 0 1 0 0 0 100 50 100 -50 0 0 F X ~ 1 -300 0 300 R 50 50 1 1 P X ~ 2 300 0 300 L 50 50 1 1 P ENDDRAW @@ -3335,13 +3355,13 @@ F1 "VARICAP" 0 -120 50 H V C TNN F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW -P 2 0 1 0 -150 0 -61 0 N -P 2 0 1 0 -120 -100 70 70 N -P 2 0 1 0 50 -90 50 90 N -P 2 0 1 0 109 0 150 0 N -P 2 0 1 0 110 -90 110 90 N -P 3 0 1 0 -60 90 -60 -90 50 0 F -P 3 0 1 0 90 90 50 90 85 50 F +P 2 0 1 0 -150 0 -61 0 N +P 2 0 1 0 -120 -100 70 70 N +P 2 0 1 0 50 -90 50 90 N +P 2 0 1 0 109 0 150 0 N +P 2 0 1 0 110 -90 110 90 N +P 3 0 1 0 -60 90 -60 -90 50 0 F +P 3 0 1 0 90 90 50 90 85 50 F X ANODE 1 -250 0 100 R 50 50 1 1 P X CATHODE 2 250 0 100 L 50 50 1 1 P ENDDRAW @@ -3356,7 +3376,7 @@ F2 "" 0 0 50 H V C CNN F3 "" 0 0 50 H V C CNN DRAW S -40 150 40 -150 0 1 10 N -P 4 0 1 10 -60 -60 60 60 60 100 60 100 N +P 4 0 1 10 -60 -60 60 60 60 100 60 100 N X ~ 1 0 250 100 D 50 50 1 1 P X ~ 2 0 -250 100 U 50 50 1 1 P ENDDRAW @@ -3375,8 +3395,8 @@ $FPLIST SM* $ENDFPLIST DRAW -P 5 0 1 8 -70 50 -50 30 -50 -30 -30 -50 -30 -50 N -P 5 0 1 0 -50 0 50 50 50 -50 -50 0 -50 0 F +P 5 0 1 8 -70 50 -50 30 -50 -30 -30 -50 -30 -50 N +P 5 0 1 0 -50 0 50 50 50 -50 -50 0 -50 0 F X K 1 -200 0 150 R 50 50 1 1 P X A 2 200 0 150 L 50 50 1 1 P ENDDRAW @@ -3395,8 +3415,8 @@ $FPLIST SM* $ENDFPLIST DRAW -P 4 0 1 8 -60 40 -40 20 -40 -20 -20 -40 N -P 4 0 1 0 40 40 -40 0 40 -40 40 40 F +P 4 0 1 8 -60 40 -40 20 -40 -20 -20 -40 N +P 4 0 1 0 40 40 -40 0 40 -40 40 40 F X K 1 -100 0 100 R 50 50 1 1 P X A 2 100 0 100 L 50 50 1 1 P ENDDRAW diff --git a/template/raspberrypi-gpio-40pin/meta/brd.png b/template/raspberrypi-gpio-40pin/meta/brd.png new file mode 100755 index 0000000000000000000000000000000000000000..48e393fcc01b1b078bc9bbfd2e77815cd7e9dcc5 GIT binary patch literal 46690 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 cDPfCRq+FSqt6pKkj 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 literal 0 HcmV?d00001 diff --git a/template/raspberrypi-gpio-40pin/meta/info.html b/template/raspberrypi-gpio-40pin/meta/info.html new file mode 100755 index 00000000..90b26c58 --- /dev/null +++ b/template/raspberrypi-gpio-40pin/meta/info.html @@ -0,0 +1,34 @@ + + +Raspberry Pi - 40 pin Expansion Board + + +

Raspberry Pi

+

40-pin Expansion Board

+ +

This project template is the basis of an expansion board for the +Raspberry Pi ARM +boards that have the 40-pin header. +
This includes the following models to date:
+

    +
  • Pi 1 A+
  • +
  • Pi 1 B+
  • +
  • Pi 2 Model B
  • +
  • Pi 3 Model B
  • +
+

+ +

This base project includes a PCB edge defined as the same size as the +Raspberry Pi 3 PCB with the connectors placed correctly to align the two boards. +All IO present on the Raspberry-Pi board is connected to the project through the +0.1" expansion headers. Cutouts have also been defined for the camera and the +display connctors.

+ +

The board outline looks like the following:

+ +

+ +

(c)2016 Ashton Johnson
+(c)2016 Kicad Developers

+ + diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp new file mode 100644 index 00000000..ce0a33b0 --- /dev/null +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp @@ -0,0 +1,10 @@ +Cmp-Mod V01 Created by CvPcb (2012-11-15 BZR 3804)-testing date = 15/11/2012 21:23:25 + +BeginCmp +TimeStamp = /50A55ABA; +Reference = P1; +ValeurCmp = CONN_13X2; +IdModule = pin_array_13x2; +EndCmp + +EndListe diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb new file mode 100644 index 00000000..e5dca451 --- /dev/null +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb @@ -0,0 +1,407 @@ +(kicad_pcb (version 4) (host pcbnew 4.0.2+dfsg1-stable) + + (general + (links 10) + (no_connects 10) + (area 199.94 92.005 287.050001 167.46) + (thickness 1.6) + (drawings 39) + (tracks 0) + (zones 0) + (modules 5) + (nets 35) + ) + + (page A3) + (title_block + (date "15 nov 2012") + ) + + (layers + (0 F.Cu signal) + (31 B.Cu signal) + (32 B.Adhes user) + (33 F.Adhes user) + (34 B.Paste user) + (35 F.Paste user) + (36 B.SilkS user) + (37 F.SilkS user) + (38 B.Mask user) + (39 F.Mask user) + (40 Dwgs.User user) + (41 Cmts.User user) + (42 Eco1.User user) + (43 Eco2.User user) + (44 Edge.Cuts user) + ) + + (setup + (last_trace_width 0.2) + (trace_clearance 0.2) + (zone_clearance 0.508) + (zone_45_only no) + (trace_min 0.1524) + (segment_width 0.1) + (edge_width 0.1) + (via_size 0.9) + (via_drill 0.6) + (via_min_size 0.8) + (via_min_drill 0.5) + (uvia_size 0.5) + (uvia_drill 0.1) + (uvias_allowed no) + (uvia_min_size 0.5) + (uvia_min_drill 0.1) + (pcb_text_width 0.3) + (pcb_text_size 1 1) + (mod_edge_width 0.15) + (mod_text_size 1 1) + (mod_text_width 0.15) + (pad_size 2.5 2.5) + (pad_drill 2.5) + (pad_to_mask_clearance 0) + (aux_axis_origin 200 150) + (grid_origin 200 150) + (visible_elements 7FFFFFFF) + (pcbplotparams + (layerselection 0x00030_80000001) + (usegerberextensions true) + (excludeedgelayer true) + (linewidth 0.150000) + (plotframeref false) + (viasonmask false) + (mode 1) + (useauxorigin false) + (hpglpennumber 1) + (hpglpenspeed 20) + (hpglpendiameter 15) + (hpglpenoverlay 2) + (psnegative false) + (psa4output false) + (plotreference true) + (plotvalue true) + (plotinvisibletext false) + (padsonsilk false) + (subtractmaskfromsilk false) + (outputformat 1) + (mirror false) + (drillshape 1) + (scaleselection 1) + (outputdirectory "")) + ) + + (net 0 "") + (net 1 "Net-(MH1-Pad1)") + (net 2 "Net-(MH2-Pad1)") + (net 3 "Net-(MH3-Pad1)") + (net 4 "Net-(MH4-Pad1)") + (net 5 +3V3) + (net 6 +5V) + (net 7 /GPIO2) + (net 8 /GPIO3) + (net 9 GND) + (net 10 /GPIO4) + (net 11 /GPIO14) + (net 12 /GPIO15) + (net 13 /GPIO17) + (net 14 /GPIO18) + (net 15 /GPIO27) + (net 16 /GPIO22) + (net 17 /GPIO23) + (net 18 /GPIO24) + (net 19 /GPIO10) + (net 20 /GPIO9) + (net 21 /GPIO25) + (net 22 /GPIO11) + (net 23 /GPIO8) + (net 24 /GPIO7) + (net 25 /ID_SD) + (net 26 /ID_SC) + (net 27 /GPIO5) + (net 28 /GPIO6) + (net 29 /GPIO12) + (net 30 /GPIO13) + (net 31 /GPIO19) + (net 32 /GPIO20) + (net 33 /GPIO26) + (net 34 /GPIO21) + + (net_class Default "This is the default net class." + (clearance 0.2) + (trace_width 0.2) + (via_dia 0.9) + (via_drill 0.6) + (uvia_dia 0.5) + (uvia_drill 0.1) + (add_net +3V3) + (add_net +5V) + (add_net /GPIO10) + (add_net /GPIO11) + (add_net /GPIO12) + (add_net /GPIO13) + (add_net /GPIO14) + (add_net /GPIO15) + (add_net /GPIO17) + (add_net /GPIO18) + (add_net /GPIO19) + (add_net /GPIO2) + (add_net /GPIO20) + (add_net /GPIO21) + (add_net /GPIO22) + (add_net /GPIO23) + (add_net /GPIO24) + (add_net /GPIO25) + (add_net /GPIO26) + (add_net /GPIO27) + (add_net /GPIO3) + (add_net /GPIO4) + (add_net /GPIO5) + (add_net /GPIO6) + (add_net /GPIO7) + (add_net /GPIO8) + (add_net /GPIO9) + (add_net /ID_SC) + (add_net /ID_SD) + (add_net GND) + (add_net "Net-(MH1-Pad1)") + (add_net "Net-(MH2-Pad1)") + (add_net "Net-(MH3-Pad1)") + (add_net "Net-(MH4-Pad1)") + ) + + (net_class Power "" + (clearance 0.2) + (trace_width 0.5) + (via_dia 1) + (via_drill 0.7) + (uvia_dia 0.5) + (uvia_drill 0.1) + ) + + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F55) (tstamp 580CBA7A) + (at 203.5 97.5 180) + (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (path /580C2C2C) + (fp_text reference MH1 (at 0 -3.50012 180) (layer F.SilkS) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_text value M2.5 (at 0.09906 3.59918 180) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) + (pad 1 thru_hole circle (at 0 0 180) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) + (net 1 "Net-(MH1-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + ) + + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F52) (tstamp 580CBAAE) + (at 261.5 97.5 180) + (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (path /580C2C7C) + (fp_text reference MH2 (at 0 -3.50012 180) (layer F.SilkS) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_text value M2.5 (at 0.09906 3.59918 180) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) + (pad 1 thru_hole circle (at 0 0 180) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) + (net 2 "Net-(MH2-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + ) + + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F62) (tstamp 580CBAC8) + (at 203.5 146.5) + (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (path /580C2C45) + (fp_text reference MH3 (at 0 -3.50012) (layer F.SilkS) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_text value M2.5 (at 0.09906 3.59918) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) + (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) + (net 3 "Net-(MH3-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + ) + + (module Socket_Strips:Socket_Strip_Straight_2x20 (layer F.Cu) (tedit 580C0D63) (tstamp 580C7F66) + (at 208.37 96.23) + (descr "Through hole socket strip") + (tags "socket strip") + (path /580C18BB) + (fp_text reference P1 (at 0 5.002) (layer F.SilkS) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_text value CONN_02X20 (at 0 -3.1) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_line (start -1.75 -1.75) (end -1.75 4.3) (layer F.CrtYd) (width 0.05)) + (fp_line (start 50.05 -1.75) (end 50.05 4.3) (layer F.CrtYd) (width 0.05)) + (fp_line (start -1.75 -1.75) (end 50.05 -1.75) (layer F.CrtYd) (width 0.05)) + (fp_line (start -1.75 4.3) (end 50.05 4.3) (layer F.CrtYd) (width 0.05)) + (fp_line (start 49.53 3.81) (end -1.27 3.81) (layer F.SilkS) (width 0.15)) + (fp_line (start 1.27 -1.27) (end 49.53 -1.27) (layer F.SilkS) (width 0.15)) + (fp_line (start 49.53 3.81) (end 49.53 -1.27) (layer F.SilkS) (width 0.15)) + (fp_line (start -1.27 3.81) (end -1.27 1.27) (layer F.SilkS) (width 0.15)) + (fp_line (start 0 -1.55) (end -1.55 -1.55) (layer F.SilkS) (width 0.15)) + (fp_line (start -1.27 1.27) (end 1.27 1.27) (layer F.SilkS) (width 0.15)) + (fp_line (start 1.27 1.27) (end 1.27 -1.27) (layer F.SilkS) (width 0.15)) + (fp_line (start -1.55 -1.55) (end -1.55 0) (layer F.SilkS) (width 0.15)) + (pad 1 thru_hole rect (at 0 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 5 +3V3)) + (pad 2 thru_hole oval (at 0 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 6 +5V)) + (pad 3 thru_hole oval (at 2.54 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 7 /GPIO2)) + (pad 4 thru_hole oval (at 2.54 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 6 +5V)) + (pad 5 thru_hole oval (at 5.08 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 8 /GPIO3)) + (pad 6 thru_hole oval (at 5.08 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 7 thru_hole oval (at 7.62 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 10 /GPIO4)) + (pad 8 thru_hole oval (at 7.62 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 11 /GPIO14)) + (pad 9 thru_hole oval (at 10.16 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 10 thru_hole oval (at 10.16 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 12 /GPIO15)) + (pad 11 thru_hole oval (at 12.7 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 13 /GPIO17)) + (pad 12 thru_hole oval (at 12.7 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 14 /GPIO18)) + (pad 13 thru_hole oval (at 15.24 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 15 /GPIO27)) + (pad 14 thru_hole oval (at 15.24 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 15 thru_hole oval (at 17.78 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 16 /GPIO22)) + (pad 16 thru_hole oval (at 17.78 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 17 /GPIO23)) + (pad 17 thru_hole oval (at 20.32 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 5 +3V3)) + (pad 18 thru_hole oval (at 20.32 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 18 /GPIO24)) + (pad 19 thru_hole oval (at 22.86 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 19 /GPIO10)) + (pad 20 thru_hole oval (at 22.86 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 21 thru_hole oval (at 25.4 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 20 /GPIO9)) + (pad 22 thru_hole oval (at 25.4 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 21 /GPIO25)) + (pad 23 thru_hole oval (at 27.94 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 22 /GPIO11)) + (pad 24 thru_hole oval (at 27.94 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 23 /GPIO8)) + (pad 25 thru_hole oval (at 30.48 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 26 thru_hole oval (at 30.48 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 24 /GPIO7)) + (pad 27 thru_hole oval (at 33.02 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 25 /ID_SD)) + (pad 28 thru_hole oval (at 33.02 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 26 /ID_SC)) + (pad 29 thru_hole oval (at 35.56 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 27 /GPIO5)) + (pad 30 thru_hole oval (at 35.56 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 31 thru_hole oval (at 38.1 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 28 /GPIO6)) + (pad 32 thru_hole oval (at 38.1 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 29 /GPIO12)) + (pad 33 thru_hole oval (at 40.64 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 30 /GPIO13)) + (pad 34 thru_hole oval (at 40.64 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 35 thru_hole oval (at 43.18 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 31 /GPIO19)) + (pad 36 thru_hole oval (at 43.18 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 32 /GPIO20)) + (pad 37 thru_hole oval (at 45.72 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 33 /GPIO26)) + (pad 38 thru_hole oval (at 45.72 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 34 /GPIO21)) + (pad 39 thru_hole oval (at 48.26 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (pad 40 thru_hole oval (at 48.26 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) + (net 9 GND)) + (model Socket_Strips.3dshapes/Socket_Strip_Straight_2x20.wrl + (at (xyz 0.95 -0.05 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 180)) + ) + ) + + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F72) (tstamp 580CBAD7) + (at 261.5 146.5) + (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") + (path /580C2CAA) + (fp_text reference MH4 (at 0 -3.50012) (layer F.SilkS) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_text value M2.5 (at 0.09906 3.59918) (layer F.Fab) + (effects (font (size 1 1) (thickness 0.15))) + ) + (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) + (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) + (net 4 "Net-(MH4-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + ) + + (gr_line (start 244 146) (end 244 131) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 246 131) (end 246 146) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 245 131) (end 244 131) (angle 180) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 245 146) (end 246 146) (angle 180) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 200.5 131) (end 200 131) (angle 89.9) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 204.5 130) (end 205 130) (angle 90) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 200.5 113) (end 200.5 113.5) (angle 90) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 204.5 114) (end 204.5 113.5) (angle 90) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 200 113) (end 200 131) (layer Dwgs.User) (width 0.1)) + (gr_line (start 200 97) (end 200 113) (layer Edge.Cuts) (width 0.1)) + (gr_text DISPLAY (at 202.5 122 90) (layer Dwgs.User) (tstamp 580CBBFF) + (effects (font (size 1 1) (thickness 0.15))) + ) + (gr_text CAMERA (at 245 139 90) (layer Dwgs.User) + (effects (font (size 1 1) (thickness 0.15))) + ) + (gr_text RJ45 (at 276.2 139.84) (layer Dwgs.User) (tstamp 580CBBEB) + (effects (font (size 2 2) (thickness 0.15))) + ) + (gr_text USB (at 277.724 121.552) (layer Dwgs.User) (tstamp 580CBBE9) + (effects (font (size 2 2) (thickness 0.15))) + ) + (gr_text USB (at 278.232 102.248) (layer Dwgs.User) + (effects (font (size 2 2) (thickness 0.15))) + ) + (gr_arc (start 262 97) (end 262 94) (angle 90) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 262 147) (end 265 147) (angle 90) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 203 147) (end 203 150) (angle 90) (layer Edge.Cuts) (width 0.1)) + (gr_arc (start 203 97) (end 200 97) (angle 90) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 269.9 114.45) (end 287 114.45) (layer Dwgs.User) (width 0.1)) + (gr_line (start 262 94) (end 203 94) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 269.9 127.55) (end 269.9 114.45) (layer Dwgs.User) (width 0.1)) + (gr_line (start 287 127.55) (end 269.9 127.55) (layer Dwgs.User) (width 0.1)) + (gr_line (start 287 114.45) (end 287 127.55) (layer Dwgs.User) (width 0.1)) + (gr_line (start 204.5 130.5) (end 200.5 130.5) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 205 114) (end 205 130) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 200.5 113.5) (end 204.5 113.5) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 266 147.675) (end 266 131.825) (layer Dwgs.User) (width 0.1)) + (gr_line (start 287 147.675) (end 266 147.675) (layer Dwgs.User) (width 0.1)) + (gr_line (start 287 131.825) (end 287 147.675) (layer Dwgs.User) (width 0.1)) + (gr_line (start 266 131.825) (end 287 131.825) (layer Dwgs.User) (width 0.1)) + (gr_line (start 265 147) (end 265 97) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 203 150) (end 262 150) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 200 131) (end 200 147) (layer Edge.Cuts) (width 0.1)) + (gr_line (start 269.9 109.455925) (end 269.9 96.355925) (layer Dwgs.User) (width 0.1)) + (gr_line (start 287 109.455925) (end 269.9 109.455925) (layer Dwgs.User) (width 0.1)) + (gr_line (start 287 96.355925) (end 287 109.455925) (layer Dwgs.User) (width 0.1)) + (gr_line (start 269.9 96.355925) (end 287 96.355925) (layer Dwgs.User) (width 0.1)) + (gr_text "RASPBERRY-PI 40-PIN ADDON BOARD\nVIEW FROM TOP\nNOTE: P1 SHOULD BE FITTED ON THE REVERSE OF THE BOARD\n\nADD EDGE CUTS FROM CAMERA AND DISIPLAY PORTS AS REQUIRED" (at 200 160.16) (layer Dwgs.User) + (effects (font (size 2 1.7) (thickness 0.12)) (justify left)) + ) + +) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.lib b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.lib new file mode 100644 index 00000000..5ae11eeb --- /dev/null +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.lib @@ -0,0 +1,166 @@ +EESchema-LIBRARY Version 2.3 +#encoding utf-8 +# +# +3V3 +# +DEF +3V3 #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 -150 50 H I C CNN +F1 "+3V3" 0 140 50 H V C CNN +F2 "" 0 0 50 H V C CNN +F3 "" 0 0 50 H V C CNN +ALIAS +3.3V +DRAW +P 2 0 1 0 -30 50 0 100 N +P 2 0 1 0 0 0 0 100 N +P 2 0 1 0 0 100 30 50 N +X +3V3 1 0 0 0 U 50 50 1 1 W N +ENDDRAW +ENDDEF +# +# +5V +# +DEF +5V #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 -150 50 H I C CNN +F1 "+5V" 0 140 50 H V C CNN +F2 "" 0 0 50 H V C CNN +F3 "" 0 0 50 H V C CNN +DRAW +P 2 0 1 0 -30 50 0 100 N +P 2 0 1 0 0 0 0 100 N +P 2 0 1 0 0 100 30 50 N +X +5V 1 0 0 0 U 50 50 1 1 W N +ENDDRAW +ENDDEF +# +# CONN_02X20 +# +DEF CONN_02X20 P 0 1 Y N 1 F N +F0 "P" 0 1050 50 H V C CNN +F1 "CONN_02X20" 0 0 50 V V C CNN +F2 "" 0 -950 50 H V C CNN +F3 "" 0 -950 50 H V C CNN +$FPLIST + Pin_Header_Straight_2X20 + Pin_Header_Angled_2X20 + Socket_Strip_Straight_2X20 + Socket_Strip_Angled_2X20 +$ENDFPLIST +DRAW +S -100 -945 -50 -955 0 1 0 N +S -100 -845 -50 -855 0 1 0 N +S -100 -745 -50 -755 0 1 0 N +S -100 -645 -50 -655 0 1 0 N +S -100 -545 -50 -555 0 1 0 N +S -100 -445 -50 -455 0 1 0 N +S -100 -345 -50 -355 0 1 0 N +S -100 -245 -50 -255 0 1 0 N +S -100 -145 -50 -155 0 1 0 N +S -100 -45 -50 -55 0 1 0 N +S -100 55 -50 45 0 1 0 N +S -100 155 -50 145 0 1 0 N +S -100 255 -50 245 0 1 0 N +S -100 355 -50 345 0 1 0 N +S -100 455 -50 445 0 1 0 N +S -100 555 -50 545 0 1 0 N +S -100 655 -50 645 0 1 0 N +S -100 755 -50 745 0 1 0 N +S -100 855 -50 845 0 1 0 N +S -100 955 -50 945 0 1 0 N +S -100 1000 100 -1000 0 1 0 N +S 50 -945 100 -955 0 1 0 N +S 50 -845 100 -855 0 1 0 N +S 50 -745 100 -755 0 1 0 N +S 50 -645 100 -655 0 1 0 N +S 50 -545 100 -555 0 1 0 N +S 50 -445 100 -455 0 1 0 N +S 50 -345 100 -355 0 1 0 N +S 50 -245 100 -255 0 1 0 N +S 50 -145 100 -155 0 1 0 N +S 50 -45 100 -55 0 1 0 N +S 50 55 100 45 0 1 0 N +S 50 155 100 145 0 1 0 N +S 50 255 100 245 0 1 0 N +S 50 355 100 345 0 1 0 N +S 50 455 100 445 0 1 0 N +S 50 555 100 545 0 1 0 N +S 50 655 100 645 0 1 0 N +S 50 755 100 745 0 1 0 N +S 50 855 100 845 0 1 0 N +S 50 955 100 945 0 1 0 N +X P1 1 -250 950 150 R 50 50 1 1 P +X P2 2 250 950 150 L 50 50 1 1 P +X P3 3 -250 850 150 R 50 50 1 1 P +X P4 4 250 850 150 L 50 50 1 1 P +X P5 5 -250 750 150 R 50 50 1 1 P +X P6 6 250 750 150 L 50 50 1 1 P +X P7 7 -250 650 150 R 50 50 1 1 P +X P8 8 250 650 150 L 50 50 1 1 P +X P9 9 -250 550 150 R 50 50 1 1 P +X P10 10 250 550 150 L 50 50 1 1 P +X P20 20 250 50 150 L 50 50 1 1 P +X P30 30 250 -450 150 L 50 50 1 1 P +X P40 40 250 -950 150 L 50 50 1 1 P +X P11 11 -250 450 150 R 50 50 1 1 P +X P21 21 -250 -50 150 R 50 50 1 1 P +X P31 31 -250 -550 150 R 50 50 1 1 P +X P12 12 250 450 150 L 50 50 1 1 P +X P22 22 250 -50 150 L 50 50 1 1 P +X P32 32 250 -550 150 L 50 50 1 1 P +X P13 13 -250 350 150 R 50 50 1 1 P +X P23 23 -250 -150 150 R 50 50 1 1 P +X P33 33 -250 -650 150 R 50 50 1 1 P +X P14 14 250 350 150 L 50 50 1 1 P +X P24 24 250 -150 150 L 50 50 1 1 P +X P34 34 250 -650 150 L 50 50 1 1 P +X P15 15 -250 250 150 R 50 50 1 1 P +X P25 25 -250 -250 150 R 50 50 1 1 P +X P35 35 -250 -750 150 R 50 50 1 1 P +X P16 16 250 250 150 L 50 50 1 1 P +X P26 26 250 -250 150 L 50 50 1 1 P +X P36 36 250 -750 150 L 50 50 1 1 P +X P17 17 -250 150 150 R 50 50 1 1 P +X P27 27 -250 -350 150 R 50 50 1 1 P +X P37 37 -250 -850 150 R 50 50 1 1 P +X P18 18 250 150 150 L 50 50 1 1 P +X P28 28 250 -350 150 L 50 50 1 1 P +X P38 38 250 -850 150 L 50 50 1 1 P +X P19 19 -250 50 150 R 50 50 1 1 P +X P29 29 -250 -450 150 R 50 50 1 1 P +X P39 39 -250 -950 150 R 50 50 1 1 P +ENDDRAW +ENDDEF +# +# GND +# +DEF GND #PWR 0 0 Y Y 1 F P +F0 "#PWR" 0 -250 50 H I C CNN +F1 "GND" 0 -150 50 H V C CNN +F2 "" 0 0 50 H V C CNN +F3 "" 0 0 50 H V C CNN +DRAW +P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N +X GND 1 0 0 0 D 50 50 1 1 W N +ENDDRAW +ENDDEF +# +# MOUNTING_HOLE +# +DEF MOUNTING_HOLE MH 0 40 Y Y 1 F N +F0 "MH" 0 150 50 H V C CNN +F1 "MOUNTING_HOLE" 375 -50 50 H V C CNN +F2 "" 0 0 50 H V C CNN +F3 "" 0 0 50 H V C CNN +DRAW +S -100 100 100 0 0 1 0 N +S -50 0 50 -150 0 1 0 N +P 2 0 1 0 -50 -150 50 -125 N +P 2 0 1 0 50 -100 -50 -125 N +P 2 0 1 0 50 -75 -50 -100 N +P 2 0 1 0 50 -50 -50 -75 N +P 2 0 1 0 50 -25 -50 -50 N +P 2 0 1 0 50 0 -50 -25 N +X ~ 1 -100 -150 50 R 50 50 1 1 I +ENDDRAW +ENDDEF +# +#End Library diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net new file mode 100644 index 00000000..4f4424da --- /dev/null +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net @@ -0,0 +1,190 @@ +(export (version D) + (design + (source /home/ashton/kicad/kicad-library/template/rasberrypi3-gpio/rasberrypi3-gpio.sch) + (date "Sat 22 Oct 2016 09:19:45 PM CDT") + (tool "Eeschema 4.0.2+dfsg1-stable") + (sheet (number 1) (name /) (tstamps /) + (title_block + (title) + (company) + (rev) + (date "15 nov 2012") + (source rasberrypi3-gpio.sch) + (comment (number 1) (value "")) + (comment (number 2) (value "")) + (comment (number 3) (value "")) + (comment (number 4) (value ""))))) + (components + (comp (ref P1) + (value CONN_02X20) + (footprint Socket_Strips:Socket_Strip_Straight_2x20) + (datasheet https://www.raspberrypi.org/documentation/hardware/raspberrypi/schematics/RPI-3B-V1_2-SCHEMATIC-REDUCED.pdf) + (libsource (lib conn) (part CONN_02X20)) + (sheetpath (names /) (tstamps /)) + (tstamp 580C18BB)) + (comp (ref MH1) + (value M2.5) + (footprint Mounting_Holes:MountingHole_2-5mm) + (libsource (lib device) (part MOUNTING_HOLE)) + (sheetpath (names /) (tstamps /)) + (tstamp 580C2C2C)) + (comp (ref MH3) + (value M2.5) + (footprint Mounting_Holes:MountingHole_2-5mm) + (libsource (lib device) (part MOUNTING_HOLE)) + (sheetpath (names /) (tstamps /)) + (tstamp 580C2C45)) + (comp (ref MH2) + (value M2.5) + (footprint Mounting_Holes:MountingHole_2-5mm) + (libsource (lib device) (part MOUNTING_HOLE)) + (sheetpath (names /) (tstamps /)) + (tstamp 580C2C7C)) + (comp (ref MH4) + (value M2.5) + (footprint Mounting_Holes:MountingHole_2-5mm) + (libsource (lib device) (part MOUNTING_HOLE)) + (sheetpath (names /) (tstamps /)) + (tstamp 580C2CAA))) + (libparts + (libpart (lib conn) (part CONN_02X20) + (description "Connector, double row, 02x20") + (footprints + (fp Pin_Header_Straight_2X20) + (fp Pin_Header_Angled_2X20) + (fp Socket_Strip_Straight_2X20) + (fp Socket_Strip_Angled_2X20)) + (fields + (field (name Reference) P) + (field (name Value) CONN_02X20)) + (pins + (pin (num 1) (name P1) (type passive)) + (pin (num 2) (name P2) (type passive)) + (pin (num 3) (name P3) (type passive)) + (pin (num 4) (name P4) (type passive)) + (pin (num 5) (name P5) (type passive)) + (pin (num 6) (name P6) (type passive)) + (pin (num 7) (name P7) (type passive)) + (pin (num 8) (name P8) (type passive)) + (pin (num 9) (name P9) (type passive)) + (pin (num 10) (name P10) (type passive)) + (pin (num 11) (name P11) (type passive)) + (pin (num 12) (name P12) (type passive)) + (pin (num 13) (name P13) (type passive)) + (pin (num 14) (name P14) (type passive)) + (pin (num 15) (name P15) (type passive)) + (pin (num 16) (name P16) (type passive)) + (pin (num 17) (name P17) (type passive)) + (pin (num 18) (name P18) (type passive)) + (pin (num 19) (name P19) (type passive)) + (pin (num 20) (name P20) (type passive)) + (pin (num 21) (name P21) (type passive)) + (pin (num 22) (name P22) (type passive)) + (pin (num 23) (name P23) (type passive)) + (pin (num 24) (name P24) (type passive)) + (pin (num 25) (name P25) (type passive)) + (pin (num 26) (name P26) (type passive)) + (pin (num 27) (name P27) (type passive)) + (pin (num 28) (name P28) (type passive)) + (pin (num 29) (name P29) (type passive)) + (pin (num 30) (name P30) (type passive)) + (pin (num 31) (name P31) (type passive)) + (pin (num 32) (name P32) (type passive)) + (pin (num 33) (name P33) (type passive)) + (pin (num 34) (name P34) (type passive)) + (pin (num 35) (name P35) (type passive)) + (pin (num 36) (name P36) (type passive)) + (pin (num 37) (name P37) (type passive)) + (pin (num 38) (name P38) (type passive)) + (pin (num 39) (name P39) (type passive)) + (pin (num 40) (name P40) (type passive)))) + (libpart (lib device) (part MOUNTING_HOLE) + (fields + (field (name Reference) MH) + (field (name Value) MOUNTING_HOLE)) + (pins + (pin (num 1) (name ~) (type input))))) + (libraries + (library (logical device) + (uri /home/ashton/kicad/kicad-library/library/device.lib)) + (library (logical conn) + (uri /home/ashton/kicad/kicad-library/library/conn.lib))) + (nets + (net (code 1) (name /GPIO24) + (node (ref P1) (pin 18))) + (net (code 2) (name /GPIO26) + (node (ref P1) (pin 37))) + (net (code 3) (name /GPIO20) + (node (ref P1) (pin 36))) + (net (code 4) (name /GPIO21) + (node (ref P1) (pin 38))) + (net (code 5) (name /GPIO7) + (node (ref P1) (pin 26))) + (net (code 6) (name /ID_SC) + (node (ref P1) (pin 28))) + (net (code 7) (name /GPIO25) + (node (ref P1) (pin 22))) + (net (code 8) (name /GPIO8) + (node (ref P1) (pin 24))) + (net (code 9) (name /GPIO23) + (node (ref P1) (pin 16))) + (net (code 10) (name /GPIO19) + (node (ref P1) (pin 35))) + (net (code 11) (name /GPIO15) + (node (ref P1) (pin 10))) + (net (code 12) (name /GPIO18) + (node (ref P1) (pin 12))) + (net (code 13) (name /GPIO14) + (node (ref P1) (pin 8))) + (net (code 14) (name /GPIO12) + (node (ref P1) (pin 32))) + (net (code 15) (name /GPIO2) + (node (ref P1) (pin 3))) + (net (code 16) (name /GPIO3) + (node (ref P1) (pin 5))) + (net (code 17) (name /GPIO4) + (node (ref P1) (pin 7))) + (net (code 18) (name /GPIO22) + (node (ref P1) (pin 15))) + (net (code 19) (name /GPIO17) + (node (ref P1) (pin 11))) + (net (code 20) (name /GPIO27) + (node (ref P1) (pin 13))) + (net (code 21) (name /GPIO10) + (node (ref P1) (pin 19))) + (net (code 22) (name /GPIO9) + (node (ref P1) (pin 21))) + (net (code 23) (name /GPIO11) + (node (ref P1) (pin 23))) + (net (code 24) (name /ID_SD) + (node (ref P1) (pin 27))) + (net (code 25) (name /GPIO5) + (node (ref P1) (pin 29))) + (net (code 26) (name /GPIO6) + (node (ref P1) (pin 31))) + (net (code 27) (name /GPIO13) + (node (ref P1) (pin 33))) + (net (code 28) (name "Net-(MH1-Pad1)") + (node (ref MH1) (pin 1))) + (net (code 29) (name "Net-(MH3-Pad1)") + (node (ref MH3) (pin 1))) + (net (code 30) (name "Net-(MH2-Pad1)") + (node (ref MH2) (pin 1))) + (net (code 31) (name "Net-(MH4-Pad1)") + (node (ref MH4) (pin 1))) + (net (code 32) (name +3V3) + (node (ref P1) (pin 1)) + (node (ref P1) (pin 17))) + (net (code 33) (name +5V) + (node (ref P1) (pin 4)) + (node (ref P1) (pin 2))) + (net (code 34) (name GND) + (node (ref P1) (pin 39)) + (node (ref P1) (pin 40)) + (node (ref P1) (pin 25)) + (node (ref P1) (pin 14)) + (node (ref P1) (pin 34)) + (node (ref P1) (pin 6)) + (node (ref P1) (pin 9)) + (node (ref P1) (pin 20)) + (node (ref P1) (pin 30))))) \ No newline at end of file diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro new file mode 100644 index 00000000..76694d73 --- /dev/null +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro @@ -0,0 +1,173 @@ +update=Sun 23 Oct 2016 08:04:49 PM CDT +version=1 +last_client=kicad +[cvpcb] +version=1 +NetITyp=0 +NetIExt=.net +PkgIExt=.pkg +NetDir= +LibDir= +NetType=0 +[cvpcb/libraries] +EquName1=devcms +[pcbnew] +version=1 +PadDrlX=320 +PadDimH=600 +PadDimV=600 +PadForm=1 +PadMask=14745599 +ViaDiam=450 +ViaDril=250 +Isol=60 +Countlayer=2 +Lpiste=170 +RouteTo=15 +RouteBo=0 +TypeVia=3 +Segm45=1 +Racc45=1 +Unite=0 +SegFill=1 +SegAffG=0 +NewAffG=1 +PadFill=1 +PadAffG=1 +PadSNum=1 +ModAffC=0 +ModAffT=0 +PcbAffT=0 +SgPcb45=1 +TxtPcbV=800 +TxtPcbH=600 +TxtModV=600 +TxtModH=600 +TxtModW=120 +HPGLnum=1 +HPGdiam=15 +HPGLSpd=20 +HPGLrec=2 +HPGLorg=0 +GERBmin=15 +VEgarde=100 +DrawLar=150 +EdgeLar=150 +TxtLar=120 +MSegLar=150 +ForPlot=1 +WpenSer=10 +UserGrX=0,01 +UserGrY=0,01 +UserGrU=1 +DivGrPc=1 +TimeOut=600 +MaxLnkS=3 +ShowRat=0 +ShowMRa=1 +[pcbnew/libraries] +LibDir= +LibName1=sockets +LibName2=connect +LibName3=discret +LibName4=pin_array +LibName5=divers +LibName6=libcms +LibName7=display +LibName8=valves +LibName9=led +LibName10=dip_sockets +[schematic_editor] +version=1 +PageLayoutDescrFile= +PlotDirectoryName= +SubpartIdSeparator=0 +SubpartFirstId=65 +NetFmtName= +SpiceForceRefPrefix=0 +SpiceUseNetNumbers=0 +LabSize=50 +[eeschema] +version=1 +LibDir= +[eeschema/libraries] +LibName1=74xgxx +LibName2=74xx +LibName3=ac-dc +LibName4=actel +LibName5=adc-dac +LibName6=Altera +LibName7=analog_devices +LibName8=analog_switches +LibName9=atmel +LibName10=audio +LibName11=brooktre +LibName12=cmos4000 +LibName13=cmos_ieee +LibName14=conn +LibName15=contrib +LibName16=cypress +LibName17=dc-dc +LibName18=device +LibName19=digital-audio +LibName20=diode +LibName21=display +LibName22=dsp +LibName23=elec-unifil +LibName24=ESD_Protection +LibName25=ftdi +LibName26=gennum +LibName27=graphic +LibName28=hc11 +LibName29=intel +LibName30=interface +LibName31=ir +LibName32=Lattice +LibName33=linear +LibName34=logo +LibName35=maxim +LibName36=memory +LibName37=microchip +LibName38=microchip_dspic33dsc +LibName39=microchip_pic10mcu +LibName40=microchip_pic12mcu +LibName41=microchip_pic16mcu +LibName42=microchip_pic18mcu +LibName43=microchip_pic32mcu +LibName44=microcontrollers +LibName45=motor_drivers +LibName46=motorola +LibName47=msp430 +LibName48=nordicsemi +LibName49=nxp_armmcu +LibName50=onsemi +LibName51=opto +LibName52=Oscillators +LibName53=philips +LibName54=power +LibName55=powerint +LibName56=Power_Management +LibName57=pspice +LibName58=references +LibName59=regul +LibName60=relays +LibName61=rfcom +LibName62=sensors +LibName63=silabs +LibName64=siliconi +LibName65=stm8 +LibName66=stm32 +LibName67=supertex +LibName68=switches +LibName69=texas +LibName70=transf +LibName71=transistors +LibName72=ttl_ieee +LibName73=valves +LibName74=video +LibName75=Worldsemi +LibName76=Xicor +LibName77=xilinx +LibName78=Zilog +[general] +version=1 diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch new file mode 100644 index 00000000..ea763990 --- /dev/null +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch @@ -0,0 +1,354 @@ +EESchema Schematic File Version 2 +LIBS:74xgxx +LIBS:74xx +LIBS:ac-dc +LIBS:actel +LIBS:adc-dac +LIBS:Altera +LIBS:analog_devices +LIBS:analog_switches +LIBS:atmel +LIBS:audio +LIBS:battery_management +LIBS:bbd +LIBS:brooktre +LIBS:cmos4000 +LIBS:cmos_ieee +LIBS:conn +LIBS:contrib +LIBS:cypress +LIBS:dc-dc +LIBS:device +LIBS:digital-audio +LIBS:diode +LIBS:display +LIBS:dsp +LIBS:elec-unifil +LIBS:ESD_Protection +LIBS:ftdi +LIBS:gennum +LIBS:graphic +LIBS:hc11 +LIBS:intel +LIBS:interface +LIBS:ir +LIBS:Lattice +LIBS:linear +LIBS:logo +LIBS:maxim +LIBS:memory +LIBS:microchip +LIBS:microchip_dspic33dsc +LIBS:microchip_pic10mcu +LIBS:microchip_pic12mcu +LIBS:microchip_pic16mcu +LIBS:microchip_pic18mcu +LIBS:microchip_pic32mcu +LIBS:microcontrollers +LIBS:motor_drivers +LIBS:motorola +LIBS:motors +LIBS:msp430 +LIBS:nordicsemi +LIBS:nxp_armmcu +LIBS:onsemi +LIBS:opto +LIBS:Oscillators +LIBS:philips +LIBS:power +LIBS:powerint +LIBS:Power_Management +LIBS:pspice +LIBS:references +LIBS:regul +LIBS:relays +LIBS:rfcom +LIBS:sensors +LIBS:silabs +LIBS:siliconi +LIBS:stm8 +LIBS:stm32 +LIBS:supertex +LIBS:switches +LIBS:texas +LIBS:transf +LIBS:transistors +LIBS:ttl_ieee +LIBS:valves +LIBS:video +LIBS:Worldsemi +LIBS:Xicor +LIBS:xilinx +LIBS:Zilog +LIBS:rasberrypi3-gpio-cache +EELAYER 25 0 +EELAYER END +$Descr A4 11693 8268 +encoding utf-8 +Sheet 1 1 +Title "" +Date "15 nov 2012" +Rev "" +Comp "" +Comment1 "" +Comment2 "" +Comment3 "" +Comment4 "" +$EndDescr +$Comp +L CONN_02X20 P1 +U 1 1 580C18BB +P 2600 2050 +F 0 "P1" H 2600 3100 50 0000 C CNN +F 1 "CONN_02X20" V 2600 2050 50 0000 C CNN +F 2 "Socket_Strips:Socket_Strip_Straight_2x20" H 2600 650 50 0001 C CNN +F 3 "https://www.raspberrypi.org/documentation/hardware/raspberrypi/schematics/RPI-3B-V1_2-SCHEMATIC-REDUCED.pdf" H 2900 3500 50 0001 C CNN + 1 2600 2050 + 1 0 0 -1 +$EndComp +$Comp +L +5V #PWR3 +U 1 1 580C1B61 +P 3000 950 +F 0 "#PWR3" H 3000 800 50 0001 C CNN +F 1 "+5V" H 3000 1090 50 0000 C CNN +F 2 "" H 3000 950 50 0000 C CNN +F 3 "" H 3000 950 50 0000 C CNN + 1 3000 950 + 1 0 0 -1 +$EndComp +Wire Wire Line + 3000 950 3000 1200 +Wire Wire Line + 3000 1100 2850 1100 +Wire Wire Line + 3000 1200 2850 1200 +Connection ~ 3000 1100 +$Comp +L GND #PWR4 +U 1 1 580C1D11 +P 3000 3150 +F 0 "#PWR4" H 3000 2900 50 0001 C CNN +F 1 "GND" H 3000 3000 50 0000 C CNN +F 2 "" H 3000 3150 50 0000 C CNN +F 3 "" H 3000 3150 50 0000 C CNN + 1 3000 3150 + 1 0 0 -1 +$EndComp +Wire Wire Line + 3000 3000 2850 3000 +Wire Wire Line + 3000 1300 3000 3150 +Wire Wire Line + 3000 2700 2850 2700 +Connection ~ 3000 3000 +Wire Wire Line + 3000 2500 2850 2500 +Connection ~ 3000 2700 +Wire Wire Line + 3000 2000 2850 2000 +Connection ~ 3000 2500 +Wire Wire Line + 3000 1700 2850 1700 +Connection ~ 3000 2000 +$Comp +L GND #PWR2 +U 1 1 580C1E01 +P 2200 3150 +F 0 "#PWR2" H 2200 2900 50 0001 C CNN +F 1 "GND" H 2200 3000 50 0000 C CNN +F 2 "" H 2200 3150 50 0000 C CNN +F 3 "" H 2200 3150 50 0000 C CNN + 1 2200 3150 + 1 0 0 -1 +$EndComp +Wire Wire Line + 2200 3000 2350 3000 +Wire Wire Line + 2200 1500 2200 3150 +Wire Wire Line + 2200 2300 2350 2300 +Connection ~ 2200 3000 +Connection ~ 2100 1100 +Wire Wire Line + 2100 1900 2350 1900 +Wire Wire Line + 2100 1100 2350 1100 +Wire Wire Line + 2100 950 2100 1900 +$Comp +L +3.3V #PWR1 +U 1 1 580C1BC1 +P 2100 950 +F 0 "#PWR1" H 2100 800 50 0001 C CNN +F 1 "+3.3V" H 2100 1090 50 0000 C CNN +F 2 "" H 2100 950 50 0000 C CNN +F 3 "" H 2100 950 50 0000 C CNN + 1 2100 950 + 1 0 0 -1 +$EndComp +Wire Wire Line + 2200 1500 2350 1500 +Connection ~ 2200 2300 +Wire Wire Line + 2350 1200 1250 1200 +Wire Wire Line + 1250 1300 2350 1300 +Wire Wire Line + 1250 1400 2350 1400 +Wire Wire Line + 2350 1600 1250 1600 +Wire Wire Line + 1250 1700 2350 1700 +Wire Wire Line + 1250 1800 2350 1800 +Wire Wire Line + 2350 2000 1250 2000 +Wire Wire Line + 1250 2100 2350 2100 +Wire Wire Line + 1250 2200 2350 2200 +Wire Wire Line + 2350 2400 1250 2400 +Wire Wire Line + 1250 2500 2350 2500 +Wire Wire Line + 1250 2600 2350 2600 +Wire Wire Line + 2350 2700 1250 2700 +Wire Wire Line + 1250 2800 2350 2800 +Wire Wire Line + 1250 2900 2350 2900 +Wire Wire Line + 2850 2800 3950 2800 +Wire Wire Line + 2850 2900 3950 2900 +Wire Wire Line + 2850 2300 3950 2300 +Wire Wire Line + 2850 2400 3950 2400 +Wire Wire Line + 2850 2100 3950 2100 +Wire Wire Line + 2850 2200 3950 2200 +Wire Wire Line + 2850 1800 3950 1800 +Wire Wire Line + 2850 1900 3950 1900 +Wire Wire Line + 2850 1500 3950 1500 +Wire Wire Line + 2850 1600 3950 1600 +Wire Wire Line + 2850 1400 3950 1400 +Wire Wire Line + 2850 2600 3950 2600 +Text Label 1250 1200 0 50 ~ 0 +GPIO2 +Text Label 1250 1300 0 50 ~ 0 +GPIO3 +Text Label 1250 1400 0 50 ~ 0 +GPIO4 +Text Label 1250 1600 0 50 ~ 0 +GPIO17 +Text Label 1250 1700 0 50 ~ 0 +GPIO27 +Text Label 1250 1800 0 50 ~ 0 +GPIO22 +Text Label 1250 2000 0 50 ~ 0 +GPIO10 +Text Label 1250 2100 0 50 ~ 0 +GPIO9 +Text Label 1250 2200 0 50 ~ 0 +GPIO11 +Text Label 1250 2400 0 50 ~ 0 +ID_SD +Text Label 1250 2500 0 50 ~ 0 +GPIO5 +Text Label 1250 2600 0 50 ~ 0 +GPIO6 +Text Label 1250 2700 0 50 ~ 0 +GPIO13 +Text Label 1250 2800 0 50 ~ 0 +GPIO19 +Text Label 1250 2900 0 50 ~ 0 +GPIO26 +Text Label 3950 2900 2 50 ~ 0 +GPIO21 +Text Label 3950 2800 2 50 ~ 0 +GPIO20 +Text Label 3950 2600 2 50 ~ 0 +GPIO12 +Text Label 3950 2400 2 50 ~ 0 +ID_SC +Text Label 3950 2300 2 50 ~ 0 +GPIO7 +Text Label 3950 2200 2 50 ~ 0 +GPIO8 +Text Label 3950 2100 2 50 ~ 0 +GPIO25 +Text Label 3950 1900 2 50 ~ 0 +GPIO24 +Text Label 3950 1800 2 50 ~ 0 +GPIO23 +Text Label 3950 1600 2 50 ~ 0 +GPIO18 +Text Label 3950 1500 2 50 ~ 0 +GPIO15 +Text Label 3950 1400 2 50 ~ 0 +GPIO14 +Wire Wire Line + 3000 1300 2850 1300 +Connection ~ 3000 1700 +Text Notes 650 7600 0 50 ~ 0 +ID_SD and ID_SC PINS:\nThese pins are reserved for HAT ID EEPROM.\n\nAt boot time this I2C interface will be\ninterrogated to look for an EEPROM\nthat identifes the attached board and\nallows automagic setup of the GPIOs\n(and optionally, Linux drivers).\n\nDO NOT USE these pins for anything other\nthan attaching an I2C ID EEPROM. Leave\nunconnected if ID EEPROM not required. +$Comp +L MOUNTING_HOLE MH1 +U 1 1 580C2C2C +P 2950 6900 +F 0 "MH1" H 2950 7050 50 0000 C CNN +F 1 "M2.5" H 3100 6850 50 0000 C CNN +F 2 "Mounting_Holes:MountingHole_2-5mm" H 2950 6900 50 0001 C CNN +F 3 "" H 2950 6900 50 0000 C CNN + 1 2950 6900 + 1 0 0 -1 +$EndComp +$Comp +L MOUNTING_HOLE MH3 +U 1 1 580C2C45 +P 3650 6900 +F 0 "MH3" H 3650 7050 50 0000 C CNN +F 1 "M2.5" H 3800 6850 50 0000 C CNN +F 2 "Mounting_Holes:MountingHole_2-5mm" H 3650 6900 50 0001 C CNN +F 3 "" H 3650 6900 50 0000 C CNN + 1 3650 6900 + 1 0 0 -1 +$EndComp +$Comp +L MOUNTING_HOLE MH2 +U 1 1 580C2C7C +P 2950 7400 +F 0 "MH2" H 2950 7550 50 0000 C CNN +F 1 "M2.5" H 3100 7350 50 0000 C CNN +F 2 "Mounting_Holes:MountingHole_2-5mm" H 2950 7400 50 0001 C CNN +F 3 "" H 2950 7400 50 0000 C CNN + 1 2950 7400 + 1 0 0 -1 +$EndComp +$Comp +L MOUNTING_HOLE MH4 +U 1 1 580C2CAA +P 3650 7400 +F 0 "MH4" H 3650 7550 50 0000 C CNN +F 1 "M2.5" H 3800 7350 50 0000 C CNN +F 2 "Mounting_Holes:MountingHole_2-5mm" H 3650 7400 50 0001 C CNN +F 3 "" H 3650 7400 50 0000 C CNN + 1 3650 7400 + 1 0 0 -1 +$EndComp +NoConn ~ 2850 7050 +NoConn ~ 3550 7050 +NoConn ~ 3550 7550 +NoConn ~ 2850 7550 +$EndSCHEMATC diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.stf b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.stf new file mode 100644 index 00000000..d9a206f0 --- /dev/null +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.stf @@ -0,0 +1 @@ +comp = "P1" module = "HE10_26D" From 03ffe41edc86ee493bef87143c98d16977cac0cb Mon Sep 17 00:00:00 2001 From: Ashton Johnson Date: Sun, 23 Oct 2016 20:29:41 -0500 Subject: [PATCH 2/8] Updated Template Info to reference Pi Hat Specification. --- template/raspberrypi-gpio-40pin/meta/info.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/template/raspberrypi-gpio-40pin/meta/info.html b/template/raspberrypi-gpio-40pin/meta/info.html index 90b26c58..c24aa691 100755 --- a/template/raspberrypi-gpio-40pin/meta/info.html +++ b/template/raspberrypi-gpio-40pin/meta/info.html @@ -18,8 +18,8 @@ boards that have the 40-pin header.

-

This base project includes a PCB edge defined as the same size as the -Raspberry Pi 3 PCB with the connectors placed correctly to align the two boards. +

This base project includes a PCB edge as specified in the Raspberry Pi Hat Specification +with the connectors placed correctly to align the two boards. All IO present on the Raspberry-Pi board is connected to the project through the 0.1" expansion headers. Cutouts have also been defined for the camera and the display connctors.

From 2171b93325a7a47314160384157ee8a484d99e97 Mon Sep 17 00:00:00 2001 From: Ashton Johnson Date: Fri, 28 Oct 2016 21:49:15 -0500 Subject: [PATCH 3/8] Updated net names. --- .../raspberrypi-gpio-40pin.kicad_pcb | 171 +++++++++--------- .../raspberrypi-gpio-40pin.net | 42 ++--- .../raspberrypi-gpio-40pin.pro | 4 +- .../raspberrypi-gpio-40pin.sch | 38 ++-- 4 files changed, 127 insertions(+), 128 deletions(-) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb index e5dca451..c704fa92 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb @@ -1,9 +1,9 @@ -(kicad_pcb (version 4) (host pcbnew 4.0.2+dfsg1-stable) +(kicad_pcb (version 20160815) (host pcbnew no-vcs-found-undefined) (general (links 10) (no_connects 10) - (area 199.94 92.005 287.050001 167.46) + (area 199.949999 93.949999 265.050001 150.050001) (thickness 1.6) (drawings 39) (tracks 0) @@ -75,7 +75,6 @@ (hpglpennumber 1) (hpglpenspeed 20) (hpglpendiameter 15) - (hpglpenoverlay 2) (psnegative false) (psa4output false) (plotreference true) @@ -97,34 +96,34 @@ (net 4 "Net-(MH4-Pad1)") (net 5 +3V3) (net 6 +5V) - (net 7 /GPIO2) - (net 8 /GPIO3) - (net 9 GND) - (net 10 /GPIO4) - (net 11 /GPIO14) - (net 12 /GPIO15) - (net 13 /GPIO17) - (net 14 /GPIO18) - (net 15 /GPIO27) - (net 16 /GPIO22) - (net 17 /GPIO23) - (net 18 /GPIO24) - (net 19 /GPIO10) - (net 20 /GPIO9) - (net 21 /GPIO25) - (net 22 /GPIO11) - (net 23 /GPIO8) - (net 24 /GPIO7) - (net 25 /ID_SD) - (net 26 /ID_SC) - (net 27 /GPIO5) - (net 28 /GPIO6) - (net 29 /GPIO12) - (net 30 /GPIO13) - (net 31 /GPIO19) - (net 32 /GPIO20) - (net 33 /GPIO26) - (net 34 /GPIO21) + (net 7 GND) + (net 8 /ID_SD) + (net 9 /ID_SC) + (net 10 /GPIO5) + (net 11 /GPIO6) + (net 12 /GPIO12) + (net 13 /GPIO13) + (net 14 /GPIO19) + (net 15 /GPIO20) + (net 16 /GPIO26) + (net 17 /GPIO21) + (net 18 "/GPIO2(SDA1)") + (net 19 "/GPIO3(SCL1)") + (net 20 "/GPIO4(GCLK)") + (net 21 "/GPIO14(TXD0)") + (net 22 "/GPIO15(RXD0)") + (net 23 "/GPIO17(GEN0)") + (net 24 "/GPIO18(GEN1)") + (net 25 "/GPIO27(GEN2)") + (net 26 "/GPIO22(GEN3)") + (net 27 "/GPIO23(GEN4)") + (net 28 "/GPIO24(GEN5)") + (net 29 "/GPIO10(SPI_MOSI)") + (net 30 "/GPIO9(SPI_MISO)") + (net 31 "/GPIO25(GEN6)") + (net 32 "/GPIO11(SPI_CLK)") + (net 33 "/GPIO8(SPI_CE0_N)") + (net 34 "/GPIO7(SPI_CE1_N)") (net_class Default "This is the default net class." (clearance 0.2) @@ -133,33 +132,35 @@ (via_drill 0.6) (uvia_dia 0.5) (uvia_drill 0.1) + (diff_pair_gap 0.25) + (diff_pair_width 0.2) (add_net +3V3) (add_net +5V) - (add_net /GPIO10) - (add_net /GPIO11) + (add_net "/GPIO10(SPI_MOSI)") + (add_net "/GPIO11(SPI_CLK)") (add_net /GPIO12) (add_net /GPIO13) - (add_net /GPIO14) - (add_net /GPIO15) - (add_net /GPIO17) - (add_net /GPIO18) + (add_net "/GPIO14(TXD0)") + (add_net "/GPIO15(RXD0)") + (add_net "/GPIO17(GEN0)") + (add_net "/GPIO18(GEN1)") (add_net /GPIO19) - (add_net /GPIO2) + (add_net "/GPIO2(SDA1)") (add_net /GPIO20) (add_net /GPIO21) - (add_net /GPIO22) - (add_net /GPIO23) - (add_net /GPIO24) - (add_net /GPIO25) + (add_net "/GPIO22(GEN3)") + (add_net "/GPIO23(GEN4)") + (add_net "/GPIO24(GEN5)") + (add_net "/GPIO25(GEN6)") (add_net /GPIO26) - (add_net /GPIO27) - (add_net /GPIO3) - (add_net /GPIO4) + (add_net "/GPIO27(GEN2)") + (add_net "/GPIO3(SCL1)") + (add_net "/GPIO4(GCLK)") (add_net /GPIO5) (add_net /GPIO6) - (add_net /GPIO7) - (add_net /GPIO8) - (add_net /GPIO9) + (add_net "/GPIO7(SPI_CE1_N)") + (add_net "/GPIO8(SPI_CE0_N)") + (add_net "/GPIO9(SPI_MISO)") (add_net /ID_SC) (add_net /ID_SD) (add_net GND) @@ -176,6 +177,8 @@ (via_drill 0.7) (uvia_dia 0.5) (uvia_drill 0.1) + (diff_pair_gap 0.25) + (diff_pair_width 0.2) ) (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F55) (tstamp 580CBA7A) @@ -254,81 +257,81 @@ (pad 2 thru_hole oval (at 0 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) (net 6 +5V)) (pad 3 thru_hole oval (at 2.54 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 /GPIO2)) + (net 18 "/GPIO2(SDA1)")) (pad 4 thru_hole oval (at 2.54 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) (net 6 +5V)) (pad 5 thru_hole oval (at 5.08 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 8 /GPIO3)) + (net 19 "/GPIO3(SCL1)")) (pad 6 thru_hole oval (at 5.08 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 7 thru_hole oval (at 7.62 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 10 /GPIO4)) + (net 20 "/GPIO4(GCLK)")) (pad 8 thru_hole oval (at 7.62 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 11 /GPIO14)) + (net 21 "/GPIO14(TXD0)")) (pad 9 thru_hole oval (at 10.16 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 10 thru_hole oval (at 10.16 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 12 /GPIO15)) + (net 22 "/GPIO15(RXD0)")) (pad 11 thru_hole oval (at 12.7 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 13 /GPIO17)) + (net 23 "/GPIO17(GEN0)")) (pad 12 thru_hole oval (at 12.7 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 14 /GPIO18)) + (net 24 "/GPIO18(GEN1)")) (pad 13 thru_hole oval (at 15.24 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 15 /GPIO27)) + (net 25 "/GPIO27(GEN2)")) (pad 14 thru_hole oval (at 15.24 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 15 thru_hole oval (at 17.78 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 16 /GPIO22)) + (net 26 "/GPIO22(GEN3)")) (pad 16 thru_hole oval (at 17.78 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 17 /GPIO23)) + (net 27 "/GPIO23(GEN4)")) (pad 17 thru_hole oval (at 20.32 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) (net 5 +3V3)) (pad 18 thru_hole oval (at 20.32 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 18 /GPIO24)) + (net 28 "/GPIO24(GEN5)")) (pad 19 thru_hole oval (at 22.86 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 19 /GPIO10)) + (net 29 "/GPIO10(SPI_MOSI)")) (pad 20 thru_hole oval (at 22.86 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 21 thru_hole oval (at 25.4 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 20 /GPIO9)) + (net 30 "/GPIO9(SPI_MISO)")) (pad 22 thru_hole oval (at 25.4 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 21 /GPIO25)) + (net 31 "/GPIO25(GEN6)")) (pad 23 thru_hole oval (at 27.94 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 22 /GPIO11)) + (net 32 "/GPIO11(SPI_CLK)")) (pad 24 thru_hole oval (at 27.94 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 23 /GPIO8)) + (net 33 "/GPIO8(SPI_CE0_N)")) (pad 25 thru_hole oval (at 30.48 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 26 thru_hole oval (at 30.48 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 24 /GPIO7)) + (net 34 "/GPIO7(SPI_CE1_N)")) (pad 27 thru_hole oval (at 33.02 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 25 /ID_SD)) + (net 8 /ID_SD)) (pad 28 thru_hole oval (at 33.02 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 26 /ID_SC)) + (net 9 /ID_SC)) (pad 29 thru_hole oval (at 35.56 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 27 /GPIO5)) + (net 10 /GPIO5)) (pad 30 thru_hole oval (at 35.56 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 31 thru_hole oval (at 38.1 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 28 /GPIO6)) + (net 11 /GPIO6)) (pad 32 thru_hole oval (at 38.1 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 29 /GPIO12)) + (net 12 /GPIO12)) (pad 33 thru_hole oval (at 40.64 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 30 /GPIO13)) + (net 13 /GPIO13)) (pad 34 thru_hole oval (at 40.64 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 35 thru_hole oval (at 43.18 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 31 /GPIO19)) + (net 14 /GPIO19)) (pad 36 thru_hole oval (at 43.18 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 32 /GPIO20)) + (net 15 /GPIO20)) (pad 37 thru_hole oval (at 45.72 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 33 /GPIO26)) + (net 16 /GPIO26)) (pad 38 thru_hole oval (at 45.72 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 34 /GPIO21)) + (net 17 /GPIO21)) (pad 39 thru_hole oval (at 48.26 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (pad 40 thru_hole oval (at 48.26 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 GND)) + (net 7 GND)) (model Socket_Strips.3dshapes/Socket_Strip_Straight_2x20.wrl (at (xyz 0.95 -0.05 0)) (scale (xyz 1 1 1)) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net index 4f4424da..099a89b7 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net @@ -1,15 +1,15 @@ (export (version D) (design - (source /home/ashton/kicad/kicad-library/template/rasberrypi3-gpio/rasberrypi3-gpio.sch) - (date "Sat 22 Oct 2016 09:19:45 PM CDT") - (tool "Eeschema 4.0.2+dfsg1-stable") + (source /home/ashton/kicad/kicad-library/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch) + (date "Fri 28 Oct 2016 09:47:18 PM CDT") + (tool "Eeschema no-vcs-found-undefined") (sheet (number 1) (name /) (tstamps /) (title_block (title) (company) (rev) (date "15 nov 2012") - (source rasberrypi3-gpio.sch) + (source raspberrypi-gpio-40pin.sch) (comment (number 1) (value "")) (comment (number 2) (value "")) (comment (number 3) (value "")) @@ -110,7 +110,7 @@ (library (logical conn) (uri /home/ashton/kicad/kicad-library/library/conn.lib))) (nets - (net (code 1) (name /GPIO24) + (net (code 1) (name "/GPIO24(GEN5)") (node (ref P1) (pin 18))) (net (code 2) (name /GPIO26) (node (ref P1) (pin 37))) @@ -118,43 +118,43 @@ (node (ref P1) (pin 36))) (net (code 4) (name /GPIO21) (node (ref P1) (pin 38))) - (net (code 5) (name /GPIO7) + (net (code 5) (name "/GPIO7(SPI_CE1_N)") (node (ref P1) (pin 26))) (net (code 6) (name /ID_SC) (node (ref P1) (pin 28))) - (net (code 7) (name /GPIO25) + (net (code 7) (name "/GPIO25(GEN6)") (node (ref P1) (pin 22))) - (net (code 8) (name /GPIO8) + (net (code 8) (name "/GPIO8(SPI_CE0_N)") (node (ref P1) (pin 24))) - (net (code 9) (name /GPIO23) + (net (code 9) (name "/GPIO23(GEN4)") (node (ref P1) (pin 16))) (net (code 10) (name /GPIO19) (node (ref P1) (pin 35))) - (net (code 11) (name /GPIO15) + (net (code 11) (name "/GPIO15(RXD0)") (node (ref P1) (pin 10))) - (net (code 12) (name /GPIO18) + (net (code 12) (name "/GPIO18(GEN1)") (node (ref P1) (pin 12))) - (net (code 13) (name /GPIO14) + (net (code 13) (name "/GPIO14(TXD0)") (node (ref P1) (pin 8))) (net (code 14) (name /GPIO12) (node (ref P1) (pin 32))) - (net (code 15) (name /GPIO2) + (net (code 15) (name "/GPIO2(SDA1)") (node (ref P1) (pin 3))) - (net (code 16) (name /GPIO3) + (net (code 16) (name "/GPIO3(SCL1)") (node (ref P1) (pin 5))) - (net (code 17) (name /GPIO4) + (net (code 17) (name "/GPIO4(GCLK)") (node (ref P1) (pin 7))) - (net (code 18) (name /GPIO22) + (net (code 18) (name "/GPIO22(GEN3)") (node (ref P1) (pin 15))) - (net (code 19) (name /GPIO17) + (net (code 19) (name "/GPIO17(GEN0)") (node (ref P1) (pin 11))) - (net (code 20) (name /GPIO27) + (net (code 20) (name "/GPIO27(GEN2)") (node (ref P1) (pin 13))) - (net (code 21) (name /GPIO10) + (net (code 21) (name "/GPIO10(SPI_MOSI)") (node (ref P1) (pin 19))) - (net (code 22) (name /GPIO9) + (net (code 22) (name "/GPIO9(SPI_MISO)") (node (ref P1) (pin 21))) - (net (code 23) (name /GPIO11) + (net (code 23) (name "/GPIO11(SPI_CLK)") (node (ref P1) (pin 23))) (net (code 24) (name /ID_SD) (node (ref P1) (pin 27))) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro index 76694d73..cfa86968 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro @@ -1,4 +1,4 @@ -update=Sun 23 Oct 2016 08:04:49 PM CDT +update=Fri 28 Oct 2016 09:48:42 PM CDT version=1 last_client=kicad [cvpcb] @@ -89,7 +89,7 @@ SpiceUseNetNumbers=0 LabSize=50 [eeschema] version=1 -LibDir= +LibDir=../../library [eeschema/libraries] LibName1=74xgxx LibName2=74xx diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch index ea763990..2eb92196 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch @@ -9,8 +9,6 @@ LIBS:analog_devices LIBS:analog_switches LIBS:atmel LIBS:audio -LIBS:battery_management -LIBS:bbd LIBS:brooktre LIBS:cmos4000 LIBS:cmos_ieee @@ -47,7 +45,6 @@ LIBS:microchip_pic32mcu LIBS:microcontrollers LIBS:motor_drivers LIBS:motorola -LIBS:motors LIBS:msp430 LIBS:nordicsemi LIBS:nxp_armmcu @@ -80,7 +77,6 @@ LIBS:Worldsemi LIBS:Xicor LIBS:xilinx LIBS:Zilog -LIBS:rasberrypi3-gpio-cache EELAYER 25 0 EELAYER END $Descr A4 11693 8268 @@ -245,23 +241,23 @@ Wire Wire Line Wire Wire Line 2850 2600 3950 2600 Text Label 1250 1200 0 50 ~ 0 -GPIO2 +GPIO2(SDA1) Text Label 1250 1300 0 50 ~ 0 -GPIO3 +GPIO3(SCL1) Text Label 1250 1400 0 50 ~ 0 -GPIO4 +GPIO4(GCLK) Text Label 1250 1600 0 50 ~ 0 -GPIO17 +GPIO17(GEN0) Text Label 1250 1700 0 50 ~ 0 -GPIO27 +GPIO27(GEN2) Text Label 1250 1800 0 50 ~ 0 -GPIO22 +GPIO22(GEN3) Text Label 1250 2000 0 50 ~ 0 -GPIO10 +GPIO10(SPI_MOSI) Text Label 1250 2100 0 50 ~ 0 -GPIO9 +GPIO9(SPI_MISO) Text Label 1250 2200 0 50 ~ 0 -GPIO11 +GPIO11(SPI_CLK) Text Label 1250 2400 0 50 ~ 0 ID_SD Text Label 1250 2500 0 50 ~ 0 @@ -283,21 +279,21 @@ GPIO12 Text Label 3950 2400 2 50 ~ 0 ID_SC Text Label 3950 2300 2 50 ~ 0 -GPIO7 +GPIO7(SPI_CE1_N) Text Label 3950 2200 2 50 ~ 0 -GPIO8 +GPIO8(SPI_CE0_N) Text Label 3950 2100 2 50 ~ 0 -GPIO25 +GPIO25(GEN6) Text Label 3950 1900 2 50 ~ 0 -GPIO24 +GPIO24(GEN5) Text Label 3950 1800 2 50 ~ 0 -GPIO23 +GPIO23(GEN4) Text Label 3950 1600 2 50 ~ 0 -GPIO18 +GPIO18(GEN1) Text Label 3950 1500 2 50 ~ 0 -GPIO15 +GPIO15(RXD0) Text Label 3950 1400 2 50 ~ 0 -GPIO14 +GPIO14(TXD0) Wire Wire Line 3000 1300 2850 1300 Connection ~ 3000 1700 From 8e002ca039fe4b752ab64debd1551c465cf303c7 Mon Sep 17 00:00:00 2001 From: Ashton Johnson Date: Tue, 22 Nov 2016 20:21:31 -0600 Subject: [PATCH 4/8] update mechanical holes to newly commited schematic symbols. --- .../raspberrypi-gpio-40pin.kicad_pcb | 184 +++++++++--------- .../raspberrypi-gpio-40pin.net | 180 +++++++++-------- .../raspberrypi-gpio-40pin.pro | 155 ++++++++------- .../raspberrypi-gpio-40pin.sch | 84 ++++---- 4 files changed, 306 insertions(+), 297 deletions(-) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb index c704fa92..58a22cda 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb @@ -1,4 +1,4 @@ -(kicad_pcb (version 20160815) (host pcbnew no-vcs-found-undefined) +(kicad_pcb (version 20160815) (host pcbnew 201611191051+7361~55~ubuntu16.04.1-product) (general (links 10) @@ -9,7 +9,7 @@ (tracks 0) (zones 0) (modules 5) - (nets 35) + (nets 31) ) (page A3) @@ -90,40 +90,36 @@ ) (net 0 "") - (net 1 "Net-(MH1-Pad1)") - (net 2 "Net-(MH2-Pad1)") - (net 3 "Net-(MH3-Pad1)") - (net 4 "Net-(MH4-Pad1)") - (net 5 +3V3) - (net 6 +5V) - (net 7 GND) - (net 8 /ID_SD) - (net 9 /ID_SC) - (net 10 /GPIO5) - (net 11 /GPIO6) - (net 12 /GPIO12) - (net 13 /GPIO13) - (net 14 /GPIO19) - (net 15 /GPIO20) - (net 16 /GPIO26) - (net 17 /GPIO21) - (net 18 "/GPIO2(SDA1)") - (net 19 "/GPIO3(SCL1)") - (net 20 "/GPIO4(GCLK)") - (net 21 "/GPIO14(TXD0)") - (net 22 "/GPIO15(RXD0)") - (net 23 "/GPIO17(GEN0)") - (net 24 "/GPIO18(GEN1)") - (net 25 "/GPIO27(GEN2)") - (net 26 "/GPIO22(GEN3)") - (net 27 "/GPIO23(GEN4)") - (net 28 "/GPIO24(GEN5)") - (net 29 "/GPIO10(SPI_MOSI)") - (net 30 "/GPIO9(SPI_MISO)") - (net 31 "/GPIO25(GEN6)") - (net 32 "/GPIO11(SPI_CLK)") - (net 33 "/GPIO8(SPI_CE0_N)") - (net 34 "/GPIO7(SPI_CE1_N)") + (net 1 +3V3) + (net 2 +5V) + (net 3 GND) + (net 4 /ID_SD) + (net 5 /ID_SC) + (net 6 /GPIO5) + (net 7 /GPIO6) + (net 8 /GPIO12) + (net 9 /GPIO13) + (net 10 /GPIO19) + (net 11 /GPIO20) + (net 12 /GPIO26) + (net 13 /GPIO21) + (net 14 "/GPIO2(SDA1)") + (net 15 "/GPIO3(SCL1)") + (net 16 "/GPIO4(GCLK)") + (net 17 "/GPIO14(TXD0)") + (net 18 "/GPIO15(RXD0)") + (net 19 "/GPIO17(GEN0)") + (net 20 "/GPIO18(GEN1)") + (net 21 "/GPIO27(GEN2)") + (net 22 "/GPIO22(GEN3)") + (net 23 "/GPIO23(GEN4)") + (net 24 "/GPIO24(GEN5)") + (net 25 "/GPIO10(SPI_MOSI)") + (net 26 "/GPIO9(SPI_MISO)") + (net 27 "/GPIO25(GEN6)") + (net 28 "/GPIO11(SPI_CLK)") + (net 29 "/GPIO8(SPI_CE0_N)") + (net 30 "/GPIO7(SPI_CE1_N)") (net_class Default "This is the default net class." (clearance 0.2) @@ -164,10 +160,6 @@ (add_net /ID_SC) (add_net /ID_SD) (add_net GND) - (add_net "Net-(MH1-Pad1)") - (add_net "Net-(MH2-Pad1)") - (add_net "Net-(MH3-Pad1)") - (add_net "Net-(MH4-Pad1)") ) (net_class Power "" @@ -181,12 +173,12 @@ (diff_pair_width 0.2) ) - (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F55) (tstamp 580CBA7A) + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 5834FC00) (tstamp 580CBA7A) (at 203.5 97.5 180) (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") - (path /580C2C2C) - (fp_text reference MH1 (at 0 -3.50012 180) (layer F.SilkS) + (path /5834FB2E) + (fp_text reference MK1 (at 0 -3.50012 180) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) (fp_text value M2.5 (at 0.09906 3.59918 180) (layer F.Fab) @@ -194,15 +186,15 @@ ) (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) (pad 1 thru_hole circle (at 0 0 180) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) - (net 1 "Net-(MH1-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + (solder_mask_margin 1.25) (clearance 1.35)) ) - (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F52) (tstamp 580CBAAE) + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 5834FC0B) (tstamp 580CBAAE) (at 261.5 97.5 180) (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") - (path /580C2C7C) - (fp_text reference MH2 (at 0 -3.50012 180) (layer F.SilkS) + (path /5834FC19) + (fp_text reference MK2 (at 0 -3.50012 180) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) (fp_text value M2.5 (at 0.09906 3.59918 180) (layer F.Fab) @@ -210,15 +202,15 @@ ) (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) (pad 1 thru_hole circle (at 0 0 180) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) - (net 2 "Net-(MH2-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + (solder_mask_margin 1.25) (clearance 1.35)) ) - (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F62) (tstamp 580CBAC8) + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 5834FC1C) (tstamp 580CBAC8) (at 203.5 146.5) (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") - (path /580C2C45) - (fp_text reference MH3 (at 0 -3.50012) (layer F.SilkS) + (path /5834FBEF) + (fp_text reference MK3 (at 0 -3.50012) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) (fp_text value M2.5 (at 0.09906 3.59918) (layer F.Fab) @@ -226,7 +218,7 @@ ) (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) - (net 3 "Net-(MH3-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + (solder_mask_margin 1.25) (clearance 1.35)) ) (module Socket_Strips:Socket_Strip_Straight_2x20 (layer F.Cu) (tedit 580C0D63) (tstamp 580C7F66) @@ -253,85 +245,85 @@ (fp_line (start 1.27 1.27) (end 1.27 -1.27) (layer F.SilkS) (width 0.15)) (fp_line (start -1.55 -1.55) (end -1.55 0) (layer F.SilkS) (width 0.15)) (pad 1 thru_hole rect (at 0 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 5 +3V3)) + (net 1 +3V3)) (pad 2 thru_hole oval (at 0 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 6 +5V)) + (net 2 +5V)) (pad 3 thru_hole oval (at 2.54 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 18 "/GPIO2(SDA1)")) + (net 14 "/GPIO2(SDA1)")) (pad 4 thru_hole oval (at 2.54 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 6 +5V)) + (net 2 +5V)) (pad 5 thru_hole oval (at 5.08 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 19 "/GPIO3(SCL1)")) + (net 15 "/GPIO3(SCL1)")) (pad 6 thru_hole oval (at 5.08 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 7 thru_hole oval (at 7.62 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 20 "/GPIO4(GCLK)")) + (net 16 "/GPIO4(GCLK)")) (pad 8 thru_hole oval (at 7.62 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 21 "/GPIO14(TXD0)")) + (net 17 "/GPIO14(TXD0)")) (pad 9 thru_hole oval (at 10.16 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 10 thru_hole oval (at 10.16 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 22 "/GPIO15(RXD0)")) + (net 18 "/GPIO15(RXD0)")) (pad 11 thru_hole oval (at 12.7 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 23 "/GPIO17(GEN0)")) + (net 19 "/GPIO17(GEN0)")) (pad 12 thru_hole oval (at 12.7 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 24 "/GPIO18(GEN1)")) + (net 20 "/GPIO18(GEN1)")) (pad 13 thru_hole oval (at 15.24 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 25 "/GPIO27(GEN2)")) + (net 21 "/GPIO27(GEN2)")) (pad 14 thru_hole oval (at 15.24 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 15 thru_hole oval (at 17.78 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 26 "/GPIO22(GEN3)")) + (net 22 "/GPIO22(GEN3)")) (pad 16 thru_hole oval (at 17.78 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 27 "/GPIO23(GEN4)")) + (net 23 "/GPIO23(GEN4)")) (pad 17 thru_hole oval (at 20.32 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 5 +3V3)) + (net 1 +3V3)) (pad 18 thru_hole oval (at 20.32 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 28 "/GPIO24(GEN5)")) + (net 24 "/GPIO24(GEN5)")) (pad 19 thru_hole oval (at 22.86 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 29 "/GPIO10(SPI_MOSI)")) + (net 25 "/GPIO10(SPI_MOSI)")) (pad 20 thru_hole oval (at 22.86 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 21 thru_hole oval (at 25.4 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 30 "/GPIO9(SPI_MISO)")) + (net 26 "/GPIO9(SPI_MISO)")) (pad 22 thru_hole oval (at 25.4 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 31 "/GPIO25(GEN6)")) + (net 27 "/GPIO25(GEN6)")) (pad 23 thru_hole oval (at 27.94 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 32 "/GPIO11(SPI_CLK)")) + (net 28 "/GPIO11(SPI_CLK)")) (pad 24 thru_hole oval (at 27.94 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 33 "/GPIO8(SPI_CE0_N)")) + (net 29 "/GPIO8(SPI_CE0_N)")) (pad 25 thru_hole oval (at 30.48 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 26 thru_hole oval (at 30.48 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 34 "/GPIO7(SPI_CE1_N)")) + (net 30 "/GPIO7(SPI_CE1_N)")) (pad 27 thru_hole oval (at 33.02 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 8 /ID_SD)) + (net 4 /ID_SD)) (pad 28 thru_hole oval (at 33.02 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 /ID_SC)) + (net 5 /ID_SC)) (pad 29 thru_hole oval (at 35.56 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 10 /GPIO5)) + (net 6 /GPIO5)) (pad 30 thru_hole oval (at 35.56 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 31 thru_hole oval (at 38.1 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 11 /GPIO6)) + (net 7 /GPIO6)) (pad 32 thru_hole oval (at 38.1 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 12 /GPIO12)) + (net 8 /GPIO12)) (pad 33 thru_hole oval (at 40.64 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 13 /GPIO13)) + (net 9 /GPIO13)) (pad 34 thru_hole oval (at 40.64 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 35 thru_hole oval (at 43.18 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 14 /GPIO19)) + (net 10 /GPIO19)) (pad 36 thru_hole oval (at 43.18 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 15 /GPIO20)) + (net 11 /GPIO20)) (pad 37 thru_hole oval (at 45.72 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 16 /GPIO26)) + (net 12 /GPIO26)) (pad 38 thru_hole oval (at 45.72 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 17 /GPIO21)) + (net 13 /GPIO21)) (pad 39 thru_hole oval (at 48.26 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (pad 40 thru_hole oval (at 48.26 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 GND)) + (net 3 GND)) (model Socket_Strips.3dshapes/Socket_Strip_Straight_2x20.wrl (at (xyz 0.95 -0.05 0)) (scale (xyz 1 1 1)) @@ -339,12 +331,12 @@ ) ) - (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 580C1F72) (tstamp 580CBAD7) + (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 5834FC15) (tstamp 580CBAD7) (at 261.5 146.5) (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") (tags "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") - (path /580C2CAA) - (fp_text reference MH4 (at 0 -3.50012) (layer F.SilkS) + (path /5834FC4F) + (fp_text reference MK4 (at 0 -3.50012) (layer F.SilkS) (effects (font (size 1 1) (thickness 0.15))) ) (fp_text value M2.5 (at 0.09906 3.59918) (layer F.Fab) @@ -352,7 +344,7 @@ ) (fp_circle (center 0 0) (end 2.5 0) (layer Cmts.User) (width 0.381)) (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 2.5) (layers *.Cu *.Mask) - (net 4 "Net-(MH4-Pad1)") (solder_mask_margin 1.25) (clearance 1.35)) + (solder_mask_margin 1.25) (clearance 1.35)) ) (gr_line (start 244 146) (end 244 131) (layer Edge.Cuts) (width 0.1)) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net index 099a89b7..e94a1aff 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net @@ -1,8 +1,8 @@ (export (version D) (design (source /home/ashton/kicad/kicad-library/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch) - (date "Fri 28 Oct 2016 09:47:18 PM CDT") - (tool "Eeschema no-vcs-found-undefined") + (date "Tue 22 Nov 2016 08:17:38 PM CST") + (tool "Eeschema 201611191051+7361~55~ubuntu16.04.1-product") (sheet (number 1) (name /) (tstamps /) (title_block (title) @@ -22,30 +22,30 @@ (libsource (lib conn) (part CONN_02X20)) (sheetpath (names /) (tstamps /)) (tstamp 580C18BB)) - (comp (ref MH1) + (comp (ref MK1) (value M2.5) - (footprint Mounting_Holes:MountingHole_2-5mm) - (libsource (lib device) (part MOUNTING_HOLE)) + (footprint Mounting_Holes:MountingHole_2.5mm) + (libsource (lib mechanical) (part Mounting_Hole)) (sheetpath (names /) (tstamps /)) - (tstamp 580C2C2C)) - (comp (ref MH3) + (tstamp 5834FB2E)) + (comp (ref MK3) (value M2.5) - (footprint Mounting_Holes:MountingHole_2-5mm) - (libsource (lib device) (part MOUNTING_HOLE)) + (footprint Mounting_Holes:MountingHole_2.5mm) + (libsource (lib mechanical) (part Mounting_Hole)) (sheetpath (names /) (tstamps /)) - (tstamp 580C2C45)) - (comp (ref MH2) + (tstamp 5834FBEF)) + (comp (ref MK2) (value M2.5) - (footprint Mounting_Holes:MountingHole_2-5mm) - (libsource (lib device) (part MOUNTING_HOLE)) + (footprint Mounting_Holes:MountingHole_2.5mm) + (libsource (lib mechanical) (part Mounting_Hole)) (sheetpath (names /) (tstamps /)) - (tstamp 580C2C7C)) - (comp (ref MH4) + (tstamp 5834FC19)) + (comp (ref MK4) (value M2.5) - (footprint Mounting_Holes:MountingHole_2-5mm) - (libsource (lib device) (part MOUNTING_HOLE)) + (footprint Mounting_Holes:MountingHole_2.5mm) + (libsource (lib mechanical) (part Mounting_Hole)) (sheetpath (names /) (tstamps /)) - (tstamp 580C2CAA))) + (tstamp 5834FC4F))) (libparts (libpart (lib conn) (part CONN_02X20) (description "Connector, double row, 02x20") @@ -98,93 +98,87 @@ (pin (num 38) (name P38) (type passive)) (pin (num 39) (name P39) (type passive)) (pin (num 40) (name P40) (type passive)))) - (libpart (lib device) (part MOUNTING_HOLE) + (libpart (lib mechanical) (part Mounting_Hole) + (description "Mounting Hole without connection") + (footprints + (fp Mounting?Hole*) + (fp Hole*)) (fields - (field (name Reference) MH) - (field (name Value) MOUNTING_HOLE)) - (pins - (pin (num 1) (name ~) (type input))))) + (field (name Reference) MK) + (field (name Value) Mounting_Hole)))) (libraries - (library (logical device) - (uri /home/ashton/kicad/kicad-library/library/device.lib)) + (library (logical mechanical) + (uri /home/ashton/kicad/kicad-library/library/mechanical.lib)) (library (logical conn) (uri /home/ashton/kicad/kicad-library/library/conn.lib))) (nets - (net (code 1) (name "/GPIO24(GEN5)") - (node (ref P1) (pin 18))) - (net (code 2) (name /GPIO26) - (node (ref P1) (pin 37))) - (net (code 3) (name /GPIO20) - (node (ref P1) (pin 36))) - (net (code 4) (name /GPIO21) - (node (ref P1) (pin 38))) - (net (code 5) (name "/GPIO7(SPI_CE1_N)") - (node (ref P1) (pin 26))) - (net (code 6) (name /ID_SC) - (node (ref P1) (pin 28))) - (net (code 7) (name "/GPIO25(GEN6)") - (node (ref P1) (pin 22))) - (net (code 8) (name "/GPIO8(SPI_CE0_N)") - (node (ref P1) (pin 24))) - (net (code 9) (name "/GPIO23(GEN4)") - (node (ref P1) (pin 16))) - (net (code 10) (name /GPIO19) - (node (ref P1) (pin 35))) - (net (code 11) (name "/GPIO15(RXD0)") - (node (ref P1) (pin 10))) - (net (code 12) (name "/GPIO18(GEN1)") - (node (ref P1) (pin 12))) - (net (code 13) (name "/GPIO14(TXD0)") - (node (ref P1) (pin 8))) - (net (code 14) (name /GPIO12) - (node (ref P1) (pin 32))) - (net (code 15) (name "/GPIO2(SDA1)") - (node (ref P1) (pin 3))) - (net (code 16) (name "/GPIO3(SCL1)") - (node (ref P1) (pin 5))) - (net (code 17) (name "/GPIO4(GCLK)") - (node (ref P1) (pin 7))) - (net (code 18) (name "/GPIO22(GEN3)") - (node (ref P1) (pin 15))) - (net (code 19) (name "/GPIO17(GEN0)") - (node (ref P1) (pin 11))) - (net (code 20) (name "/GPIO27(GEN2)") - (node (ref P1) (pin 13))) - (net (code 21) (name "/GPIO10(SPI_MOSI)") - (node (ref P1) (pin 19))) - (net (code 22) (name "/GPIO9(SPI_MISO)") - (node (ref P1) (pin 21))) - (net (code 23) (name "/GPIO11(SPI_CLK)") + (net (code 1) (name "/GPIO11(SPI_CLK)") (node (ref P1) (pin 23))) - (net (code 24) (name /ID_SD) - (node (ref P1) (pin 27))) - (net (code 25) (name /GPIO5) - (node (ref P1) (pin 29))) - (net (code 26) (name /GPIO6) - (node (ref P1) (pin 31))) - (net (code 27) (name /GPIO13) + (net (code 2) (name "/GPIO15(RXD0)") + (node (ref P1) (pin 10))) + (net (code 3) (name "/GPIO24(GEN5)") + (node (ref P1) (pin 18))) + (net (code 4) (name "/GPIO23(GEN4)") + (node (ref P1) (pin 16))) + (net (code 5) (name "/GPIO8(SPI_CE0_N)") + (node (ref P1) (pin 24))) + (net (code 6) (name "/GPIO25(GEN6)") + (node (ref P1) (pin 22))) + (net (code 7) (name /ID_SC) + (node (ref P1) (pin 28))) + (net (code 8) (name "/GPIO7(SPI_CE1_N)") + (node (ref P1) (pin 26))) + (net (code 9) (name /GPIO21) + (node (ref P1) (pin 38))) + (net (code 10) (name /GPIO20) + (node (ref P1) (pin 36))) + (net (code 11) (name /GPIO26) + (node (ref P1) (pin 37))) + (net (code 12) (name /GPIO19) + (node (ref P1) (pin 35))) + (net (code 13) (name /GPIO13) (node (ref P1) (pin 33))) - (net (code 28) (name "Net-(MH1-Pad1)") - (node (ref MH1) (pin 1))) - (net (code 29) (name "Net-(MH3-Pad1)") - (node (ref MH3) (pin 1))) - (net (code 30) (name "Net-(MH2-Pad1)") - (node (ref MH2) (pin 1))) - (net (code 31) (name "Net-(MH4-Pad1)") - (node (ref MH4) (pin 1))) - (net (code 32) (name +3V3) + (net (code 14) (name /GPIO6) + (node (ref P1) (pin 31))) + (net (code 15) (name /GPIO5) + (node (ref P1) (pin 29))) + (net (code 16) (name /ID_SD) + (node (ref P1) (pin 27))) + (net (code 17) (name "/GPIO18(GEN1)") + (node (ref P1) (pin 12))) + (net (code 18) (name "/GPIO9(SPI_MISO)") + (node (ref P1) (pin 21))) + (net (code 19) (name "/GPIO10(SPI_MOSI)") + (node (ref P1) (pin 19))) + (net (code 20) (name "/GPIO22(GEN3)") + (node (ref P1) (pin 15))) + (net (code 21) (name "/GPIO27(GEN2)") + (node (ref P1) (pin 13))) + (net (code 22) (name "/GPIO17(GEN0)") + (node (ref P1) (pin 11))) + (net (code 23) (name "/GPIO4(GCLK)") + (node (ref P1) (pin 7))) + (net (code 24) (name "/GPIO3(SCL1)") + (node (ref P1) (pin 5))) + (net (code 25) (name "/GPIO2(SDA1)") + (node (ref P1) (pin 3))) + (net (code 26) (name +3V3) (node (ref P1) (pin 1)) (node (ref P1) (pin 17))) - (net (code 33) (name +5V) + (net (code 27) (name "/GPIO14(TXD0)") + (node (ref P1) (pin 8))) + (net (code 28) (name /GPIO12) + (node (ref P1) (pin 32))) + (net (code 29) (name +5V) (node (ref P1) (pin 4)) (node (ref P1) (pin 2))) - (net (code 34) (name GND) + (net (code 30) (name GND) (node (ref P1) (pin 39)) - (node (ref P1) (pin 40)) (node (ref P1) (pin 25)) - (node (ref P1) (pin 14)) (node (ref P1) (pin 34)) - (node (ref P1) (pin 6)) - (node (ref P1) (pin 9)) + (node (ref P1) (pin 14)) + (node (ref P1) (pin 40)) + (node (ref P1) (pin 30)) (node (ref P1) (pin 20)) - (node (ref P1) (pin 30))))) \ No newline at end of file + (node (ref P1) (pin 9)) + (node (ref P1) (pin 6))))) \ No newline at end of file diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro index cfa86968..2f0834d7 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro @@ -1,4 +1,4 @@ -update=Fri 28 Oct 2016 09:48:42 PM CDT +update=Tue 22 Nov 2016 08:12:22 PM CST version=1 last_client=kicad [cvpcb] @@ -87,6 +87,8 @@ NetFmtName= SpiceForceRefPrefix=0 SpiceUseNetNumbers=0 LabSize=50 +[general] +version=1 [eeschema] version=1 LibDir=../../library @@ -101,73 +103,84 @@ LibName7=analog_devices LibName8=analog_switches LibName9=atmel LibName10=audio -LibName11=brooktre -LibName12=cmos4000 -LibName13=cmos_ieee -LibName14=conn -LibName15=contrib -LibName16=cypress -LibName17=dc-dc -LibName18=device -LibName19=digital-audio -LibName20=diode -LibName21=display -LibName22=dsp -LibName23=elec-unifil -LibName24=ESD_Protection -LibName25=ftdi -LibName26=gennum -LibName27=graphic -LibName28=hc11 -LibName29=intel -LibName30=interface -LibName31=ir -LibName32=Lattice -LibName33=linear -LibName34=logo -LibName35=maxim -LibName36=memory -LibName37=microchip -LibName38=microchip_dspic33dsc -LibName39=microchip_pic10mcu -LibName40=microchip_pic12mcu -LibName41=microchip_pic16mcu -LibName42=microchip_pic18mcu -LibName43=microchip_pic32mcu -LibName44=microcontrollers -LibName45=motor_drivers -LibName46=motorola -LibName47=msp430 -LibName48=nordicsemi -LibName49=nxp_armmcu -LibName50=onsemi -LibName51=opto -LibName52=Oscillators -LibName53=philips -LibName54=power -LibName55=powerint -LibName56=Power_Management -LibName57=pspice -LibName58=references -LibName59=regul -LibName60=relays -LibName61=rfcom -LibName62=sensors -LibName63=silabs -LibName64=siliconi -LibName65=stm8 -LibName66=stm32 -LibName67=supertex -LibName68=switches -LibName69=texas -LibName70=transf -LibName71=transistors -LibName72=ttl_ieee -LibName73=valves -LibName74=video -LibName75=Worldsemi -LibName76=Xicor -LibName77=xilinx -LibName78=Zilog -[general] -version=1 +LibName11=battery_management +LibName12=bbd +LibName13=brooktre +LibName14=cmos4000 +LibName15=cmos_ieee +LibName16=conn +LibName17=contrib +LibName18=cypress +LibName19=dc-dc +LibName20=device +LibName21=device_BACKUP_1978 +LibName22=device_BACKUP_2034 +LibName23=device_BASE_1978 +LibName24=device_BASE_2034 +LibName25=device_LOCAL_1978 +LibName26=device_LOCAL_2034 +LibName27=device_REMOTE_1978 +LibName28=device_REMOTE_2034 +LibName29=digital-audio +LibName30=diode +LibName31=display +LibName32=dsp +LibName33=elec-unifil +LibName34=ESD_Protection +LibName35=ftdi +LibName36=gennum +LibName37=graphic +LibName38=hc11 +LibName39=intel +LibName40=interface +LibName41=ir +LibName42=Lattice +LibName43=linear +LibName44=logo +LibName45=maxim +LibName46=mechanical +LibName47=memory +LibName48=microchip +LibName49=microchip_dspic33dsc +LibName50=microchip_pic10mcu +LibName51=microchip_pic12mcu +LibName52=microchip_pic16mcu +LibName53=microchip_pic18mcu +LibName54=microchip_pic32mcu +LibName55=microcontrollers +LibName56=motor_drivers +LibName57=motorola +LibName58=motors +LibName59=msp430 +LibName60=nordicsemi +LibName61=nxp_armmcu +LibName62=onsemi +LibName63=opto +LibName64=Oscillators +LibName65=philips +LibName66=power +LibName67=powerint +LibName68=Power_Management +LibName69=pspice +LibName70=references +LibName71=regul +LibName72=relays +LibName73=rfcom +LibName74=sensors +LibName75=silabs +LibName76=siliconi +LibName77=stm8 +LibName78=stm32 +LibName79=supertex +LibName80=switches +LibName81=texas +LibName82=transf +LibName83=transistors +LibName84=ttl_ieee +LibName85=valves +LibName86=video +LibName87=wiznet +LibName88=Worldsemi +LibName89=Xicor +LibName90=xilinx +LibName91=Zilog diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch index 2eb92196..653f5509 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch @@ -9,6 +9,8 @@ LIBS:analog_devices LIBS:analog_switches LIBS:atmel LIBS:audio +LIBS:battery_management +LIBS:bbd LIBS:brooktre LIBS:cmos4000 LIBS:cmos_ieee @@ -17,6 +19,12 @@ LIBS:contrib LIBS:cypress LIBS:dc-dc LIBS:device +LIBS:device_BASE_1978 +LIBS:device_BASE_2034 +LIBS:device_LOCAL_1978 +LIBS:device_LOCAL_2034 +LIBS:device_REMOTE_1978 +LIBS:device_REMOTE_2034 LIBS:digital-audio LIBS:diode LIBS:display @@ -34,6 +42,7 @@ LIBS:Lattice LIBS:linear LIBS:logo LIBS:maxim +LIBS:mechanical LIBS:memory LIBS:microchip LIBS:microchip_dspic33dsc @@ -45,6 +54,7 @@ LIBS:microchip_pic32mcu LIBS:microcontrollers LIBS:motor_drivers LIBS:motorola +LIBS:motors LIBS:msp430 LIBS:nordicsemi LIBS:nxp_armmcu @@ -73,11 +83,13 @@ LIBS:transistors LIBS:ttl_ieee LIBS:valves LIBS:video +LIBS:wiznet LIBS:Worldsemi LIBS:Xicor LIBS:xilinx LIBS:Zilog -EELAYER 25 0 +LIBS:raspberrypi-gpio-40pin-cache +EELAYER 26 0 EELAYER END $Descr A4 11693 8268 encoding utf-8 @@ -300,51 +312,49 @@ Connection ~ 3000 1700 Text Notes 650 7600 0 50 ~ 0 ID_SD and ID_SC PINS:\nThese pins are reserved for HAT ID EEPROM.\n\nAt boot time this I2C interface will be\ninterrogated to look for an EEPROM\nthat identifes the attached board and\nallows automagic setup of the GPIOs\n(and optionally, Linux drivers).\n\nDO NOT USE these pins for anything other\nthan attaching an I2C ID EEPROM. Leave\nunconnected if ID EEPROM not required. $Comp -L MOUNTING_HOLE MH1 -U 1 1 580C2C2C -P 2950 6900 -F 0 "MH1" H 2950 7050 50 0000 C CNN -F 1 "M2.5" H 3100 6850 50 0000 C CNN -F 2 "Mounting_Holes:MountingHole_2-5mm" H 2950 6900 50 0001 C CNN -F 3 "" H 2950 6900 50 0000 C CNN - 1 2950 6900 +L Mounting_Hole MK1 +U 1 1 5834FB2E +P 3000 7200 +F 0 "MK1" H 3100 7246 50 0000 L CNN +F 1 "M2.5" H 3100 7155 50 0000 L CNN +F 2 "Mounting_Holes:MountingHole_2.5mm" H 3000 7200 60 0001 C CNN +F 3 "" H 3000 7200 60 0001 C CNN + 1 3000 7200 1 0 0 -1 $EndComp $Comp -L MOUNTING_HOLE MH3 -U 1 1 580C2C45 -P 3650 6900 -F 0 "MH3" H 3650 7050 50 0000 C CNN -F 1 "M2.5" H 3800 6850 50 0000 C CNN -F 2 "Mounting_Holes:MountingHole_2-5mm" H 3650 6900 50 0001 C CNN -F 3 "" H 3650 6900 50 0000 C CNN - 1 3650 6900 +L Mounting_Hole MK3 +U 1 1 5834FBEF +P 3450 7200 +F 0 "MK3" H 3550 7246 50 0000 L CNN +F 1 "M2.5" H 3550 7155 50 0000 L CNN +F 2 "Mounting_Holes:MountingHole_2.5mm" H 3450 7200 60 0001 C CNN +F 3 "" H 3450 7200 60 0001 C CNN + 1 3450 7200 1 0 0 -1 $EndComp $Comp -L MOUNTING_HOLE MH2 -U 1 1 580C2C7C -P 2950 7400 -F 0 "MH2" H 2950 7550 50 0000 C CNN -F 1 "M2.5" H 3100 7350 50 0000 C CNN -F 2 "Mounting_Holes:MountingHole_2-5mm" H 2950 7400 50 0001 C CNN -F 3 "" H 2950 7400 50 0000 C CNN - 1 2950 7400 +L Mounting_Hole MK2 +U 1 1 5834FC19 +P 3000 7400 +F 0 "MK2" H 3100 7446 50 0000 L CNN +F 1 "M2.5" H 3100 7355 50 0000 L CNN +F 2 "Mounting_Holes:MountingHole_2.5mm" H 3000 7400 60 0001 C CNN +F 3 "" H 3000 7400 60 0001 C CNN + 1 3000 7400 1 0 0 -1 $EndComp $Comp -L MOUNTING_HOLE MH4 -U 1 1 580C2CAA -P 3650 7400 -F 0 "MH4" H 3650 7550 50 0000 C CNN -F 1 "M2.5" H 3800 7350 50 0000 C CNN -F 2 "Mounting_Holes:MountingHole_2-5mm" H 3650 7400 50 0001 C CNN -F 3 "" H 3650 7400 50 0000 C CNN - 1 3650 7400 +L Mounting_Hole MK4 +U 1 1 5834FC4F +P 3450 7400 +F 0 "MK4" H 3550 7446 50 0000 L CNN +F 1 "M2.5" H 3550 7355 50 0000 L CNN +F 2 "Mounting_Holes:MountingHole_2.5mm" H 3450 7400 60 0001 C CNN +F 3 "" H 3450 7400 60 0001 C CNN + 1 3450 7400 1 0 0 -1 $EndComp -NoConn ~ 2850 7050 -NoConn ~ 3550 7050 -NoConn ~ 3550 7550 -NoConn ~ 2850 7550 +Text Notes 3000 7050 0 50 ~ 0 +Mounting Holes $EndSCHEMATC From 098efe3d2434ae28ea72bbfd2098d758af6895de Mon Sep 17 00:00:00 2001 From: Ashton Johnson Date: Sat, 14 Jan 2017 15:37:19 -0600 Subject: [PATCH 5/8] fixed typo in brd.png --- template/raspberrypi-gpio-40pin/meta/brd.png | Bin 46690 -> 27959 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/template/raspberrypi-gpio-40pin/meta/brd.png b/template/raspberrypi-gpio-40pin/meta/brd.png index 48e393fcc01b1b078bc9bbfd2e77815cd7e9dcc5..cb50718ab97168c44c6ea7a2aa7cba1d12f14c07 100755 GIT binary patch literal 27959 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 cDPfCR Date: Sun, 15 Jan 2017 13:43:04 -0600 Subject: [PATCH 6/8] fixed typo in pcb comments --- .../raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb index 58a22cda..dcf26551 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb @@ -395,7 +395,7 @@ (gr_line (start 287 109.455925) (end 269.9 109.455925) (layer Dwgs.User) (width 0.1)) (gr_line (start 287 96.355925) (end 287 109.455925) (layer Dwgs.User) (width 0.1)) (gr_line (start 269.9 96.355925) (end 287 96.355925) (layer Dwgs.User) (width 0.1)) - (gr_text "RASPBERRY-PI 40-PIN ADDON BOARD\nVIEW FROM TOP\nNOTE: P1 SHOULD BE FITTED ON THE REVERSE OF THE BOARD\n\nADD EDGE CUTS FROM CAMERA AND DISIPLAY PORTS AS REQUIRED" (at 200 160.16) (layer Dwgs.User) + (gr_text "RASPBERRY-PI 40-PIN ADDON BOARD\nVIEW FROM TOP\nNOTE: P1 SHOULD BE FITTED ON THE REVERSE OF THE BOARD\n\nADD EDGE CUTS FROM CAMERA AND DISPLAY PORTS AS REQUIRED" (at 200 160.16) (layer Dwgs.User) (effects (font (size 2 1.7) (thickness 0.12)) (justify left)) ) From 7c89fb0ac22d766cf78ea7a49d8f48670264b27d Mon Sep 17 00:00:00 2001 From: ashtonchase Date: Mon, 4 Sep 2017 08:00:09 -0500 Subject: [PATCH 7/8] Incorporated feedback. 1. Updated socket strip footprint. 2. Moved socket strip to bottom of board, pin 1 inward. 3. Corrected pinout. 4. 5. removed unused libraries. --- .../raspberrypi-gpio-40pin.cmp | 41 ++- .../raspberrypi-gpio-40pin.kicad_pcb | 311 +++++++++--------- .../raspberrypi-gpio-40pin.net | 270 +++++++-------- .../raspberrypi-gpio-40pin.pro | 108 +----- .../raspberrypi-gpio-40pin.sch | 276 ++++++---------- 5 files changed, 414 insertions(+), 592 deletions(-) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp index ce0a33b0..883b6071 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.cmp @@ -1,10 +1,43 @@ -Cmp-Mod V01 Created by CvPcb (2012-11-15 BZR 3804)-testing date = 15/11/2012 21:23:25 +Cmp-Mod V01 Created by PcbNew date = Mon 04 Sep 2017 07:48:59 AM CDT BeginCmp -TimeStamp = /50A55ABA; +TimeStamp = 580CBA7A +Path = /5834FB2E +Reference = MK1; +ValeurCmp = M2.5; +IdModule = Mounting_Holes:MountingHole_2-5mm; +EndCmp + +BeginCmp +TimeStamp = 580CBAAE +Path = /5834FC19 +Reference = MK2; +ValeurCmp = M2.5; +IdModule = Mounting_Holes:MountingHole_2-5mm; +EndCmp + +BeginCmp +TimeStamp = 580CBAC8 +Path = /5834FBEF +Reference = MK3; +ValeurCmp = M2.5; +IdModule = Mounting_Holes:MountingHole_2-5mm; +EndCmp + +BeginCmp +TimeStamp = 580C7F66 +Path = /580C18BB Reference = P1; -ValeurCmp = CONN_13X2; -IdModule = pin_array_13x2; +ValeurCmp = CONN_02X20; +IdModule = Socket_Strips:Socket_Strip_Straight_2x20; +EndCmp + +BeginCmp +TimeStamp = 580CBAD7 +Path = /5834FC4F +Reference = MK4; +ValeurCmp = M2.5; +IdModule = Mounting_Holes:MountingHole_2-5mm; EndCmp EndListe diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb index dcf26551..a5d03aa1 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.kicad_pcb @@ -1,15 +1,15 @@ -(kicad_pcb (version 20160815) (host pcbnew 201611191051+7361~55~ubuntu16.04.1-product) +(kicad_pcb (version 20170123) (host pcbnew "(2017-02-21 revision 35a8d78)-master") (general - (links 10) - (no_connects 10) - (area 199.949999 93.949999 265.050001 150.050001) + (links 9) + (no_connects 9) + (area 199.949999 88.772619 287.050001 168.05) (thickness 1.6) (drawings 39) (tracks 0) (zones 0) (modules 5) - (nets 31) + (nets 32) ) (page A3) @@ -97,29 +97,30 @@ (net 5 /ID_SC) (net 6 /GPIO5) (net 7 /GPIO6) - (net 8 /GPIO12) - (net 9 /GPIO13) - (net 10 /GPIO19) - (net 11 /GPIO20) - (net 12 /GPIO26) - (net 13 /GPIO21) - (net 14 "/GPIO2(SDA1)") - (net 15 "/GPIO3(SCL1)") - (net 16 "/GPIO4(GCLK)") - (net 17 "/GPIO14(TXD0)") - (net 18 "/GPIO15(RXD0)") - (net 19 "/GPIO17(GEN0)") - (net 20 "/GPIO18(GEN1)") - (net 21 "/GPIO27(GEN2)") - (net 22 "/GPIO22(GEN3)") - (net 23 "/GPIO23(GEN4)") - (net 24 "/GPIO24(GEN5)") - (net 25 "/GPIO10(SPI_MOSI)") - (net 26 "/GPIO9(SPI_MISO)") - (net 27 "/GPIO25(GEN6)") - (net 28 "/GPIO11(SPI_CLK)") - (net 29 "/GPIO8(SPI_CE0_N)") - (net 30 "/GPIO7(SPI_CE1_N)") + (net 8 /GPIO26) + (net 9 "/GPIO2(SDA1)") + (net 10 "/GPIO3(SCL1)") + (net 11 "/GPIO4(GCLK)") + (net 12 "/GPIO14(TXD0)") + (net 13 "/GPIO15(RXD0)") + (net 14 "/GPIO17(GEN0)") + (net 15 "/GPIO27(GEN2)") + (net 16 "/GPIO22(GEN3)") + (net 17 "/GPIO23(GEN4)") + (net 18 "/GPIO24(GEN5)") + (net 19 "/GPIO25(GEN6)") + (net 20 "/GPIO18(GEN1)(PWM0)") + (net 21 "/GPIO10(SPI0_MOSI)") + (net 22 "/GPIO9(SPI0_MISO)") + (net 23 "/GPIO11(SPI0_SCK)") + (net 24 "/GPIO8(SPI0_CE_N)") + (net 25 "/GPIO7(SPI1_CE_N)") + (net 26 "/GPIO12(PWM0)") + (net 27 "/GPIO13(PWM1)") + (net 28 "/GPIO19(SPI1_MISO)") + (net 29 /GPIO16) + (net 30 "/GPIO20(SPI1_MOSI)") + (net 31 "/GPIO21(SPI1_SCK)") (net_class Default "This is the default net class." (clearance 0.2) @@ -128,22 +129,21 @@ (via_drill 0.6) (uvia_dia 0.5) (uvia_drill 0.1) - (diff_pair_gap 0.25) - (diff_pair_width 0.2) (add_net +3V3) (add_net +5V) - (add_net "/GPIO10(SPI_MOSI)") - (add_net "/GPIO11(SPI_CLK)") - (add_net /GPIO12) - (add_net /GPIO13) + (add_net "/GPIO10(SPI0_MOSI)") + (add_net "/GPIO11(SPI0_SCK)") + (add_net "/GPIO12(PWM0)") + (add_net "/GPIO13(PWM1)") (add_net "/GPIO14(TXD0)") (add_net "/GPIO15(RXD0)") + (add_net /GPIO16) (add_net "/GPIO17(GEN0)") - (add_net "/GPIO18(GEN1)") - (add_net /GPIO19) + (add_net "/GPIO18(GEN1)(PWM0)") + (add_net "/GPIO19(SPI1_MISO)") (add_net "/GPIO2(SDA1)") - (add_net /GPIO20) - (add_net /GPIO21) + (add_net "/GPIO20(SPI1_MOSI)") + (add_net "/GPIO21(SPI1_SCK)") (add_net "/GPIO22(GEN3)") (add_net "/GPIO23(GEN4)") (add_net "/GPIO24(GEN5)") @@ -154,9 +154,9 @@ (add_net "/GPIO4(GCLK)") (add_net /GPIO5) (add_net /GPIO6) - (add_net "/GPIO7(SPI_CE1_N)") - (add_net "/GPIO8(SPI_CE0_N)") - (add_net "/GPIO9(SPI_MISO)") + (add_net "/GPIO7(SPI1_CE_N)") + (add_net "/GPIO8(SPI0_CE_N)") + (add_net "/GPIO9(SPI0_MISO)") (add_net /ID_SC) (add_net /ID_SD) (add_net GND) @@ -169,8 +169,123 @@ (via_drill 0.7) (uvia_dia 0.5) (uvia_drill 0.1) - (diff_pair_gap 0.25) - (diff_pair_width 0.2) + ) + + (module Socket_Strips:Socket_Strip_Straight_2x20_Pitch2.54mm (layer B.Cu) (tedit 58CD544A) (tstamp 580C7F66) + (at 208.37 98.77 270) + (descr "Through hole straight socket strip, 2x20, 2.54mm pitch, double rows") + (tags "Through hole socket strip THT 2x20 2.54mm double row") + (path /59AD464A) + (fp_text reference P1 (at 2.208 -0.012 180) (layer B.SilkS) + (effects (font (size 1 1) (thickness 0.15)) (justify mirror)) + ) + (fp_text value Conn_02x20_Odd_Even (at -1.27 -50.59 270) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.15)) (justify mirror)) + ) + (fp_line (start -3.81 1.27) (end -3.81 -49.53) (layer B.Fab) (width 0.1)) + (fp_line (start -3.81 -49.53) (end 1.27 -49.53) (layer B.Fab) (width 0.1)) + (fp_line (start 1.27 -49.53) (end 1.27 1.27) (layer B.Fab) (width 0.1)) + (fp_line (start 1.27 1.27) (end -3.81 1.27) (layer B.Fab) (width 0.1)) + (fp_line (start 1.33 -1.27) (end 1.33 -49.59) (layer B.SilkS) (width 0.12)) + (fp_line (start 1.33 -49.59) (end -3.87 -49.59) (layer B.SilkS) (width 0.12)) + (fp_line (start -3.87 -49.59) (end -3.87 1.33) (layer B.SilkS) (width 0.12)) + (fp_line (start -3.87 1.33) (end -1.27 1.33) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.27 1.33) (end -1.27 -1.27) (layer B.SilkS) (width 0.12)) + (fp_line (start -1.27 -1.27) (end 1.33 -1.27) (layer B.SilkS) (width 0.12)) + (fp_line (start 1.33 0) (end 1.33 1.33) (layer B.SilkS) (width 0.12)) + (fp_line (start 1.33 1.33) (end 0.06 1.33) (layer B.SilkS) (width 0.12)) + (fp_line (start -4.35 1.8) (end -4.35 -50.05) (layer B.CrtYd) (width 0.05)) + (fp_line (start -4.35 -50.05) (end 1.8 -50.05) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.8 -50.05) (end 1.8 1.8) (layer B.CrtYd) (width 0.05)) + (fp_line (start 1.8 1.8) (end -4.35 1.8) (layer B.CrtYd) (width 0.05)) + (fp_text user %R (at -1.27 2.33 270) (layer B.Fab) + (effects (font (size 1 1) (thickness 0.15)) (justify mirror)) + ) + (pad 1 thru_hole rect (at 0 0 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 1 +3V3)) + (pad 2 thru_hole oval (at -2.54 0 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 2 +5V)) + (pad 3 thru_hole oval (at 0 -2.54 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 9 "/GPIO2(SDA1)")) + (pad 4 thru_hole oval (at -2.54 -2.54 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 2 +5V)) + (pad 5 thru_hole oval (at 0 -5.08 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 10 "/GPIO3(SCL1)")) + (pad 6 thru_hole oval (at -2.54 -5.08 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 7 thru_hole oval (at 0 -7.62 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 11 "/GPIO4(GCLK)")) + (pad 8 thru_hole oval (at -2.54 -7.62 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 12 "/GPIO14(TXD0)")) + (pad 9 thru_hole oval (at 0 -10.16 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 10 thru_hole oval (at -2.54 -10.16 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 13 "/GPIO15(RXD0)")) + (pad 11 thru_hole oval (at 0 -12.7 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 14 "/GPIO17(GEN0)")) + (pad 12 thru_hole oval (at -2.54 -12.7 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 20 "/GPIO18(GEN1)(PWM0)")) + (pad 13 thru_hole oval (at 0 -15.24 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 15 "/GPIO27(GEN2)")) + (pad 14 thru_hole oval (at -2.54 -15.24 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 15 thru_hole oval (at 0 -17.78 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 16 "/GPIO22(GEN3)")) + (pad 16 thru_hole oval (at -2.54 -17.78 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 17 "/GPIO23(GEN4)")) + (pad 17 thru_hole oval (at 0 -20.32 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 1 +3V3)) + (pad 18 thru_hole oval (at -2.54 -20.32 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 18 "/GPIO24(GEN5)")) + (pad 19 thru_hole oval (at 0 -22.86 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 21 "/GPIO10(SPI0_MOSI)")) + (pad 20 thru_hole oval (at -2.54 -22.86 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 21 thru_hole oval (at 0 -25.4 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 22 "/GPIO9(SPI0_MISO)")) + (pad 22 thru_hole oval (at -2.54 -25.4 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 19 "/GPIO25(GEN6)")) + (pad 23 thru_hole oval (at 0 -27.94 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 23 "/GPIO11(SPI0_SCK)")) + (pad 24 thru_hole oval (at -2.54 -27.94 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 24 "/GPIO8(SPI0_CE_N)")) + (pad 25 thru_hole oval (at 0 -30.48 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 26 thru_hole oval (at -2.54 -30.48 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 25 "/GPIO7(SPI1_CE_N)")) + (pad 27 thru_hole oval (at 0 -33.02 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 4 /ID_SD)) + (pad 28 thru_hole oval (at -2.54 -33.02 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 5 /ID_SC)) + (pad 29 thru_hole oval (at 0 -35.56 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 6 /GPIO5)) + (pad 30 thru_hole oval (at -2.54 -35.56 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 31 thru_hole oval (at 0 -38.1 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 7 /GPIO6)) + (pad 32 thru_hole oval (at -2.54 -38.1 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 26 "/GPIO12(PWM0)")) + (pad 33 thru_hole oval (at 0 -40.64 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 27 "/GPIO13(PWM1)")) + (pad 34 thru_hole oval (at -2.54 -40.64 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 35 thru_hole oval (at 0 -43.18 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 28 "/GPIO19(SPI1_MISO)")) + (pad 36 thru_hole oval (at -2.54 -43.18 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 29 /GPIO16)) + (pad 37 thru_hole oval (at 0 -45.72 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 8 /GPIO26)) + (pad 38 thru_hole oval (at -2.54 -45.72 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 30 "/GPIO20(SPI1_MOSI)")) + (pad 39 thru_hole oval (at 0 -48.26 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 3 GND)) + (pad 40 thru_hole oval (at -2.54 -48.26 270) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) + (net 31 "/GPIO21(SPI1_SCK)")) + (model ${KISYS3DMOD}/Socket_Strips.3dshapes/Socket_Strip_Straight_2x20_Pitch2.54mm.wrl + (at (xyz -0.05 -0.95 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 270)) + ) ) (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 5834FC00) (tstamp 580CBA7A) @@ -221,116 +336,6 @@ (solder_mask_margin 1.25) (clearance 1.35)) ) - (module Socket_Strips:Socket_Strip_Straight_2x20 (layer F.Cu) (tedit 580C0D63) (tstamp 580C7F66) - (at 208.37 96.23) - (descr "Through hole socket strip") - (tags "socket strip") - (path /580C18BB) - (fp_text reference P1 (at 0 5.002) (layer F.SilkS) - (effects (font (size 1 1) (thickness 0.15))) - ) - (fp_text value CONN_02X20 (at 0 -3.1) (layer F.Fab) - (effects (font (size 1 1) (thickness 0.15))) - ) - (fp_line (start -1.75 -1.75) (end -1.75 4.3) (layer F.CrtYd) (width 0.05)) - (fp_line (start 50.05 -1.75) (end 50.05 4.3) (layer F.CrtYd) (width 0.05)) - (fp_line (start -1.75 -1.75) (end 50.05 -1.75) (layer F.CrtYd) (width 0.05)) - (fp_line (start -1.75 4.3) (end 50.05 4.3) (layer F.CrtYd) (width 0.05)) - (fp_line (start 49.53 3.81) (end -1.27 3.81) (layer F.SilkS) (width 0.15)) - (fp_line (start 1.27 -1.27) (end 49.53 -1.27) (layer F.SilkS) (width 0.15)) - (fp_line (start 49.53 3.81) (end 49.53 -1.27) (layer F.SilkS) (width 0.15)) - (fp_line (start -1.27 3.81) (end -1.27 1.27) (layer F.SilkS) (width 0.15)) - (fp_line (start 0 -1.55) (end -1.55 -1.55) (layer F.SilkS) (width 0.15)) - (fp_line (start -1.27 1.27) (end 1.27 1.27) (layer F.SilkS) (width 0.15)) - (fp_line (start 1.27 1.27) (end 1.27 -1.27) (layer F.SilkS) (width 0.15)) - (fp_line (start -1.55 -1.55) (end -1.55 0) (layer F.SilkS) (width 0.15)) - (pad 1 thru_hole rect (at 0 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 1 +3V3)) - (pad 2 thru_hole oval (at 0 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 2 +5V)) - (pad 3 thru_hole oval (at 2.54 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 14 "/GPIO2(SDA1)")) - (pad 4 thru_hole oval (at 2.54 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 2 +5V)) - (pad 5 thru_hole oval (at 5.08 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 15 "/GPIO3(SCL1)")) - (pad 6 thru_hole oval (at 5.08 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 7 thru_hole oval (at 7.62 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 16 "/GPIO4(GCLK)")) - (pad 8 thru_hole oval (at 7.62 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 17 "/GPIO14(TXD0)")) - (pad 9 thru_hole oval (at 10.16 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 10 thru_hole oval (at 10.16 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 18 "/GPIO15(RXD0)")) - (pad 11 thru_hole oval (at 12.7 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 19 "/GPIO17(GEN0)")) - (pad 12 thru_hole oval (at 12.7 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 20 "/GPIO18(GEN1)")) - (pad 13 thru_hole oval (at 15.24 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 21 "/GPIO27(GEN2)")) - (pad 14 thru_hole oval (at 15.24 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 15 thru_hole oval (at 17.78 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 22 "/GPIO22(GEN3)")) - (pad 16 thru_hole oval (at 17.78 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 23 "/GPIO23(GEN4)")) - (pad 17 thru_hole oval (at 20.32 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 1 +3V3)) - (pad 18 thru_hole oval (at 20.32 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 24 "/GPIO24(GEN5)")) - (pad 19 thru_hole oval (at 22.86 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 25 "/GPIO10(SPI_MOSI)")) - (pad 20 thru_hole oval (at 22.86 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 21 thru_hole oval (at 25.4 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 26 "/GPIO9(SPI_MISO)")) - (pad 22 thru_hole oval (at 25.4 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 27 "/GPIO25(GEN6)")) - (pad 23 thru_hole oval (at 27.94 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 28 "/GPIO11(SPI_CLK)")) - (pad 24 thru_hole oval (at 27.94 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 29 "/GPIO8(SPI_CE0_N)")) - (pad 25 thru_hole oval (at 30.48 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 26 thru_hole oval (at 30.48 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 30 "/GPIO7(SPI_CE1_N)")) - (pad 27 thru_hole oval (at 33.02 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 4 /ID_SD)) - (pad 28 thru_hole oval (at 33.02 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 5 /ID_SC)) - (pad 29 thru_hole oval (at 35.56 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 6 /GPIO5)) - (pad 30 thru_hole oval (at 35.56 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 31 thru_hole oval (at 38.1 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 7 /GPIO6)) - (pad 32 thru_hole oval (at 38.1 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 8 /GPIO12)) - (pad 33 thru_hole oval (at 40.64 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 9 /GPIO13)) - (pad 34 thru_hole oval (at 40.64 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 35 thru_hole oval (at 43.18 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 10 /GPIO19)) - (pad 36 thru_hole oval (at 43.18 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 11 /GPIO20)) - (pad 37 thru_hole oval (at 45.72 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 12 /GPIO26)) - (pad 38 thru_hole oval (at 45.72 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 13 /GPIO21)) - (pad 39 thru_hole oval (at 48.26 0) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (pad 40 thru_hole oval (at 48.26 2.54) (size 1.7272 1.7272) (drill 1.016) (layers *.Cu *.Mask F.SilkS) - (net 3 GND)) - (model Socket_Strips.3dshapes/Socket_Strip_Straight_2x20.wrl - (at (xyz 0.95 -0.05 0)) - (scale (xyz 1 1 1)) - (rotate (xyz 0 0 180)) - ) - ) - (module Mounting_Holes:MountingHole_2-5mm (layer F.Cu) (tedit 5834FC15) (tstamp 580CBAD7) (at 261.5 146.5) (descr "Mounting hole, Befestigungsbohrung, 2,5mm, No Annular, Kein Restring,") diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net index e94a1aff..0ca79360 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.net @@ -1,8 +1,8 @@ (export (version D) (design - (source /home/ashton/kicad/kicad-library/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch) - (date "Tue 22 Nov 2016 08:17:38 PM CST") - (tool "Eeschema 201611191051+7361~55~ubuntu16.04.1-product") + (source /home/ashton/repo/kicad-library/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch) + (date "Mon 04 Sep 2017 07:54:14 AM CDT") + (tool "Eeschema (2017-02-21 revision 35a8d78)-master") (sheet (number 1) (name /) (tstamps /) (title_block (title) @@ -16,169 +16,137 @@ (comment (number 4) (value ""))))) (components (comp (ref P1) - (value CONN_02X20) - (footprint Socket_Strips:Socket_Strip_Straight_2x20) - (datasheet https://www.raspberrypi.org/documentation/hardware/raspberrypi/schematics/RPI-3B-V1_2-SCHEMATIC-REDUCED.pdf) - (libsource (lib conn) (part CONN_02X20)) + (value Conn_02x20_Odd_Even) + (libsource (lib conn) (part Conn_02x20_Odd_Even)) (sheetpath (names /) (tstamps /)) - (tstamp 580C18BB)) - (comp (ref MK1) - (value M2.5) - (footprint Mounting_Holes:MountingHole_2.5mm) - (libsource (lib mechanical) (part Mounting_Hole)) - (sheetpath (names /) (tstamps /)) - (tstamp 5834FB2E)) - (comp (ref MK3) - (value M2.5) - (footprint Mounting_Holes:MountingHole_2.5mm) - (libsource (lib mechanical) (part Mounting_Hole)) - (sheetpath (names /) (tstamps /)) - (tstamp 5834FBEF)) - (comp (ref MK2) - (value M2.5) - (footprint Mounting_Holes:MountingHole_2.5mm) - (libsource (lib mechanical) (part Mounting_Hole)) - (sheetpath (names /) (tstamps /)) - (tstamp 5834FC19)) - (comp (ref MK4) - (value M2.5) - (footprint Mounting_Holes:MountingHole_2.5mm) - (libsource (lib mechanical) (part Mounting_Hole)) - (sheetpath (names /) (tstamps /)) - (tstamp 5834FC4F))) + (tstamp 59AD464A))) (libparts - (libpart (lib conn) (part CONN_02X20) - (description "Connector, double row, 02x20") + (libpart (lib conn) (part Conn_02x20_Odd_Even) + (description "Generic connector, double row, 02x20, odd/even pin numbering scheme (row 1 odd numbers, row 2 even numbers)") + (docs ~) (footprints - (fp Pin_Header_Straight_2X20) - (fp Pin_Header_Angled_2X20) - (fp Socket_Strip_Straight_2X20) - (fp Socket_Strip_Angled_2X20)) + (fp Connector*:*2x??x*mm*) + (fp Connector*:*2x???Pitch*) + (fp Pin_Header_Straight_2X*) + (fp Pin_Header_Angled_2X*) + (fp Socket_Strip_Straight_2X*) + (fp Socket_Strip_Angled_2X*)) (fields - (field (name Reference) P) - (field (name Value) CONN_02X20)) + (field (name Reference) J) + (field (name Value) Conn_02x20_Odd_Even)) (pins - (pin (num 1) (name P1) (type passive)) - (pin (num 2) (name P2) (type passive)) - (pin (num 3) (name P3) (type passive)) - (pin (num 4) (name P4) (type passive)) - (pin (num 5) (name P5) (type passive)) - (pin (num 6) (name P6) (type passive)) - (pin (num 7) (name P7) (type passive)) - (pin (num 8) (name P8) (type passive)) - (pin (num 9) (name P9) (type passive)) - (pin (num 10) (name P10) (type passive)) - (pin (num 11) (name P11) (type passive)) - (pin (num 12) (name P12) (type passive)) - (pin (num 13) (name P13) (type passive)) - (pin (num 14) (name P14) (type passive)) - (pin (num 15) (name P15) (type passive)) - (pin (num 16) (name P16) (type passive)) - (pin (num 17) (name P17) (type passive)) - (pin (num 18) (name P18) (type passive)) - (pin (num 19) (name P19) (type passive)) - (pin (num 20) (name P20) (type passive)) - (pin (num 21) (name P21) (type passive)) - (pin (num 22) (name P22) (type passive)) - (pin (num 23) (name P23) (type passive)) - (pin (num 24) (name P24) (type passive)) - (pin (num 25) (name P25) (type passive)) - (pin (num 26) (name P26) (type passive)) - (pin (num 27) (name P27) (type passive)) - (pin (num 28) (name P28) (type passive)) - (pin (num 29) (name P29) (type passive)) - (pin (num 30) (name P30) (type passive)) - (pin (num 31) (name P31) (type passive)) - (pin (num 32) (name P32) (type passive)) - (pin (num 33) (name P33) (type passive)) - (pin (num 34) (name P34) (type passive)) - (pin (num 35) (name P35) (type passive)) - (pin (num 36) (name P36) (type passive)) - (pin (num 37) (name P37) (type passive)) - (pin (num 38) (name P38) (type passive)) - (pin (num 39) (name P39) (type passive)) - (pin (num 40) (name P40) (type passive)))) - (libpart (lib mechanical) (part Mounting_Hole) - (description "Mounting Hole without connection") - (footprints - (fp Mounting?Hole*) - (fp Hole*)) - (fields - (field (name Reference) MK) - (field (name Value) Mounting_Hole)))) + (pin (num 1) (name Pin_1) (type passive)) + (pin (num 2) (name Pin_2) (type passive)) + (pin (num 3) (name Pin_3) (type passive)) + (pin (num 4) (name Pin_4) (type passive)) + (pin (num 5) (name Pin_5) (type passive)) + (pin (num 6) (name Pin_6) (type passive)) + (pin (num 7) (name Pin_7) (type passive)) + (pin (num 8) (name Pin_8) (type passive)) + (pin (num 9) (name Pin_9) (type passive)) + (pin (num 10) (name Pin_10) (type passive)) + (pin (num 11) (name Pin_11) (type passive)) + (pin (num 12) (name Pin_12) (type passive)) + (pin (num 13) (name Pin_13) (type passive)) + (pin (num 14) (name Pin_14) (type passive)) + (pin (num 15) (name Pin_15) (type passive)) + (pin (num 16) (name Pin_16) (type passive)) + (pin (num 17) (name Pin_17) (type passive)) + (pin (num 18) (name Pin_18) (type passive)) + (pin (num 19) (name Pin_19) (type passive)) + (pin (num 20) (name Pin_20) (type passive)) + (pin (num 21) (name Pin_21) (type passive)) + (pin (num 22) (name Pin_22) (type passive)) + (pin (num 23) (name Pin_23) (type passive)) + (pin (num 24) (name Pin_24) (type passive)) + (pin (num 25) (name Pin_25) (type passive)) + (pin (num 26) (name Pin_26) (type passive)) + (pin (num 27) (name Pin_27) (type passive)) + (pin (num 28) (name Pin_28) (type passive)) + (pin (num 29) (name Pin_29) (type passive)) + (pin (num 30) (name Pin_30) (type passive)) + (pin (num 31) (name Pin_31) (type passive)) + (pin (num 32) (name Pin_32) (type passive)) + (pin (num 33) (name Pin_33) (type passive)) + (pin (num 34) (name Pin_34) (type passive)) + (pin (num 35) (name Pin_35) (type passive)) + (pin (num 36) (name Pin_36) (type passive)) + (pin (num 37) (name Pin_37) (type passive)) + (pin (num 38) (name Pin_38) (type passive)) + (pin (num 39) (name Pin_39) (type passive)) + (pin (num 40) (name Pin_40) (type passive))))) (libraries - (library (logical mechanical) - (uri /home/ashton/kicad/kicad-library/library/mechanical.lib)) (library (logical conn) - (uri /home/ashton/kicad/kicad-library/library/conn.lib))) + (uri /home/ashton/repo/kicad-library/library/conn.lib))) (nets - (net (code 1) (name "/GPIO11(SPI_CLK)") - (node (ref P1) (pin 23))) - (net (code 2) (name "/GPIO15(RXD0)") - (node (ref P1) (pin 10))) - (net (code 3) (name "/GPIO24(GEN5)") - (node (ref P1) (pin 18))) - (net (code 4) (name "/GPIO23(GEN4)") - (node (ref P1) (pin 16))) - (net (code 5) (name "/GPIO8(SPI_CE0_N)") - (node (ref P1) (pin 24))) - (net (code 6) (name "/GPIO25(GEN6)") - (node (ref P1) (pin 22))) - (net (code 7) (name /ID_SC) - (node (ref P1) (pin 28))) - (net (code 8) (name "/GPIO7(SPI_CE1_N)") - (node (ref P1) (pin 26))) - (net (code 9) (name /GPIO21) - (node (ref P1) (pin 38))) - (net (code 10) (name /GPIO20) - (node (ref P1) (pin 36))) - (net (code 11) (name /GPIO26) - (node (ref P1) (pin 37))) - (net (code 12) (name /GPIO19) - (node (ref P1) (pin 35))) - (net (code 13) (name /GPIO13) - (node (ref P1) (pin 33))) - (net (code 14) (name /GPIO6) - (node (ref P1) (pin 31))) - (net (code 15) (name /GPIO5) - (node (ref P1) (pin 29))) - (net (code 16) (name /ID_SD) - (node (ref P1) (pin 27))) - (net (code 17) (name "/GPIO18(GEN1)") - (node (ref P1) (pin 12))) - (net (code 18) (name "/GPIO9(SPI_MISO)") - (node (ref P1) (pin 21))) - (net (code 19) (name "/GPIO10(SPI_MOSI)") - (node (ref P1) (pin 19))) - (net (code 20) (name "/GPIO22(GEN3)") - (node (ref P1) (pin 15))) - (net (code 21) (name "/GPIO27(GEN2)") - (node (ref P1) (pin 13))) - (net (code 22) (name "/GPIO17(GEN0)") - (node (ref P1) (pin 11))) - (net (code 23) (name "/GPIO4(GCLK)") + (net (code 1) (name "/GPIO4(GCLK)") (node (ref P1) (pin 7))) - (net (code 24) (name "/GPIO3(SCL1)") + (net (code 2) (name "/GPIO3(SCL1)") (node (ref P1) (pin 5))) - (net (code 25) (name "/GPIO2(SDA1)") + (net (code 3) (name +5V) + (node (ref P1) (pin 2)) + (node (ref P1) (pin 4))) + (net (code 4) (name "/GPIO2(SDA1)") (node (ref P1) (pin 3))) - (net (code 26) (name +3V3) + (net (code 5) (name +3V3) (node (ref P1) (pin 1)) (node (ref P1) (pin 17))) - (net (code 27) (name "/GPIO14(TXD0)") + (net (code 6) (name "/GPIO14(TXD0)") (node (ref P1) (pin 8))) - (net (code 28) (name /GPIO12) + (net (code 7) (name "/GPIO15(RXD0)") + (node (ref P1) (pin 10))) + (net (code 8) (name "/GPIO21(SPI1_SCK)") + (node (ref P1) (pin 40))) + (net (code 9) (name /GPIO5) + (node (ref P1) (pin 29))) + (net (code 10) (name "/GPIO20(SPI1_MOSI)") + (node (ref P1) (pin 38))) + (net (code 11) (name /ID_SC) + (node (ref P1) (pin 28))) + (net (code 12) (name "/GPIO24(GEN5)") + (node (ref P1) (pin 18))) + (net (code 13) (name /GPIO26) + (node (ref P1) (pin 37))) + (net (code 14) (name /ID_SD) + (node (ref P1) (pin 27))) + (net (code 15) (name /GPIO16) + (node (ref P1) (pin 36))) + (net (code 16) (name "/GPIO7(SPI1_CE_N)") + (node (ref P1) (pin 26))) + (net (code 17) (name "/GPIO23(GEN4)") + (node (ref P1) (pin 16))) + (net (code 18) (name "/GPIO19(SPI1_MISO)") + (node (ref P1) (pin 35))) + (net (code 19) (name "/GPIO8(SPI0_CE_N)") + (node (ref P1) (pin 24))) + (net (code 20) (name "/GPIO13(PWM1)") + (node (ref P1) (pin 33))) + (net (code 21) (name "/GPIO11(SPI0_SCK)") + (node (ref P1) (pin 23))) + (net (code 22) (name "/GPIO12(PWM0)") (node (ref P1) (pin 32))) - (net (code 29) (name +5V) - (node (ref P1) (pin 4)) - (node (ref P1) (pin 2))) - (net (code 30) (name GND) - (node (ref P1) (pin 39)) + (net (code 23) (name "/GPIO25(GEN6)") + (node (ref P1) (pin 22))) + (net (code 24) (name "/GPIO18(GEN1)(PWM0)") + (node (ref P1) (pin 12))) + (net (code 25) (name /GPIO6) + (node (ref P1) (pin 31))) + (net (code 26) (name "/GPIO9(SPI0_MISO)") + (node (ref P1) (pin 21))) + (net (code 27) (name GND) + (node (ref P1) (pin 9)) + (node (ref P1) (pin 6)) + (node (ref P1) (pin 20)) (node (ref P1) (pin 25)) + (node (ref P1) (pin 39)) (node (ref P1) (pin 34)) (node (ref P1) (pin 14)) - (node (ref P1) (pin 40)) - (node (ref P1) (pin 30)) - (node (ref P1) (pin 20)) - (node (ref P1) (pin 9)) - (node (ref P1) (pin 6))))) \ No newline at end of file + (node (ref P1) (pin 30))) + (net (code 28) (name "/GPIO10(SPI0_MOSI)") + (node (ref P1) (pin 19))) + (net (code 29) (name "/GPIO22(GEN3)") + (node (ref P1) (pin 15))) + (net (code 30) (name "/GPIO27(GEN2)") + (node (ref P1) (pin 13))) + (net (code 31) (name "/GPIO17(GEN0)") + (node (ref P1) (pin 11))))) \ No newline at end of file diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro index 2f0834d7..46dddec5 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro @@ -1,4 +1,4 @@ -update=Tue 22 Nov 2016 08:12:22 PM CST +update=Mon 04 Sep 2017 08:00:03 AM CDT version=1 last_client=kicad [cvpcb] @@ -68,15 +68,6 @@ ShowMRa=1 [pcbnew/libraries] LibDir= LibName1=sockets -LibName2=connect -LibName3=discret -LibName4=pin_array -LibName5=divers -LibName6=libcms -LibName7=display -LibName8=valves -LibName9=led -LibName10=dip_sockets [schematic_editor] version=1 PageLayoutDescrFile= @@ -87,100 +78,11 @@ NetFmtName= SpiceForceRefPrefix=0 SpiceUseNetNumbers=0 LabSize=50 -[general] -version=1 [eeschema] version=1 LibDir=../../library [eeschema/libraries] -LibName1=74xgxx -LibName2=74xx -LibName3=ac-dc -LibName4=actel -LibName5=adc-dac -LibName6=Altera -LibName7=analog_devices -LibName8=analog_switches -LibName9=atmel -LibName10=audio -LibName11=battery_management -LibName12=bbd -LibName13=brooktre -LibName14=cmos4000 -LibName15=cmos_ieee -LibName16=conn -LibName17=contrib -LibName18=cypress -LibName19=dc-dc -LibName20=device -LibName21=device_BACKUP_1978 -LibName22=device_BACKUP_2034 -LibName23=device_BASE_1978 -LibName24=device_BASE_2034 -LibName25=device_LOCAL_1978 -LibName26=device_LOCAL_2034 -LibName27=device_REMOTE_1978 -LibName28=device_REMOTE_2034 -LibName29=digital-audio -LibName30=diode -LibName31=display -LibName32=dsp -LibName33=elec-unifil -LibName34=ESD_Protection -LibName35=ftdi -LibName36=gennum -LibName37=graphic -LibName38=hc11 -LibName39=intel -LibName40=interface -LibName41=ir -LibName42=Lattice -LibName43=linear -LibName44=logo -LibName45=maxim -LibName46=mechanical -LibName47=memory -LibName48=microchip -LibName49=microchip_dspic33dsc -LibName50=microchip_pic10mcu -LibName51=microchip_pic12mcu -LibName52=microchip_pic16mcu -LibName53=microchip_pic18mcu -LibName54=microchip_pic32mcu -LibName55=microcontrollers -LibName56=motor_drivers -LibName57=motorola -LibName58=motors -LibName59=msp430 -LibName60=nordicsemi -LibName61=nxp_armmcu -LibName62=onsemi -LibName63=opto -LibName64=Oscillators -LibName65=philips -LibName66=power -LibName67=powerint -LibName68=Power_Management -LibName69=pspice -LibName70=references -LibName71=regul -LibName72=relays -LibName73=rfcom -LibName74=sensors -LibName75=silabs -LibName76=siliconi -LibName77=stm8 -LibName78=stm32 -LibName79=supertex -LibName80=switches -LibName81=texas -LibName82=transf -LibName83=transistors -LibName84=ttl_ieee -LibName85=valves -LibName86=video -LibName87=wiznet -LibName88=Worldsemi -LibName89=Xicor -LibName90=xilinx -LibName91=Zilog +LibName1=conn +LibName2=power +[general] +version=1 diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch index 653f5509..cc5bfe90 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.sch @@ -1,93 +1,6 @@ EESchema Schematic File Version 2 -LIBS:74xgxx -LIBS:74xx -LIBS:ac-dc -LIBS:actel -LIBS:adc-dac -LIBS:Altera -LIBS:analog_devices -LIBS:analog_switches -LIBS:atmel -LIBS:audio -LIBS:battery_management -LIBS:bbd -LIBS:brooktre -LIBS:cmos4000 -LIBS:cmos_ieee LIBS:conn -LIBS:contrib -LIBS:cypress -LIBS:dc-dc -LIBS:device -LIBS:device_BASE_1978 -LIBS:device_BASE_2034 -LIBS:device_LOCAL_1978 -LIBS:device_LOCAL_2034 -LIBS:device_REMOTE_1978 -LIBS:device_REMOTE_2034 -LIBS:digital-audio -LIBS:diode -LIBS:display -LIBS:dsp -LIBS:elec-unifil -LIBS:ESD_Protection -LIBS:ftdi -LIBS:gennum -LIBS:graphic -LIBS:hc11 -LIBS:intel -LIBS:interface -LIBS:ir -LIBS:Lattice -LIBS:linear -LIBS:logo -LIBS:maxim -LIBS:mechanical -LIBS:memory -LIBS:microchip -LIBS:microchip_dspic33dsc -LIBS:microchip_pic10mcu -LIBS:microchip_pic12mcu -LIBS:microchip_pic16mcu -LIBS:microchip_pic18mcu -LIBS:microchip_pic32mcu -LIBS:microcontrollers -LIBS:motor_drivers -LIBS:motorola -LIBS:motors -LIBS:msp430 -LIBS:nordicsemi -LIBS:nxp_armmcu -LIBS:onsemi -LIBS:opto -LIBS:Oscillators -LIBS:philips LIBS:power -LIBS:powerint -LIBS:Power_Management -LIBS:pspice -LIBS:references -LIBS:regul -LIBS:relays -LIBS:rfcom -LIBS:sensors -LIBS:silabs -LIBS:siliconi -LIBS:stm8 -LIBS:stm32 -LIBS:supertex -LIBS:switches -LIBS:texas -LIBS:transf -LIBS:transistors -LIBS:ttl_ieee -LIBS:valves -LIBS:video -LIBS:wiznet -LIBS:Worldsemi -LIBS:Xicor -LIBS:xilinx -LIBS:Zilog LIBS:raspberrypi-gpio-40pin-cache EELAYER 26 0 EELAYER END @@ -104,154 +17,140 @@ Comment3 "" Comment4 "" $EndDescr $Comp -L CONN_02X20 P1 -U 1 1 580C18BB -P 2600 2050 -F 0 "P1" H 2600 3100 50 0000 C CNN -F 1 "CONN_02X20" V 2600 2050 50 0000 C CNN -F 2 "Socket_Strips:Socket_Strip_Straight_2x20" H 2600 650 50 0001 C CNN -F 3 "https://www.raspberrypi.org/documentation/hardware/raspberrypi/schematics/RPI-3B-V1_2-SCHEMATIC-REDUCED.pdf" H 2900 3500 50 0001 C CNN - 1 2600 2050 - 1 0 0 -1 -$EndComp -$Comp -L +5V #PWR3 +L +5V #PWR01 U 1 1 580C1B61 -P 3000 950 -F 0 "#PWR3" H 3000 800 50 0001 C CNN -F 1 "+5V" H 3000 1090 50 0000 C CNN -F 2 "" H 3000 950 50 0000 C CNN -F 3 "" H 3000 950 50 0000 C CNN - 1 3000 950 +P 3100 950 +F 0 "#PWR01" H 3100 800 50 0001 C CNN +F 1 "+5V" H 3100 1090 50 0000 C CNN +F 2 "" H 3100 950 50 0000 C CNN +F 3 "" H 3100 950 50 0000 C CNN + 1 3100 950 1 0 0 -1 $EndComp Wire Wire Line - 3000 950 3000 1200 + 3100 950 3100 1200 Wire Wire Line - 3000 1100 2850 1100 + 3100 1100 2900 1100 Wire Wire Line - 3000 1200 2850 1200 -Connection ~ 3000 1100 + 3100 1200 2900 1200 +Connection ~ 3100 1100 $Comp -L GND #PWR4 +L GND #PWR02 U 1 1 580C1D11 P 3000 3150 -F 0 "#PWR4" H 3000 2900 50 0001 C CNN +F 0 "#PWR02" H 3000 2900 50 0001 C CNN F 1 "GND" H 3000 3000 50 0000 C CNN F 2 "" H 3000 3150 50 0000 C CNN F 3 "" H 3000 3150 50 0000 C CNN 1 3000 3150 1 0 0 -1 $EndComp -Wire Wire Line - 3000 3000 2850 3000 Wire Wire Line 3000 1300 3000 3150 Wire Wire Line - 3000 2700 2850 2700 -Connection ~ 3000 3000 + 3000 2700 2900 2700 Wire Wire Line - 3000 2500 2850 2500 + 3000 2500 2900 2500 Connection ~ 3000 2700 Wire Wire Line - 3000 2000 2850 2000 + 3000 2000 2900 2000 Connection ~ 3000 2500 Wire Wire Line - 3000 1700 2850 1700 + 3000 1700 2900 1700 Connection ~ 3000 2000 $Comp -L GND #PWR2 +L GND #PWR03 U 1 1 580C1E01 -P 2200 3150 -F 0 "#PWR2" H 2200 2900 50 0001 C CNN -F 1 "GND" H 2200 3000 50 0000 C CNN -F 2 "" H 2200 3150 50 0000 C CNN -F 3 "" H 2200 3150 50 0000 C CNN - 1 2200 3150 +P 2300 3150 +F 0 "#PWR03" H 2300 2900 50 0001 C CNN +F 1 "GND" H 2300 3000 50 0000 C CNN +F 2 "" H 2300 3150 50 0000 C CNN +F 3 "" H 2300 3150 50 0000 C CNN + 1 2300 3150 1 0 0 -1 $EndComp Wire Wire Line - 2200 3000 2350 3000 + 2300 3000 2400 3000 Wire Wire Line - 2200 1500 2200 3150 + 2300 1500 2300 3150 Wire Wire Line - 2200 2300 2350 2300 -Connection ~ 2200 3000 -Connection ~ 2100 1100 + 2300 2300 2400 2300 +Connection ~ 2300 3000 +Connection ~ 2200 1100 Wire Wire Line - 2100 1900 2350 1900 + 2200 1900 2400 1900 Wire Wire Line - 2100 1100 2350 1100 + 2200 1100 2400 1100 Wire Wire Line - 2100 950 2100 1900 + 2200 950 2200 1900 $Comp -L +3.3V #PWR1 +L +3.3V #PWR04 U 1 1 580C1BC1 -P 2100 950 -F 0 "#PWR1" H 2100 800 50 0001 C CNN -F 1 "+3.3V" H 2100 1090 50 0000 C CNN -F 2 "" H 2100 950 50 0000 C CNN -F 3 "" H 2100 950 50 0000 C CNN - 1 2100 950 +P 2200 950 +F 0 "#PWR04" H 2200 800 50 0001 C CNN +F 1 "+3.3V" H 2200 1090 50 0000 C CNN +F 2 "" H 2200 950 50 0000 C CNN +F 3 "" H 2200 950 50 0000 C CNN + 1 2200 950 1 0 0 -1 $EndComp Wire Wire Line - 2200 1500 2350 1500 -Connection ~ 2200 2300 + 2300 1500 2400 1500 +Connection ~ 2300 2300 Wire Wire Line - 2350 1200 1250 1200 + 2400 1200 1250 1200 Wire Wire Line - 1250 1300 2350 1300 + 1250 1300 2400 1300 Wire Wire Line - 1250 1400 2350 1400 + 1250 1400 2400 1400 Wire Wire Line - 2350 1600 1250 1600 + 2400 1600 1250 1600 Wire Wire Line - 1250 1700 2350 1700 + 1250 1700 2400 1700 Wire Wire Line - 1250 1800 2350 1800 + 1250 1800 2400 1800 Wire Wire Line - 2350 2000 1250 2000 + 2400 2000 1250 2000 Wire Wire Line - 1250 2100 2350 2100 + 1250 2100 2400 2100 Wire Wire Line - 1250 2200 2350 2200 + 1250 2200 2400 2200 Wire Wire Line - 2350 2400 1250 2400 + 2400 2400 1250 2400 Wire Wire Line - 1250 2500 2350 2500 + 1250 2500 2400 2500 Wire Wire Line - 1250 2600 2350 2600 + 1250 2600 2400 2600 Wire Wire Line - 2350 2700 1250 2700 + 2400 2700 1250 2700 Wire Wire Line - 1250 2800 2350 2800 + 1250 2800 2400 2800 Wire Wire Line - 1250 2900 2350 2900 + 1250 2900 2400 2900 Wire Wire Line - 2850 2800 3950 2800 + 2900 2800 3950 2800 Wire Wire Line - 2850 2900 3950 2900 + 2900 2900 3950 2900 Wire Wire Line - 2850 2300 3950 2300 + 2900 2300 3950 2300 Wire Wire Line - 2850 2400 3950 2400 + 2900 2400 3950 2400 Wire Wire Line - 2850 2100 3950 2100 + 2900 2100 3950 2100 Wire Wire Line - 2850 2200 3950 2200 + 2900 2200 3950 2200 Wire Wire Line - 2850 1800 3950 1800 + 2900 1800 3950 1800 Wire Wire Line - 2850 1900 3950 1900 + 2900 1900 3950 1900 Wire Wire Line - 2850 1500 3950 1500 + 2900 1500 3950 1500 Wire Wire Line - 2850 1600 3950 1600 + 2900 1600 3950 1600 Wire Wire Line - 2850 1400 3950 1400 + 2900 1400 3950 1400 Wire Wire Line - 2850 2600 3950 2600 + 2900 2600 3950 2600 Text Label 1250 1200 0 50 ~ 0 GPIO2(SDA1) Text Label 1250 1300 0 50 ~ 0 @@ -265,11 +164,11 @@ GPIO27(GEN2) Text Label 1250 1800 0 50 ~ 0 GPIO22(GEN3) Text Label 1250 2000 0 50 ~ 0 -GPIO10(SPI_MOSI) +GPIO10(SPI0_MOSI) Text Label 1250 2100 0 50 ~ 0 -GPIO9(SPI_MISO) +GPIO9(SPI0_MISO) Text Label 1250 2200 0 50 ~ 0 -GPIO11(SPI_CLK) +GPIO11(SPI0_SCK) Text Label 1250 2400 0 50 ~ 0 ID_SD Text Label 1250 2500 0 50 ~ 0 @@ -277,23 +176,23 @@ GPIO5 Text Label 1250 2600 0 50 ~ 0 GPIO6 Text Label 1250 2700 0 50 ~ 0 -GPIO13 +GPIO13(PWM1) Text Label 1250 2800 0 50 ~ 0 -GPIO19 +GPIO19(SPI1_MISO) Text Label 1250 2900 0 50 ~ 0 GPIO26 Text Label 3950 2900 2 50 ~ 0 -GPIO21 +GPIO20(SPI1_MOSI) Text Label 3950 2800 2 50 ~ 0 -GPIO20 +GPIO16 Text Label 3950 2600 2 50 ~ 0 -GPIO12 +GPIO12(PWM0) Text Label 3950 2400 2 50 ~ 0 ID_SC Text Label 3950 2300 2 50 ~ 0 -GPIO7(SPI_CE1_N) +GPIO7(SPI1_CE_N) Text Label 3950 2200 2 50 ~ 0 -GPIO8(SPI_CE0_N) +GPIO8(SPI0_CE_N) Text Label 3950 2100 2 50 ~ 0 GPIO25(GEN6) Text Label 3950 1900 2 50 ~ 0 @@ -301,13 +200,13 @@ GPIO24(GEN5) Text Label 3950 1800 2 50 ~ 0 GPIO23(GEN4) Text Label 3950 1600 2 50 ~ 0 -GPIO18(GEN1) +GPIO18(GEN1)(PWM0) Text Label 3950 1500 2 50 ~ 0 GPIO15(RXD0) Text Label 3950 1400 2 50 ~ 0 GPIO14(TXD0) Wire Wire Line - 3000 1300 2850 1300 + 3000 1300 2900 1300 Connection ~ 3000 1700 Text Notes 650 7600 0 50 ~ 0 ID_SD and ID_SC PINS:\nThese pins are reserved for HAT ID EEPROM.\n\nAt boot time this I2C interface will be\ninterrogated to look for an EEPROM\nthat identifes the attached board and\nallows automagic setup of the GPIOs\n(and optionally, Linux drivers).\n\nDO NOT USE these pins for anything other\nthan attaching an I2C ID EEPROM. Leave\nunconnected if ID EEPROM not required. @@ -357,4 +256,19 @@ F 3 "" H 3450 7400 60 0001 C CNN $EndComp Text Notes 3000 7050 0 50 ~ 0 Mounting Holes +$Comp +L Conn_02x20_Odd_Even P1 +U 1 1 59AD464A +P 2600 2000 +F 0 "P1" H 2650 3117 50 0000 C CNN +F 1 "Conn_02x20_Odd_Even" H 2650 3026 50 0000 C CNN +F 2 "" H -2250 1050 50 0001 C CNN +F 3 "" H -2250 1050 50 0001 C CNN + 1 2600 2000 + 1 0 0 -1 +$EndComp +Wire Wire Line + 2900 3000 3950 3000 +Text Label 3950 3000 2 50 ~ 0 +GPIO21(SPI1_SCK) $EndSCHEMATC From 0b5cd1010a15bfeaeba52103477745e09d92059c Mon Sep 17 00:00:00 2001 From: ashtonchase Date: Mon, 4 Sep 2017 16:49:30 -0500 Subject: [PATCH 8/8] added mechanical.lib association to schematic. --- template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro index 46dddec5..fce03f39 100644 --- a/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro +++ b/template/raspberrypi-gpio-40pin/raspberrypi-gpio-40pin.pro @@ -1,4 +1,4 @@ -update=Mon 04 Sep 2017 08:00:03 AM CDT +update=Mon 04 Sep 2017 04:48:58 PM CDT version=1 last_client=kicad [cvpcb] @@ -84,5 +84,6 @@ LibDir=../../library [eeschema/libraries] LibName1=conn LibName2=power +LibName3=mechanical [general] version=1