├── fp-lib-table ├── sym-lib-table ├── example ├── rot.pcf ├── Makefile ├── ice4pi_prog ├── README └── rot.v ├── README ├── jlcpcb ├── bom.csv └── pos.csv ├── bom.csv ├── CHANGELOG ├── ice4pi.pretty ├── TFDU4101-TR3.kicad_mod ├── PinSocket_2x06_P2.54mm_Vertical_1to6_7to12.kicad_mod ├── centronix-24-male.kicad_mod ├── TSSOP-20_4.4x6.5mm_P0.65mm.kicad_mod ├── PinSocket_2x20_P2.54mm_Vertical_1_04mm.kicad_mod ├── lsi-logo-16mm.kicad_mod └── lsi-logo-48mm.kicad_mod ├── ice4pi.lib ├── ice4pi.kicad_pro └── LICENSE /fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name ice4pi)(type KiCad)(uri ${KIPRJMOD}/ice4pi.pretty)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name ice4pi)(type Legacy)(uri ${KIPRJMOD}/ice4pi.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /example/rot.pcf: -------------------------------------------------------------------------------- 1 | # For the iCE40HX-1K iCEstick 2 | 3 | set_io D1 99 4 | set_io D2 98 5 | set_io D3 97 6 | set_io D4 96 7 | set_io D5 95 8 | set_io clk 21 9 | -------------------------------------------------------------------------------- /example/Makefile: -------------------------------------------------------------------------------- 1 | 2 | rot.bin: rot.v rot.pcf 3 | yosys -q -p "synth_ice40 -blif rot.blif" rot.v 4 | arachne-pnr -p rot.pcf rot.blif -o rot.txt 5 | icebox_explain rot.txt > rot.ex 6 | icepack rot.txt rot.bin 7 | ./ice4pi_prog rot.bin 8 | # iceprog rot.bin 9 | 10 | clean: 11 | rm -f rot.blif rot.txt rot.ex rot.bin 12 | -------------------------------------------------------------------------------- /example/ice4pi_prog: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo 24 > /sys/class/gpio/export 3 | echo out > /sys/class/gpio/gpio24/direction 4 | tr '\0' '\377' < /dev/zero | dd bs=1M count=4 of=image iflag=fullblock 5 | dd if=${1} conv=notrunc of=image 6 | flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=20000 -w image 7 | echo in > /sys/class/gpio/gpio24/direction 8 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | The gpib4pi project is open hardware design of a Raspbery Pi 2 | extension board with GPIB interface using only GPIOs. 3 | 4 | The project includes schematics and PCB 5 | design files for KiCAD. The board can be used with 6 | the linux-gpib software tools and the gpib_bitbang.ko 7 | driver. 8 | 9 | The project is published by Lightside Instruments AS 10 | under TAPR Open Hardware License. Read the LICENSE file 11 | for details. 12 | -------------------------------------------------------------------------------- /example/README: -------------------------------------------------------------------------------- 1 | To install all necessary packages and synthesize and program ice4pi: 2 | 3 | sudo apt-get install yosys fpga-icestorm arachne-pnr 4 | make 5 | 6 | 1. Make sure your Pi has SPI enabled 7 | 8 | 2. There is a problem in arachne-pnr reporting bogus dependency conflict that can be worked around: 9 | 10 | apt-get source arachne-pnr 11 | cd arachne-pnr-0.1+20180909git840bdfd-1.1/ 12 | dpkg-buildpackage -us -uc -j2 13 | sudo dpkg -i ../arachne*.deb 14 | 15 | 3. Building and installing the flashrom tool 16 | git clone https://www.flashrom.org/git/flashrom.git 17 | cd flashrom 18 | make CONFIG_ENABLE_LIBPCI_PROGRAMMERS=no CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=no install 19 | -------------------------------------------------------------------------------- /jlcpcb/bom.csv: -------------------------------------------------------------------------------- 1 | Comment,Designator,Footprint,JLCPCB Part #(optional) 2 | 3.3K,"R111,R112,R113,R114,R115,R116,R117,R118,R211,R212,R213,R214,R215,R216,R217,R218",R0402,C25890 3 | 6.2K,"R121,R122,R123,R124,R125,R126,R127,R128,R221,R222,R223,R224,R225,R226,R227,R228",,C325566 4 | GRM155C8YA224KE01J,"C33,C34",Capacitor_SMD:C_0402_1005Metric,C16772 5 | ZRB15XR61A106ME01D,C7,Capacitor_SMD:C_0402_1005Metric,C527590 6 | ERJ-2GEJ102X ,"R3,R4",Resistor_SMD:R_0402_1005Metric,C11702 7 | 150060VS55040,D7,Diode_SMD:D_0603_1608Metric,C72043 8 | 150060RS55040,D8,Diode_SMD:D_0603_1608Metric,C2286 9 | SSW-120-01-T-D-006,J2,ice4pi:PinSocket_2x20_P2.54mm_Vertical_1_04mm,C35165 10 | 112-024-113R001,J3,ice4pi:centronix-24-male, 11 | SN75160BN ,U6,Package_DIP:DIP-20_W7.62mm, C2328 12 | SN75161BN ,U7,Package_DIP:DIP-20_W7.62mm, C2328 13 | -------------------------------------------------------------------------------- /example/rot.v: -------------------------------------------------------------------------------- 1 | 2 | module top(input clk, output D1, output D2, output D3, output D4, output D5); 3 | 4 | reg ready = 0; 5 | reg [23:0] divider; 6 | reg [3:0] rot; 7 | 8 | always @(posedge clk) begin 9 | if (ready) 10 | begin 11 | if (divider == 12000000) 12 | begin 13 | divider <= 0; 14 | rot <= {rot[2:0], rot[3]}; 15 | end 16 | else 17 | divider <= divider + 1; 18 | end 19 | else 20 | begin 21 | ready <= 1; 22 | rot <= 4'b1110; 23 | divider <= 0; 24 | end 25 | end 26 | 27 | assign D1 = rot[0]; 28 | assign D2 = rot[1]; 29 | assign D3 = rot[2]; 30 | assign D4 = rot[3]; 31 | assign D5 = 1; 32 | endmodule // top 33 | -------------------------------------------------------------------------------- /bom.csv: -------------------------------------------------------------------------------- 1 | Reference,Quantity,Identifier,footprint,Value,Tolerance,Voltage,Current,Power,PN 2 | J2,1,,ice4pi:PinSocket_2x20_P2.54mm_Vertical_1_04mm,Raspberry_Pi_2_3,,,,,SSW-120-01-T-D-006 3 | J3,1,,ice4pi:centronix-24-male,Conn_02x12_Top_Bottom,,,,,112-024-113R001 4 | U6,1,,Package_DIP:DIP-20_W7.62mm,SN75160BN,,,,,SN75160BN 5 | U7,1,,Package_DIP:DIP-20_W7.62mm,SN75161BN,,,,,SN75161BN 6 | R111-R118;R211-R218,16,,Resistor_SMD:R_0402_1005Metric,3.3K,,,,,RC0402JR-073K3L 7 | R121-R128;R221-R228,16,,Resistor_SMD:R_0402_1005Metric,6.2K,,,,,RC0402FR-076K2L 8 | "C33,C34",2,,Capacitor_SMD:C_0402_1005Metric,220nF,,,,,GRM155C8YA224KE01J 9 | C7,1,,Capacitor_SMD:C_0402_1005Metric,10uF,,,,,ZRB15XR61A106ME01D 10 | "R3,R4",2,,Resistor_SMD:R_0402_1005Metric,1K,,,,,ERJ-2GEJ102X 11 | D7,1,,Diode_SMD:D_0603_1608Metric,ACTIVE_LED_GREEN,,,,,150060VS55040 12 | D8,1,,Diode_SMD:D_0603_1608Metric,POWER_LED_RED,,,,,150060RS55040 13 | -------------------------------------------------------------------------------- /jlcpcb/pos.csv: -------------------------------------------------------------------------------- 1 | Designator,Mid X,Mid Y,Layer,Rotation 2 | J2,8.4,-4.8,bottom,270 3 | C7,32.4,-45.45,top,270 4 | C33,4.5,-35.5,top,270 5 | C34,33.71,-35.5,top,270 6 | D7,1.1,-33.5,top,90 7 | D8,1.1,-42.9,top,90 8 | J3,74,-28,top,90 9 | R3,1.1,-36.05,top,270 10 | R4,1.1,-45.5,top,270 11 | R111,8.31,-45.5,top,270 12 | R112,10.85,-45.5,top,270 13 | R113,13.35,-45.5,top,270 14 | R114,15.89,-45.5,top,270 15 | R115,18.43,-45.5,top,270 16 | R116,20.97,-45.5,top,270 17 | R117,23.51,-45.5,top,270 18 | R118,26.05,-45.5,top,270 19 | R121,8.27,-47.5,top,270 20 | R122,10.81,-47.5,top,270 21 | R123,13.35,-47.5,top,270 22 | R124,15.89,-47.5,top,270 23 | R125,18.43,-47.5,top,270 24 | R126,20.97,-47.5,top,270 25 | R127,23.51,-47.5,top,270 26 | R128,26.05,-47.515,top,270 27 | R211,37.48,-45.5,top,270 28 | R212,40.02,-45.5,top,270 29 | R213,42.56,-45.5,top,270 30 | R214,45.1,-45.5,top,270 31 | R215,47.64,-45.5,top,270 32 | R216,50.18,-45.5,top,270 33 | R217,52.72,-45.5,top,270 34 | R218,55.26,-45.5,top,270 35 | R221,37.48,-47.5,top,270 36 | R222,40.02,-47.5,top,270 37 | R223,42.56,-47.5,top,270 38 | R224,45.1,-47.5,top,270 39 | R225,47.64,-47.5,top,270 40 | R226,50.18,-47.5,top,270 41 | R227,52.72,-47.5,top,270 42 | R228,55.26,-47.515,top,270 43 | U6,7,-42.5,top,90 44 | U7,36.21,-42.5,top,90 45 | -------------------------------------------------------------------------------- /CHANGELOG: -------------------------------------------------------------------------------- 1 | gpib4pi (2.1) UNRELEASED; urgency=medium 2 | 3 | * pcb: Restored logo and locked it 4 | * pcb: Updated 3D model field for the 2x20 connector now with longer 11 mm pins 5 | 6 | -- Vladimir Vassilev Thu, 16 Feb 2023 23:46:50 +0100 7 | 8 | gpib4pi (2.0) jammy; urgency=medium 9 | 10 | * Connected the GPIO_REN pin to gpio27 (pin 13) instead of gpio0 (pin 27) 11 | * Fixed silkscreen labels for D8 and R3 overlapping and D7 not on board 12 | 13 | -- Vladimir Vassilev Tue, 14 Feb 2023 16:08:29 +0100 14 | 15 | gpib4pi (1.2) jammy; urgency=medium 16 | 17 | * Updated to Kicad 6 18 | 19 | -- Vladimir Vassilev Tue, 14 Feb 2023 15:17:59 +0100 20 | 21 | gpib4pi (1.1) bullseye; urgency=medium 22 | 23 | * Major bug fix: Connected missing GPIB_EOI signal connection from SN75161 to the Raspberry Pi GPIO9 24 | * Added auxiliary axis grid origin to the PCB 25 | * Cleanup of schematics references and values positions for improved readability 26 | 27 | -- Vladimir Vassilev Tue, 09 Aug 2022 00:15:56 +0200 28 | 29 | gpib4pi (1.0) buster; urgency=medium 30 | 31 | * Connected the GPIB signals directly to the 40 pin header pin compatible with linux-gpib gpib_bitbang driver 32 | 33 | -- Vladimir Vassilev Sat, 05 Feb 2022 17:30:48 +0100 34 | -------------------------------------------------------------------------------- /ice4pi.pretty/TFDU4101-TR3.kicad_mod: -------------------------------------------------------------------------------- 1 | (module TFDU4101-TR3 (layer F.Cu) (tedit 5E345041) 2 | (fp_text reference U5 (at -5.35 -1.4 180) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value TFDU4101-TR3 (at 5.4 2.6) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_text user Edge (at 0.4 2.3) (layer F.Fab) 9 | (effects (font (size 1 1) (thickness 0.15))) 10 | ) 11 | (fp_line (start -4 1.5) (end -4 -1.5) (layer F.CrtYd) (width 0.15)) 12 | (fp_line (start 4 1.5) (end 4 -1.5) (layer F.CrtYd) (width 0.15)) 13 | (fp_line (start 4 -1.5) (end -4 -1.5) (layer F.CrtYd) (width 0.15)) 14 | (fp_line (start 4 1.5) (end -4 1.5) (layer F.CrtYd) (width 0.15)) 15 | (fp_line (start 3.8 -1.4) (end 4 -1.4) (layer F.SilkS) (width 0.15)) 16 | (fp_line (start 4 -1.4) (end 4 -1.2) (layer F.SilkS) (width 0.15)) 17 | (fp_line (start -3.8 -1.4) (end -4 -1.4) (layer F.SilkS) (width 0.15)) 18 | (fp_line (start -4 -1.4) (end -4 -1.2) (layer F.SilkS) (width 0.15)) 19 | (fp_text user 1 (at -4 -0.7) (layer F.SilkS) 20 | (effects (font (size 0.5 0.5) (thickness 0.05))) 21 | ) 22 | (fp_text user 8 (at 4 -0.7) (layer F.SilkS) 23 | (effects (font (size 0.5 0.5) (thickness 0.05))) 24 | ) 25 | (pad 1 smd rect (at -3.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -2.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -1.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -0.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at 0.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at 1.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at 2.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 32 | (pad 8 smd rect (at 3.5 0) (size 0.6 2.5) (layers F.Cu F.Paste F.Mask)) 33 | ) 34 | -------------------------------------------------------------------------------- /ice4pi.pretty/PinSocket_2x06_P2.54mm_Vertical_1to6_7to12.kicad_mod: -------------------------------------------------------------------------------- 1 | (module PinSocket_2x06_P2.54mm_Vertical_1to6_7to12 (layer F.Cu) (tedit 61FD2967) 2 | (descr "Through hole straight socket strip, 2x06, 2.54mm pitch, double cols (from Kicad 4.0.7), script generated") 3 | (tags "Through hole socket strip THT 2x06 2.54mm double row") 4 | (fp_text reference J1 (at -1.27 -2.77) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value "Pmod 2x6" (at -1.27 15.47) (layer F.Fab) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_line (start 3.81 -1.27) (end -0.27 -1.27) (layer F.Fab) (width 0.1)) 11 | (fp_line (start -0.27 -1.27) (end -1.27 -0.27) (layer F.Fab) (width 0.1)) 12 | (fp_line (start -1.27 -0.27) (end -1.27 13.97) (layer F.Fab) (width 0.1)) 13 | (fp_line (start -1.27 13.97) (end 3.81 13.97) (layer F.Fab) (width 0.1)) 14 | (fp_line (start 3.81 13.97) (end 3.81 -1.27) (layer F.Fab) (width 0.1)) 15 | (fp_line (start 3.87 -1.33) (end 1.27 -1.33) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 3.87 -1.33) (end 3.87 14.03) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 3.87 14.03) (end -1.33 14.03) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start -1.33 1.27) (end -1.33 14.03) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 1.27 1.27) (end -1.33 1.27) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 1.27 -1.33) (end 1.27 1.27) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.33 -1.33) (end -1.33 0) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start 0 -1.33) (end -1.33 -1.33) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start 4.34 -1.8) (end -1.76 -1.8) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.76 -1.8) (end -1.76 14.45) (layer F.CrtYd) (width 0.05)) 25 | (fp_line (start -1.76 14.45) (end 4.34 14.45) (layer F.CrtYd) (width 0.05)) 26 | (fp_line (start 4.34 14.45) (end 4.34 -1.8) (layer F.CrtYd) (width 0.05)) 27 | (fp_text user %R (at 1.27 6.35 90) (layer F.Fab) 28 | (effects (font (size 1 1) (thickness 0.15))) 29 | ) 30 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 31 | (pad 7 thru_hole oval (at 2.54 0) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 32 | (pad 2 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 33 | (pad 8 thru_hole oval (at 2.54 2.54) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 34 | (pad 3 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 35 | (pad 9 thru_hole oval (at 2.54 5.08) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 36 | (pad 4 thru_hole oval (at 0 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 37 | (pad 10 thru_hole oval (at 2.54 7.62) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 38 | (pad 5 thru_hole oval (at 0 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 39 | (pad 11 thru_hole oval (at 2.54 10.16) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 40 | (pad 6 thru_hole oval (at 0 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 41 | (pad 12 thru_hole oval (at 2.54 12.7) (size 1.7 1.7) (drill 1) (layers *.Cu *.Mask)) 42 | (model ${KISYS3DMOD}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_2x06_P2.54mm_Vertical.wrl 43 | (offset (xyz 2.54 0 0)) 44 | (scale (xyz 1 1 1)) 45 | (rotate (xyz 0 0 0)) 46 | ) 47 | ) 48 | -------------------------------------------------------------------------------- /ice4pi.pretty/centronix-24-male.kicad_mod: -------------------------------------------------------------------------------- 1 | (module centronix-24-male (layer F.Cu) (tedit 61FB0AC7) 2 | (descr "24-pin Centronix male (GPIB)") 3 | (tags GPIB) 4 | (fp_text reference J3 (at 16.62 -2.8) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value Conn_02x12_Top_Bottom (at 0 12.87) (layer F.Fab) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_line (start -27.35 10.7) (end 27.35 10.7) (layer F.SilkS) (width 0.12)) 11 | (fp_line (start -12 -4.435663) (end -12.25 -4.00265) (layer F.SilkS) (width 0.12)) 12 | (fp_line (start -12.25 -4.00265) (end -12.5 -4.435663) (layer F.SilkS) (width 0.12)) 13 | (fp_line (start -12.5 -4.435663) (end -12 -4.435663) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start -27.35 -4.4) (end 27.35 -4.4) (layer F.SilkS) (width 0.12)) 15 | (pad 15 thru_hole circle (at -7.56 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 16 | (pad 13 thru_hole circle (at -11.88 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 17 | (pad 21 thru_hole circle (at 5.4 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 18 | (pad 22 thru_hole circle (at 7.56 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 19 | (pad 17 thru_hole circle (at -3.24 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 20 | (pad 23 thru_hole circle (at 9.72 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 21 | (pad 18 thru_hole circle (at -1.08 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 22 | (pad 19 thru_hole circle (at 1.08 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 23 | (pad 16 thru_hole circle (at -5.4 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 24 | (pad 14 thru_hole circle (at -9.72 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 25 | (pad 20 thru_hole circle (at 3.24 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 26 | (pad 24 thru_hole circle (at 11.88 2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 27 | (pad 12 thru_hole circle (at 11.88 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 28 | (pad 11 thru_hole circle (at 9.72 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 29 | (pad 10 thru_hole circle (at 7.56 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 30 | (pad 9 thru_hole circle (at 5.4 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 31 | (pad 5 thru_hole circle (at -3.24 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 32 | (pad 6 thru_hole circle (at -1.08 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 33 | (pad 8 thru_hole circle (at 3.24 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 34 | (pad 7 thru_hole circle (at 1.08 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 35 | (pad 0 thru_hole circle (at -23.4 0) (size 4 4) (drill 3.1) (layers *.Cu *.Mask)) 36 | (pad 0 thru_hole circle (at 23.4 0) (size 4 4) (drill 3.1) (layers *.Cu *.Mask)) 37 | (pad 3 thru_hole circle (at -7.56 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 38 | (pad 4 thru_hole circle (at -5.4 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 39 | (pad 2 thru_hole circle (at -9.72 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 40 | (pad 1 thru_hole circle (at -11.88 -2.145) (size 1.6 1.6) (drill 1) (layers *.Cu *.Mask)) 41 | (model ${KISYS3DMOD}/Connector_Dsub.3dshapes/DSUB-25_Male_Horizontal_P2.77x2.84mm_EdgePinOffset14.56mm_Housed_MountingHolesOffset15.98mm.wrl 42 | (offset (xyz -16.5 2 0)) 43 | (scale (xyz 1 1 1)) 44 | (rotate (xyz 0 0 0)) 45 | ) 46 | ) 47 | -------------------------------------------------------------------------------- /ice4pi.pretty/TSSOP-20_4.4x6.5mm_P0.65mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Package_SO:TSSOP-20_4.4x6.5mm_P0.65mm (layer F.Cu) (tedit 5E28A0AF) 2 | (descr "20-Lead Plastic Thin Shrink Small Outline (ST)-4.4 mm Body [TSSOP] (see Microchip Packaging Specification 00000049BS.pdf)") 3 | (tags "SSOP 0.65") 4 | (attr smd) 5 | (fp_text reference REF** (at 0 -4.3) (layer F.SilkS) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_text value TSSOP-20_4.4x6.5mm_P0.65mm_w_thermopad (at 0 4.3) (layer F.Fab) 9 | (effects (font (size 1 1) (thickness 0.15))) 10 | ) 11 | (fp_line (start -1.2 -3.25) (end 2.2 -3.25) (layer F.Fab) (width 0.15)) 12 | (fp_line (start 2.2 -3.25) (end 2.2 3.25) (layer F.Fab) (width 0.15)) 13 | (fp_line (start 2.2 3.25) (end -2.2 3.25) (layer F.Fab) (width 0.15)) 14 | (fp_line (start -2.2 3.25) (end -2.2 -2.25) (layer F.Fab) (width 0.15)) 15 | (fp_line (start -2.2 -2.25) (end -1.2 -3.25) (layer F.Fab) (width 0.15)) 16 | (fp_line (start -3.95 -3.55) (end -3.95 3.55) (layer F.CrtYd) (width 0.05)) 17 | (fp_line (start 3.95 -3.55) (end 3.95 3.55) (layer F.CrtYd) (width 0.05)) 18 | (fp_line (start -3.95 -3.55) (end 3.95 -3.55) (layer F.CrtYd) (width 0.05)) 19 | (fp_line (start -3.95 3.55) (end 3.95 3.55) (layer F.CrtYd) (width 0.05)) 20 | (fp_line (start -2.225 3.45) (end 2.225 3.45) (layer F.SilkS) (width 0.15)) 21 | (fp_line (start -3.75 -3.45) (end 2.225 -3.45) (layer F.SilkS) (width 0.15)) 22 | (fp_text user %R (at 0 0) (layer F.Fab) 23 | (effects (font (size 0.8 0.8) (thickness 0.15))) 24 | ) 25 | (pad 1 smd rect (at -2.95 -2.925) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -2.95 -2.275) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -2.95 -1.625) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -2.95 -0.975) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -2.95 -0.325) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -2.95 0.325) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at -2.95 0.975) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 32 | (pad 8 smd rect (at -2.95 1.625) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 33 | (pad 9 smd rect (at -2.95 2.275) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 34 | (pad 10 smd rect (at -2.95 2.925) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 35 | (pad 11 smd rect (at 2.95 2.925) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 36 | (pad 12 smd rect (at 2.95 2.275) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 37 | (pad 13 smd rect (at 2.95 1.625) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 38 | (pad 14 smd rect (at 2.95 0.975) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 39 | (pad 15 smd rect (at 2.95 0.325) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 40 | (pad 16 smd rect (at 2.95 -0.325) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 41 | (pad 17 smd rect (at 2.95 -0.975) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 42 | (pad 18 smd rect (at 2.95 -1.625) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 43 | (pad 19 smd rect (at 2.95 -2.275) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 44 | (pad 20 smd rect (at 2.95 -2.925) (size 1.45 0.45) (layers F.Cu F.Paste F.Mask)) 45 | (pad 21 smd rect (at 0 0) (size 2.74 3.86) (layers F.Cu F.Paste F.Mask)) 46 | (model ${KISYS3DMOD}/Package_SO.3dshapes/TSSOP-20_4.4x6.5mm_P0.65mm.wrl 47 | (at (xyz 0 0 0)) 48 | (scale (xyz 1 1 1)) 49 | (rotate (xyz 0 0 0)) 50 | ) 51 | ) 52 | -------------------------------------------------------------------------------- /ice4pi.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # LT3030 5 | # 6 | DEF LT3030 U 0 40 Y Y 1 F N 7 | F0 "U" -400 650 50 H V C CNN 8 | F1 "LT3030" 500 -650 50 H V C CNN 9 | F2 "" -400 650 50 H I C CNN 10 | F3 "" -400 650 50 H I C CNN 11 | DRAW 12 | S -450 550 450 -600 0 1 0 f 13 | X ~SHDN2 11 -550 -100 100 R 50 50 0 1 I 14 | X PWRGD2 12 -550 -350 100 R 50 50 0 1 I 15 | X IN2_2 13 -550 150 100 R 50 50 0 1 W 16 | X IN2_1 14 -550 250 100 R 50 50 0 1 W 17 | X GND1 16 50 -700 100 U 50 50 0 1 W 18 | X IN1_2 17 -550 350 100 R 50 50 0 1 W 19 | X IN1_1 18 -550 450 100 R 50 50 0 1 W 20 | X PWRGD1 19 -550 -250 100 R 50 50 0 1 I 21 | X ~SHDN1 20 -550 0 100 R 50 50 0 1 I 22 | X THERMPAD 21 -550 -500 100 R 50 50 0 1 P 23 | X ADJ1 1 550 100 100 L 50 50 1 1 I 24 | X ADJ2 10 550 -400 100 L 50 50 1 1 I 25 | X GND2 15 150 -700 100 U 50 50 1 1 W 26 | X BYP1 2 550 200 100 L 50 50 1 1 I 27 | X OUT1_1 3 550 450 100 L 50 50 1 1 w 28 | X OUT1_2 4 550 350 100 L 50 50 1 1 w 29 | X GND4 5 350 -700 100 U 50 50 1 1 W 30 | X GND3 6 250 -700 100 U 50 50 1 1 W 31 | X OUT2_1 7 550 -50 100 L 50 50 1 1 w 32 | X OUT2_2 8 550 -150 100 L 50 50 1 1 w 33 | X BYP2 9 550 -300 100 L 50 50 1 1 I 34 | ENDDRAW 35 | ENDDEF 36 | # 37 | # N25Q032A13ESC40F 38 | # 39 | DEF N25Q032A13ESC40F U 0 40 Y Y 1 F N 40 | F0 "U" -100 500 50 H V C CNN 41 | F1 "N25Q032A13ESC40F" 500 -400 50 H V C CNN 42 | F2 "" 500 -400 50 H I C CNN 43 | F3 "" 500 -400 50 H I C CNN 44 | $FPLIST 45 | 8-SOIC 46 | $ENDFPLIST 47 | DRAW 48 | S -350 400 350 -350 0 1 0 f 49 | X ~CS 1 -450 -200 100 R 50 50 1 1 I 50 | X SDO 2 450 250 100 L 50 50 1 1 O 51 | X ~WP 3 -450 -50 100 R 50 50 1 1 I 52 | X GND 4 0 -450 100 U 50 50 1 1 W 53 | X SDI 5 -450 250 100 R 50 50 1 1 I 54 | X SCK 6 -450 100 100 R 50 50 1 1 I 55 | X ~HOLD 7 450 -200 100 L 50 50 1 1 I 56 | X VCC 8 0 500 100 D 50 50 1 1 W 57 | ENDDRAW 58 | ENDDEF 59 | # 60 | # TFDU4101-TR3 61 | # 62 | DEF TFDU4101-TR3 U 0 40 Y Y 1 F N 63 | F0 "U" -100 200 50 H V C CNN 64 | F1 "TFDU4101-TR3" 200 -750 50 H V C CNN 65 | F2 "" -100 200 50 H I C CNN 66 | F3 "" -100 200 50 H I C CNN 67 | DRAW 68 | S -100 150 300 -700 0 1 0 N 69 | X VCC2 1 -200 100 100 R 50 50 1 1 I 70 | X IREDC 2 -200 -350 100 R 50 50 1 1 N 71 | X TXD 3 -200 -450 100 R 50 50 1 1 I 72 | X RXD 4 -200 -550 100 R 50 50 1 1 O 73 | X SD 5 -200 -650 100 R 50 50 1 1 I 74 | X VCC1 6 -200 0 100 R 50 50 1 1 I 75 | X NC 7 -200 -250 100 R 50 50 1 1 N 76 | X GND 8 -200 -150 100 R 50 50 1 1 W 77 | ENDDRAW 78 | ENDDEF 79 | # 80 | # SN75161BN 81 | # 82 | DEF SN75161BN U 0 20 Y Y 1 F N 83 | F0 "U" -150 750 50 H V C CNN 84 | F1 "SN75161BN" -300 650 50 H V C CNN 85 | F2 "Package_DIP:DIP-20_W7.62mm" 0 -300 50 H I C CNN 86 | F3 "" -800 200 50 H I C CNN 87 | $FPLIST 88 | DIP*W7.62mm* 89 | $ENDFPLIST 90 | DRAW 91 | S -300 600 300 -600 1 1 10 f 92 | X TE 1 -400 -400 100 R 50 50 1 1 I 93 | X GND 10 0 -700 100 U 50 50 1 1 W 94 | X DC 11 -400 -500 100 R 50 50 1 1 I 95 | X SRQ 12 -400 -200 100 R 50 50 1 1 B 96 | X ATN 13 -400 -100 100 R 50 50 1 1 B 97 | X EOI 14 -400 0 100 R 50 50 1 1 B 98 | X DAV 15 -400 100 100 R 50 50 1 1 B 99 | X NRFD 16 -400 200 100 R 50 50 1 1 B 100 | X NDAC 17 -400 300 100 R 50 50 1 1 B 101 | X IFC 18 -400 400 100 R 50 50 1 1 B 102 | X REN 19 -400 500 100 R 50 50 1 1 B 103 | X REN 2 400 500 100 L 50 50 1 1 T 104 | X VCC 20 0 700 100 D 50 50 1 1 W 105 | X IFC 3 400 400 100 L 50 50 1 1 T 106 | X NDAC 4 400 300 100 L 50 50 1 1 T 107 | X NRFD 5 400 200 100 L 50 50 1 1 T 108 | X DAV 6 400 100 100 L 50 50 1 1 T 109 | X EOI 7 400 0 100 L 50 50 1 1 T 110 | X ATN 8 400 -100 100 L 50 50 1 1 T 111 | X SRQ 9 400 -200 100 L 50 50 1 1 T 112 | ENDDRAW 113 | ENDDEF 114 | # 115 | #End Library 116 | -------------------------------------------------------------------------------- /ice4pi.pretty/PinSocket_2x20_P2.54mm_Vertical_1_04mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Connector_PinSocket_2.54mm:PinSocket_2x20_P2.54mm_Vertical (layer F.Cu) (tedit 5A19A433) 2 | (descr "Through hole straight socket strip, 2x20, 2.54mm pitch, double cols (from Kicad 4.0.7), script generated") 3 | (tags "Through hole socket strip THT 2x20 2.54mm double row") 4 | (fp_text reference J2 (at -1.27 -2.77) (layer F.SilkS) 5 | (effects (font (size 1 1) (thickness 0.15))) 6 | ) 7 | (fp_text value Raspberry_Pi_2_3 (at -1.27 51.03) (layer F.Fab) 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | ) 10 | (fp_text user %R (at -1.27 24.13 90) (layer F.Fab) 11 | (effects (font (size 1 1) (thickness 0.15))) 12 | ) 13 | (fp_line (start -4.34 50) (end -4.34 -1.8) (layer F.CrtYd) (width 0.05)) 14 | (fp_line (start 1.76 50) (end -4.34 50) (layer F.CrtYd) (width 0.05)) 15 | (fp_line (start 1.76 -1.8) (end 1.76 50) (layer F.CrtYd) (width 0.05)) 16 | (fp_line (start -4.34 -1.8) (end 1.76 -1.8) (layer F.CrtYd) (width 0.05)) 17 | (fp_line (start 0 -1.33) (end 1.33 -1.33) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 1.33 -1.33) (end 1.33 0) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start -1.27 -1.33) (end -1.27 1.27) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start -1.27 1.27) (end 1.33 1.27) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start 1.33 1.27) (end 1.33 49.59) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start -3.87 49.59) (end 1.33 49.59) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start -3.87 -1.33) (end -3.87 49.59) (layer F.SilkS) (width 0.12)) 24 | (fp_line (start -3.87 -1.33) (end -1.27 -1.33) (layer F.SilkS) (width 0.12)) 25 | (fp_line (start -3.81 49.53) (end -3.81 -1.27) (layer F.Fab) (width 0.1)) 26 | (fp_line (start 1.27 49.53) (end -3.81 49.53) (layer F.Fab) (width 0.1)) 27 | (fp_line (start 1.27 -0.27) (end 1.27 49.53) (layer F.Fab) (width 0.1)) 28 | (fp_line (start 0.27 -1.27) (end 1.27 -0.27) (layer F.Fab) (width 0.1)) 29 | (fp_line (start -3.81 -1.27) (end 0.27 -1.27) (layer F.Fab) (width 0.1)) 30 | (pad 40 thru_hole oval (at -2.54 48.26) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 31 | (pad 39 thru_hole oval (at 0 48.26) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 32 | (pad 38 thru_hole oval (at -2.54 45.72) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 33 | (pad 37 thru_hole oval (at 0 45.72) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 34 | (pad 36 thru_hole oval (at -2.54 43.18) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 35 | (pad 35 thru_hole oval (at 0 43.18) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 36 | (pad 34 thru_hole oval (at -2.54 40.64) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 37 | (pad 33 thru_hole oval (at 0 40.64) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 38 | (pad 32 thru_hole oval (at -2.54 38.1) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 39 | (pad 31 thru_hole oval (at 0 38.1) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 40 | (pad 30 thru_hole oval (at -2.54 35.56) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 41 | (pad 29 thru_hole oval (at 0 35.56) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 42 | (pad 28 thru_hole oval (at -2.54 33.02) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 43 | (pad 27 thru_hole oval (at 0 33.02) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 44 | (pad 26 thru_hole oval (at -2.54 30.48) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 45 | (pad 25 thru_hole oval (at 0 30.48) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 46 | (pad 24 thru_hole oval (at -2.54 27.94) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 47 | (pad 23 thru_hole oval (at 0 27.94) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 48 | (pad 22 thru_hole oval (at -2.54 25.4) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 49 | (pad 21 thru_hole oval (at 0 25.4) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 50 | (pad 20 thru_hole oval (at -2.54 22.86) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 51 | (pad 19 thru_hole oval (at 0 22.86) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 52 | (pad 18 thru_hole oval (at -2.54 20.32) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 53 | (pad 17 thru_hole oval (at 0 20.32) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 54 | (pad 16 thru_hole oval (at -2.54 17.78) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 55 | (pad 15 thru_hole oval (at 0 17.78) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 56 | (pad 14 thru_hole oval (at -2.54 15.24) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 57 | (pad 13 thru_hole oval (at 0 15.24) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 58 | (pad 12 thru_hole oval (at -2.54 12.7) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 59 | (pad 11 thru_hole oval (at 0 12.7) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 60 | (pad 10 thru_hole oval (at -2.54 10.16) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 61 | (pad 9 thru_hole oval (at 0 10.16) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 62 | (pad 8 thru_hole oval (at -2.54 7.62) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 63 | (pad 7 thru_hole oval (at 0 7.62) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 64 | (pad 6 thru_hole oval (at -2.54 5.08) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 65 | (pad 5 thru_hole oval (at 0 5.08) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 66 | (pad 4 thru_hole oval (at -2.54 2.54) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 67 | (pad 3 thru_hole oval (at 0 2.54) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 68 | (pad 2 thru_hole oval (at -2.54 0) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 69 | (pad 1 thru_hole rect (at 0 0) (size 1.7 1.7) (drill 1.04) (layers *.Cu *.Mask)) 70 | (model ${KISYS3DMOD}/Connector_PinSocket_2.54mm.3dshapes/PinSocket_2x20_P2.54mm_Vertical.wrl 71 | (at (xyz 0 0 0)) 72 | (scale (xyz 1 1 1)) 73 | (rotate (xyz 0 0 0)) 74 | ) 75 | ) 76 | -------------------------------------------------------------------------------- /ice4pi.kicad_pro: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "design_settings": { 4 | "defaults": { 5 | "board_outline_line_width": 0.15, 6 | "copper_line_width": 0.15, 7 | "copper_text_italic": false, 8 | "copper_text_size_h": 1.5, 9 | "copper_text_size_v": 1.5, 10 | "copper_text_thickness": 0.3, 11 | "copper_text_upright": false, 12 | "courtyard_line_width": 0.049999999999999996, 13 | "dimension_precision": 4, 14 | "dimension_units": 3, 15 | "dimensions": { 16 | "arrow_length": 1270000, 17 | "extension_offset": 500000, 18 | "keep_text_aligned": true, 19 | "suppress_zeroes": false, 20 | "text_position": 0, 21 | "units_format": 1 22 | }, 23 | "fab_line_width": 0.09999999999999999, 24 | "fab_text_italic": false, 25 | "fab_text_size_h": 1.0, 26 | "fab_text_size_v": 1.0, 27 | "fab_text_thickness": 0.15, 28 | "fab_text_upright": false, 29 | "other_line_width": 0.09999999999999999, 30 | "other_text_italic": false, 31 | "other_text_size_h": 1.0, 32 | "other_text_size_v": 1.0, 33 | "other_text_thickness": 0.15, 34 | "other_text_upright": false, 35 | "pads": { 36 | "drill": 0.0, 37 | "height": 0.64, 38 | "width": 0.59 39 | }, 40 | "silk_line_width": 0.15, 41 | "silk_text_italic": false, 42 | "silk_text_size_h": 1.0, 43 | "silk_text_size_v": 1.0, 44 | "silk_text_thickness": 0.15, 45 | "silk_text_upright": false, 46 | "zones": { 47 | "45_degree_only": false, 48 | "min_clearance": 0.508 49 | } 50 | }, 51 | "diff_pair_dimensions": [], 52 | "drc_exclusions": [], 53 | "meta": { 54 | "filename": "board_design_settings.json", 55 | "version": 2 56 | }, 57 | "rule_severities": { 58 | "annular_width": "error", 59 | "clearance": "error", 60 | "copper_edge_clearance": "error", 61 | "courtyards_overlap": "error", 62 | "diff_pair_gap_out_of_range": "error", 63 | "diff_pair_uncoupled_length_too_long": "error", 64 | "drill_out_of_range": "error", 65 | "duplicate_footprints": "warning", 66 | "extra_footprint": "warning", 67 | "footprint_type_mismatch": "error", 68 | "hole_clearance": "error", 69 | "hole_near_hole": "error", 70 | "invalid_outline": "error", 71 | "item_on_disabled_layer": "error", 72 | "items_not_allowed": "error", 73 | "length_out_of_range": "error", 74 | "malformed_courtyard": "error", 75 | "microvia_drill_out_of_range": "error", 76 | "missing_courtyard": "ignore", 77 | "missing_footprint": "warning", 78 | "net_conflict": "warning", 79 | "npth_inside_courtyard": "ignore", 80 | "padstack": "error", 81 | "pth_inside_courtyard": "ignore", 82 | "shorting_items": "error", 83 | "silk_over_copper": "warning", 84 | "silk_overlap": "warning", 85 | "skew_out_of_range": "error", 86 | "through_hole_pad_without_hole": "error", 87 | "too_many_vias": "error", 88 | "track_dangling": "warning", 89 | "track_width": "error", 90 | "tracks_crossing": "error", 91 | "unconnected_items": "error", 92 | "unresolved_variable": "error", 93 | "via_dangling": "warning", 94 | "zone_has_empty_net": "error", 95 | "zones_intersect": "error" 96 | }, 97 | "rule_severitieslegacy_courtyards_overlap": true, 98 | "rule_severitieslegacy_no_courtyard_defined": false, 99 | "rules": { 100 | "allow_blind_buried_vias": false, 101 | "allow_microvias": false, 102 | "max_error": 0.005, 103 | "min_clearance": 0.0, 104 | "min_copper_edge_clearance": 0.024999999999999998, 105 | "min_hole_clearance": 0.25, 106 | "min_hole_to_hole": 0.25, 107 | "min_microvia_diameter": 0.19999999999999998, 108 | "min_microvia_drill": 0.09999999999999999, 109 | "min_silk_clearance": 0.0, 110 | "min_through_hole_diameter": 0.3, 111 | "min_track_width": 0.19999999999999998, 112 | "min_via_annular_width": 0.049999999999999996, 113 | "min_via_diameter": 0.39999999999999997, 114 | "use_height_for_length_calcs": true 115 | }, 116 | "track_widths": [], 117 | "via_dimensions": [], 118 | "zones_allow_external_fillets": false, 119 | "zones_use_no_outline": true 120 | }, 121 | "layer_presets": [] 122 | }, 123 | "boards": [], 124 | "cvpcb": { 125 | "equivalence_files": [] 126 | }, 127 | "erc": { 128 | "erc_exclusions": [], 129 | "meta": { 130 | "version": 0 131 | }, 132 | "pin_map": [ 133 | [ 134 | 0, 135 | 0, 136 | 0, 137 | 0, 138 | 0, 139 | 0, 140 | 1, 141 | 0, 142 | 0, 143 | 0, 144 | 0, 145 | 2 146 | ], 147 | [ 148 | 0, 149 | 2, 150 | 0, 151 | 1, 152 | 0, 153 | 0, 154 | 1, 155 | 0, 156 | 2, 157 | 2, 158 | 2, 159 | 2 160 | ], 161 | [ 162 | 0, 163 | 0, 164 | 0, 165 | 0, 166 | 0, 167 | 0, 168 | 1, 169 | 0, 170 | 1, 171 | 0, 172 | 1, 173 | 2 174 | ], 175 | [ 176 | 0, 177 | 1, 178 | 0, 179 | 0, 180 | 0, 181 | 0, 182 | 1, 183 | 1, 184 | 2, 185 | 1, 186 | 1, 187 | 2 188 | ], 189 | [ 190 | 0, 191 | 0, 192 | 0, 193 | 0, 194 | 0, 195 | 0, 196 | 1, 197 | 0, 198 | 0, 199 | 0, 200 | 0, 201 | 2 202 | ], 203 | [ 204 | 0, 205 | 0, 206 | 0, 207 | 0, 208 | 0, 209 | 0, 210 | 0, 211 | 0, 212 | 0, 213 | 0, 214 | 0, 215 | 2 216 | ], 217 | [ 218 | 1, 219 | 1, 220 | 1, 221 | 1, 222 | 1, 223 | 0, 224 | 1, 225 | 1, 226 | 1, 227 | 1, 228 | 1, 229 | 2 230 | ], 231 | [ 232 | 0, 233 | 0, 234 | 0, 235 | 1, 236 | 0, 237 | 0, 238 | 1, 239 | 0, 240 | 0, 241 | 0, 242 | 0, 243 | 2 244 | ], 245 | [ 246 | 0, 247 | 2, 248 | 1, 249 | 2, 250 | 0, 251 | 0, 252 | 1, 253 | 0, 254 | 2, 255 | 2, 256 | 2, 257 | 2 258 | ], 259 | [ 260 | 0, 261 | 2, 262 | 0, 263 | 1, 264 | 0, 265 | 0, 266 | 1, 267 | 0, 268 | 2, 269 | 0, 270 | 0, 271 | 2 272 | ], 273 | [ 274 | 0, 275 | 2, 276 | 1, 277 | 1, 278 | 0, 279 | 0, 280 | 1, 281 | 0, 282 | 2, 283 | 0, 284 | 0, 285 | 2 286 | ], 287 | [ 288 | 2, 289 | 2, 290 | 2, 291 | 2, 292 | 2, 293 | 2, 294 | 2, 295 | 2, 296 | 2, 297 | 2, 298 | 2, 299 | 2 300 | ] 301 | ], 302 | "rule_severities": { 303 | "bus_definition_conflict": "error", 304 | "bus_entry_needed": "error", 305 | "bus_label_syntax": "error", 306 | "bus_to_bus_conflict": "error", 307 | "bus_to_net_conflict": "error", 308 | "different_unit_footprint": "error", 309 | "different_unit_net": "error", 310 | "duplicate_reference": "error", 311 | "duplicate_sheet_names": "error", 312 | "extra_units": "error", 313 | "global_label_dangling": "warning", 314 | "hier_label_mismatch": "error", 315 | "label_dangling": "error", 316 | "lib_symbol_issues": "warning", 317 | "multiple_net_names": "warning", 318 | "net_not_bus_member": "warning", 319 | "no_connect_connected": "warning", 320 | "no_connect_dangling": "warning", 321 | "pin_not_connected": "error", 322 | "pin_not_driven": "error", 323 | "pin_to_pin": "warning", 324 | "power_pin_not_driven": "error", 325 | "similar_labels": "warning", 326 | "unannotated": "error", 327 | "unit_value_mismatch": "error", 328 | "unresolved_variable": "error", 329 | "wire_dangling": "error" 330 | } 331 | }, 332 | "libraries": { 333 | "pinned_footprint_libs": [], 334 | "pinned_symbol_libs": [] 335 | }, 336 | "meta": { 337 | "filename": "ice4pi.kicad_pro", 338 | "version": 1 339 | }, 340 | "net_settings": { 341 | "classes": [ 342 | { 343 | "bus_width": 12.0, 344 | "clearance": 0.1, 345 | "diff_pair_gap": 0.25, 346 | "diff_pair_via_gap": 0.25, 347 | "diff_pair_width": 0.2, 348 | "line_style": 0, 349 | "microvia_diameter": 0.3, 350 | "microvia_drill": 0.1, 351 | "name": "Default", 352 | "pcb_color": "rgba(0, 0, 0, 0.000)", 353 | "schematic_color": "rgba(0, 0, 0, 0.000)", 354 | "track_width": 0.25, 355 | "via_diameter": 0.8, 356 | "via_drill": 0.4, 357 | "wire_width": 6.0 358 | }, 359 | { 360 | "bus_width": 12.0, 361 | "clearance": 0.1, 362 | "diff_pair_gap": 0.25, 363 | "diff_pair_via_gap": 0.25, 364 | "diff_pair_width": 0.2, 365 | "line_style": 0, 366 | "microvia_diameter": 0.3, 367 | "microvia_drill": 0.1, 368 | "name": "Power", 369 | "nets": [ 370 | "+5V", 371 | "GND" 372 | ], 373 | "pcb_color": "rgba(0, 0, 0, 0.000)", 374 | "schematic_color": "rgba(0, 0, 0, 0.000)", 375 | "track_width": 0.4, 376 | "via_diameter": 0.8, 377 | "via_drill": 0.4, 378 | "wire_width": 6.0 379 | } 380 | ], 381 | "meta": { 382 | "version": 2 383 | }, 384 | "net_colors": null 385 | }, 386 | "pcbnew": { 387 | "last_paths": { 388 | "gencad": "", 389 | "idf": "", 390 | "netlist": "ice4pi.net", 391 | "specctra_dsn": "", 392 | "step": "", 393 | "vrml": "" 394 | }, 395 | "page_layout_descr_file": "" 396 | }, 397 | "schematic": { 398 | "annotate_start_num": 0, 399 | "drawing": { 400 | "default_line_thickness": 6.0, 401 | "default_text_size": 50.0, 402 | "field_names": [], 403 | "intersheets_ref_own_page": false, 404 | "intersheets_ref_prefix": "", 405 | "intersheets_ref_short": false, 406 | "intersheets_ref_show": false, 407 | "intersheets_ref_suffix": "", 408 | "junction_size_choice": 3, 409 | "label_size_ratio": 0.25, 410 | "pin_symbol_size": 0.0, 411 | "text_offset_ratio": 0.08 412 | }, 413 | "legacy_lib_dir": "", 414 | "legacy_lib_list": [], 415 | "meta": { 416 | "version": 1 417 | }, 418 | "net_format_name": "KiCad", 419 | "ngspice": { 420 | "fix_include_paths": true, 421 | "fix_passive_vals": false, 422 | "meta": { 423 | "version": 0 424 | }, 425 | "model_mode": 0, 426 | "workbook_filename": "" 427 | }, 428 | "page_layout_descr_file": "", 429 | "plot_directory": "./gerbers", 430 | "spice_adjust_passive_values": false, 431 | "spice_external_command": "spice \"%I\"", 432 | "subpart_first_id": 65, 433 | "subpart_id_separator": 0 434 | }, 435 | "sheets": [ 436 | [ 437 | "0f54db53-a272-4955-88fb-d7ab00657bb0", 438 | "" 439 | ] 440 | ], 441 | "text_variables": {} 442 | } 443 | -------------------------------------------------------------------------------- /ice4pi.pretty/lsi-logo-16mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module ice4pi:lsi-logo-16mm (layer F.Cu) (tedit 60138257) 2 | (descr "Imported from /home/vladimir/lsi/logo-kicad-3-with-holes.svg") 3 | (tags svg2mod) 4 | (attr virtual) 5 | (fp_text reference svg2mod (at 0 -4.345797) (layer F.SilkS) hide 6 | (effects (font (size 1.524 1.524) (thickness 0.3048))) 7 | ) 8 | (fp_text value G*** (at 0 4.345797) (layer F.SilkS) hide 9 | (effects (font (size 1.524 1.524) (thickness 0.3048))) 10 | ) 11 | (fp_poly (pts (xy -1.756488 -0.765085) (xy -1.870047 -0.71961) (xy -1.923015 -0.59352) (xy -1.608564 -0.594035) 12 | (xy -1.648484 -0.72116) (xy -1.756488 -0.765084) (xy -1.756488 -0.765085)) (layer F.SilkS) (width 0)) 13 | (fp_poly (pts (xy -2.454902 -0.758688) (xy -2.559288 -0.70236) (xy -2.594557 -0.535446) (xy -2.559288 -0.368531) 14 | (xy -2.454902 -0.312203) (xy -2.350128 -0.369047) (xy -2.313696 -0.535446) (xy -2.350128 -0.701844) 15 | (xy -2.454902 -0.758688)) (layer F.SilkS) (width 0)) 16 | (fp_poly (pts (xy -5.647988 -0.754037) (xy -5.754829 -0.698226) (xy -5.791649 -0.535962) (xy -5.754829 -0.372665) 17 | (xy -5.646955 -0.316854) (xy -5.546186 -0.373182) (xy -5.510917 -0.535962) (xy -5.546186 -0.698226) 18 | (xy -5.647988 -0.754037)) (layer F.SilkS) (width 0)) 19 | (fp_poly (pts (xy 6.963744 -1.142542) (xy 6.929034 -1.037612) (xy 6.822897 -0.71568) (xy 6.795735 -0.633187) 20 | (xy 6.747043 -0.484796) (xy 6.746218 -0.481877) (xy 6.784449 -0.481047) (xy 6.822476 -0.47938) 21 | (xy 6.706279 -0.052518) (xy 6.685052 0.025953) (xy 6.671472 0.075953) (xy 6.671772 0.077203) 22 | (xy 6.685757 0.045698) (xy 6.715838 -0.024927) (xy 6.748435 -0.101385) (xy 6.780628 -0.176839) 23 | (xy 6.8259 -0.282973) (xy 6.871071 -0.388912) (xy 6.903464 -0.464866) (xy 6.927509 -0.521204) 24 | (xy 6.935356 -0.539499) (xy 6.891191 -0.539499) (xy 6.847026 -0.539916) (xy 6.849651 -0.553294) 25 | (xy 6.862124 -0.615266) (xy 6.881239 -0.709832) (xy 6.899344 -0.799372) (xy 6.926506 -0.933677) 26 | (xy 6.953669 -1.067983) (xy 6.968659 -1.142328) (xy 6.974394 -1.172792) (xy 6.963729 -1.142203) 27 | (xy 6.963744 -1.142542)) (layer F.SilkS) (width 0.000106)) 28 | (fp_poly (pts (xy -1.09554 -0.360257) (xy -1.09554 -0.110272) (xy -0.844522 -0.110272) (xy -0.844522 -0.360257) 29 | (xy -1.09554 -0.360257)) (layer F.SilkS) (width 0)) 30 | (fp_poly (pts (xy 2.830577 -0.813072) (xy 2.830577 -0.454437) (xy 2.874114 -0.278221) (xy 3.007052 -0.220343) 31 | (xy 3.109242 -0.246181) (xy 3.178746 -0.322145) (xy 3.178746 -0.235329) (xy 3.274865 -0.235329) 32 | (xy 3.274865 -0.813072) (xy 3.178746 -0.813072) (xy 3.178746 -0.48596) (xy 3.142961 -0.350051) 33 | (xy 3.039737 -0.303025) (xy 2.953567 -0.339715) (xy 2.926049 -0.454437) (xy 2.926049 -0.813072) 34 | (xy 2.830577 -0.813072)) (layer F.SilkS) (width 0)) 35 | (fp_poly (pts (xy -0.334992 -0.814105) (xy -0.334992 -0.740208) (xy -0.186035 -0.740208) (xy -0.186035 -0.309226) 36 | (xy -0.375429 -0.309226) (xy -0.375429 -0.235329) (xy 0.098961 -0.235329) (xy 0.098961 -0.309226) 37 | (xy -0.090563 -0.309226) (xy -0.090563 -0.814105) (xy -0.334992 -0.814105)) (layer F.SilkS) (width 0)) 38 | (fp_poly (pts (xy 7.250979 -0.825991) (xy 7.250979 -0.73194) (xy 7.692166 -0.566575) (xy 7.250979 -0.402761) 39 | (xy 7.250979 -0.308193) (xy 7.799653 -0.5242) (xy 7.799653 -0.609983) (xy 7.250979 -0.825991)) (layer F.SilkS) (width 0)) 40 | (fp_poly (pts (xy 6.257112 -0.828058) (xy 6.095752 -0.782582) (xy 6.039166 -0.654425) (xy 6.077019 -0.550555) 41 | (xy 6.197425 -0.496812) (xy 6.233212 -0.489577) (xy 6.237346 -0.488543) (xy 6.364599 -0.397076) 42 | (xy 6.329717 -0.325246) (xy 6.231661 -0.299924) (xy 6.13929 -0.31336) (xy 6.037099 -0.354701) 43 | (xy 6.037099 -0.256516) (xy 6.13929 -0.229644) (xy 6.229594 -0.220343) (xy 6.399868 -0.268402) 44 | (xy 6.461104 -0.40276) (xy 6.424285 -0.507664) (xy 6.316798 -0.561407) (xy 6.278428 -0.568642) 45 | (xy 6.159573 -0.605849) (xy 6.135672 -0.663726) (xy 6.167324 -0.727288) (xy 6.264346 -0.748476) 46 | (xy 6.348967 -0.73659) (xy 6.431519 -0.700933) (xy 6.431519 -0.793951) (xy 6.3469 -0.819272) 47 | (xy 6.257112 -0.828057) (xy 6.257112 -0.828058)) (layer F.SilkS) (width 0)) 48 | (fp_poly (pts (xy 5.016619 -0.828058) (xy 4.913395 -0.80222) (xy 4.844278 -0.727289) (xy 4.844278 -0.814105) 49 | (xy 4.748806 -0.814105) (xy 4.748806 -0.235329) (xy 4.844278 -0.235329) (xy 4.844278 -0.562441) 50 | (xy 4.880193 -0.697833) (xy 4.983417 -0.745375) (xy 5.069587 -0.708685) (xy 5.097105 -0.593963) 51 | (xy 5.097105 -0.235329) (xy 5.193094 -0.235329) (xy 5.193094 -0.593963) (xy 5.14904 -0.769663) 52 | (xy 5.016619 -0.828058)) (layer F.SilkS) (width 0)) 53 | (fp_poly (pts (xy 4.346117 -0.828058) (xy 4.341857 -0.747442) (xy 4.449861 -0.703517) (xy 4.489781 -0.576393) 54 | (xy 4.17533 -0.575877) (xy 4.228298 -0.701968) (xy 4.341857 -0.747443) (xy 4.341857 -0.747442) 55 | (xy 4.346117 -0.828058) (xy 4.146776 -0.745375) (xy 4.071974 -0.5242) (xy 4.148326 -0.300958) 56 | (xy 4.36007 -0.220343) (xy 4.457609 -0.231712) (xy 4.563029 -0.264785) (xy 4.563029 -0.359352) 57 | (xy 4.456575 -0.315428) (xy 4.361103 -0.300958) (xy 4.220931 -0.352635) (xy 4.171709 -0.498879) 58 | (xy 4.171709 -0.501979) (xy 4.585379 -0.501979) (xy 4.585379 -0.548488) (xy 4.521042 -0.753127) 59 | (xy 4.346117 -0.828057) (xy 4.346117 -0.828058)) (layer F.SilkS) (width 0)) 60 | (fp_poly (pts (xy 3.613216 -0.828058) (xy 3.554563 -0.811521) (xy 3.51206 -0.764496) (xy 3.51206 -0.814105) 61 | (xy 3.425373 -0.814105) (xy 3.425373 -0.235329) (xy 3.51206 -0.235329) (xy 3.51206 -0.566575) 62 | (xy 3.526529 -0.716437) (xy 3.579498 -0.748476) (xy 3.632466 -0.719537) (xy 3.647452 -0.566575) 63 | (xy 3.647452 -0.235329) (xy 3.734656 -0.235329) (xy 3.734656 -0.566575) (xy 3.749772 -0.716437) 64 | (xy 3.806744 -0.748476) (xy 3.856612 -0.718504) (xy 3.870694 -0.566575) (xy 3.870694 -0.235329) 65 | (xy 3.957898 -0.235329) (xy 3.957898 -0.570709) (xy 3.92883 -0.773797) (xy 3.830128 -0.828058) 66 | (xy 3.764241 -0.809971) (xy 3.71967 -0.755194) (xy 3.678587 -0.809971) (xy 3.613216 -0.828058)) (layer F.SilkS) (width 0)) 67 | (fp_poly (pts (xy 2.56483 -0.828058) (xy 2.447008 -0.794985) (xy 2.373757 -0.700934) (xy 2.373757 -0.814105) 68 | (xy 2.277768 -0.814105) (xy 2.277768 -0.235329) (xy 2.373757 -0.235329) (xy 2.373757 -0.523167) 69 | (xy 2.421041 -0.684397) (xy 2.557467 -0.740208) (xy 2.627101 -0.729356) (xy 2.689371 -0.694733) 70 | (xy 2.689371 -0.791884) (xy 2.630718 -0.819273) (xy 2.56483 -0.828058)) (layer F.SilkS) (width 0)) 71 | (fp_poly (pts (xy 1.141662 -0.828058) (xy 0.980173 -0.782582) (xy 0.923587 -0.654425) (xy 0.961569 -0.550555) 72 | (xy 1.081975 -0.496812) (xy 1.117761 -0.489577) (xy 1.121896 -0.488543) (xy 1.249019 -0.397076) 73 | (xy 1.214267 -0.325246) (xy 1.116211 -0.299924) (xy 1.02384 -0.31336) (xy 0.92152 -0.354701) 74 | (xy 0.92152 -0.256516) (xy 1.02384 -0.229644) (xy 1.114144 -0.220343) (xy 1.284418 -0.268402) 75 | (xy 1.345654 -0.40276) (xy 1.308706 -0.507664) (xy 1.201348 -0.561407) (xy 1.162849 -0.568642) 76 | (xy 1.043994 -0.605849) (xy 1.020222 -0.663726) (xy 1.051874 -0.727288) (xy 1.148896 -0.748476) 77 | (xy 1.233517 -0.73659) (xy 1.31607 -0.700933) (xy 1.31607 -0.793951) (xy 1.23145 -0.819272) 78 | (xy 1.141662 -0.828057) (xy 1.141662 -0.828058)) (layer F.SilkS) (width 0)) 79 | (fp_poly (pts (xy 0.540536 -0.828058) (xy 0.437312 -0.80222) (xy 0.368324 -0.727289) (xy 0.368324 -0.814105) 80 | (xy 0.272723 -0.814105) (xy 0.272723 -0.235329) (xy 0.368324 -0.235329) (xy 0.368324 -0.562441) 81 | (xy 0.40411 -0.697833) (xy 0.507333 -0.745375) (xy 0.593504 -0.708685) (xy 0.621021 -0.593963) 82 | (xy 0.621021 -0.235329) (xy 0.717011 -0.235329) (xy 0.717011 -0.593963) (xy 0.672956 -0.769663) 83 | (xy 0.540536 -0.828058)) (layer F.SilkS) (width 0)) 84 | (fp_poly (pts (xy 5.510258 -0.978436) (xy 5.510258 -0.814105) (xy 5.3551 -0.814105) (xy 5.3551 -0.740208) 85 | (xy 5.510258 -0.740208) (xy 5.510258 -0.426015) (xy 5.554313 -0.278221) (xy 5.705853 -0.235329) 86 | (xy 5.822642 -0.235329) (xy 5.822642 -0.311293) (xy 5.715284 -0.311293) (xy 5.630147 -0.336615) 87 | (xy 5.60573 -0.426015) (xy 5.60573 -0.740208) (xy 5.822642 -0.740208) (xy 5.822642 -0.814105) 88 | (xy 5.60573 -0.814105) (xy 5.60573 -0.978436) (xy 5.510258 -0.978436)) (layer F.SilkS) (width 0)) 89 | (fp_poly (pts (xy 1.673671 -0.978436) (xy 1.673671 -0.814105) (xy 1.518383 -0.814105) (xy 1.518383 -0.740208) 90 | (xy 1.673671 -0.740208) (xy 1.673671 -0.426015) (xy 1.717725 -0.278221) (xy 1.869266 -0.235329) 91 | (xy 1.986054 -0.235329) (xy 1.986054 -0.311293) (xy 1.878697 -0.311293) (xy 1.79356 -0.336615) 92 | (xy 1.769143 -0.426015) (xy 1.769143 -0.740208) (xy 1.986054 -0.740208) (xy 1.986054 -0.814105) 93 | (xy 1.769143 -0.814105) (xy 1.769143 -0.978436) (xy 1.673671 -0.978436)) (layer F.SilkS) (width 0)) 94 | (fp_poly (pts (xy -0.186035 -1.039414) (xy -0.186035 -0.919008) (xy -0.090563 -0.919008) (xy -0.090563 -1.039414) 95 | (xy -0.186035 -1.039414)) (layer F.SilkS) (width 0)) 96 | (fp_poly (pts (xy -8.000028 -1.297796) (xy -0.593374 -1.16783) (xy 7.869933 -1.16783) (xy 7.869933 0.072146) 97 | (xy -1.346687 0.072146) (xy -1.346687 -0.547842) (xy -0.593374 -0.547842) (xy -0.593374 -1.16783) 98 | (xy -8.000028 -1.297796) (xy -7.127472 -1.045099) (xy -6.878908 -1.045099) (xy -6.878908 -0.445135) 99 | (xy -6.855524 -0.3485) (xy -6.785503 -0.315944) (xy -6.673882 -0.315944) (xy -6.673882 -0.235329) 100 | (xy -6.794805 -0.235329) (xy -6.927742 -0.290106) (xy -6.97438 -0.445135) (xy -6.97438 -0.970685) 101 | (xy -7.127472 -0.970685) (xy -7.127472 -1.045099) (xy -8.000028 -1.297796) (xy -6.28928 -1.039414) 102 | (xy -6.193808 -1.039414) (xy -6.193808 -0.919008) (xy -6.28928 -0.919008) (xy -6.28928 -1.039414) 103 | (xy -8.000028 -1.297796) (xy -5.191027 -1.039414) (xy -5.095554 -1.039414) (xy -5.095554 -0.727289) 104 | (xy -5.026566 -0.80222) (xy -4.923213 -0.828058) (xy -4.790922 -0.769663) (xy -4.746738 -0.593963) 105 | (xy -4.746738 -0.235329) (xy -4.842727 -0.235329) (xy -4.842727 -0.593963) (xy -4.870245 -0.708685) 106 | (xy -4.956416 -0.745375) (xy -5.059768 -0.697833) (xy -5.095554 -0.562441) (xy -5.095554 -0.235329) 107 | (xy -5.191027 -0.235329) (xy -5.191027 -1.039414) (xy -8.000028 -1.297796) (xy -3.092059 -1.039414) 108 | (xy -2.996587 -1.039414) (xy -2.996587 -0.919008) (xy -3.092059 -0.919008) (xy -3.092059 -1.039414) 109 | (xy -8.000028 -1.297796) (xy -2.289137 -1.039414) (xy -2.193664 -1.039414) (xy -2.193664 -0.235329) 110 | (xy -2.289137 -0.235329) (xy -2.289137 -0.308193) (xy -2.352957 -0.242564) (xy -2.444424 -0.220343) 111 | (xy -2.610435 -0.301475) (xy -2.670638 -0.526267) (xy -2.609918 -0.747442) (xy -2.444424 -0.828058) 112 | (xy -2.351923 -0.80532) (xy -2.289137 -0.740208) (xy -2.289137 -1.039414) (xy -8.000028 -1.297796) 113 | (xy -0.844522 -0.985283) (xy -0.844522 -0.735299) (xy -1.09554 -0.735299) (xy -1.09554 -0.985283) 114 | (xy -0.844522 -0.985283) (xy -8.000028 -1.297796) (xy -4.334102 -0.978436) (xy -4.334102 -0.814105) 115 | (xy -4.11719 -0.814105) (xy -4.11719 -0.740208) (xy -4.334102 -0.740208) (xy -4.334102 -0.426015) 116 | (xy -4.309685 -0.336615) (xy -4.224677 -0.311293) (xy -4.11719 -0.311293) (xy -4.11719 -0.235329) 117 | (xy -4.233979 -0.235329) (xy -4.38552 -0.278221) (xy -4.429574 -0.426015) (xy -4.429574 -0.740208) 118 | (xy -4.584862 -0.740208) (xy -4.584862 -0.814105) (xy -4.429574 -0.814105) (xy -4.429574 -0.978436) 119 | (xy -4.334102 -0.978436) (xy -8.000028 -1.297796) (xy -3.402764 -0.914745) (xy -3.402764 -0.820694) 120 | (xy -3.84253 -0.655846) (xy -3.795246 -0.637243) (xy -3.402764 -0.491515) (xy -3.402764 -0.48273) 121 | (xy -3.402764 -0.396947) (xy -3.951438 -0.18094) (xy -3.951438 -0.275507) (xy -3.51038 -0.439322) 122 | (xy -3.513351 -0.440484) (xy -3.951438 -0.604686) (xy -3.951438 -0.612955) (xy -3.951438 -0.698737) 123 | (xy -3.402764 -0.914745) (xy -8.000028 -1.297796) (xy -7.255758 -0.825991) (xy -7.255758 -0.73194) 124 | (xy -7.696817 -0.566575) (xy -7.255758 -0.402761) (xy -7.255758 -0.308193) (xy -7.804304 -0.5242) 125 | (xy -7.804304 -0.609983) (xy -7.255758 -0.825991) (xy -8.000028 -1.297796) (xy -8.000028 0.202241) 126 | (xy -5.634281 -0.007953) (xy -5.716834 -0.015187) (xy -5.803005 -0.036375) (xy -5.803005 -0.130426) 127 | (xy -5.710633 -0.095286) (xy -5.634281 -0.083917) (xy -5.521627 -0.125775) (xy -5.486357 -0.258583) 128 | (xy -5.486357 -0.262718) (xy -5.486357 -0.327313) (xy -5.548627 -0.254966) (xy -5.644616 -0.231195) 129 | (xy -5.807139 -0.312327) (xy -5.867859 -0.529368) (xy -5.807139 -0.746926) (xy -5.644616 -0.828058) 130 | (xy -5.549661 -0.805837) (xy -5.486357 -0.737107) (xy -5.486357 -0.812038) (xy -5.390885 -0.812038) 131 | (xy -5.390885 -0.272536) (xy -5.452638 -0.075132) (xy -5.634281 -0.007953) (xy -8.000028 0.202241) 132 | (xy -1.743175 -0.220343) (xy -1.954919 -0.300958) (xy -2.031271 -0.5242) (xy -1.956469 -0.745375) 133 | (xy -1.757128 -0.828058) (xy -1.582332 -0.753127) (xy -1.517866 -0.548488) (xy -1.517866 -0.501979) 134 | (xy -1.931536 -0.501979) (xy -1.931536 -0.498879) (xy -1.882314 -0.352635) (xy -1.742141 -0.300958) 135 | (xy -1.646669 -0.315428) (xy -1.540216 -0.359352) (xy -1.540216 -0.264785) (xy -1.645636 -0.231712) 136 | (xy -1.743175 -0.220343) (xy -8.000028 0.202241) (xy -6.004284 -0.235329) (xy -6.478674 -0.235329) 137 | (xy -6.478674 -0.309226) (xy -6.28928 -0.309226) (xy -6.28928 -0.740208) (xy -6.438237 -0.740208) 138 | (xy -6.438237 -0.814105) (xy -6.193808 -0.814105) (xy -6.193808 -0.309226) (xy -6.004284 -0.309226) 139 | (xy -6.004284 -0.235329) (xy -8.000028 0.202241) (xy -2.807193 -0.235329) (xy -3.281582 -0.235329) 140 | (xy -3.281582 -0.309226) (xy -3.092059 -0.309226) (xy -3.092059 -0.740208) (xy -3.241016 -0.740208) 141 | (xy -3.241016 -0.814105) (xy -2.996587 -0.814105) (xy -2.996587 -0.309226) (xy -2.807193 -0.309226) 142 | (xy -2.807193 -0.235329) (xy -8.000028 0.202241) (xy 8.000028 0.202241) (xy 8.000028 -1.297796) 143 | (xy -8.000028 -1.297796)) (layer F.SilkS) (width 0)) 144 | ) 145 | -------------------------------------------------------------------------------- /ice4pi.pretty/lsi-logo-48mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module lsi-logo-48mm (layer F.Cu) (tedit 61FD2763) 2 | (descr "Imported from /home/vladimir/lsi/logo-kicad-3-with-holes.svg") 3 | (tags svg2mod) 4 | (attr smd) 5 | (fp_text reference svg2mod (at 0 -6.94139) (layer F.SilkS) hide 6 | (effects (font (size 1.524 1.524) (thickness 0.3048))) 7 | ) 8 | (fp_text value G*** (at 0 6.94139) (layer F.SilkS) hide 9 | (effects (font (size 1.524 1.524) (thickness 0.3048))) 10 | ) 11 | (fp_poly (pts (xy -24.000085 -3.893389) (xy -1.780123 -3.503491) (xy 23.6098 -3.503491) (xy 23.6098 0.216437) 12 | (xy -4.040062 0.216437) (xy -4.040062 -1.643527) (xy -1.780123 -1.643527) (xy -1.780123 -3.503491) 13 | (xy -24.000085 -3.893389) (xy -21.382415 -3.135296) (xy -20.636724 -3.135296) (xy -20.636724 -1.335406) 14 | (xy -20.566573 -1.045501) (xy -20.356509 -0.947833) (xy -20.021645 -0.947833) (xy -20.021645 -0.705987) 15 | (xy -20.384414 -0.705987) (xy -20.783227 -0.870318) (xy -20.923141 -1.335406) (xy -20.923141 -2.912054) 16 | (xy -21.382415 -2.912054) (xy -21.382415 -3.135296) (xy -24.000085 -3.893389) (xy -18.86784 -3.118243) 17 | (xy -18.581423 -3.118243) (xy -18.581423 -2.757025) (xy -18.86784 -2.757025) (xy -18.86784 -3.118243) 18 | (xy -24.000085 -3.893389) (xy -15.57308 -3.118243) (xy -15.286663 -3.118243) (xy -15.286663 -2.181866) 19 | (xy -15.079699 -2.406659) (xy -14.76964 -2.484173) (xy -14.372765 -2.30899) (xy -14.240215 -1.78189) 20 | (xy -14.240215 -0.705987) (xy -14.528182 -0.705987) (xy -14.528182 -1.78189) (xy -14.610735 -2.126056) 21 | (xy -14.869247 -2.236126) (xy -15.179305 -2.093499) (xy -15.286663 -1.687323) (xy -15.286663 -0.705987) 22 | (xy -15.57308 -0.705987) (xy -15.57308 -3.118243) (xy -24.000085 -3.893389) (xy -9.276177 -3.118243) 23 | (xy -8.989761 -3.118243) (xy -8.989761 -2.757025) (xy -9.276177 -2.757025) (xy -9.276177 -3.118243) 24 | (xy -24.000085 -3.893389) (xy -6.86741 -3.118243) (xy -6.580993 -3.118243) (xy -6.580993 -0.705987) 25 | (xy -6.86741 -0.705987) (xy -6.86741 -0.924578) (xy -7.058871 -0.727691) (xy -7.333273 -0.661029) 26 | (xy -7.831304 -0.904425) (xy -8.011913 -1.578802) (xy -7.829754 -2.242327) (xy -7.333273 -2.484173) 27 | (xy -7.05577 -2.41596) (xy -6.86741 -2.220623) (xy -6.86741 -3.118243) (xy -24.000085 -3.893389) 28 | (xy -2.533567 -2.95585) (xy -2.533567 -2.205896) (xy -3.286621 -2.205896) (xy -3.286621 -2.95585) 29 | (xy -2.533567 -2.95585) (xy -24.000085 -3.893389) (xy -13.002306 -2.935308) (xy -13.002306 -2.442315) 30 | (xy -12.351571 -2.442315) (xy -12.351571 -2.220623) (xy -13.002306 -2.220623) (xy -13.002306 -1.278045) 31 | (xy -12.929055 -1.009845) (xy -12.674032 -0.93388) (xy -12.351571 -0.93388) (xy -12.351571 -0.705987) 32 | (xy -12.701937 -0.705987) (xy -13.156561 -0.834662) (xy -13.288723 -1.278045) (xy -13.288723 -2.220623) 33 | (xy -13.754586 -2.220623) (xy -13.754586 -2.442315) (xy -13.288723 -2.442315) (xy -13.288723 -2.935308) 34 | (xy -13.002306 -2.935308) (xy -24.000085 -3.893389) (xy -10.208291 -2.744235) (xy -10.208291 -2.462082) 35 | (xy -11.52759 -1.967538) (xy -11.385738 -1.911728) (xy -10.208291 -1.474545) (xy -10.208291 -1.44819) 36 | (xy -10.208291 -1.190841) (xy -11.854315 -0.542819) (xy -11.854315 -0.826522) (xy -10.531139 -1.317965) 37 | (xy -10.540054 -1.321453) (xy -11.854315 -1.814059) (xy -11.854315 -1.838864) (xy -11.854315 -2.096212) 38 | (xy -10.208291 -2.744235) (xy -24.000085 -3.893389) (xy -21.767275 -2.477972) (xy -21.767275 -2.195819) 39 | (xy -23.09045 -1.699725) (xy -21.767275 -1.208282) (xy -21.767275 -0.924578) (xy -23.412911 -1.572601) 40 | (xy -23.412911 -1.829949) (xy -21.767275 -2.477972) (xy -24.000085 -3.893389) (xy -24.000085 0.606723) 41 | (xy -16.902843 -0.023858) (xy -17.150503 -0.045562) (xy -17.409014 -0.109124) (xy -17.409014 -0.391278) 42 | (xy -17.131899 -0.285858) (xy -16.902843 -0.251751) (xy -16.56488 -0.377325) (xy -16.459072 -0.77575) 43 | (xy -16.459072 -0.788153) (xy -16.459072 -0.981939) (xy -16.645882 -0.764898) (xy -16.933849 -0.693585) 44 | (xy -17.421416 -0.936981) (xy -17.603576 -1.588104) (xy -17.421416 -2.240777) (xy -16.933849 -2.484173) 45 | (xy -16.648983 -2.417511) (xy -16.459072 -2.211322) (xy -16.459072 -2.436114) (xy -16.172656 -2.436114) 46 | (xy -16.172656 -0.817608) (xy -16.357915 -0.225396) (xy -16.902843 -0.023858) (xy -24.000085 0.606723) 47 | (xy -5.229525 -0.661029) (xy -5.864758 -0.902874) (xy -6.093813 -1.572601) (xy -5.869408 -2.236126) 48 | (xy -5.271383 -2.484173) (xy -4.746996 -2.259381) (xy -4.553597 -1.645465) (xy -4.553597 -1.505938) 49 | (xy -5.794607 -1.505938) (xy -5.794607 -1.496637) (xy -5.646942 -1.057904) (xy -5.226424 -0.902874) 50 | (xy -4.940008 -0.946283) (xy -4.620648 -1.078057) (xy -4.620648 -0.794354) (xy -4.936907 -0.695135) 51 | (xy -5.229525 -0.661029) (xy -24.000085 0.606723) (xy -18.012853 -0.705987) (xy -19.436022 -0.705987) 52 | (xy -19.436022 -0.927679) (xy -18.86784 -0.927679) (xy -18.86784 -2.220623) (xy -19.314712 -2.220623) 53 | (xy -19.314712 -2.442315) (xy -18.581423 -2.442315) (xy -18.581423 -0.927679) (xy -18.012853 -0.927679) 54 | (xy -18.012853 -0.705987) (xy -24.000085 0.606723) (xy -8.421578 -0.705987) (xy -9.844747 -0.705987) 55 | (xy -9.844747 -0.927679) (xy -9.276177 -0.927679) (xy -9.276177 -2.220623) (xy -9.723049 -2.220623) 56 | (xy -9.723049 -2.442315) (xy -8.989761 -2.442315) (xy -8.989761 -0.927679) (xy -8.421578 -0.927679) 57 | (xy -8.421578 -0.705987) (xy -24.000085 0.606723) (xy 24.000085 0.606723) (xy 24.000085 -3.893389) 58 | (xy -24.000085 -3.893389)) (layer F.SilkS) (width 0)) 59 | (fp_poly (pts (xy -0.558105 -3.118243) (xy -0.558105 -2.757025) (xy -0.271689 -2.757025) (xy -0.271689 -3.118243) 60 | (xy -0.558105 -3.118243)) (layer F.SilkS) (width 0)) 61 | (fp_poly (pts (xy 5.021012 -2.935308) (xy 5.021012 -2.442315) (xy 4.555149 -2.442315) (xy 4.555149 -2.220623) 62 | (xy 5.021012 -2.220623) (xy 5.021012 -1.278045) (xy 5.153174 -0.834662) (xy 5.607798 -0.705987) 63 | (xy 5.958163 -0.705987) (xy 5.958163 -0.93388) (xy 5.636091 -0.93388) (xy 5.38068 -1.009845) 64 | (xy 5.307429 -1.278045) (xy 5.307429 -2.220623) (xy 5.958163 -2.220623) (xy 5.958163 -2.442315) 65 | (xy 5.307429 -2.442315) (xy 5.307429 -2.935308) (xy 5.021012 -2.935308)) (layer F.SilkS) (width 0)) 66 | (fp_poly (pts (xy 16.530774 -2.935308) (xy 16.530774 -2.442315) (xy 16.065299 -2.442315) (xy 16.065299 -2.220623) 67 | (xy 16.530774 -2.220623) (xy 16.530774 -1.278045) (xy 16.662938 -0.834662) (xy 17.11756 -0.705987) 68 | (xy 17.467927 -0.705987) (xy 17.467927 -0.93388) (xy 17.145853 -0.93388) (xy 16.890442 -1.009845) 69 | (xy 16.817191 -1.278045) (xy 16.817191 -2.220623) (xy 17.467927 -2.220623) (xy 17.467927 -2.442315) 70 | (xy 16.817191 -2.442315) (xy 16.817191 -2.935308) (xy 16.530774 -2.935308)) (layer F.SilkS) (width 0)) 71 | (fp_poly (pts (xy 1.621608 -2.484173) (xy 1.311936 -2.406659) (xy 1.104972 -2.181866) (xy 1.104972 -2.442315) 72 | (xy 0.818168 -2.442315) (xy 0.818168 -0.705987) (xy 1.104972 -0.705987) (xy 1.104972 -1.687323) 73 | (xy 1.21233 -2.093499) (xy 1.522 -2.236126) (xy 1.780512 -2.126056) (xy 1.863064 -1.78189) 74 | (xy 1.863064 -0.705987) (xy 2.151033 -0.705987) (xy 2.151033 -1.78189) (xy 2.018869 -2.30899) 75 | (xy 1.621608 -2.484173)) (layer F.SilkS) (width 0)) 76 | (fp_poly (pts (xy 3.424986 -2.484173) (xy 2.940518 -2.347747) (xy 2.770761 -1.963275) (xy 2.884708 -1.651666) 77 | (xy 3.245926 -1.490435) (xy 3.353284 -1.468731) (xy 3.365687 -1.46563) (xy 3.747058 -1.191228) 78 | (xy 3.642801 -0.975737) (xy 3.348633 -0.899773) (xy 3.071519 -0.940081) (xy 2.76456 -1.064104) 79 | (xy 2.76456 -0.769548) (xy 3.071519 -0.688933) (xy 3.342432 -0.661028) (xy 3.853253 -0.805205) 80 | (xy 4.036963 -1.208281) (xy 3.926118 -1.522991) (xy 3.604044 -1.684221) (xy 3.488547 -1.705925) 81 | (xy 3.131981 -1.817546) (xy 3.060666 -1.991179) (xy 3.155623 -2.181865) (xy 3.446689 -2.245427) 82 | (xy 3.70055 -2.20977) (xy 3.94821 -2.1028) (xy 3.94821 -2.381853) (xy 3.694349 -2.457817) 83 | (xy 3.424986 -2.484172) (xy 3.424986 -2.484173)) (layer F.SilkS) (width 0)) 84 | (fp_poly (pts (xy 7.694491 -2.484173) (xy 7.341025 -2.384954) (xy 7.121271 -2.102801) (xy 7.121271 -2.442315) 85 | (xy 6.833304 -2.442315) (xy 6.833304 -0.705987) (xy 7.121271 -0.705987) (xy 7.121271 -1.5695) 86 | (xy 7.263124 -2.053192) (xy 7.672401 -2.220623) (xy 7.881302 -2.188067) (xy 8.068114 -2.084198) 87 | (xy 8.068114 -2.375653) (xy 7.892155 -2.457818) (xy 7.694491 -2.484173)) (layer F.SilkS) (width 0)) 88 | (fp_poly (pts (xy 10.839648 -2.484173) (xy 10.66369 -2.434564) (xy 10.53618 -2.293487) (xy 10.53618 -2.442315) 89 | (xy 10.276118 -2.442315) (xy 10.276118 -0.705987) (xy 10.53618 -0.705987) (xy 10.53618 -1.699725) 90 | (xy 10.579588 -2.14931) (xy 10.738493 -2.245428) (xy 10.897398 -2.158612) (xy 10.942356 -1.699725) 91 | (xy 10.942356 -0.705987) (xy 11.203968 -0.705987) (xy 11.203968 -1.699725) (xy 11.249315 -2.14931) 92 | (xy 11.420233 -2.245428) (xy 11.569837 -2.155511) (xy 11.612082 -1.699725) (xy 11.612082 -0.705987) 93 | (xy 11.873694 -0.705987) (xy 11.873694 -1.712127) (xy 11.786491 -2.321392) (xy 11.490384 -2.484173) 94 | (xy 11.292723 -2.429913) (xy 11.15901 -2.265582) (xy 11.03576 -2.429913) (xy 10.839648 -2.484173)) (layer F.SilkS) (width 0)) 95 | (fp_poly (pts (xy 13.038352 -2.484173) (xy 13.025572 -2.242327) (xy 13.349583 -2.110552) (xy 13.469344 -1.72918) 96 | (xy 12.52599 -1.727632) (xy 12.684895 -2.105903) (xy 13.025572 -2.242329) (xy 13.025572 -2.242327) 97 | (xy 13.038352 -2.484173) (xy 12.440327 -2.236126) (xy 12.215922 -1.572601) (xy 12.444978 -0.902874) 98 | (xy 13.08021 -0.661029) (xy 13.372828 -0.695135) (xy 13.689088 -0.794354) (xy 13.689088 -1.078057) 99 | (xy 13.369726 -0.946283) (xy 13.08331 -0.902874) (xy 12.662793 -1.057904) (xy 12.515128 -1.496637) 100 | (xy 12.515128 -1.505937) (xy 13.756138 -1.505937) (xy 13.756138 -1.645464) (xy 13.563126 -2.25938) 101 | (xy 13.038352 -2.484172) (xy 13.038352 -2.484173)) (layer F.SilkS) (width 0)) 102 | (fp_poly (pts (xy 15.049857 -2.484173) (xy 14.740185 -2.406659) (xy 14.532834 -2.181866) (xy 14.532834 -2.442315) 103 | (xy 14.246417 -2.442315) (xy 14.246417 -0.705987) (xy 14.532834 -0.705987) (xy 14.532834 -1.687323) 104 | (xy 14.64058 -2.093499) (xy 14.950251 -2.236126) (xy 15.208762 -2.126056) (xy 15.291316 -1.78189) 105 | (xy 15.291316 -0.705987) (xy 15.579282 -0.705987) (xy 15.579282 -1.78189) (xy 15.447119 -2.30899) 106 | (xy 15.049857 -2.484173)) (layer F.SilkS) (width 0)) 107 | (fp_poly (pts (xy 18.771336 -2.484173) (xy 18.287256 -2.347747) (xy 18.117498 -1.963275) (xy 18.231058 -1.651666) 108 | (xy 18.592276 -1.490435) (xy 18.699635 -1.468731) (xy 18.712037 -1.46563) (xy 19.093797 -1.191228) 109 | (xy 18.989151 -0.975737) (xy 18.694983 -0.899773) (xy 18.417869 -0.940081) (xy 18.111297 -1.064104) 110 | (xy 18.111297 -0.769548) (xy 18.417869 -0.688933) (xy 18.688782 -0.661028) (xy 19.199604 -0.805205) 111 | (xy 19.383313 -1.208281) (xy 19.272855 -1.522991) (xy 18.950394 -1.684221) (xy 18.835285 -1.705925) 112 | (xy 18.478718 -1.817546) (xy 18.407017 -1.991179) (xy 18.501971 -2.181865) (xy 18.793039 -2.245427) 113 | (xy 19.0469 -2.20977) (xy 19.294558 -2.1028) (xy 19.294558 -2.381853) (xy 19.040699 -2.457817) 114 | (xy 18.771336 -2.484172) (xy 18.771336 -2.484173)) (layer F.SilkS) (width 0)) 115 | (fp_poly (pts (xy 21.752937 -2.477972) (xy 21.752937 -2.195819) (xy 23.076499 -1.699725) (xy 21.752937 -1.208282) 116 | (xy 21.752937 -0.924578) (xy 23.39896 -1.572601) (xy 23.39896 -1.829949) (xy 21.752937 -2.477972)) (layer F.SilkS) (width 0)) 117 | (fp_poly (pts (xy -1.004977 -2.442315) (xy -1.004977 -2.220623) (xy -0.558105 -2.220623) (xy -0.558105 -0.927679) 118 | (xy -1.126287 -0.927679) (xy -1.126287 -0.705987) (xy 0.296882 -0.705987) (xy 0.296882 -0.927679) 119 | (xy -0.271689 -0.927679) (xy -0.271689 -2.442315) (xy -1.004977 -2.442315)) (layer F.SilkS) (width 0)) 120 | (fp_poly (pts (xy 8.49173 -2.439215) (xy 8.49173 -1.363311) (xy 8.622342 -0.834662) (xy 9.021155 -0.661029) 121 | (xy 9.327725 -0.738543) (xy 9.536239 -0.966436) (xy 9.536239 -0.705987) (xy 9.824595 -0.705987) 122 | (xy 9.824595 -2.439215) (xy 9.536239 -2.439215) (xy 9.536239 -1.457879) (xy 9.428883 -1.050152) 123 | (xy 9.119211 -0.909076) (xy 8.860701 -1.019146) (xy 8.778147 -1.363311) (xy 8.778147 -2.439215) 124 | (xy 8.49173 -2.439215)) (layer F.SilkS) (width 0)) 125 | (fp_poly (pts (xy -3.286621 -1.080771) (xy -3.286621 -0.330816) (xy -2.533567 -0.330816) (xy -2.533567 -1.080771) 126 | (xy -3.286621 -1.080771)) (layer F.SilkS) (width 0)) 127 | (fp_poly (pts (xy 20.891231 -3.427626) (xy 20.787102 -3.112837) (xy 20.468692 -2.147041) (xy 20.387204 -1.899562) 128 | (xy 20.241128 -1.454389) (xy 20.238653 -1.445632) (xy 20.353347 -1.443142) (xy 20.467428 -1.43814) 129 | (xy 20.118837 -0.157554) (xy 20.055155 0.07786) (xy 20.014415 0.22786) (xy 20.015315 0.23161) 130 | (xy 20.05727 0.137094) (xy 20.147514 -0.07478) (xy 20.245306 -0.304155) (xy 20.341883 -0.530517) 131 | (xy 20.477699 -0.84892) (xy 20.613212 -1.166735) (xy 20.710391 -1.394597) (xy 20.782526 -1.563612) 132 | (xy 20.806068 -1.618497) (xy 20.673574 -1.618497) (xy 20.541079 -1.619749) (xy 20.548954 -1.659881) 133 | (xy 20.586371 -1.845799) (xy 20.643716 -2.129496) (xy 20.698031 -2.398115) (xy 20.779518 -2.801031) 134 | (xy 20.861006 -3.203948) (xy 20.905976 -3.426984) (xy 20.923181 -3.518375) (xy 20.891186 -3.426608) 135 | (xy 20.891231 -3.427626)) (layer F.SilkS) (width 0.000106)) 136 | (fp_poly (pts (xy -16.915407 -2.252566) (xy -17.23593 -2.085134) (xy -17.346389 -1.598342) (xy -17.23593 -1.108449) 137 | (xy -16.912307 -0.941018) (xy -16.61 -1.11) (xy -16.504192 -1.598342) (xy -16.61 -2.085134) 138 | (xy -16.915407 -2.252566)) (layer F.SilkS) (width 0)) 139 | (fp_poly (pts (xy -7.334321 -2.268921) (xy -7.647481 -2.099939) (xy -7.753288 -1.599195) (xy -7.647481 -1.09845) 140 | (xy -7.334321 -0.929468) (xy -7.02 -1.1) (xy -6.910704 -1.599195) (xy -7.02 -2.098389) 141 | (xy -7.334321 -2.268921)) (layer F.SilkS) (width 0)) 142 | (fp_poly (pts (xy -5.283772 -2.253152) (xy -5.624449 -2.116727) (xy -5.783353 -1.738455) (xy -4.84 -1.74) 143 | (xy -4.95976 -2.121375) (xy -5.283772 -2.253149) (xy -5.283772 -2.253152)) (layer F.SilkS) (width 0)) 144 | ) 145 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright: 2019 Lightside Instruments AS 2 | License: TAPR Open Hardware License 3 | 4 | The TAPR Open Hardware License 5 | Version 1.0 (May 25, 2007) 6 | Copyright 2007 TAPR - http://www.tapr.org/OHL 7 | 8 | PREAMBLE 9 | 10 | Open Hardware is a thing - a physical artifact, either electrical or 11 | mechanical - whose design information is available to, and usable by, 12 | the public in a way that allows anyone to make, modify, distribute, and 13 | use that thing. In this preface, design information is called 14 | "documentation" and things created from it are called "products." 15 | 16 | The TAPR Open Hardware License ("OHL") agreement provides a legal 17 | framework for Open Hardware projects. It may be used for any kind of 18 | product, be it a hammer or a computer motherboard, and is TAPR's 19 | contribution to the community; anyone may use the OHL for their Open 20 | Hardware project. 21 | 22 | Like the GNU General Public License, the OHL is designed to guarantee 23 | your freedom to share and to create. It forbids anyone who receives 24 | rights under the OHL to deny any other licensee those same rights to 25 | copy, modify, and distribute documentation, and to make, use and 26 | distribute products based on that documentation. 27 | 28 | Unlike the GPL, the OHL is not primarily a copyright license. While 29 | copyright protects documentation from unauthorized copying, modification, 30 | and distribution, it has little to do with your right to make, distribute, 31 | or use a product based on that documentation. For better or worse, patents 32 | play a significant role in those activities. Although it does not prohibit 33 | anyone from patenting inventions embodied in an Open Hardware design, and 34 | of course cannot prevent a third party from enforcing their patent rights, 35 | those who benefit from an OHL design may not bring lawsuits claiming that 36 | design infringes their patents or other intellectual property. 37 | 38 | The OHL addresses unique issues involved in the creation of tangible, 39 | physical things, but does not cover software, firmware, or code loaded 40 | into programmable devices. A copyright-oriented license such as the GPL 41 | better suits these creations. 42 | 43 | How can you use the OHL, or a design based upon it? While the terms and 44 | conditions below take precedence over this preamble, here is a summary: 45 | 46 | * You may modify the documentation and make products based upon it. 47 | 48 | * You may use products for any legal purpose without limitation. 49 | 50 | * You may distribute unmodified documentation, but you must include the 51 | complete package as you received it. 52 | 53 | * You may distribute products you make to third parties, if you either 54 | include the documentation on which the product is based, or make it 55 | available without charge for at least three years to anyone who requests 56 | it. 57 | 58 | * You may distribute modified documentation or products based on it, if 59 | you: 60 | * License your modifications under the OHL. 61 | * Include those modifications, following the requirements stated 62 | below. 63 | * Attempt to send the modified documentation by email to any of the 64 | developers who have provided their email address. This is a good 65 | faith obligation - if the email fails, you need do nothing more 66 | and may go on with your distribution. 67 | 68 | * If you create a design that you want to license under the OHL, you 69 | should: 70 | * Include this document in a file named LICENSE (with the appropriate 71 | extension) that is included in the documentation package. 72 | * If the file format allows, include a notice like "Licensed under 73 | the TAPR Open Hardware License (www.tapr.org/OHL)" in each 74 | documentation file. While not required, you should also include 75 | this notice on printed circuit board artwork and the product 76 | itself; if space is limited the notice can be shortened or 77 | abbreviated. 78 | * Include a copyright notice in each file and on printed circuit 79 | board artwork. 80 | * If you wish to be notified of modifications that others may make, 81 | include your email address in a file named "CONTRIB.TXT" or 82 | something similar. 83 | 84 | * Any time the OHL requires you to make documentation available to 85 | others, you must include all the materials you received from the 86 | upstream licensors. In addition, if you have modified the 87 | documentation: 88 | * You must identify the modifications in a text file (preferably 89 | named "CHANGES.TXT") that you include with the documentation. 90 | That file must also include a statement like "These modifications 91 | are licensed under the TAPR Open Hardware License." 92 | * You must include any new files you created, including any 93 | manufacturing files (such as Gerber files) you create in the 94 | course of making products. 95 | * You must include both "before" and "after" versions of all files 96 | you modified. 97 | * You may include files in proprietary formats, but you must also 98 | include open format versions (such as Gerber, ASCII, Postscript, 99 | or PDF) if your tools can create them. 100 | 101 | TERMS AND CONDITIONS 102 | 103 | 1. Introduction 104 | 1.1 This Agreement governs how you may use, copy, modify, and 105 | distribute Documentation, and how you may make, have made, and 106 | distribute Products based on that Documentation. As used in this 107 | Agreement, to "distribute" Documentation means to directly or indirectly 108 | make copies available to a third party, and to "distribute" Products 109 | means to directly or indirectly give, loan, sell or otherwise transfer 110 | them to a third party. 111 | 112 | 1.2 "Documentation" includes: 113 | (a) schematic diagrams; 114 | (b) circuit or circuit board layouts, including Gerber and other 115 | data files used for manufacture; 116 | (c) mechanical drawings, including CAD, CAM, and other data files 117 | used for manufacture; 118 | (d) flow charts and descriptive text; and 119 | (e) other explanatory material. 120 | Documentation may be in any tangible or intangible form of expression, 121 | including but not limited to computer files in open or proprietary 122 | formats and representations on paper, film, or other media. 123 | 124 | 1.3 "Products" include: 125 | (a) circuit boards, mechanical assemblies, and other physical parts 126 | and components; 127 | (b) assembled or partially assembled units (including components 128 | and subassemblies); and 129 | (c) parts and components combined into kits intended for assembly 130 | by others; 131 | which are based in whole or in part on the Documentation. 132 | 133 | 1.4 This Agreement applies to any Documentation which contains a 134 | notice stating it is subject to the TAPR Open Hardware License, and to 135 | all Products based in whole or in part on that Documentation. If 136 | Documentation is distributed in an archive (such as a "zip" file) which 137 | includes this document, all files in that archive are subject to this 138 | Agreement unless they are specifically excluded. Each person who 139 | contributes content to the Documentation is referred to in this 140 | Agreement as a "Licensor." 141 | 142 | 1.5 By (a) using, copying, modifying, or distributing the 143 | Documentation, or (b) making or having Products made or distributing 144 | them, you accept this Agreement, agree to comply with its terms, and 145 | become a "Licensee." Any activity inconsistent with this Agreement will 146 | automatically terminate your rights under it (including the immunities 147 | from suit granted in Section 2), but the rights of others who have 148 | received Documentation, or have obtained Products, directly or 149 | indirectly from you will not be affected so long as they fully comply 150 | with it themselves. 151 | 152 | 1.6 This Agreement does not apply to software, firmware, or code 153 | loaded into programmable devices which may be used in conjunction with 154 | Documentation or Products. Such software is subject to the license 155 | terms established by its copyright holder(s). 156 | 157 | 2. Patents 158 | 2.1 Each Licensor grants you, every other Licensee, and every 159 | possessor or user of Products a perpetual, worldwide, and royalty-free 160 | immunity from suit under any patent, patent application, or other 161 | intellectual property right which he or she controls, to the extent 162 | necessary to make, have made, possess, use, and distribute Products. 163 | This immunity does not extend to infringement arising from modifications 164 | subsequently made by others. 165 | 166 | 2.2 If you make or have Products made, or distribute Documentation 167 | that you have modified, you grant every Licensor, every other Licensee, 168 | and every possessor or user of Products a perpetual, worldwide, and 169 | royalty-free immunity from suit under any patent, patent application, or 170 | other intellectual property right which you control, to the extent 171 | necessary to make, have made, possess, use, and distribute Products. 172 | This immunity does not extend to infringement arising from modifications 173 | subsequently made by others. 174 | 175 | 2.3 To avoid doubt, providing Documentation to a third party for the 176 | sole purpose of having that party make Products on your behalf is not 177 | considered "distribution,"\" and a third party's act of making Products 178 | solely on your behalf does not cause that party to grant the immunity 179 | described in the preceding paragraph. 180 | 181 | 2.4 These grants of immunity are a material part of this Agreement, 182 | and form a portion of the consideration given by each party to the 183 | other. If any court judgment or legal agreement prevents you from 184 | granting the immunity required by this Section, your rights under this 185 | Agreement will terminate and you may no longer use, copy, modify or 186 | distribute the Documentation, or make, have made, or distribute 187 | Products. 188 | 189 | 3. Modifications 190 | You may modify the Documentation, and those modifications will become 191 | part of the Documentation. They are subject to this Agreement, as are 192 | Products based in whole or in part on them. If you distribute the 193 | modified Documentation, or Products based in whole or in part upon it, 194 | you must email the modified Documentation in a form compliant with 195 | Section 4 to each Licensor who has provided an email address with the 196 | Documentation. Attempting to send the email completes your obligations 197 | under this Section and you need take no further action if any address 198 | fails. 199 | 200 | 4. Distributing Documentation 201 | 4.1 You may distribute unmodified copies of the Documentation in its 202 | entirety in any medium, provided that you retain all copyright and other 203 | notices (including references to this Agreement) included by each 204 | Licensor, and include an unaltered copy of this Agreement. 205 | 4.2 You may distribute modified copies of the Documentation if you 206 | comply with all the requirements of the preceding paragraph and: 207 | (a) include a prominent notice in an ASCII or other open format 208 | file identifying those elements of the Documentation that you 209 | changed, and stating that the modifications are licensed under 210 | the terms of this Agreement; 211 | (b) include all new documentation files that you create, as well as 212 | both the original and modified versions of each file you change 213 | (files may be in your development tool's native file format, 214 | but if reasonably possible, you must also include open format, 215 | such as Gerber, ASCII, Postscript, or PDF, versions); 216 | (c) do not change the terms of this Agreement with respect to 217 | subsequent licensees; and 218 | (d) if you make or have Products made, include in the Documentation 219 | all elements reasonably required to permit others to make 220 | Products, including Gerber, CAD/CAM and other files used for 221 | manufacture. 222 | 223 | 5. Making Products 224 | 5.1 You may use the Documentation to make or have Products made, 225 | provided that each Product retains any notices included by the Licensor 226 | (including, but not limited to, copyright notices on circuit boards). 227 | 5.2 You may distribute Products you make or have made, provided that 228 | you include with each unit a copy of the Documentation in a form 229 | consistent with Section 4. Alternatively, you may include either (i) an 230 | offer valid for at least three years to provide that Documentation, at 231 | no charge other than the reasonable cost of media and postage, to any 232 | person who requests it; or (ii) a URL where that Documentation may be 233 | downloaded, available for at least three years after you last distribute 234 | the Product. 235 | 236 | 6. NEW LICENSE VERSIONS 237 | TAPR may publish updated versions of the OHL which retain the same 238 | general provisions as the present version, but differ in detail to 239 | address new problems or concerns, and carry a distinguishing version 240 | number. If the Documentation specifies a version number which applies 241 | to it and "any later version", you may choose either that version or any 242 | later version published by TAPR. If the Documentation does not specify 243 | a version number, you may choose any version ever published by TAPR. 244 | TAPR owns the copyright to the OHL, but grants permission to any person 245 | to copy, distribute, and use it in unmodified form. 246 | 247 | 7. WARRANTY AND LIABILITY LIMITATIONS 248 | 7.1 THE DOCUMENTATION IS PROVIDED ON AN"AS-IS" BASIS WITHOUT 249 | WARRANTY OF ANY KIND, TO THE EXTENT PERMITTED BY APPLICABLE LAW. ALL 250 | WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY 251 | WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND 252 | TITLE, ARE HEREBY EXPRESSLY DISCLAIMED. 253 | 7.2 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL ANY LICENSOR 254 | BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY DIRECT, INDIRECT, 255 | INCIDENTAL, CONSEQUENTIAL, PUNITIVE, OR EXEMPLARY DAMAGES ARISING OUT OF 256 | THE USE OF, OR INABILITY TO USE, THE DOCUMENTATION OR PRODUCTS, 257 | INCLUDING BUT NOT LIMITED TO CLAIMS OF INTELLECTUAL PROPERTY 258 | INFRINGEMENT OR LOSS OF DATA, EVEN IF THAT PARTY HAS BEEN ADVISED OF THE 259 | POSSIBILITY OF SUCH DAMAGES. 260 | 7.3 You agree that the foregoing limitations are reasonable due to 261 | the non-financial nature of the transaction represented by this 262 | Agreement, and acknowledge that were it not for these limitations, the 263 | Licensor(s) would not be willing to make the Documentation available to 264 | you. 265 | 7.4 You agree to defend, indemnify, and hold each Licensor harmless 266 | from any claim brought by a third party alleging any defect in the 267 | design, manufacture, or operation of any Product which you make, have 268 | made, or distribute pursuant to this Agreement. 269 | #### 270 | --------------------------------------------------------------------------------