├── PCB ├── PiFan-cache.lib ├── PiFan.bak ├── PiFan.kicad_pcb ├── PiFan.kicad_pcb-bak ├── PiFan.pro ├── PiFan.sch ├── README.md └── fp-info-cache ├── PythonScript ├── README.md └── fantemp.py ├── README.md ├── temp-fan.sh └── temp.jpg /PCB/PiFan-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # Connector_Conn_01x02_Male 5 | # 6 | DEF Connector_Conn_01x02_Male J 0 40 Y N 1 F N 7 | F0 "J" 0 100 50 H V C CNN 8 | F1 "Connector_Conn_01x02_Male" 0 -200 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | $FPLIST 12 | Connector*:*_1x??_* 13 | $ENDFPLIST 14 | DRAW 15 | S 34 -95 0 -105 1 1 6 F 16 | S 34 5 0 -5 1 1 6 F 17 | P 2 1 1 6 50 -100 34 -100 N 18 | P 2 1 1 6 50 0 34 0 N 19 | X Pin_1 1 200 0 150 L 50 50 1 1 P 20 | X Pin_2 2 200 -100 150 L 50 50 1 1 P 21 | ENDDRAW 22 | ENDDEF 23 | # 24 | # Connector_Conn_01x03_Male 25 | # 26 | DEF Connector_Conn_01x03_Male J 0 40 Y N 1 F N 27 | F0 "J" 0 200 50 H V C CNN 28 | F1 "Connector_Conn_01x03_Male" 0 -200 50 H V C CNN 29 | F2 "" 0 0 50 H I C CNN 30 | F3 "" 0 0 50 H I C CNN 31 | $FPLIST 32 | Connector*:*_1x??_* 33 | $ENDFPLIST 34 | DRAW 35 | S 34 -95 0 -105 1 1 6 F 36 | S 34 5 0 -5 1 1 6 F 37 | S 34 105 0 95 1 1 6 F 38 | P 2 1 1 6 50 -100 34 -100 N 39 | P 2 1 1 6 50 0 34 0 N 40 | P 2 1 1 6 50 100 34 100 N 41 | X Pin_1 1 200 100 150 L 50 50 1 1 P 42 | X Pin_2 2 200 0 150 L 50 50 1 1 P 43 | X Pin_3 3 200 -100 150 L 50 50 1 1 P 44 | ENDDRAW 45 | ENDDEF 46 | # 47 | # Device_Q_NPN_CBE 48 | # 49 | DEF Device_Q_NPN_CBE Q 0 0 Y N 1 F N 50 | F0 "Q" 200 50 50 H V L CNN 51 | F1 "Device_Q_NPN_CBE" 200 -50 50 H V L CNN 52 | F2 "" 200 100 50 H I C CNN 53 | F3 "" 0 0 50 H I C CNN 54 | DRAW 55 | C 50 0 111 0 1 10 N 56 | P 2 0 1 0 25 25 100 100 N 57 | P 3 0 1 0 25 -25 100 -100 100 -100 N 58 | P 3 0 1 20 25 75 25 -75 25 -75 N 59 | P 5 0 1 0 50 -70 70 -50 90 -90 50 -70 50 -70 F 60 | X C 1 100 200 100 D 50 50 1 1 P 61 | X B 2 -200 0 225 R 50 50 1 1 I 62 | X E 3 100 -200 100 U 50 50 1 1 P 63 | ENDDRAW 64 | ENDDEF 65 | # 66 | # Device_R 67 | # 68 | DEF Device_R R 0 0 N Y 1 F N 69 | F0 "R" 80 0 50 V V C CNN 70 | F1 "Device_R" 0 0 50 V V C CNN 71 | F2 "" -70 0 50 V I C CNN 72 | F3 "" 0 0 50 H I C CNN 73 | $FPLIST 74 | R_* 75 | $ENDFPLIST 76 | DRAW 77 | S -40 -100 40 100 0 1 10 N 78 | X ~ 1 0 150 50 D 50 50 1 1 P 79 | X ~ 2 0 -150 50 U 50 50 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | # pspice_DIODE 84 | # 85 | DEF pspice_DIODE D 0 40 Y N 1 F N 86 | F0 "D" 0 150 50 H V C CNN 87 | F1 "pspice_DIODE" 0 -175 50 H V C CNN 88 | F2 "" 0 0 50 H I C CNN 89 | F3 "" 0 0 50 H I C CNN 90 | DRAW 91 | P 2 0 1 0 75 100 75 -100 N 92 | P 3 0 1 0 -75 100 -75 -100 75 0 F 93 | X K 1 -200 0 150 R 50 50 1 1 I 94 | X A 2 200 0 150 L 50 50 1 1 I 95 | ENDDRAW 96 | ENDDEF 97 | # 98 | #End Library 99 | -------------------------------------------------------------------------------- /PCB/PiFan.bak: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 29 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 1 1 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L Device:R R1 18 | U 1 1 5EC29490 19 | P 4840 3240 20 | F 0 "R1" V 4633 3240 50 0000 C CNN 21 | F 1 "1k" V 4724 3240 50 0000 C CNN 22 | F 2 "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_Vertical" V 4770 3240 50 0001 C CNN 23 | F 3 "~" H 4840 3240 50 0001 C CNN 24 | 1 4840 3240 25 | 0 1 1 0 26 | $EndComp 27 | Wire Wire Line 28 | 5180 3240 4990 3240 29 | $Comp 30 | L pspice:DIODE D1 31 | U 1 1 5EC2A83F 32 | P 5680 2880 33 | F 0 "D1" H 5680 3145 50 0000 C CNN 34 | F 1 "DIODE" H 5680 3054 50 0000 C CNN 35 | F 2 "Diode_THT:D_DO-15_P3.81mm_Vertical_KathodeUp" H 5680 2880 50 0001 C CNN 36 | F 3 "~" H 5680 2880 50 0001 C CNN 37 | 1 5680 2880 38 | 1 0 0 -1 39 | $EndComp 40 | $Comp 41 | L Connector:Conn_01x03_Male J1 42 | U 1 1 5EC2BAE3 43 | P 4030 3260 44 | F 0 "J1" H 4138 3541 50 0000 C CNN 45 | F 1 "Conn_01x03_Male" H 4138 3450 50 0000 C CNN 46 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Horizontal" H 4030 3260 50 0001 C CNN 47 | F 3 "~" H 4030 3260 50 0001 C CNN 48 | 1 4030 3260 49 | 1 0 0 -1 50 | $EndComp 51 | $Comp 52 | L Connector:Conn_01x02_Male J2 53 | U 1 1 5EC2CA1F 54 | P 6560 3180 55 | F 0 "J2" H 6532 3062 50 0000 R CNN 56 | F 1 "Conn_01x02_Male" H 6532 3153 50 0000 R CNN 57 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Horizontal" H 6560 3180 50 0001 C CNN 58 | F 3 "~" H 6560 3180 50 0001 C CNN 59 | 1 6560 3180 60 | -1 0 0 1 61 | $EndComp 62 | Wire Wire Line 63 | 4230 3160 4410 3160 64 | Wire Wire Line 65 | 4410 3160 4410 2430 66 | Wire Wire Line 67 | 4410 2430 5880 2430 68 | Wire Wire Line 69 | 5880 2430 5880 2880 70 | Wire Wire Line 71 | 5880 2880 6360 2880 72 | Wire Wire Line 73 | 6360 2880 6360 3080 74 | Connection ~ 5880 2880 75 | Wire Wire Line 76 | 6360 3180 5900 3180 77 | Wire Wire Line 78 | 5900 3180 5900 3040 79 | Wire Wire Line 80 | 5900 3040 5480 3040 81 | Wire Wire Line 82 | 5480 3440 4470 3440 83 | Wire Wire Line 84 | 4470 3440 4470 3360 85 | Wire Wire Line 86 | 4470 3360 4230 3360 87 | Wire Wire Line 88 | 4230 3260 4690 3260 89 | Wire Wire Line 90 | 4690 3260 4690 3240 91 | Text Label 6060 2880 0 50 ~ 0 92 | +motor 93 | Text Label 6040 3180 0 50 ~ 0 94 | -motor 95 | Wire Wire Line 96 | 5480 3040 5480 2880 97 | $Comp 98 | L Device:Q_NPN_CBE Q? 99 | U 1 1 5EC33F89 100 | P 5380 3240 101 | F 0 "Q?" H 5571 3286 50 0000 L CNN 102 | F 1 "Q_NPN_CBE" H 5571 3195 50 0000 L CNN 103 | F 2 "" H 5580 3340 50 0001 C CNN 104 | F 3 "~" H 5380 3240 50 0001 C CNN 105 | 1 5380 3240 106 | 1 0 0 -1 107 | $EndComp 108 | Connection ~ 5480 3040 109 | $EndSCHEMATC 110 | -------------------------------------------------------------------------------- /PCB/PiFan.kicad_pcb: -------------------------------------------------------------------------------- 1 | (kicad_pcb (version 20171130) (host pcbnew "(5.1.2)-1") 2 | 3 | (general 4 | (thickness 1.6) 5 | (drawings 13) 6 | (tracks 18) 7 | (zones 0) 8 | (modules 5) 9 | (nets 6) 10 | ) 11 | 12 | (page A4) 13 | (layers 14 | (0 F.Cu signal) 15 | (31 B.Cu signal) 16 | (32 B.Adhes user) 17 | (33 F.Adhes user) 18 | (34 B.Paste user) 19 | (35 F.Paste user) 20 | (36 B.SilkS user) 21 | (37 F.SilkS user) 22 | (38 B.Mask user) 23 | (39 F.Mask user) 24 | (40 Dwgs.User user) 25 | (41 Cmts.User user) 26 | (42 Eco1.User user) 27 | (43 Eco2.User user) 28 | (44 Edge.Cuts user) 29 | (45 Margin user) 30 | (46 B.CrtYd user) 31 | (47 F.CrtYd user) 32 | (48 B.Fab user) 33 | (49 F.Fab user) 34 | ) 35 | 36 | (setup 37 | (last_trace_width 0.25) 38 | (trace_clearance 0.2) 39 | (zone_clearance 0.508) 40 | (zone_45_only no) 41 | (trace_min 0.2) 42 | (via_size 0.8) 43 | (via_drill 0.4) 44 | (via_min_size 0.4) 45 | (via_min_drill 0.3) 46 | (uvia_size 0.3) 47 | (uvia_drill 0.1) 48 | (uvias_allowed no) 49 | (uvia_min_size 0.2) 50 | (uvia_min_drill 0.1) 51 | (edge_width 0.05) 52 | (segment_width 0.2) 53 | (pcb_text_width 0.3) 54 | (pcb_text_size 1.5 1.5) 55 | (mod_edge_width 0.12) 56 | (mod_text_size 1 1) 57 | (mod_text_width 0.15) 58 | (pad_size 1.524 1.524) 59 | (pad_drill 0.762) 60 | (pad_to_mask_clearance 0.051) 61 | (solder_mask_min_width 0.25) 62 | (aux_axis_origin 0 0) 63 | (visible_elements 7FFFFFFF) 64 | (pcbplotparams 65 | (layerselection 0x010fc_ffffffff) 66 | (usegerberextensions false) 67 | (usegerberattributes false) 68 | (usegerberadvancedattributes false) 69 | (creategerberjobfile false) 70 | (excludeedgelayer true) 71 | (linewidth 0.100000) 72 | (plotframeref false) 73 | (viasonmask false) 74 | (mode 1) 75 | (useauxorigin false) 76 | (hpglpennumber 1) 77 | (hpglpenspeed 20) 78 | (hpglpendiameter 15.000000) 79 | (psnegative false) 80 | (psa4output false) 81 | (plotreference true) 82 | (plotvalue true) 83 | (plotinvisibletext false) 84 | (padsonsilk false) 85 | (subtractmaskfromsilk false) 86 | (outputformat 1) 87 | (mirror false) 88 | (drillshape 1) 89 | (scaleselection 1) 90 | (outputdirectory "")) 91 | ) 92 | 93 | (net 0 "") 94 | (net 1 /+motor) 95 | (net 2 /-motor) 96 | (net 3 "Net-(J1-Pad3)") 97 | (net 4 "Net-(J1-Pad2)") 98 | (net 5 "Net-(Q1-Pad2)") 99 | 100 | (net_class Default "This is the default net class." 101 | (clearance 0.2) 102 | (trace_width 0.25) 103 | (via_dia 0.8) 104 | (via_drill 0.4) 105 | (uvia_dia 0.3) 106 | (uvia_drill 0.1) 107 | (add_net /+motor) 108 | (add_net /-motor) 109 | (add_net "Net-(J1-Pad2)") 110 | (add_net "Net-(J1-Pad3)") 111 | (add_net "Net-(Q1-Pad2)") 112 | ) 113 | 114 | (module Package_TO_SOT_THT:TO-92Flat (layer F.Cu) (tedit 5C2D433B) (tstamp 5EC2F121) 115 | (at 148.209 81.153 90) 116 | (descr "TO-92Flat package, often used for hall sensors, drill 0.75mm (see e.g. http://www.ti.com/lit/ds/symlink/drv5023.pdf)") 117 | (tags "to-92Flat hall sensor") 118 | (path /5EC33F89) 119 | (fp_text reference Q1 (at 4.191 1.016 180) (layer F.SilkS) 120 | (effects (font (size 1 1) (thickness 0.15))) 121 | ) 122 | (fp_text value Q_NPN_CBE (at 1.25 1.7 90) (layer F.Fab) 123 | (effects (font (size 1 1) (thickness 0.17))) 124 | ) 125 | (fp_line (start 0.03 0.9775) (end -0.73 0.2175) (layer F.Fab) (width 0.1)) 126 | (fp_line (start 2.51 0.9775) (end 0.03 0.9775) (layer F.Fab) (width 0.1)) 127 | (fp_line (start 3.27 0.2175) (end 2.51 0.9775) (layer F.Fab) (width 0.1)) 128 | (fp_line (start 3.27 -0.5425) (end 3.27 0.2175) (layer F.Fab) (width 0.1)) 129 | (fp_text user %R (at 1.27 0.2 90) (layer F.Fab) 130 | (effects (font (size 0.7 0.7) (thickness 0.13))) 131 | ) 132 | (fp_line (start 3.27 -0.5425) (end -0.73 -0.5425) (layer F.Fab) (width 0.1)) 133 | (fp_line (start -0.73 -0.5425) (end -0.73 0.2175) (layer F.Fab) (width 0.1)) 134 | (fp_line (start 2.51 0.9775) (end 0.03 0.9775) (layer F.Fab) (width 0.1)) 135 | (fp_line (start 3.39 -0.65) (end 3.39 0.3) (layer F.SilkS) (width 0.12)) 136 | (fp_line (start -0.86 0.3) (end -0.86 -0.65) (layer F.SilkS) (width 0.12)) 137 | (fp_line (start -0.98 -0.9) (end 3.52 -0.9) (layer F.CrtYd) (width 0.05)) 138 | (fp_line (start 3.52 -0.9) (end 3.52 0.33) (layer F.CrtYd) (width 0.05)) 139 | (fp_line (start 2.62 1.23) (end -0.14 1.23) (layer F.CrtYd) (width 0.05)) 140 | (fp_line (start -0.14 1.23) (end -0.98 0.39) (layer F.CrtYd) (width 0.05)) 141 | (fp_line (start -0.98 0.39) (end -0.98 -0.9) (layer F.CrtYd) (width 0.05)) 142 | (fp_line (start 3.52 0.33) (end 2.62 1.23) (layer F.CrtYd) (width 0.05)) 143 | (fp_line (start -0.01 1.1) (end 2.59 1.1) (layer F.SilkS) (width 0.12)) 144 | (fp_line (start 2.59 1.1) (end 2.84 0.85) (layer F.SilkS) (width 0.12)) 145 | (fp_line (start 3.24 0.45) (end 3.39 0.3) (layer F.SilkS) (width 0.12)) 146 | (fp_line (start -0.01 1.1) (end -0.26 0.85) (layer F.SilkS) (width 0.12)) 147 | (fp_line (start -0.71 0.45) (end -0.86 0.3) (layer F.SilkS) (width 0.12)) 148 | (pad 1 thru_hole roundrect (at 0 0 90) (size 1.05 1.3) (drill 0.75) (layers *.Cu *.Mask) (roundrect_rratio 0.238) 149 | (net 2 /-motor)) 150 | (pad 3 thru_hole oval (at 2.54 0 90) (size 1.05 1.3) (drill 0.75) (layers *.Cu *.Mask) 151 | (net 3 "Net-(J1-Pad3)")) 152 | (pad 2 thru_hole oval (at 1.27 0 90) (size 1.05 1.3) (drill 0.75) (layers *.Cu *.Mask) 153 | (net 5 "Net-(Q1-Pad2)")) 154 | (model ${KISYS3DMOD}/Package_TO_SOT_THT.3dshapes/TO-92Flat.wrl 155 | (at (xyz 0 0 0)) 156 | (scale (xyz 1 1 1)) 157 | (rotate (xyz 0 0 0)) 158 | ) 159 | ) 160 | 161 | (module Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_Vertical (layer F.Cu) (tedit 5AE5139B) (tstamp 5EC2D8BF) 162 | (at 145.923 81.153 90) 163 | (descr "Resistor, Axial_DIN0204 series, Axial, Vertical, pin pitch=2.54mm, 0.167W, length*diameter=3.6*1.6mm^2, http://cdn-reichelt.de/documents/datenblatt/B400/1_4W%23YAG.pdf") 164 | (tags "Resistor Axial_DIN0204 series Axial Vertical pin pitch 2.54mm 0.167W length 3.6mm diameter 1.6mm") 165 | (path /5EC29490) 166 | (fp_text reference R1 (at 4.191 1.016 180) (layer F.SilkS) 167 | (effects (font (size 1 1) (thickness 0.15))) 168 | ) 169 | (fp_text value 1k (at 1.27 1.92 90) (layer F.Fab) 170 | (effects (font (size 1 1) (thickness 0.15))) 171 | ) 172 | (fp_text user %R (at 1.27 -1.92 90) (layer F.Fab) 173 | (effects (font (size 1 1) (thickness 0.15))) 174 | ) 175 | (fp_line (start 3.49 -1.05) (end -1.05 -1.05) (layer F.CrtYd) (width 0.05)) 176 | (fp_line (start 3.49 1.05) (end 3.49 -1.05) (layer F.CrtYd) (width 0.05)) 177 | (fp_line (start -1.05 1.05) (end 3.49 1.05) (layer F.CrtYd) (width 0.05)) 178 | (fp_line (start -1.05 -1.05) (end -1.05 1.05) (layer F.CrtYd) (width 0.05)) 179 | (fp_line (start 0.92 0) (end 1.54 0) (layer F.SilkS) (width 0.12)) 180 | (fp_line (start 0 0) (end 2.54 0) (layer F.Fab) (width 0.1)) 181 | (fp_circle (center 0 0) (end 0.92 0) (layer F.SilkS) (width 0.12)) 182 | (fp_circle (center 0 0) (end 0.8 0) (layer F.Fab) (width 0.1)) 183 | (pad 2 thru_hole oval (at 2.54 0 90) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask) 184 | (net 4 "Net-(J1-Pad2)")) 185 | (pad 1 thru_hole circle (at 0 0 90) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask) 186 | (net 5 "Net-(Q1-Pad2)")) 187 | (model ${KISYS3DMOD}/Resistor_THT.3dshapes/R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_Vertical.wrl 188 | (at (xyz 0 0 0)) 189 | (scale (xyz 1 1 1)) 190 | (rotate (xyz 0 0 0)) 191 | ) 192 | ) 193 | 194 | (module Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Horizontal (layer F.Cu) (tedit 59FED5CB) (tstamp 5EC2D894) 195 | (at 155.448 78.74) 196 | (descr "Through hole angled pin header, 1x02, 2.54mm pitch, 6mm pin length, single row") 197 | (tags "Through hole angled pin header THT 1x02 2.54mm single row") 198 | (path /5EC2CA1F) 199 | (fp_text reference J2 (at 4.385 -2.27) (layer F.SilkS) 200 | (effects (font (size 1 1) (thickness 0.15))) 201 | ) 202 | (fp_text value Conn_01x02_Male (at 4.385 4.81) (layer F.Fab) 203 | (effects (font (size 1 1) (thickness 0.15))) 204 | ) 205 | (fp_text user %R (at 2.77 1.27 90) (layer F.Fab) 206 | (effects (font (size 1 1) (thickness 0.15))) 207 | ) 208 | (fp_line (start 10.55 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 209 | (fp_line (start 10.55 4.35) (end 10.55 -1.8) (layer F.CrtYd) (width 0.05)) 210 | (fp_line (start -1.8 4.35) (end 10.55 4.35) (layer F.CrtYd) (width 0.05)) 211 | (fp_line (start -1.8 -1.8) (end -1.8 4.35) (layer F.CrtYd) (width 0.05)) 212 | (fp_line (start -1.27 -1.27) (end 0 -1.27) (layer F.SilkS) (width 0.12)) 213 | (fp_line (start -1.27 0) (end -1.27 -1.27) (layer F.SilkS) (width 0.12)) 214 | (fp_line (start 1.042929 2.92) (end 1.44 2.92) (layer F.SilkS) (width 0.12)) 215 | (fp_line (start 1.042929 2.16) (end 1.44 2.16) (layer F.SilkS) (width 0.12)) 216 | (fp_line (start 10.1 2.92) (end 4.1 2.92) (layer F.SilkS) (width 0.12)) 217 | (fp_line (start 10.1 2.16) (end 10.1 2.92) (layer F.SilkS) (width 0.12)) 218 | (fp_line (start 4.1 2.16) (end 10.1 2.16) (layer F.SilkS) (width 0.12)) 219 | (fp_line (start 1.44 1.27) (end 4.1 1.27) (layer F.SilkS) (width 0.12)) 220 | (fp_line (start 1.11 0.38) (end 1.44 0.38) (layer F.SilkS) (width 0.12)) 221 | (fp_line (start 1.11 -0.38) (end 1.44 -0.38) (layer F.SilkS) (width 0.12)) 222 | (fp_line (start 4.1 0.28) (end 10.1 0.28) (layer F.SilkS) (width 0.12)) 223 | (fp_line (start 4.1 0.16) (end 10.1 0.16) (layer F.SilkS) (width 0.12)) 224 | (fp_line (start 4.1 0.04) (end 10.1 0.04) (layer F.SilkS) (width 0.12)) 225 | (fp_line (start 4.1 -0.08) (end 10.1 -0.08) (layer F.SilkS) (width 0.12)) 226 | (fp_line (start 4.1 -0.2) (end 10.1 -0.2) (layer F.SilkS) (width 0.12)) 227 | (fp_line (start 4.1 -0.32) (end 10.1 -0.32) (layer F.SilkS) (width 0.12)) 228 | (fp_line (start 10.1 0.38) (end 4.1 0.38) (layer F.SilkS) (width 0.12)) 229 | (fp_line (start 10.1 -0.38) (end 10.1 0.38) (layer F.SilkS) (width 0.12)) 230 | (fp_line (start 4.1 -0.38) (end 10.1 -0.38) (layer F.SilkS) (width 0.12)) 231 | (fp_line (start 4.1 -1.33) (end 1.44 -1.33) (layer F.SilkS) (width 0.12)) 232 | (fp_line (start 4.1 3.87) (end 4.1 -1.33) (layer F.SilkS) (width 0.12)) 233 | (fp_line (start 1.44 3.87) (end 4.1 3.87) (layer F.SilkS) (width 0.12)) 234 | (fp_line (start 1.44 -1.33) (end 1.44 3.87) (layer F.SilkS) (width 0.12)) 235 | (fp_line (start 4.04 2.86) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 236 | (fp_line (start 10.04 2.22) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 237 | (fp_line (start 4.04 2.22) (end 10.04 2.22) (layer F.Fab) (width 0.1)) 238 | (fp_line (start -0.32 2.86) (end 1.5 2.86) (layer F.Fab) (width 0.1)) 239 | (fp_line (start -0.32 2.22) (end -0.32 2.86) (layer F.Fab) (width 0.1)) 240 | (fp_line (start -0.32 2.22) (end 1.5 2.22) (layer F.Fab) (width 0.1)) 241 | (fp_line (start 4.04 0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 242 | (fp_line (start 10.04 -0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 243 | (fp_line (start 4.04 -0.32) (end 10.04 -0.32) (layer F.Fab) (width 0.1)) 244 | (fp_line (start -0.32 0.32) (end 1.5 0.32) (layer F.Fab) (width 0.1)) 245 | (fp_line (start -0.32 -0.32) (end -0.32 0.32) (layer F.Fab) (width 0.1)) 246 | (fp_line (start -0.32 -0.32) (end 1.5 -0.32) (layer F.Fab) (width 0.1)) 247 | (fp_line (start 1.5 -0.635) (end 2.135 -1.27) (layer F.Fab) (width 0.1)) 248 | (fp_line (start 1.5 3.81) (end 1.5 -0.635) (layer F.Fab) (width 0.1)) 249 | (fp_line (start 4.04 3.81) (end 1.5 3.81) (layer F.Fab) (width 0.1)) 250 | (fp_line (start 4.04 -1.27) (end 4.04 3.81) (layer F.Fab) (width 0.1)) 251 | (fp_line (start 2.135 -1.27) (end 4.04 -1.27) (layer F.Fab) (width 0.1)) 252 | (pad 2 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 253 | (net 1 /+motor)) 254 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 255 | (net 2 /-motor)) 256 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_1x02_P2.54mm_Horizontal.wrl 257 | (at (xyz 0 0 0)) 258 | (scale (xyz 1 1 1)) 259 | (rotate (xyz 0 0 0)) 260 | ) 261 | ) 262 | 263 | (module Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Horizontal (layer F.Cu) (tedit 59FED5CB) (tstamp 5EC2D861) 264 | (at 143.002 82.55 180) 265 | (descr "Through hole angled pin header, 1x03, 2.54mm pitch, 6mm pin length, single row") 266 | (tags "Through hole angled pin header THT 1x03 2.54mm single row") 267 | (path /5EC2BAE3) 268 | (fp_text reference J1 (at 4.385 -2.27) (layer F.SilkS) 269 | (effects (font (size 1 1) (thickness 0.15))) 270 | ) 271 | (fp_text value Conn_01x03_Male (at 4.385 7.35) (layer F.Fab) 272 | (effects (font (size 1 1) (thickness 0.15))) 273 | ) 274 | (fp_text user %R (at 2.77 2.54 90) (layer F.Fab) 275 | (effects (font (size 1 1) (thickness 0.15))) 276 | ) 277 | (fp_line (start 10.55 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 278 | (fp_line (start 10.55 6.85) (end 10.55 -1.8) (layer F.CrtYd) (width 0.05)) 279 | (fp_line (start -1.8 6.85) (end 10.55 6.85) (layer F.CrtYd) (width 0.05)) 280 | (fp_line (start -1.8 -1.8) (end -1.8 6.85) (layer F.CrtYd) (width 0.05)) 281 | (fp_line (start -1.27 -1.27) (end 0 -1.27) (layer F.SilkS) (width 0.12)) 282 | (fp_line (start -1.27 0) (end -1.27 -1.27) (layer F.SilkS) (width 0.12)) 283 | (fp_line (start 1.042929 5.46) (end 1.44 5.46) (layer F.SilkS) (width 0.12)) 284 | (fp_line (start 1.042929 4.7) (end 1.44 4.7) (layer F.SilkS) (width 0.12)) 285 | (fp_line (start 10.1 5.46) (end 4.1 5.46) (layer F.SilkS) (width 0.12)) 286 | (fp_line (start 10.1 4.7) (end 10.1 5.46) (layer F.SilkS) (width 0.12)) 287 | (fp_line (start 4.1 4.7) (end 10.1 4.7) (layer F.SilkS) (width 0.12)) 288 | (fp_line (start 1.44 3.81) (end 4.1 3.81) (layer F.SilkS) (width 0.12)) 289 | (fp_line (start 1.042929 2.92) (end 1.44 2.92) (layer F.SilkS) (width 0.12)) 290 | (fp_line (start 1.042929 2.16) (end 1.44 2.16) (layer F.SilkS) (width 0.12)) 291 | (fp_line (start 10.1 2.92) (end 4.1 2.92) (layer F.SilkS) (width 0.12)) 292 | (fp_line (start 10.1 2.16) (end 10.1 2.92) (layer F.SilkS) (width 0.12)) 293 | (fp_line (start 4.1 2.16) (end 10.1 2.16) (layer F.SilkS) (width 0.12)) 294 | (fp_line (start 1.44 1.27) (end 4.1 1.27) (layer F.SilkS) (width 0.12)) 295 | (fp_line (start 1.11 0.38) (end 1.44 0.38) (layer F.SilkS) (width 0.12)) 296 | (fp_line (start 1.11 -0.38) (end 1.44 -0.38) (layer F.SilkS) (width 0.12)) 297 | (fp_line (start 4.1 0.28) (end 10.1 0.28) (layer F.SilkS) (width 0.12)) 298 | (fp_line (start 4.1 0.16) (end 10.1 0.16) (layer F.SilkS) (width 0.12)) 299 | (fp_line (start 4.1 0.04) (end 10.1 0.04) (layer F.SilkS) (width 0.12)) 300 | (fp_line (start 4.1 -0.08) (end 10.1 -0.08) (layer F.SilkS) (width 0.12)) 301 | (fp_line (start 4.1 -0.2) (end 10.1 -0.2) (layer F.SilkS) (width 0.12)) 302 | (fp_line (start 4.1 -0.32) (end 10.1 -0.32) (layer F.SilkS) (width 0.12)) 303 | (fp_line (start 10.1 0.38) (end 4.1 0.38) (layer F.SilkS) (width 0.12)) 304 | (fp_line (start 10.1 -0.38) (end 10.1 0.38) (layer F.SilkS) (width 0.12)) 305 | (fp_line (start 4.1 -0.38) (end 10.1 -0.38) (layer F.SilkS) (width 0.12)) 306 | (fp_line (start 4.1 -1.33) (end 1.44 -1.33) (layer F.SilkS) (width 0.12)) 307 | (fp_line (start 4.1 6.41) (end 4.1 -1.33) (layer F.SilkS) (width 0.12)) 308 | (fp_line (start 1.44 6.41) (end 4.1 6.41) (layer F.SilkS) (width 0.12)) 309 | (fp_line (start 1.44 -1.33) (end 1.44 6.41) (layer F.SilkS) (width 0.12)) 310 | (fp_line (start 4.04 5.4) (end 10.04 5.4) (layer F.Fab) (width 0.1)) 311 | (fp_line (start 10.04 4.76) (end 10.04 5.4) (layer F.Fab) (width 0.1)) 312 | (fp_line (start 4.04 4.76) (end 10.04 4.76) (layer F.Fab) (width 0.1)) 313 | (fp_line (start -0.32 5.4) (end 1.5 5.4) (layer F.Fab) (width 0.1)) 314 | (fp_line (start -0.32 4.76) (end -0.32 5.4) (layer F.Fab) (width 0.1)) 315 | (fp_line (start -0.32 4.76) (end 1.5 4.76) (layer F.Fab) (width 0.1)) 316 | (fp_line (start 4.04 2.86) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 317 | (fp_line (start 10.04 2.22) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 318 | (fp_line (start 4.04 2.22) (end 10.04 2.22) (layer F.Fab) (width 0.1)) 319 | (fp_line (start -0.32 2.86) (end 1.5 2.86) (layer F.Fab) (width 0.1)) 320 | (fp_line (start -0.32 2.22) (end -0.32 2.86) (layer F.Fab) (width 0.1)) 321 | (fp_line (start -0.32 2.22) (end 1.5 2.22) (layer F.Fab) (width 0.1)) 322 | (fp_line (start 4.04 0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 323 | (fp_line (start 10.04 -0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 324 | (fp_line (start 4.04 -0.32) (end 10.04 -0.32) (layer F.Fab) (width 0.1)) 325 | (fp_line (start -0.32 0.32) (end 1.5 0.32) (layer F.Fab) (width 0.1)) 326 | (fp_line (start -0.32 -0.32) (end -0.32 0.32) (layer F.Fab) (width 0.1)) 327 | (fp_line (start -0.32 -0.32) (end 1.5 -0.32) (layer F.Fab) (width 0.1)) 328 | (fp_line (start 1.5 -0.635) (end 2.135 -1.27) (layer F.Fab) (width 0.1)) 329 | (fp_line (start 1.5 6.35) (end 1.5 -0.635) (layer F.Fab) (width 0.1)) 330 | (fp_line (start 4.04 6.35) (end 1.5 6.35) (layer F.Fab) (width 0.1)) 331 | (fp_line (start 4.04 -1.27) (end 4.04 6.35) (layer F.Fab) (width 0.1)) 332 | (fp_line (start 2.135 -1.27) (end 4.04 -1.27) (layer F.Fab) (width 0.1)) 333 | (pad 3 thru_hole oval (at 0 5.08 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 334 | (net 3 "Net-(J1-Pad3)")) 335 | (pad 2 thru_hole oval (at 0 2.54 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 336 | (net 4 "Net-(J1-Pad2)")) 337 | (pad 1 thru_hole rect (at 0 0 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 338 | (net 1 /+motor)) 339 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_1x03_P2.54mm_Horizontal.wrl 340 | (at (xyz 0 0 0)) 341 | (scale (xyz 1 1 1)) 342 | (rotate (xyz 0 0 0)) 343 | ) 344 | ) 345 | 346 | (module Diode_THT:D_DO-15_P3.81mm_Vertical_KathodeUp (layer F.Cu) (tedit 5B526DD4) (tstamp 5EC2D821) 347 | (at 151.511 77.724 270) 348 | (descr "Diode, DO-15 series, Axial, Vertical, pin pitch=3.81mm, , length*diameter=7.6*3.6mm^2, , http://www.diodes.com/_files/packages/DO-15.pdf") 349 | (tags "Diode DO-15 series Axial Vertical pin pitch 3.81mm length 7.6mm diameter 3.6mm") 350 | (path /5EC2A83F) 351 | (fp_text reference D1 (at 1.905 -1.905 90) (layer F.SilkS) 352 | (effects (font (size 1 1) (thickness 0.15))) 353 | ) 354 | (fp_text value DIODE (at 1.905 4.2535 90) (layer F.Fab) 355 | (effects (font (size 1 1) (thickness 0.15))) 356 | ) 357 | (fp_text user K (at 1.9 1.2 90) (layer F.Fab) 358 | (effects (font (size 1 1) (thickness 0.15))) 359 | ) 360 | (fp_text user %R (at 1.651 -2.159 90) (layer F.Fab) 361 | (effects (font (size 1 1) (thickness 0.15))) 362 | ) 363 | (fp_line (start 5.86 -2.05) (end -1.45 -2.05) (layer F.CrtYd) (width 0.05)) 364 | (fp_line (start 5.86 2.05) (end 5.86 -2.05) (layer F.CrtYd) (width 0.05)) 365 | (fp_line (start -1.45 2.05) (end 5.86 2.05) (layer F.CrtYd) (width 0.05)) 366 | (fp_line (start -1.45 -2.05) (end -1.45 2.05) (layer F.CrtYd) (width 0.05)) 367 | (fp_line (start 1.89 0) (end 1.5 0) (layer F.SilkS) (width 0.12)) 368 | (fp_line (start 0 0) (end 3.81 0) (layer F.Fab) (width 0.1)) 369 | (fp_circle (center 3.81 0) (end 5.73 0) (layer F.SilkS) (width 0.12)) 370 | (fp_circle (center 3.81 0) (end 5.61 0) (layer F.Fab) (width 0.1)) 371 | (pad 2 thru_hole oval (at 3.81 0 270) (size 2.4 2.4) (drill 1.2) (layers *.Cu *.Mask) 372 | (net 1 /+motor)) 373 | (pad 1 thru_hole rect (at 0 0 270) (size 2.4 2.4) (drill 1.2) (layers *.Cu *.Mask) 374 | (net 2 /-motor)) 375 | (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_DO-15_P3.81mm_Vertical_KathodeUp.wrl 376 | (at (xyz 0 0 0)) 377 | (scale (xyz 1 1 1)) 378 | (rotate (xyz 0 0 0)) 379 | ) 380 | ) 381 | 382 | (gr_line (start 156.591 77.089) (end 155.702 76.2) (layer Edge.Cuts) (width 0.05) (tstamp 5EC2F506)) 383 | (gr_line (start 156.591 82.931) (end 156.591 77.089) (layer Edge.Cuts) (width 0.05)) 384 | (gr_line (start 155.702 83.82) (end 156.591 82.931) (layer Edge.Cuts) (width 0.05)) 385 | (gr_text "JSC R0" (at 146.812 83.058) (layer B.SilkS) 386 | (effects (font (size 1 1) (thickness 0.15)) (justify mirror)) 387 | ) 388 | (gr_text "EZ FAN" (at 146.685 76.962) (layer B.SilkS) 389 | (effects (font (size 1 1) (thickness 0.15)) (justify mirror)) 390 | ) 391 | (gr_text S (at 144.653 80.01) (layer F.SilkS) 392 | (effects (font (size 1 1) (thickness 0.15))) 393 | ) 394 | (gr_text - (at 144.653 76.708) (layer F.SilkS) 395 | (effects (font (size 1 1) (thickness 0.15))) 396 | ) 397 | (gr_text + (at 144.907 83.185) (layer F.SilkS) 398 | (effects (font (size 1 1) (thickness 0.15))) 399 | ) 400 | (gr_text M- (at 154.178 76.962) (layer F.SilkS) 401 | (effects (font (size 1 1) (thickness 0.15))) 402 | ) 403 | (gr_text M+ (at 154.178 83.058) (layer F.SilkS) 404 | (effects (font (size 1 1) (thickness 0.15))) 405 | ) 406 | (gr_line (start 141.859 76.2) (end 155.702 76.2) (layer Edge.Cuts) (width 0.05)) 407 | (gr_line (start 141.859 83.82) (end 141.859 76.2) (layer Edge.Cuts) (width 0.05)) 408 | (gr_line (start 155.702 83.82) (end 141.859 83.82) (layer Edge.Cuts) (width 0.05)) 409 | 410 | (segment (start 150.495 82.55) (end 151.511 81.534) (width 0.25) (layer F.Cu) (net 1)) 411 | (segment (start 143.002 82.55) (end 150.495 82.55) (width 0.25) (layer F.Cu) (net 1)) 412 | (segment (start 155.067 81.534) (end 155.448 81.153) (width 0.25) (layer F.Cu) (net 1)) 413 | (segment (start 151.511 81.534) (end 155.067 81.534) (width 0.25) (layer F.Cu) (net 1)) 414 | (segment (start 151.892 78.105) (end 151.511 77.724) (width 0.25) (layer F.Cu) (net 2)) 415 | (segment (start 148.959 81.153) (end 148.209 81.153) (width 0.25) (layer F.Cu) (net 2)) 416 | (segment (start 149.532 81.153) (end 148.959 81.153) (width 0.25) (layer F.Cu) (net 2)) 417 | (segment (start 151.511 79.174) (end 149.532 81.153) (width 0.25) (layer F.Cu) (net 2)) 418 | (segment (start 151.511 77.724) (end 151.511 79.174) (width 0.25) (layer F.Cu) (net 2)) 419 | (segment (start 154.559 77.724) (end 155.448 78.613) (width 0.25) (layer F.Cu) (net 2)) 420 | (segment (start 151.511 77.724) (end 154.559 77.724) (width 0.25) (layer F.Cu) (net 2)) 421 | (segment (start 148.209 77.838) (end 148.209 78.613) (width 0.25) (layer F.Cu) (net 3)) 422 | (segment (start 147.841 77.47) (end 148.209 77.838) (width 0.25) (layer F.Cu) (net 3)) 423 | (segment (start 143.002 77.47) (end 147.841 77.47) (width 0.25) (layer F.Cu) (net 3)) 424 | (segment (start 144.399 78.613) (end 145.923 78.613) (width 0.25) (layer F.Cu) (net 4)) 425 | (segment (start 143.002 80.01) (end 144.399 78.613) (width 0.25) (layer F.Cu) (net 4)) 426 | (segment (start 147.193 79.883) (end 148.209 79.883) (width 0.25) (layer F.Cu) (net 5)) 427 | (segment (start 145.923 81.153) (end 147.193 79.883) (width 0.25) (layer F.Cu) (net 5)) 428 | 429 | (zone (net 1) (net_name /+motor) (layer F.Cu) (tstamp 5EC2F9FB) (hatch edge 0.508) 430 | (connect_pads (clearance 0.508)) 431 | (min_thickness 0.254) 432 | (fill yes (arc_segments 32) (thermal_gap 0.508) (thermal_bridge_width 0.508)) 433 | (polygon 434 | (pts 435 | (xy 141.732 75.946) (xy 156.718 75.819) (xy 156.972 85.344) (xy 141.605 85.471) 436 | ) 437 | ) 438 | (filled_polygon 439 | (pts 440 | (xy 153.959928 79.59) (xy 153.972188 79.714482) (xy 154.008498 79.83418) (xy 154.067463 79.944494) (xy 154.146815 80.041185) 441 | (xy 154.243506 80.120537) (xy 154.35382 80.179502) (xy 154.434466 80.203966) (xy 154.350412 80.279731) (xy 154.176359 80.51308) 442 | (xy 154.051175 80.775901) (xy 154.006524 80.92311) (xy 154.127845 81.153) (xy 155.321 81.153) (xy 155.321 81.133) 443 | (xy 155.575 81.133) (xy 155.575 81.153) (xy 155.595 81.153) (xy 155.595 81.407) (xy 155.575 81.407) 444 | (xy 155.575 82.600814) (xy 155.804891 82.721481) (xy 155.901358 82.687261) (xy 155.42862 83.16) (xy 152.342556 83.16) 445 | (xy 152.484257 83.089639) (xy 152.769046 82.869875) (xy 153.005489 82.598774) (xy 153.1845 82.286754) (xy 153.299199 81.945806) 446 | (xy 153.182854 81.661) (xy 151.638 81.661) (xy 151.638 81.681) (xy 151.384 81.681) (xy 151.384 81.661) 447 | (xy 151.364 81.661) (xy 151.364 81.63689) (xy 154.006524 81.63689) (xy 154.051175 81.784099) (xy 154.176359 82.04692) 448 | (xy 154.350412 82.280269) (xy 154.566645 82.475178) (xy 154.816748 82.624157) (xy 155.091109 82.721481) (xy 155.321 82.600814) 449 | (xy 155.321 81.407) (xy 154.127845 81.407) (xy 154.006524 81.63689) (xy 151.364 81.63689) (xy 151.364 81.407) 450 | (xy 151.384 81.407) (xy 151.384 81.387) (xy 151.638 81.387) (xy 151.638 81.407) (xy 153.182854 81.407) 451 | (xy 153.299199 81.122194) (xy 153.1845 80.781246) (xy 153.005489 80.469226) (xy 152.769046 80.198125) (xy 152.484257 79.978361) 452 | (xy 152.162066 79.818379) (xy 151.992774 79.767028) (xy 152.022003 79.737799) (xy 152.051001 79.714001) (xy 152.145974 79.598276) 453 | (xy 152.165326 79.562072) (xy 152.711 79.562072) (xy 152.835482 79.549812) (xy 152.95518 79.513502) (xy 153.065494 79.454537) 454 | (xy 153.162185 79.375185) (xy 153.241537 79.278494) (xy 153.300502 79.16818) (xy 153.336812 79.048482) (xy 153.349072 78.924) 455 | (xy 153.349072 78.484) (xy 153.959928 78.484) 456 | ) 457 | ) 458 | (filled_polygon 459 | (pts 460 | (xy 144.974445 79.561555) (xy 145.177725 79.728382) (xy 145.409646 79.852347) (xy 145.504828 79.88122) (xy 145.290641 79.969939) 461 | (xy 145.071987 80.116038) (xy 144.886038 80.301987) (xy 144.739939 80.520641) (xy 144.639304 80.763595) (xy 144.588 81.021514) 462 | (xy 144.588 81.284486) (xy 144.639304 81.542405) (xy 144.739939 81.785359) (xy 144.886038 82.004013) (xy 145.071987 82.189962) 463 | (xy 145.290641 82.336061) (xy 145.533595 82.436696) (xy 145.791514 82.488) (xy 146.054486 82.488) (xy 146.312405 82.436696) 464 | (xy 146.555359 82.336061) (xy 146.774013 82.189962) (xy 146.959962 82.004013) (xy 147.04594 81.875337) (xy 147.070578 81.921431) 465 | (xy 147.181009 82.055991) (xy 147.315569 82.166422) (xy 147.469088 82.248479) (xy 147.635665 82.29901) (xy 147.8089 82.316072) 466 | (xy 148.6091 82.316072) (xy 148.782335 82.29901) (xy 148.948912 82.248479) (xy 149.102431 82.166422) (xy 149.236991 82.055991) 467 | (xy 149.347422 81.921431) (xy 149.351928 81.913) (xy 149.494678 81.913) (xy 149.532 81.916676) (xy 149.569322 81.913) 468 | (xy 149.569333 81.913) (xy 149.680986 81.902003) (xy 149.74914 81.881329) (xy 149.722801 81.945806) (xy 149.8375 82.286754) 469 | (xy 150.016511 82.598774) (xy 150.252954 82.869875) (xy 150.537743 83.089639) (xy 150.679444 83.16) (xy 144.488765 83.16) 470 | (xy 144.487 82.83575) (xy 144.32825 82.677) (xy 143.129 82.677) (xy 143.129 82.697) (xy 142.875 82.697) 471 | (xy 142.875 82.677) (xy 142.855 82.677) (xy 142.855 82.423) (xy 142.875 82.423) (xy 142.875 82.403) 472 | (xy 143.129 82.403) (xy 143.129 82.423) (xy 144.32825 82.423) (xy 144.487 82.26425) (xy 144.490072 81.7) 473 | (xy 144.477812 81.575518) (xy 144.441502 81.45582) (xy 144.382537 81.345506) (xy 144.303185 81.248815) (xy 144.206494 81.169463) 474 | (xy 144.09618 81.110498) (xy 144.027313 81.089607) (xy 144.057134 81.065134) (xy 144.242706 80.839014) (xy 144.380599 80.581034) 475 | (xy 144.465513 80.301111) (xy 144.494185 80.01) (xy 144.465513 79.718889) (xy 144.442797 79.644005) (xy 144.713802 79.373) 476 | (xy 144.819702 79.373) 477 | ) 478 | ) 479 | ) 480 | (zone (net 3) (net_name "Net-(J1-Pad3)") (layer B.Cu) (tstamp 5EC2F9F8) (hatch edge 0.508) 481 | (connect_pads (clearance 0.508)) 482 | (min_thickness 0.254) 483 | (fill yes (arc_segments 32) (thermal_gap 0.508) (thermal_bridge_width 0.508)) 484 | (polygon 485 | (pts 486 | (xy 141.605 75.946) (xy 156.972 75.819) (xy 157.226 85.471) (xy 141.732 84.836) 487 | ) 488 | ) 489 | (filled_polygon 490 | (pts 491 | (xy 149.672928 78.924) (xy 149.685188 79.048482) (xy 149.721498 79.16818) (xy 149.780463 79.278494) (xy 149.859815 79.375185) 492 | (xy 149.956506 79.454537) (xy 150.06682 79.513502) (xy 150.186518 79.549812) (xy 150.311 79.562072) (xy 152.711 79.562072) 493 | (xy 152.835482 79.549812) (xy 152.95518 79.513502) (xy 153.065494 79.454537) (xy 153.162185 79.375185) (xy 153.241537 79.278494) 494 | (xy 153.300502 79.16818) (xy 153.336812 79.048482) (xy 153.349072 78.924) (xy 153.349072 76.86) (xy 155.42862 76.86) 495 | (xy 155.820547 77.251928) (xy 154.598 77.251928) (xy 154.473518 77.264188) (xy 154.35382 77.300498) (xy 154.243506 77.359463) 496 | (xy 154.146815 77.438815) (xy 154.067463 77.535506) (xy 154.008498 77.64582) (xy 153.972188 77.765518) (xy 153.959928 77.89) 497 | (xy 153.959928 79.59) (xy 153.972188 79.714482) (xy 154.008498 79.83418) (xy 154.067463 79.944494) (xy 154.146815 80.041185) 498 | (xy 154.243506 80.120537) (xy 154.35382 80.179502) (xy 154.422687 80.200393) (xy 154.392866 80.224866) (xy 154.207294 80.450986) 499 | (xy 154.069401 80.708966) (xy 153.984487 80.988889) (xy 153.955815 81.28) (xy 153.984487 81.571111) (xy 154.069401 81.851034) 500 | (xy 154.207294 82.109014) (xy 154.392866 82.335134) (xy 154.618986 82.520706) (xy 154.876966 82.658599) (xy 155.156889 82.743513) 501 | (xy 155.37505 82.765) (xy 155.52095 82.765) (xy 155.739111 82.743513) (xy 155.89126 82.697359) (xy 155.42862 83.16) 502 | (xy 152.361654 83.16) (xy 152.535404 83.067129) (xy 152.814819 82.837819) (xy 153.044129 82.558404) (xy 153.214521 82.239622) 503 | (xy 153.319448 81.893723) (xy 153.354878 81.534) (xy 153.319448 81.174277) (xy 153.214521 80.828378) (xy 153.044129 80.509596) 504 | (xy 152.814819 80.230181) (xy 152.535404 80.000871) (xy 152.216622 79.830479) (xy 151.870723 79.725552) (xy 151.601139 79.699) 505 | (xy 151.420861 79.699) (xy 151.151277 79.725552) (xy 150.805378 79.830479) (xy 150.486596 80.000871) (xy 150.207181 80.230181) 506 | (xy 149.977871 80.509596) (xy 149.807479 80.828378) (xy 149.702552 81.174277) (xy 149.667122 81.534) (xy 149.702552 81.893723) 507 | (xy 149.807479 82.239622) (xy 149.977871 82.558404) (xy 150.207181 82.837819) (xy 150.486596 83.067129) (xy 150.660346 83.16) 508 | (xy 144.490072 83.16) (xy 144.490072 81.7) (xy 144.477812 81.575518) (xy 144.441502 81.45582) (xy 144.382537 81.345506) 509 | (xy 144.303185 81.248815) (xy 144.206494 81.169463) (xy 144.09618 81.110498) (xy 144.027313 81.089607) (xy 144.057134 81.065134) 510 | (xy 144.242706 80.839014) (xy 144.380599 80.581034) (xy 144.465513 80.301111) (xy 144.494185 80.01) (xy 144.465513 79.718889) 511 | (xy 144.380599 79.438966) (xy 144.242706 79.180986) (xy 144.057134 78.954866) (xy 143.831014 78.769294) (xy 143.766477 78.734799) 512 | (xy 143.883355 78.665178) (xy 143.941241 78.613) (xy 144.581541 78.613) (xy 144.607317 78.874706) (xy 144.683653 79.126354) 513 | (xy 144.807618 79.358275) (xy 144.974445 79.561555) (xy 145.177725 79.728382) (xy 145.409646 79.852347) (xy 145.504828 79.88122) 514 | (xy 145.290641 79.969939) (xy 145.071987 80.116038) (xy 144.886038 80.301987) (xy 144.739939 80.520641) (xy 144.639304 80.763595) 515 | (xy 144.588 81.021514) (xy 144.588 81.284486) (xy 144.639304 81.542405) (xy 144.739939 81.785359) (xy 144.886038 82.004013) 516 | (xy 145.071987 82.189962) (xy 145.290641 82.336061) (xy 145.533595 82.436696) (xy 145.791514 82.488) (xy 146.054486 82.488) 517 | (xy 146.312405 82.436696) (xy 146.555359 82.336061) (xy 146.774013 82.189962) (xy 146.959962 82.004013) (xy 147.04594 81.875337) 518 | (xy 147.070578 81.921431) (xy 147.181009 82.055991) (xy 147.315569 82.166422) (xy 147.469088 82.248479) (xy 147.635665 82.29901) 519 | (xy 147.8089 82.316072) (xy 148.6091 82.316072) (xy 148.782335 82.29901) (xy 148.948912 82.248479) (xy 149.102431 82.166422) 520 | (xy 149.236991 82.055991) (xy 149.347422 81.921431) (xy 149.429479 81.767912) (xy 149.48001 81.601335) (xy 149.497072 81.4281) 521 | (xy 149.497072 80.8779) (xy 149.48001 80.704665) (xy 149.429479 80.538088) (xy 149.364318 80.41618) (xy 149.410885 80.32906) 522 | (xy 149.477215 80.1104) (xy 149.499612 79.883) (xy 149.477215 79.6556) (xy 149.410885 79.43694) (xy 149.30512 79.239067) 523 | (xy 149.388184 79.096784) (xy 149.452964 78.91881) (xy 149.327163 78.74) (xy 148.562109 78.74) (xy 148.5614 78.739785) 524 | (xy 148.390979 78.723) (xy 148.062 78.723) (xy 148.062 78.486) (xy 148.082 78.486) (xy 148.082 77.611859) 525 | (xy 148.336 77.611859) (xy 148.336 78.486) (xy 149.327163 78.486) (xy 149.452964 78.30719) (xy 149.388184 78.129216) 526 | (xy 149.273547 77.932851) (xy 149.122803 77.762623) (xy 148.941746 77.625075) (xy 148.737334 77.525492) (xy 148.517422 77.467702) 527 | (xy 148.336 77.611859) (xy 148.082 77.611859) (xy 147.900578 77.467702) (xy 147.680666 77.525492) (xy 147.476254 77.625075) 528 | (xy 147.295197 77.762623) (xy 147.144453 77.932851) (xy 147.107253 77.996572) (xy 147.038382 77.867725) (xy 146.871555 77.664445) 529 | (xy 146.668275 77.497618) (xy 146.436354 77.373653) (xy 146.184706 77.297317) (xy 145.988579 77.278) (xy 145.857421 77.278) 530 | (xy 145.661294 77.297317) (xy 145.409646 77.373653) (xy 145.177725 77.497618) (xy 144.974445 77.664445) (xy 144.807618 77.867725) 531 | (xy 144.683653 78.099646) (xy 144.607317 78.351294) (xy 144.581541 78.613) (xy 143.941241 78.613) (xy 144.099588 78.470269) 532 | (xy 144.273641 78.23692) (xy 144.398825 77.974099) (xy 144.443476 77.82689) (xy 144.322155 77.597) (xy 143.129 77.597) 533 | (xy 143.129 77.617) (xy 142.875 77.617) (xy 142.875 77.597) (xy 142.855 77.597) (xy 142.855 77.343) 534 | (xy 142.875 77.343) (xy 142.875 77.323) (xy 143.129 77.323) (xy 143.129 77.343) (xy 144.322155 77.343) 535 | (xy 144.443476 77.11311) (xy 144.398825 76.965901) (xy 144.348383 76.86) (xy 149.672928 76.86) 536 | ) 537 | ) 538 | ) 539 | ) 540 | -------------------------------------------------------------------------------- /PCB/PiFan.kicad_pcb-bak: -------------------------------------------------------------------------------- 1 | (kicad_pcb (version 20171130) (host pcbnew "(5.1.2)-1") 2 | 3 | (general 4 | (thickness 1.6) 5 | (drawings 13) 6 | (tracks 18) 7 | (zones 0) 8 | (modules 5) 9 | (nets 6) 10 | ) 11 | 12 | (page A4) 13 | (layers 14 | (0 F.Cu signal) 15 | (31 B.Cu signal) 16 | (32 B.Adhes user) 17 | (33 F.Adhes user) 18 | (34 B.Paste user) 19 | (35 F.Paste user) 20 | (36 B.SilkS user) 21 | (37 F.SilkS user) 22 | (38 B.Mask user) 23 | (39 F.Mask user) 24 | (40 Dwgs.User user) 25 | (41 Cmts.User user) 26 | (42 Eco1.User user) 27 | (43 Eco2.User user) 28 | (44 Edge.Cuts user) 29 | (45 Margin user) 30 | (46 B.CrtYd user) 31 | (47 F.CrtYd user) 32 | (48 B.Fab user) 33 | (49 F.Fab user) 34 | ) 35 | 36 | (setup 37 | (last_trace_width 0.25) 38 | (trace_clearance 0.2) 39 | (zone_clearance 0.508) 40 | (zone_45_only no) 41 | (trace_min 0.2) 42 | (via_size 0.8) 43 | (via_drill 0.4) 44 | (via_min_size 0.4) 45 | (via_min_drill 0.3) 46 | (uvia_size 0.3) 47 | (uvia_drill 0.1) 48 | (uvias_allowed no) 49 | (uvia_min_size 0.2) 50 | (uvia_min_drill 0.1) 51 | (edge_width 0.05) 52 | (segment_width 0.2) 53 | (pcb_text_width 0.3) 54 | (pcb_text_size 1.5 1.5) 55 | (mod_edge_width 0.12) 56 | (mod_text_size 1 1) 57 | (mod_text_width 0.15) 58 | (pad_size 1.524 1.524) 59 | (pad_drill 0.762) 60 | (pad_to_mask_clearance 0.051) 61 | (solder_mask_min_width 0.25) 62 | (aux_axis_origin 0 0) 63 | (visible_elements 7FFFFFFF) 64 | (pcbplotparams 65 | (layerselection 0x010fc_ffffffff) 66 | (usegerberextensions false) 67 | (usegerberattributes false) 68 | (usegerberadvancedattributes false) 69 | (creategerberjobfile false) 70 | (excludeedgelayer true) 71 | (linewidth 0.100000) 72 | (plotframeref false) 73 | (viasonmask false) 74 | (mode 1) 75 | (useauxorigin false) 76 | (hpglpennumber 1) 77 | (hpglpenspeed 20) 78 | (hpglpendiameter 15.000000) 79 | (psnegative false) 80 | (psa4output false) 81 | (plotreference true) 82 | (plotvalue true) 83 | (plotinvisibletext false) 84 | (padsonsilk false) 85 | (subtractmaskfromsilk false) 86 | (outputformat 1) 87 | (mirror false) 88 | (drillshape 1) 89 | (scaleselection 1) 90 | (outputdirectory "")) 91 | ) 92 | 93 | (net 0 "") 94 | (net 1 /+motor) 95 | (net 2 /-motor) 96 | (net 3 "Net-(J1-Pad3)") 97 | (net 4 "Net-(J1-Pad2)") 98 | (net 5 "Net-(Q1-Pad2)") 99 | 100 | (net_class Default "This is the default net class." 101 | (clearance 0.2) 102 | (trace_width 0.25) 103 | (via_dia 0.8) 104 | (via_drill 0.4) 105 | (uvia_dia 0.3) 106 | (uvia_drill 0.1) 107 | (add_net /+motor) 108 | (add_net /-motor) 109 | (add_net "Net-(J1-Pad2)") 110 | (add_net "Net-(J1-Pad3)") 111 | (add_net "Net-(Q1-Pad2)") 112 | ) 113 | 114 | (module Package_TO_SOT_THT:TO-92Flat (layer F.Cu) (tedit 5C2D433B) (tstamp 5EC2F121) 115 | (at 148.209 81.153 90) 116 | (descr "TO-92Flat package, often used for hall sensors, drill 0.75mm (see e.g. http://www.ti.com/lit/ds/symlink/drv5023.pdf)") 117 | (tags "to-92Flat hall sensor") 118 | (path /5EC33F89) 119 | (fp_text reference Q1 (at 4.191 0.381 180) (layer F.SilkS) 120 | (effects (font (size 1 1) (thickness 0.15))) 121 | ) 122 | (fp_text value Q_NPN_CBE (at 1.25 1.7 90) (layer F.Fab) 123 | (effects (font (size 1 1) (thickness 0.17))) 124 | ) 125 | (fp_line (start 0.03 0.9775) (end -0.73 0.2175) (layer F.Fab) (width 0.1)) 126 | (fp_line (start 2.51 0.9775) (end 0.03 0.9775) (layer F.Fab) (width 0.1)) 127 | (fp_line (start 3.27 0.2175) (end 2.51 0.9775) (layer F.Fab) (width 0.1)) 128 | (fp_line (start 3.27 -0.5425) (end 3.27 0.2175) (layer F.Fab) (width 0.1)) 129 | (fp_text user %R (at 1.27 0.2 90) (layer F.Fab) 130 | (effects (font (size 0.7 0.7) (thickness 0.13))) 131 | ) 132 | (fp_line (start 3.27 -0.5425) (end -0.73 -0.5425) (layer F.Fab) (width 0.1)) 133 | (fp_line (start -0.73 -0.5425) (end -0.73 0.2175) (layer F.Fab) (width 0.1)) 134 | (fp_line (start 2.51 0.9775) (end 0.03 0.9775) (layer F.Fab) (width 0.1)) 135 | (fp_line (start 3.39 -0.65) (end 3.39 0.3) (layer F.SilkS) (width 0.12)) 136 | (fp_line (start -0.86 0.3) (end -0.86 -0.65) (layer F.SilkS) (width 0.12)) 137 | (fp_line (start -0.98 -0.9) (end 3.52 -0.9) (layer F.CrtYd) (width 0.05)) 138 | (fp_line (start 3.52 -0.9) (end 3.52 0.33) (layer F.CrtYd) (width 0.05)) 139 | (fp_line (start 2.62 1.23) (end -0.14 1.23) (layer F.CrtYd) (width 0.05)) 140 | (fp_line (start -0.14 1.23) (end -0.98 0.39) (layer F.CrtYd) (width 0.05)) 141 | (fp_line (start -0.98 0.39) (end -0.98 -0.9) (layer F.CrtYd) (width 0.05)) 142 | (fp_line (start 3.52 0.33) (end 2.62 1.23) (layer F.CrtYd) (width 0.05)) 143 | (fp_line (start -0.01 1.1) (end 2.59 1.1) (layer F.SilkS) (width 0.12)) 144 | (fp_line (start 2.59 1.1) (end 2.84 0.85) (layer F.SilkS) (width 0.12)) 145 | (fp_line (start 3.24 0.45) (end 3.39 0.3) (layer F.SilkS) (width 0.12)) 146 | (fp_line (start -0.01 1.1) (end -0.26 0.85) (layer F.SilkS) (width 0.12)) 147 | (fp_line (start -0.71 0.45) (end -0.86 0.3) (layer F.SilkS) (width 0.12)) 148 | (pad 1 thru_hole roundrect (at 0 0 90) (size 1.05 1.3) (drill 0.75) (layers *.Cu *.Mask) (roundrect_rratio 0.238) 149 | (net 2 /-motor)) 150 | (pad 3 thru_hole oval (at 2.54 0 90) (size 1.05 1.3) (drill 0.75) (layers *.Cu *.Mask) 151 | (net 3 "Net-(J1-Pad3)")) 152 | (pad 2 thru_hole oval (at 1.27 0 90) (size 1.05 1.3) (drill 0.75) (layers *.Cu *.Mask) 153 | (net 5 "Net-(Q1-Pad2)")) 154 | (model ${KISYS3DMOD}/Package_TO_SOT_THT.3dshapes/TO-92Flat.wrl 155 | (at (xyz 0 0 0)) 156 | (scale (xyz 1 1 1)) 157 | (rotate (xyz 0 0 0)) 158 | ) 159 | ) 160 | 161 | (module Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_Vertical (layer F.Cu) (tedit 5AE5139B) (tstamp 5EC2D8BF) 162 | (at 145.923 81.153 90) 163 | (descr "Resistor, Axial_DIN0204 series, Axial, Vertical, pin pitch=2.54mm, 0.167W, length*diameter=3.6*1.6mm^2, http://cdn-reichelt.de/documents/datenblatt/B400/1_4W%23YAG.pdf") 164 | (tags "Resistor Axial_DIN0204 series Axial Vertical pin pitch 2.54mm 0.167W length 3.6mm diameter 1.6mm") 165 | (path /5EC29490) 166 | (fp_text reference R1 (at 4.191 0.762 180) (layer F.SilkS) 167 | (effects (font (size 1 1) (thickness 0.15))) 168 | ) 169 | (fp_text value 1k (at 1.27 1.92 90) (layer F.Fab) 170 | (effects (font (size 1 1) (thickness 0.15))) 171 | ) 172 | (fp_text user %R (at 1.27 -1.92 90) (layer F.Fab) 173 | (effects (font (size 1 1) (thickness 0.15))) 174 | ) 175 | (fp_line (start 3.49 -1.05) (end -1.05 -1.05) (layer F.CrtYd) (width 0.05)) 176 | (fp_line (start 3.49 1.05) (end 3.49 -1.05) (layer F.CrtYd) (width 0.05)) 177 | (fp_line (start -1.05 1.05) (end 3.49 1.05) (layer F.CrtYd) (width 0.05)) 178 | (fp_line (start -1.05 -1.05) (end -1.05 1.05) (layer F.CrtYd) (width 0.05)) 179 | (fp_line (start 0.92 0) (end 1.54 0) (layer F.SilkS) (width 0.12)) 180 | (fp_line (start 0 0) (end 2.54 0) (layer F.Fab) (width 0.1)) 181 | (fp_circle (center 0 0) (end 0.92 0) (layer F.SilkS) (width 0.12)) 182 | (fp_circle (center 0 0) (end 0.8 0) (layer F.Fab) (width 0.1)) 183 | (pad 2 thru_hole oval (at 2.54 0 90) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask) 184 | (net 4 "Net-(J1-Pad2)")) 185 | (pad 1 thru_hole circle (at 0 0 90) (size 1.4 1.4) (drill 0.7) (layers *.Cu *.Mask) 186 | (net 5 "Net-(Q1-Pad2)")) 187 | (model ${KISYS3DMOD}/Resistor_THT.3dshapes/R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_Vertical.wrl 188 | (at (xyz 0 0 0)) 189 | (scale (xyz 1 1 1)) 190 | (rotate (xyz 0 0 0)) 191 | ) 192 | ) 193 | 194 | (module Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Horizontal (layer F.Cu) (tedit 59FED5CB) (tstamp 5EC2D894) 195 | (at 155.448 78.74) 196 | (descr "Through hole angled pin header, 1x02, 2.54mm pitch, 6mm pin length, single row") 197 | (tags "Through hole angled pin header THT 1x02 2.54mm single row") 198 | (path /5EC2CA1F) 199 | (fp_text reference J2 (at 4.385 -2.27) (layer F.SilkS) 200 | (effects (font (size 1 1) (thickness 0.15))) 201 | ) 202 | (fp_text value Conn_01x02_Male (at 4.385 4.81) (layer F.Fab) 203 | (effects (font (size 1 1) (thickness 0.15))) 204 | ) 205 | (fp_text user %R (at 2.77 1.27 90) (layer F.Fab) 206 | (effects (font (size 1 1) (thickness 0.15))) 207 | ) 208 | (fp_line (start 10.55 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 209 | (fp_line (start 10.55 4.35) (end 10.55 -1.8) (layer F.CrtYd) (width 0.05)) 210 | (fp_line (start -1.8 4.35) (end 10.55 4.35) (layer F.CrtYd) (width 0.05)) 211 | (fp_line (start -1.8 -1.8) (end -1.8 4.35) (layer F.CrtYd) (width 0.05)) 212 | (fp_line (start -1.27 -1.27) (end 0 -1.27) (layer F.SilkS) (width 0.12)) 213 | (fp_line (start -1.27 0) (end -1.27 -1.27) (layer F.SilkS) (width 0.12)) 214 | (fp_line (start 1.042929 2.92) (end 1.44 2.92) (layer F.SilkS) (width 0.12)) 215 | (fp_line (start 1.042929 2.16) (end 1.44 2.16) (layer F.SilkS) (width 0.12)) 216 | (fp_line (start 10.1 2.92) (end 4.1 2.92) (layer F.SilkS) (width 0.12)) 217 | (fp_line (start 10.1 2.16) (end 10.1 2.92) (layer F.SilkS) (width 0.12)) 218 | (fp_line (start 4.1 2.16) (end 10.1 2.16) (layer F.SilkS) (width 0.12)) 219 | (fp_line (start 1.44 1.27) (end 4.1 1.27) (layer F.SilkS) (width 0.12)) 220 | (fp_line (start 1.11 0.38) (end 1.44 0.38) (layer F.SilkS) (width 0.12)) 221 | (fp_line (start 1.11 -0.38) (end 1.44 -0.38) (layer F.SilkS) (width 0.12)) 222 | (fp_line (start 4.1 0.28) (end 10.1 0.28) (layer F.SilkS) (width 0.12)) 223 | (fp_line (start 4.1 0.16) (end 10.1 0.16) (layer F.SilkS) (width 0.12)) 224 | (fp_line (start 4.1 0.04) (end 10.1 0.04) (layer F.SilkS) (width 0.12)) 225 | (fp_line (start 4.1 -0.08) (end 10.1 -0.08) (layer F.SilkS) (width 0.12)) 226 | (fp_line (start 4.1 -0.2) (end 10.1 -0.2) (layer F.SilkS) (width 0.12)) 227 | (fp_line (start 4.1 -0.32) (end 10.1 -0.32) (layer F.SilkS) (width 0.12)) 228 | (fp_line (start 10.1 0.38) (end 4.1 0.38) (layer F.SilkS) (width 0.12)) 229 | (fp_line (start 10.1 -0.38) (end 10.1 0.38) (layer F.SilkS) (width 0.12)) 230 | (fp_line (start 4.1 -0.38) (end 10.1 -0.38) (layer F.SilkS) (width 0.12)) 231 | (fp_line (start 4.1 -1.33) (end 1.44 -1.33) (layer F.SilkS) (width 0.12)) 232 | (fp_line (start 4.1 3.87) (end 4.1 -1.33) (layer F.SilkS) (width 0.12)) 233 | (fp_line (start 1.44 3.87) (end 4.1 3.87) (layer F.SilkS) (width 0.12)) 234 | (fp_line (start 1.44 -1.33) (end 1.44 3.87) (layer F.SilkS) (width 0.12)) 235 | (fp_line (start 4.04 2.86) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 236 | (fp_line (start 10.04 2.22) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 237 | (fp_line (start 4.04 2.22) (end 10.04 2.22) (layer F.Fab) (width 0.1)) 238 | (fp_line (start -0.32 2.86) (end 1.5 2.86) (layer F.Fab) (width 0.1)) 239 | (fp_line (start -0.32 2.22) (end -0.32 2.86) (layer F.Fab) (width 0.1)) 240 | (fp_line (start -0.32 2.22) (end 1.5 2.22) (layer F.Fab) (width 0.1)) 241 | (fp_line (start 4.04 0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 242 | (fp_line (start 10.04 -0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 243 | (fp_line (start 4.04 -0.32) (end 10.04 -0.32) (layer F.Fab) (width 0.1)) 244 | (fp_line (start -0.32 0.32) (end 1.5 0.32) (layer F.Fab) (width 0.1)) 245 | (fp_line (start -0.32 -0.32) (end -0.32 0.32) (layer F.Fab) (width 0.1)) 246 | (fp_line (start -0.32 -0.32) (end 1.5 -0.32) (layer F.Fab) (width 0.1)) 247 | (fp_line (start 1.5 -0.635) (end 2.135 -1.27) (layer F.Fab) (width 0.1)) 248 | (fp_line (start 1.5 3.81) (end 1.5 -0.635) (layer F.Fab) (width 0.1)) 249 | (fp_line (start 4.04 3.81) (end 1.5 3.81) (layer F.Fab) (width 0.1)) 250 | (fp_line (start 4.04 -1.27) (end 4.04 3.81) (layer F.Fab) (width 0.1)) 251 | (fp_line (start 2.135 -1.27) (end 4.04 -1.27) (layer F.Fab) (width 0.1)) 252 | (pad 2 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 253 | (net 1 /+motor)) 254 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 255 | (net 2 /-motor)) 256 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_1x02_P2.54mm_Horizontal.wrl 257 | (at (xyz 0 0 0)) 258 | (scale (xyz 1 1 1)) 259 | (rotate (xyz 0 0 0)) 260 | ) 261 | ) 262 | 263 | (module Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Horizontal (layer F.Cu) (tedit 59FED5CB) (tstamp 5EC2D861) 264 | (at 143.002 82.55 180) 265 | (descr "Through hole angled pin header, 1x03, 2.54mm pitch, 6mm pin length, single row") 266 | (tags "Through hole angled pin header THT 1x03 2.54mm single row") 267 | (path /5EC2BAE3) 268 | (fp_text reference J1 (at 4.385 -2.27) (layer F.SilkS) 269 | (effects (font (size 1 1) (thickness 0.15))) 270 | ) 271 | (fp_text value Conn_01x03_Male (at 4.385 7.35) (layer F.Fab) 272 | (effects (font (size 1 1) (thickness 0.15))) 273 | ) 274 | (fp_text user %R (at 2.77 2.54 90) (layer F.Fab) 275 | (effects (font (size 1 1) (thickness 0.15))) 276 | ) 277 | (fp_line (start 10.55 -1.8) (end -1.8 -1.8) (layer F.CrtYd) (width 0.05)) 278 | (fp_line (start 10.55 6.85) (end 10.55 -1.8) (layer F.CrtYd) (width 0.05)) 279 | (fp_line (start -1.8 6.85) (end 10.55 6.85) (layer F.CrtYd) (width 0.05)) 280 | (fp_line (start -1.8 -1.8) (end -1.8 6.85) (layer F.CrtYd) (width 0.05)) 281 | (fp_line (start -1.27 -1.27) (end 0 -1.27) (layer F.SilkS) (width 0.12)) 282 | (fp_line (start -1.27 0) (end -1.27 -1.27) (layer F.SilkS) (width 0.12)) 283 | (fp_line (start 1.042929 5.46) (end 1.44 5.46) (layer F.SilkS) (width 0.12)) 284 | (fp_line (start 1.042929 4.7) (end 1.44 4.7) (layer F.SilkS) (width 0.12)) 285 | (fp_line (start 10.1 5.46) (end 4.1 5.46) (layer F.SilkS) (width 0.12)) 286 | (fp_line (start 10.1 4.7) (end 10.1 5.46) (layer F.SilkS) (width 0.12)) 287 | (fp_line (start 4.1 4.7) (end 10.1 4.7) (layer F.SilkS) (width 0.12)) 288 | (fp_line (start 1.44 3.81) (end 4.1 3.81) (layer F.SilkS) (width 0.12)) 289 | (fp_line (start 1.042929 2.92) (end 1.44 2.92) (layer F.SilkS) (width 0.12)) 290 | (fp_line (start 1.042929 2.16) (end 1.44 2.16) (layer F.SilkS) (width 0.12)) 291 | (fp_line (start 10.1 2.92) (end 4.1 2.92) (layer F.SilkS) (width 0.12)) 292 | (fp_line (start 10.1 2.16) (end 10.1 2.92) (layer F.SilkS) (width 0.12)) 293 | (fp_line (start 4.1 2.16) (end 10.1 2.16) (layer F.SilkS) (width 0.12)) 294 | (fp_line (start 1.44 1.27) (end 4.1 1.27) (layer F.SilkS) (width 0.12)) 295 | (fp_line (start 1.11 0.38) (end 1.44 0.38) (layer F.SilkS) (width 0.12)) 296 | (fp_line (start 1.11 -0.38) (end 1.44 -0.38) (layer F.SilkS) (width 0.12)) 297 | (fp_line (start 4.1 0.28) (end 10.1 0.28) (layer F.SilkS) (width 0.12)) 298 | (fp_line (start 4.1 0.16) (end 10.1 0.16) (layer F.SilkS) (width 0.12)) 299 | (fp_line (start 4.1 0.04) (end 10.1 0.04) (layer F.SilkS) (width 0.12)) 300 | (fp_line (start 4.1 -0.08) (end 10.1 -0.08) (layer F.SilkS) (width 0.12)) 301 | (fp_line (start 4.1 -0.2) (end 10.1 -0.2) (layer F.SilkS) (width 0.12)) 302 | (fp_line (start 4.1 -0.32) (end 10.1 -0.32) (layer F.SilkS) (width 0.12)) 303 | (fp_line (start 10.1 0.38) (end 4.1 0.38) (layer F.SilkS) (width 0.12)) 304 | (fp_line (start 10.1 -0.38) (end 10.1 0.38) (layer F.SilkS) (width 0.12)) 305 | (fp_line (start 4.1 -0.38) (end 10.1 -0.38) (layer F.SilkS) (width 0.12)) 306 | (fp_line (start 4.1 -1.33) (end 1.44 -1.33) (layer F.SilkS) (width 0.12)) 307 | (fp_line (start 4.1 6.41) (end 4.1 -1.33) (layer F.SilkS) (width 0.12)) 308 | (fp_line (start 1.44 6.41) (end 4.1 6.41) (layer F.SilkS) (width 0.12)) 309 | (fp_line (start 1.44 -1.33) (end 1.44 6.41) (layer F.SilkS) (width 0.12)) 310 | (fp_line (start 4.04 5.4) (end 10.04 5.4) (layer F.Fab) (width 0.1)) 311 | (fp_line (start 10.04 4.76) (end 10.04 5.4) (layer F.Fab) (width 0.1)) 312 | (fp_line (start 4.04 4.76) (end 10.04 4.76) (layer F.Fab) (width 0.1)) 313 | (fp_line (start -0.32 5.4) (end 1.5 5.4) (layer F.Fab) (width 0.1)) 314 | (fp_line (start -0.32 4.76) (end -0.32 5.4) (layer F.Fab) (width 0.1)) 315 | (fp_line (start -0.32 4.76) (end 1.5 4.76) (layer F.Fab) (width 0.1)) 316 | (fp_line (start 4.04 2.86) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 317 | (fp_line (start 10.04 2.22) (end 10.04 2.86) (layer F.Fab) (width 0.1)) 318 | (fp_line (start 4.04 2.22) (end 10.04 2.22) (layer F.Fab) (width 0.1)) 319 | (fp_line (start -0.32 2.86) (end 1.5 2.86) (layer F.Fab) (width 0.1)) 320 | (fp_line (start -0.32 2.22) (end -0.32 2.86) (layer F.Fab) (width 0.1)) 321 | (fp_line (start -0.32 2.22) (end 1.5 2.22) (layer F.Fab) (width 0.1)) 322 | (fp_line (start 4.04 0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 323 | (fp_line (start 10.04 -0.32) (end 10.04 0.32) (layer F.Fab) (width 0.1)) 324 | (fp_line (start 4.04 -0.32) (end 10.04 -0.32) (layer F.Fab) (width 0.1)) 325 | (fp_line (start -0.32 0.32) (end 1.5 0.32) (layer F.Fab) (width 0.1)) 326 | (fp_line (start -0.32 -0.32) (end -0.32 0.32) (layer F.Fab) (width 0.1)) 327 | (fp_line (start -0.32 -0.32) (end 1.5 -0.32) (layer F.Fab) (width 0.1)) 328 | (fp_line (start 1.5 -0.635) (end 2.135 -1.27) (layer F.Fab) (width 0.1)) 329 | (fp_line (start 1.5 6.35) (end 1.5 -0.635) (layer F.Fab) (width 0.1)) 330 | (fp_line (start 4.04 6.35) (end 1.5 6.35) (layer F.Fab) (width 0.1)) 331 | (fp_line (start 4.04 -1.27) (end 4.04 6.35) (layer F.Fab) (width 0.1)) 332 | (fp_line (start 2.135 -1.27) (end 4.04 -1.27) (layer F.Fab) (width 0.1)) 333 | (pad 3 thru_hole oval (at 0 5.08 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 334 | (net 3 "Net-(J1-Pad3)")) 335 | (pad 2 thru_hole oval (at 0 2.54 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 336 | (net 4 "Net-(J1-Pad2)")) 337 | (pad 1 thru_hole rect (at 0 0 180) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask) 338 | (net 1 /+motor)) 339 | (model ${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_1x03_P2.54mm_Horizontal.wrl 340 | (at (xyz 0 0 0)) 341 | (scale (xyz 1 1 1)) 342 | (rotate (xyz 0 0 0)) 343 | ) 344 | ) 345 | 346 | (module Diode_THT:D_DO-15_P3.81mm_Vertical_KathodeUp (layer F.Cu) (tedit 5B526DD4) (tstamp 5EC2D821) 347 | (at 151.511 77.724 270) 348 | (descr "Diode, DO-15 series, Axial, Vertical, pin pitch=3.81mm, , length*diameter=7.6*3.6mm^2, , http://www.diodes.com/_files/packages/DO-15.pdf") 349 | (tags "Diode DO-15 series Axial Vertical pin pitch 3.81mm length 7.6mm diameter 3.6mm") 350 | (path /5EC2A83F) 351 | (fp_text reference D1 (at 1.905 -1.905 90) (layer F.SilkS) 352 | (effects (font (size 1 1) (thickness 0.15))) 353 | ) 354 | (fp_text value DIODE (at 1.905 4.2535 90) (layer F.Fab) 355 | (effects (font (size 1 1) (thickness 0.15))) 356 | ) 357 | (fp_text user K (at 1.9 1.2 90) (layer F.Fab) 358 | (effects (font (size 1 1) (thickness 0.15))) 359 | ) 360 | (fp_text user %R (at 1.651 -2.159 90) (layer F.Fab) 361 | (effects (font (size 1 1) (thickness 0.15))) 362 | ) 363 | (fp_line (start 5.86 -2.05) (end -1.45 -2.05) (layer F.CrtYd) (width 0.05)) 364 | (fp_line (start 5.86 2.05) (end 5.86 -2.05) (layer F.CrtYd) (width 0.05)) 365 | (fp_line (start -1.45 2.05) (end 5.86 2.05) (layer F.CrtYd) (width 0.05)) 366 | (fp_line (start -1.45 -2.05) (end -1.45 2.05) (layer F.CrtYd) (width 0.05)) 367 | (fp_line (start 1.89 0) (end 1.5 0) (layer F.SilkS) (width 0.12)) 368 | (fp_line (start 0 0) (end 3.81 0) (layer F.Fab) (width 0.1)) 369 | (fp_circle (center 3.81 0) (end 5.73 0) (layer F.SilkS) (width 0.12)) 370 | (fp_circle (center 3.81 0) (end 5.61 0) (layer F.Fab) (width 0.1)) 371 | (pad 2 thru_hole oval (at 3.81 0 270) (size 2.4 2.4) (drill 1.2) (layers *.Cu *.Mask) 372 | (net 1 /+motor)) 373 | (pad 1 thru_hole rect (at 0 0 270) (size 2.4 2.4) (drill 1.2) (layers *.Cu *.Mask) 374 | (net 2 /-motor)) 375 | (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_DO-15_P3.81mm_Vertical_KathodeUp.wrl 376 | (at (xyz 0 0 0)) 377 | (scale (xyz 1 1 1)) 378 | (rotate (xyz 0 0 0)) 379 | ) 380 | ) 381 | 382 | (gr_line (start 156.591 77.089) (end 155.702 76.2) (layer Edge.Cuts) (width 0.05) (tstamp 5EC2F506)) 383 | (gr_line (start 156.591 82.931) (end 156.591 77.089) (layer Edge.Cuts) (width 0.05)) 384 | (gr_line (start 155.702 83.82) (end 156.591 82.931) (layer Edge.Cuts) (width 0.05)) 385 | (gr_text "JSC R0" (at 146.812 83.058) (layer B.SilkS) 386 | (effects (font (size 1 1) (thickness 0.15)) (justify mirror)) 387 | ) 388 | (gr_text "EZ FAN" (at 146.685 76.962) (layer B.SilkS) 389 | (effects (font (size 1 1) (thickness 0.15)) (justify mirror)) 390 | ) 391 | (gr_text S (at 144.653 80.01) (layer F.SilkS) 392 | (effects (font (size 1 1) (thickness 0.15))) 393 | ) 394 | (gr_text - (at 144.653 76.708) (layer F.SilkS) 395 | (effects (font (size 1 1) (thickness 0.15))) 396 | ) 397 | (gr_text + (at 144.907 83.185) (layer F.SilkS) 398 | (effects (font (size 1 1) (thickness 0.15))) 399 | ) 400 | (gr_text M- (at 154.178 76.962) (layer F.SilkS) 401 | (effects (font (size 1 1) (thickness 0.15))) 402 | ) 403 | (gr_text M+ (at 154.178 83.058) (layer F.SilkS) 404 | (effects (font (size 1 1) (thickness 0.15))) 405 | ) 406 | (gr_line (start 141.859 76.2) (end 155.702 76.2) (layer Edge.Cuts) (width 0.05)) 407 | (gr_line (start 141.859 83.82) (end 141.859 76.2) (layer Edge.Cuts) (width 0.05)) 408 | (gr_line (start 155.702 83.82) (end 141.859 83.82) (layer Edge.Cuts) (width 0.05)) 409 | 410 | (segment (start 150.495 82.55) (end 151.511 81.534) (width 0.25) (layer F.Cu) (net 1)) 411 | (segment (start 143.002 82.55) (end 150.495 82.55) (width 0.25) (layer F.Cu) (net 1)) 412 | (segment (start 155.067 81.534) (end 155.448 81.153) (width 0.25) (layer F.Cu) (net 1)) 413 | (segment (start 151.511 81.534) (end 155.067 81.534) (width 0.25) (layer F.Cu) (net 1)) 414 | (segment (start 151.892 78.105) (end 151.511 77.724) (width 0.25) (layer F.Cu) (net 2)) 415 | (segment (start 148.959 81.153) (end 148.209 81.153) (width 0.25) (layer F.Cu) (net 2)) 416 | (segment (start 149.532 81.153) (end 148.959 81.153) (width 0.25) (layer F.Cu) (net 2)) 417 | (segment (start 151.511 79.174) (end 149.532 81.153) (width 0.25) (layer F.Cu) (net 2)) 418 | (segment (start 151.511 77.724) (end 151.511 79.174) (width 0.25) (layer F.Cu) (net 2)) 419 | (segment (start 154.559 77.724) (end 155.448 78.613) (width 0.25) (layer F.Cu) (net 2)) 420 | (segment (start 151.511 77.724) (end 154.559 77.724) (width 0.25) (layer F.Cu) (net 2)) 421 | (segment (start 148.209 77.838) (end 148.209 78.613) (width 0.25) (layer F.Cu) (net 3)) 422 | (segment (start 147.841 77.47) (end 148.209 77.838) (width 0.25) (layer F.Cu) (net 3)) 423 | (segment (start 143.002 77.47) (end 147.841 77.47) (width 0.25) (layer F.Cu) (net 3)) 424 | (segment (start 144.399 78.613) (end 145.923 78.613) (width 0.25) (layer F.Cu) (net 4)) 425 | (segment (start 143.002 80.01) (end 144.399 78.613) (width 0.25) (layer F.Cu) (net 4)) 426 | (segment (start 147.193 79.883) (end 148.209 79.883) (width 0.25) (layer F.Cu) (net 5)) 427 | (segment (start 145.923 81.153) (end 147.193 79.883) (width 0.25) (layer F.Cu) (net 5)) 428 | 429 | (zone (net 1) (net_name /+motor) (layer F.Cu) (tstamp 0) (hatch edge 0.508) 430 | (connect_pads (clearance 0.508)) 431 | (min_thickness 0.254) 432 | (fill yes (arc_segments 32) (thermal_gap 0.508) (thermal_bridge_width 0.508)) 433 | (polygon 434 | (pts 435 | (xy 141.732 75.946) (xy 156.718 75.819) (xy 156.972 85.344) (xy 141.605 85.471) 436 | ) 437 | ) 438 | (filled_polygon 439 | (pts 440 | (xy 153.959928 79.59) (xy 153.972188 79.714482) (xy 154.008498 79.83418) (xy 154.067463 79.944494) (xy 154.146815 80.041185) 441 | (xy 154.243506 80.120537) (xy 154.35382 80.179502) (xy 154.434466 80.203966) (xy 154.350412 80.279731) (xy 154.176359 80.51308) 442 | (xy 154.051175 80.775901) (xy 154.006524 80.92311) (xy 154.127845 81.153) (xy 155.321 81.153) (xy 155.321 81.133) 443 | (xy 155.575 81.133) (xy 155.575 81.153) (xy 155.595 81.153) (xy 155.595 81.407) (xy 155.575 81.407) 444 | (xy 155.575 82.600814) (xy 155.804891 82.721481) (xy 155.901358 82.687261) (xy 155.42862 83.16) (xy 152.342556 83.16) 445 | (xy 152.484257 83.089639) (xy 152.769046 82.869875) (xy 153.005489 82.598774) (xy 153.1845 82.286754) (xy 153.299199 81.945806) 446 | (xy 153.182854 81.661) (xy 151.638 81.661) (xy 151.638 81.681) (xy 151.384 81.681) (xy 151.384 81.661) 447 | (xy 151.364 81.661) (xy 151.364 81.63689) (xy 154.006524 81.63689) (xy 154.051175 81.784099) (xy 154.176359 82.04692) 448 | (xy 154.350412 82.280269) (xy 154.566645 82.475178) (xy 154.816748 82.624157) (xy 155.091109 82.721481) (xy 155.321 82.600814) 449 | (xy 155.321 81.407) (xy 154.127845 81.407) (xy 154.006524 81.63689) (xy 151.364 81.63689) (xy 151.364 81.407) 450 | (xy 151.384 81.407) (xy 151.384 81.387) (xy 151.638 81.387) (xy 151.638 81.407) (xy 153.182854 81.407) 451 | (xy 153.299199 81.122194) (xy 153.1845 80.781246) (xy 153.005489 80.469226) (xy 152.769046 80.198125) (xy 152.484257 79.978361) 452 | (xy 152.162066 79.818379) (xy 151.992774 79.767028) (xy 152.022003 79.737799) (xy 152.051001 79.714001) (xy 152.145974 79.598276) 453 | (xy 152.165326 79.562072) (xy 152.711 79.562072) (xy 152.835482 79.549812) (xy 152.95518 79.513502) (xy 153.065494 79.454537) 454 | (xy 153.162185 79.375185) (xy 153.241537 79.278494) (xy 153.300502 79.16818) (xy 153.336812 79.048482) (xy 153.349072 78.924) 455 | (xy 153.349072 78.484) (xy 153.959928 78.484) 456 | ) 457 | ) 458 | (filled_polygon 459 | (pts 460 | (xy 144.974445 79.561555) (xy 145.177725 79.728382) (xy 145.409646 79.852347) (xy 145.504828 79.88122) (xy 145.290641 79.969939) 461 | (xy 145.071987 80.116038) (xy 144.886038 80.301987) (xy 144.739939 80.520641) (xy 144.639304 80.763595) (xy 144.588 81.021514) 462 | (xy 144.588 81.284486) (xy 144.639304 81.542405) (xy 144.739939 81.785359) (xy 144.886038 82.004013) (xy 145.071987 82.189962) 463 | (xy 145.290641 82.336061) (xy 145.533595 82.436696) (xy 145.791514 82.488) (xy 146.054486 82.488) (xy 146.312405 82.436696) 464 | (xy 146.555359 82.336061) (xy 146.774013 82.189962) (xy 146.959962 82.004013) (xy 147.04594 81.875337) (xy 147.070578 81.921431) 465 | (xy 147.181009 82.055991) (xy 147.315569 82.166422) (xy 147.469088 82.248479) (xy 147.635665 82.29901) (xy 147.8089 82.316072) 466 | (xy 148.6091 82.316072) (xy 148.782335 82.29901) (xy 148.948912 82.248479) (xy 149.102431 82.166422) (xy 149.236991 82.055991) 467 | (xy 149.347422 81.921431) (xy 149.351928 81.913) (xy 149.494678 81.913) (xy 149.532 81.916676) (xy 149.569322 81.913) 468 | (xy 149.569333 81.913) (xy 149.680986 81.902003) (xy 149.74914 81.881329) (xy 149.722801 81.945806) (xy 149.8375 82.286754) 469 | (xy 150.016511 82.598774) (xy 150.252954 82.869875) (xy 150.537743 83.089639) (xy 150.679444 83.16) (xy 144.488765 83.16) 470 | (xy 144.487 82.83575) (xy 144.32825 82.677) (xy 143.129 82.677) (xy 143.129 82.697) (xy 142.875 82.697) 471 | (xy 142.875 82.677) (xy 142.855 82.677) (xy 142.855 82.423) (xy 142.875 82.423) (xy 142.875 82.403) 472 | (xy 143.129 82.403) (xy 143.129 82.423) (xy 144.32825 82.423) (xy 144.487 82.26425) (xy 144.490072 81.7) 473 | (xy 144.477812 81.575518) (xy 144.441502 81.45582) (xy 144.382537 81.345506) (xy 144.303185 81.248815) (xy 144.206494 81.169463) 474 | (xy 144.09618 81.110498) (xy 144.027313 81.089607) (xy 144.057134 81.065134) (xy 144.242706 80.839014) (xy 144.380599 80.581034) 475 | (xy 144.465513 80.301111) (xy 144.494185 80.01) (xy 144.465513 79.718889) (xy 144.442797 79.644005) (xy 144.713802 79.373) 476 | (xy 144.819702 79.373) 477 | ) 478 | ) 479 | ) 480 | (zone (net 2) (net_name /-motor) (layer B.Cu) (tstamp 0) (hatch edge 0.508) 481 | (connect_pads (clearance 0.508)) 482 | (min_thickness 0.254) 483 | (fill yes (arc_segments 32) (thermal_gap 0.508) (thermal_bridge_width 0.508)) 484 | (polygon 485 | (pts 486 | (xy 141.605 75.819) (xy 156.845 75.565) (xy 157.099 85.344) (xy 141.351 85.471) 487 | ) 488 | ) 489 | (filled_polygon 490 | (pts 491 | (xy 149.676 77.43825) (xy 149.83475 77.597) (xy 151.384 77.597) (xy 151.384 77.577) (xy 151.638 77.577) 492 | (xy 151.638 77.597) (xy 153.18725 77.597) (xy 153.346 77.43825) (xy 153.347943 76.86) (xy 155.42862 76.86) 493 | (xy 155.823133 77.254513) (xy 155.73375 77.255) (xy 155.575 77.41375) (xy 155.575 78.613) (xy 155.595 78.613) 494 | (xy 155.595 78.867) (xy 155.575 78.867) (xy 155.575 78.887) (xy 155.321 78.887) (xy 155.321 78.867) 495 | (xy 154.12175 78.867) (xy 153.963 79.02575) (xy 153.959928 79.59) (xy 153.972188 79.714482) (xy 154.008498 79.83418) 496 | (xy 154.067463 79.944494) (xy 154.146815 80.041185) (xy 154.243506 80.120537) (xy 154.35382 80.179502) (xy 154.422687 80.200393) 497 | (xy 154.392866 80.224866) (xy 154.207294 80.450986) (xy 154.069401 80.708966) (xy 153.984487 80.988889) (xy 153.955815 81.28) 498 | (xy 153.984487 81.571111) (xy 154.069401 81.851034) (xy 154.207294 82.109014) (xy 154.392866 82.335134) (xy 154.618986 82.520706) 499 | (xy 154.876966 82.658599) (xy 155.156889 82.743513) (xy 155.37505 82.765) (xy 155.52095 82.765) (xy 155.739111 82.743513) 500 | (xy 155.89126 82.697359) (xy 155.42862 83.16) (xy 152.361654 83.16) (xy 152.535404 83.067129) (xy 152.814819 82.837819) 501 | (xy 153.044129 82.558404) (xy 153.214521 82.239622) (xy 153.319448 81.893723) (xy 153.354878 81.534) (xy 153.319448 81.174277) 502 | (xy 153.214521 80.828378) (xy 153.044129 80.509596) (xy 152.814819 80.230181) (xy 152.535404 80.000871) (xy 152.216622 79.830479) 503 | (xy 151.870723 79.725552) (xy 151.601139 79.699) (xy 151.420861 79.699) (xy 151.151277 79.725552) (xy 150.805378 79.830479) 504 | (xy 150.486596 80.000871) (xy 150.207181 80.230181) (xy 149.977871 80.509596) (xy 149.807479 80.828378) (xy 149.702552 81.174277) 505 | (xy 149.667122 81.534) (xy 149.702552 81.893723) (xy 149.807479 82.239622) (xy 149.977871 82.558404) (xy 150.207181 82.837819) 506 | (xy 150.486596 83.067129) (xy 150.660346 83.16) (xy 144.490072 83.16) (xy 144.490072 81.7) (xy 144.477812 81.575518) 507 | (xy 144.441502 81.45582) (xy 144.382537 81.345506) (xy 144.303185 81.248815) (xy 144.206494 81.169463) (xy 144.09618 81.110498) 508 | (xy 144.027313 81.089607) (xy 144.057134 81.065134) (xy 144.242706 80.839014) (xy 144.380599 80.581034) (xy 144.465513 80.301111) 509 | (xy 144.494185 80.01) (xy 144.465513 79.718889) (xy 144.380599 79.438966) (xy 144.242706 79.180986) (xy 144.057134 78.954866) 510 | (xy 143.831014 78.769294) (xy 143.776209 78.74) (xy 143.831014 78.710706) (xy 143.950069 78.613) (xy 144.581541 78.613) 511 | (xy 144.607317 78.874706) (xy 144.683653 79.126354) (xy 144.807618 79.358275) (xy 144.974445 79.561555) (xy 145.177725 79.728382) 512 | (xy 145.409646 79.852347) (xy 145.504828 79.88122) (xy 145.290641 79.969939) (xy 145.071987 80.116038) (xy 144.886038 80.301987) 513 | (xy 144.739939 80.520641) (xy 144.639304 80.763595) (xy 144.588 81.021514) (xy 144.588 81.284486) (xy 144.639304 81.542405) 514 | (xy 144.739939 81.785359) (xy 144.886038 82.004013) (xy 145.071987 82.189962) (xy 145.290641 82.336061) (xy 145.533595 82.436696) 515 | (xy 145.791514 82.488) (xy 146.054486 82.488) (xy 146.312405 82.436696) (xy 146.555359 82.336061) (xy 146.774013 82.189962) 516 | (xy 146.959962 82.004013) (xy 146.989561 81.959715) (xy 147.028463 82.032494) (xy 147.107815 82.129185) (xy 147.204506 82.208537) 517 | (xy 147.31482 82.267502) (xy 147.434518 82.303812) (xy 147.559 82.316072) (xy 147.92325 82.313) (xy 148.082 82.15425) 518 | (xy 148.082 81.28) (xy 148.336 81.28) (xy 148.336 82.15425) (xy 148.49475 82.313) (xy 148.859 82.316072) 519 | (xy 148.983482 82.303812) (xy 149.10318 82.267502) (xy 149.213494 82.208537) (xy 149.310185 82.129185) (xy 149.389537 82.032494) 520 | (xy 149.448502 81.92218) (xy 149.484812 81.802482) (xy 149.497072 81.678) (xy 149.494 81.43875) (xy 149.33525 81.28) 521 | (xy 148.336 81.28) (xy 148.082 81.28) (xy 148.062 81.28) (xy 148.062 81.043) (xy 148.390979 81.043) 522 | (xy 148.5614 81.026215) (xy 148.562109 81.026) (xy 149.33525 81.026) (xy 149.494 80.86725) (xy 149.497072 80.628) 523 | (xy 149.484812 80.503518) (xy 149.448502 80.38382) (xy 149.413907 80.319098) (xy 149.477215 80.1104) (xy 149.499612 79.883) 524 | (xy 149.477215 79.6556) (xy 149.410885 79.43694) (xy 149.309895 79.248) (xy 149.410885 79.05906) (xy 149.451855 78.924) 525 | (xy 149.672928 78.924) (xy 149.685188 79.048482) (xy 149.721498 79.16818) (xy 149.780463 79.278494) (xy 149.859815 79.375185) 526 | (xy 149.956506 79.454537) (xy 150.06682 79.513502) (xy 150.186518 79.549812) (xy 150.311 79.562072) (xy 151.22525 79.559) 527 | (xy 151.384 79.40025) (xy 151.384 77.851) (xy 151.638 77.851) (xy 151.638 79.40025) (xy 151.79675 79.559) 528 | (xy 152.711 79.562072) (xy 152.835482 79.549812) (xy 152.95518 79.513502) (xy 153.065494 79.454537) (xy 153.162185 79.375185) 529 | (xy 153.241537 79.278494) (xy 153.300502 79.16818) (xy 153.336812 79.048482) (xy 153.349072 78.924) (xy 153.346 78.00975) 530 | (xy 153.22625 77.89) (xy 153.959928 77.89) (xy 153.963 78.45425) (xy 154.12175 78.613) (xy 155.321 78.613) 531 | (xy 155.321 77.41375) (xy 155.16225 77.255) (xy 154.598 77.251928) (xy 154.473518 77.264188) (xy 154.35382 77.300498) 532 | (xy 154.243506 77.359463) (xy 154.146815 77.438815) (xy 154.067463 77.535506) (xy 154.008498 77.64582) (xy 153.972188 77.765518) 533 | (xy 153.959928 77.89) (xy 153.22625 77.89) (xy 153.18725 77.851) (xy 151.638 77.851) (xy 151.384 77.851) 534 | (xy 149.83475 77.851) (xy 149.676 78.00975) (xy 149.672928 78.924) (xy 149.451855 78.924) (xy 149.477215 78.8404) 535 | (xy 149.499612 78.613) (xy 149.477215 78.3856) (xy 149.410885 78.16694) (xy 149.303171 77.965421) (xy 149.158212 77.788788) 536 | (xy 148.981579 77.643829) (xy 148.78006 77.536115) (xy 148.5614 77.469785) (xy 148.390979 77.453) (xy 148.027021 77.453) 537 | (xy 147.8566 77.469785) (xy 147.63794 77.536115) (xy 147.436421 77.643829) (xy 147.259788 77.788788) (xy 147.114829 77.965421) 538 | (xy 147.102715 77.988084) (xy 147.038382 77.867725) (xy 146.871555 77.664445) (xy 146.668275 77.497618) (xy 146.436354 77.373653) 539 | (xy 146.184706 77.297317) (xy 145.988579 77.278) (xy 145.857421 77.278) (xy 145.661294 77.297317) (xy 145.409646 77.373653) 540 | (xy 145.177725 77.497618) (xy 144.974445 77.664445) (xy 144.807618 77.867725) (xy 144.683653 78.099646) (xy 144.607317 78.351294) 541 | (xy 144.581541 78.613) (xy 143.950069 78.613) (xy 144.057134 78.525134) (xy 144.242706 78.299014) (xy 144.380599 78.041034) 542 | (xy 144.465513 77.761111) (xy 144.494185 77.47) (xy 144.465513 77.178889) (xy 144.380599 76.898966) (xy 144.359771 76.86) 543 | (xy 149.674057 76.86) 544 | ) 545 | ) 546 | ) 547 | ) 548 | -------------------------------------------------------------------------------- /PCB/PiFan.pro: -------------------------------------------------------------------------------- 1 | update=6/7/2020 11:09:10 AM 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [pcbnew] 9 | version=1 10 | LastNetListRead= 11 | UseCmpFile=1 12 | PadDrill=0.600000000000 13 | PadDrillOvalY=0.600000000000 14 | PadSizeH=1.500000000000 15 | PadSizeV=1.500000000000 16 | PcbTextSizeV=1.500000000000 17 | PcbTextSizeH=1.500000000000 18 | PcbTextThickness=0.300000000000 19 | ModuleTextSizeV=1.000000000000 20 | ModuleTextSizeH=1.000000000000 21 | ModuleTextSizeThickness=0.150000000000 22 | SolderMaskClearance=0.000000000000 23 | SolderMaskMinWidth=0.000000000000 24 | DrawSegmentWidth=0.200000000000 25 | BoardOutlineThickness=0.100000000000 26 | ModuleOutlineThickness=0.150000000000 27 | [cvpcb] 28 | version=1 29 | NetIExt=net 30 | [eeschema] 31 | version=1 32 | LibDir= 33 | [eeschema/libraries] 34 | [schematic_editor] 35 | version=1 36 | PageLayoutDescrFile= 37 | PlotDirectoryName= 38 | SubpartIdSeparator=0 39 | SubpartFirstId=65 40 | NetFmtName= 41 | SpiceAjustPassiveValues=0 42 | LabSize=50 43 | ERC_TestSimilarLabels=1 44 | -------------------------------------------------------------------------------- /PCB/PiFan.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 29 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 1 1 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L Device:R R1 18 | U 1 1 5EC29490 19 | P 4840 3240 20 | F 0 "R1" V 4633 3240 50 0000 C CNN 21 | F 1 "1k" V 4724 3240 50 0000 C CNN 22 | F 2 "Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P2.54mm_Vertical" V 4770 3240 50 0001 C CNN 23 | F 3 "~" H 4840 3240 50 0001 C CNN 24 | 1 4840 3240 25 | 0 1 1 0 26 | $EndComp 27 | Wire Wire Line 28 | 5180 3240 4990 3240 29 | $Comp 30 | L pspice:DIODE D1 31 | U 1 1 5EC2A83F 32 | P 5680 2880 33 | F 0 "D1" H 5680 3145 50 0000 C CNN 34 | F 1 "DIODE" H 5680 3054 50 0000 C CNN 35 | F 2 "Diode_THT:D_DO-15_P3.81mm_Vertical_KathodeUp" H 5680 2880 50 0001 C CNN 36 | F 3 "~" H 5680 2880 50 0001 C CNN 37 | 1 5680 2880 38 | 1 0 0 -1 39 | $EndComp 40 | $Comp 41 | L Connector:Conn_01x03_Male J1 42 | U 1 1 5EC2BAE3 43 | P 4030 3260 44 | F 0 "J1" H 4138 3541 50 0000 C CNN 45 | F 1 "Conn_01x03_Male" H 4138 3450 50 0000 C CNN 46 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Horizontal" H 4030 3260 50 0001 C CNN 47 | F 3 "~" H 4030 3260 50 0001 C CNN 48 | 1 4030 3260 49 | 1 0 0 -1 50 | $EndComp 51 | $Comp 52 | L Connector:Conn_01x02_Male J2 53 | U 1 1 5EC2CA1F 54 | P 6560 3180 55 | F 0 "J2" H 6532 3062 50 0000 R CNN 56 | F 1 "Conn_01x02_Male" H 6532 3153 50 0000 R CNN 57 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Horizontal" H 6560 3180 50 0001 C CNN 58 | F 3 "~" H 6560 3180 50 0001 C CNN 59 | 1 6560 3180 60 | -1 0 0 1 61 | $EndComp 62 | Wire Wire Line 63 | 4230 3160 4410 3160 64 | Wire Wire Line 65 | 4410 3160 4410 2430 66 | Wire Wire Line 67 | 4410 2430 5880 2430 68 | Wire Wire Line 69 | 5880 2430 5880 2880 70 | Wire Wire Line 71 | 5880 2880 6360 2880 72 | Wire Wire Line 73 | 6360 2880 6360 3080 74 | Connection ~ 5880 2880 75 | Wire Wire Line 76 | 6360 3180 5900 3180 77 | Wire Wire Line 78 | 5900 3180 5900 3040 79 | Wire Wire Line 80 | 5900 3040 5480 3040 81 | Wire Wire Line 82 | 5480 3440 4470 3440 83 | Wire Wire Line 84 | 4470 3440 4470 3360 85 | Wire Wire Line 86 | 4470 3360 4230 3360 87 | Wire Wire Line 88 | 4230 3260 4690 3260 89 | Wire Wire Line 90 | 4690 3260 4690 3240 91 | Text Label 6060 2880 0 50 ~ 0 92 | +motor 93 | Text Label 6040 3180 0 50 ~ 0 94 | -motor 95 | Wire Wire Line 96 | 5480 3040 5480 2880 97 | $Comp 98 | L Device:Q_NPN_CBE Q1 99 | U 1 1 5EC33F89 100 | P 5380 3240 101 | F 0 "Q1" H 5571 3286 50 0000 L CNN 102 | F 1 "Q_NPN_CBE" H 5571 3195 50 0000 L CNN 103 | F 2 "Package_TO_SOT_THT:TO-92Flat" H 5580 3340 50 0001 C CNN 104 | F 3 "~" H 5380 3240 50 0001 C CNN 105 | 1 5380 3240 106 | 1 0 0 -1 107 | $EndComp 108 | Connection ~ 5480 3040 109 | $EndSCHEMATC 110 | -------------------------------------------------------------------------------- /PCB/README.md: -------------------------------------------------------------------------------- 1 | Through hole PCB info. 2 | 3 | Previous version is found here. New version on Tindie uses surface mount components. 4 | -------------------------------------------------------------------------------- /PythonScript/README.md: -------------------------------------------------------------------------------- 1 | This python script is an alternative to the Bash script 2 | for fan temperature control, and may serve your needs better! 3 | 4 | Thanks to [Michael Nadler](https://github.com/mhnadler) for writing this 5 | and allowing it to be posted here! 6 | -------------------------------------------------------------------------------- /PythonScript/fantemp.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | # 3 | # control fan based on temperature limit 4 | # 5 | # EZFan2 connected to standard RPi case fan 6 | # https://www.tindie.com/products/jeremycook/ez-fan2-tiny-raspberry-pi-fan-controller/ 7 | # 8 | # +--------+ 9 | # +-----+ | +----5V 10 | # | +--red--+ | 11 | # | FAN | | EZFan2 +----GPIO 12 | # | +--blk--+ | 13 | # +-----+ | +----GND 14 | # +--------+ 15 | # 16 | # to set up in cron, copy the script to /home/pi/bin (assumes 'pi' is 17 | # user name). Add this entry to crontab (adjust pin and temp as needed): 18 | # */1 * * * * /home/pi/bin/fantemp.py --p 14 -t 60 19 | # 20 | 21 | import getopt, sys 22 | 23 | pin = 14 24 | temp_limit = 60.0 25 | verbose = False 26 | 27 | try: 28 | opts, args = getopt.getopt(sys.argv[1:], 29 | "p:t:v", ["pin=", "temp=", "verbose"]) 30 | except getopt.GetoptError: 31 | print("Usage: fantemp.py [-t ]") 32 | sys.exit(2) 33 | 34 | for opt, arg in opts: 35 | if opt in ("-p", "--pin"): 36 | pin = int(arg) 37 | elif opt in ("-t", "--temp"): 38 | temp_limit = float(arg) 39 | elif opt in ("-v", "--verbose"): 40 | verbose = True 41 | 42 | import RPi.GPIO as GPIO 43 | 44 | from vcgencmd import Vcgencmd 45 | vcgm = Vcgencmd() 46 | cputemp = vcgm.measure_temp() 47 | if verbose: 48 | print("cpu temp: %2.1f, limit: %2.1f" % (cputemp, temp_limit)) 49 | 50 | #use GPIO pin numbering not physical 51 | GPIO.setmode(GPIO.BCM) 52 | GPIO.setwarnings(False) 53 | 54 | GPIO.setup(pin, GPIO.OUT) 55 | 56 | #I've changed the code to allow the fan to work on a determine temperature range. 57 | #This is to avoid continuous turning the fan on and off when it is around the original desired temperature. I set the temp_limit to 50. 58 | if cputemp < temp_limit - 4: 59 | GPIO.output(pin, GPIO.LOW) 60 | if verbose: 61 | print("turn off fan via pin: %d" % pin) 62 | else: 63 | if cputemp > temp_limit: 64 | GPIO.output(pin, GPIO.HIGH) 65 | if verbose: 66 | print("turn on fan via pin: %d" % pin) 67 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![Tech Adjacent](https://img.shields.io/badge/Tech%20Adjacent%20With%20Jeremy%20Cook-[Substack]-blue?style=flat-square&logo=substack)](https://techadjacent.substack.com/) 2 | 3 | # RaspberryPi Temperture Fan Control 4 | Control a Raspberry Pi fan based on temperature. Four Possible methods: 5 | 6 | * **Raspbery Pi OS Control** [as outlined here](https://www.youtube.com/watch?v=AdjU_AVcZTA) 7 | * **temp-fan.sh script** provided in this directory. May want to install the full version of Raspberry Pi OS (even when running headless) to ensure the proper GPIO functionality is available. Some discussion on the subject: https://github.com/JeremySCook/RaspberryPi-Fan-Control/issues/2 8 | * **Python Script** [found here](https://github.com/JeremySCook/RaspberryPi-Fan-Control/blob/master/PythonScript/fantemp.py) 9 | * **True PWM Control** allows you to run the fan at different speeds. [Outlined on Instructables](https://www.instructables.com/PWM-Regulated-Fan-Based-on-CPU-Temperature-for-Ras/) by Aerandir14. 10 | 11 | You can purchase the tiny EZ Fan2 control board on Tindie: https://www.tindie.com/products/jeremycook/ez-fan2-tiny-raspberry-pi-fan-controller/ 12 | Note that the EZ Fan2 can be used for any small load up to a .6A limit (may need to de-rate in some situations) and fetures a flyback diode to help 13 | allieviate voltage spikes. 14 | 15 | Further fan control/development info: https://www.youtube.com/watch?v=F1FQojoaNS8 16 | Control fan with Raspberry Pi OS: https://www.youtube.com/watch?v=AdjU_AVcZTA 17 | Control 12V fan (or other load) with the EZ Fan2: https://www.youtube.com/watch?v=bBBTj0RP7F8 18 | 19 | ![image](temp.jpg) 20 | 21 | Items used in video: 22 | 23 | ICE Tower: https://amzn.to/2N95qrn [Amazon] 24 | 2N2222 Transistor: https://amzn.to/2AK2vTy [Amazon] 25 | Heat Shrink: https://amzn.to/2C8qf3Z [Amazon] 26 | 27 | *note that Amazon links are affiliate, meaning I get a percentage of sales 28 | 29 | [![Tech Adjacent](https://img.shields.io/badge/Tech%20Adjacent%20With%20Jeremy%20Cook-[Substack]-blue?style=flat-square&logo=substack)](https://techadjacent.substack.com/) 30 | -------------------------------------------------------------------------------- /temp-fan.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | ontemp=48 3 | gpio -g mode 3 out 4 | temp=$(vcgencmd measure_temp | egrep -o '[0-9]*\.[0-9]*') 5 | echo $temp #use BCM pin 3, as pin 2 is used for PSU control 6 | temp0=${temp%.*} 7 | echo $temp0 8 | 9 | if [ $temp0 -gt $ontemp ] 10 | then 11 | echo greater than $ontemp fan on 12 | gpio -g write 3 1 13 | else 14 | echo less than or equal to $ontemp fan off 15 | gpio -g write 3 0 16 | fi 17 | -------------------------------------------------------------------------------- /temp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JeremySCook/RaspberryPi-Fan-Control/aa19bef0ffd298eb1863e20f2074bda84eeb114e/temp.jpg --------------------------------------------------------------------------------