├── __init__.py ├── kiauto ├── __init__.py └── interposer │ └── libinterposer.so ├── debian ├── compat ├── docs ├── source │ ├── format │ └── local-options ├── patches │ └── series ├── watch ├── rules ├── README.Debian └── control ├── tests ├── kicad8 │ ├── missing-project │ │ ├── fp-info-cache │ │ ├── missing-project.kicad_sch │ │ ├── missing-project.kicad_prl │ │ └── missing-project.kicad_pcb │ ├── good-project │ │ ├── 3D │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── good-project.kicad_prl │ │ └── good-project.kicad_sch │ ├── zone-refill │ │ ├── .gitignore │ │ ├── fp-lib-table │ │ ├── zone-refill-cache.lib │ │ └── zone-refill.kicad_prl │ ├── fail-project │ │ ├── .gitignore │ │ ├── fail.filter │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── fail-project.kicad_prl │ │ ├── fail-project-rescue.lib │ │ └── fail-project.kicad_sch │ └── warning-project │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── warning-project.kicad_prl │ │ ├── warning-project-rescue.lib │ │ └── warning-project.kicad_sch ├── kicad5 │ ├── fail-project │ │ ├── .gitignore │ │ ├── fail.filter │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── fail-project.sch │ │ ├── fail-project.pro │ │ ├── fail-project-rescue.lib │ │ ├── power.sch │ │ ├── logic.sch │ │ └── fail-project-cache.lib │ ├── warning-project │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── warning-project.sch │ │ ├── warning-project.pro │ │ ├── logic.sch │ │ ├── warning-project-rescue.lib │ │ ├── warning-project-cache.lib │ │ ├── power.sch │ │ └── warning-project.net │ ├── zone-refill │ │ ├── .gitignore │ │ ├── zone-refill.pro │ │ ├── zone-refill-cache.lib │ │ └── zone-refill.sch │ ├── good-project │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── good-project.sch │ │ ├── good-project-rescue.lib │ │ ├── logic.sch │ │ ├── good-project-cache.lib │ │ ├── power.sch │ │ └── good-project.net │ ├── inner_layer_net-tie │ │ ├── inner_layer_net-tie.sch │ │ ├── fp-lib-table │ │ ├── Carrier_NetTie.pretty │ │ │ └── Chassis-GND.kicad_mod │ │ └── inner_layer_net-tie.kicad_pcb │ ├── missing-lib │ │ ├── sym-lib-table │ │ ├── .gitignore │ │ ├── missing-lib.pro │ │ ├── missing-lib-cache.lib │ │ └── missing-lib.sch │ └── kicad4-project │ │ ├── .gitignore │ │ ├── kicad4-project.pro │ │ ├── kicad4-project-cache.lib │ │ └── kicad4-project.sch ├── kicad6 │ ├── good-project │ │ ├── 3D │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── good-project-rescue.lib │ │ ├── good-project.kicad_prl │ │ ├── good-project-cache.lib │ │ └── good-project.kicad_sch │ ├── zone-refill │ │ ├── .gitignore │ │ ├── zone-refill-cache.lib │ │ └── zone-refill.kicad_prl │ ├── fail-project │ │ ├── .gitignore │ │ ├── fail.filter │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── fail-project.kicad_prl │ │ ├── fail-project-rescue.lib │ │ └── fail-project-cache.lib │ ├── warning-project │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── warning-project-rescue.lib │ │ ├── warning-project.kicad_prl │ │ └── warning-project-cache.lib │ ├── missing-lib │ │ ├── sym-lib-table │ │ ├── .gitignore │ │ └── missing-lib.kicad_prl │ ├── missing-project │ │ ├── missing-project.kicad_sch │ │ ├── missing-project.kicad_prl │ │ └── missing-project.kicad_pcb │ ├── kicad4-project │ │ ├── .gitignore │ │ ├── kicad4-project.pro │ │ ├── kicad4-project-cache.lib │ │ └── kicad4-project.sch │ └── drawings │ │ └── drawings.kicad_pcb ├── kicad7 │ ├── good-project │ │ ├── 3D │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── good-project.kicad_prl │ │ └── good-project.kicad_sch │ ├── zone-refill │ │ ├── .gitignore │ │ ├── fp-lib-table │ │ ├── zone-refill.kicad_prl │ │ └── zone-refill-cache.lib │ ├── fail-project │ │ ├── .gitignore │ │ ├── fail.filter │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── fail-project.kicad_prl │ │ ├── fail-project.kicad_sch │ │ └── fail-project-rescue.lib │ ├── warning-project │ │ ├── .gitignore │ │ ├── sym-lib-table │ │ ├── fp-lib-table │ │ ├── warning-project.kicad_prl │ │ ├── warning-project.kicad_sch │ │ └── warning-project-rescue.lib │ └── missing-project │ │ ├── missing-project.kicad_sch │ │ ├── missing-project.kicad_prl │ │ └── missing-project.kicad_pcb ├── reference │ ├── 5 │ │ ├── zone-refill.pdf │ │ ├── drawings_real.png │ │ ├── good_3d_rt_1.png │ │ ├── good_3d_rt_2.png │ │ ├── good_sch_all.pdf │ │ ├── good_sch_top.pdf │ │ ├── drawings_layer.png │ │ ├── drawings_stackup.png │ │ ├── good_pcb_inners.pdf │ │ ├── good_pcb_sep_bn.pdf │ │ ├── good_sch_bw_top.pdf │ │ ├── good_pcb_with_dwg.pdf │ │ ├── good_pcb_sep_bn_fit.pdf │ │ └── good_pcb_layers.txt │ ├── 6 │ │ ├── good_sch_bw_top.pdf │ │ ├── zone-refill.pdf │ │ ├── drawings_real.png │ │ ├── good_3d_rt_1.png │ │ ├── good_3d_rt_2.png │ │ ├── good_sch_all.pdf │ │ ├── good_sch_top.pdf │ │ ├── drawings_layer.png │ │ ├── drawings_stackup.png │ │ ├── good_pcb_inners.pdf │ │ ├── good_pcb_sep_bn.pdf │ │ ├── good_pcb_with_dwg.pdf │ │ ├── good_pcb_sep_bn_fit.pdf │ │ └── good_pcb_layers.txt │ ├── 7 │ │ ├── good_pcb_layers.txt │ │ ├── zone-refill.pdf │ │ ├── drawings_real.png │ │ ├── good_3d_rt_1.png │ │ ├── good_3d_rt_2.png │ │ ├── good_sch_all.pdf │ │ ├── good_sch_top.pdf │ │ ├── drawings_layer.png │ │ ├── drawings_stackup.png │ │ ├── good_pcb_inners.pdf │ │ ├── good_pcb_sep_bn.pdf │ │ ├── good_sch_bw_top.pdf │ │ ├── good_pcb_with_dwg.pdf │ │ └── good_pcb_sep_bn_fit.pdf │ └── 8 │ │ ├── good_pcb_layers.txt │ │ ├── good_sch_bw_top.pdf │ │ ├── zone-refill.pdf │ │ ├── drawings_real.png │ │ ├── good_3d_rt_1.png │ │ ├── good_3d_rt_2.png │ │ ├── good_sch_all.pdf │ │ ├── good_sch_top.pdf │ │ ├── drawings_layer.png │ │ ├── drawings_stackup.png │ │ ├── good_pcb_inners.pdf │ │ ├── good_pcb_sep_bn.pdf │ │ ├── good_pcb_with_dwg.pdf │ │ └── good_pcb_sep_bn_fit.pdf ├── get_window_focus.pl ├── conftest.py ├── eeschema │ ├── test_bom_xml.py │ └── test_netlist.py ├── kicad2step │ └── test_step.py └── pcbnew │ ├── test_export_gencad.py │ ├── test_export_vrml.py │ └── test_3d.py ├── interposer ├── interposer_options.txt ├── libinterposer.so ├── run.sh └── Makefile ├── src └── requirements.txt ├── MANIFEST.in ├── .flake8 ├── .gitignore ├── .coveragerc ├── tools ├── get_name.pl └── filter_interposer.pl ├── .github └── workflows │ ├── python-publish.yml │ ├── pythonapp_stable_nightly.yml │ ├── pythonapp_nightly.yml │ └── pythonapp.yml └── setup.py /__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /kiauto/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /debian/compat: -------------------------------------------------------------------------------- 1 | 11 2 | -------------------------------------------------------------------------------- /debian/docs: -------------------------------------------------------------------------------- 1 | README.md 2 | -------------------------------------------------------------------------------- /debian/source/format: -------------------------------------------------------------------------------- 1 | 3.0 (quilt) 2 | -------------------------------------------------------------------------------- /tests/kicad8/missing-project/fp-info-cache: -------------------------------------------------------------------------------- 1 | 0 2 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/3D: -------------------------------------------------------------------------------- 1 | ../../kicad5/good-project/3D/ -------------------------------------------------------------------------------- /tests/kicad7/good-project/3D: -------------------------------------------------------------------------------- 1 | ../../kicad5/good-project/3D/ -------------------------------------------------------------------------------- /tests/kicad8/good-project/3D: -------------------------------------------------------------------------------- 1 | ../../kicad5/good-project/3D/ -------------------------------------------------------------------------------- /interposer/interposer_options.txt: -------------------------------------------------------------------------------- 1 | /tmp 2 | pirulo 3 | svg 4 | -------------------------------------------------------------------------------- /tests/reference/6/good_sch_bw_top.pdf: -------------------------------------------------------------------------------- 1 | ../5/good_sch_bw_top.pdf -------------------------------------------------------------------------------- /tests/reference/7/good_pcb_layers.txt: -------------------------------------------------------------------------------- 1 | ../6/good_pcb_layers.txt -------------------------------------------------------------------------------- /tests/reference/8/good_pcb_layers.txt: -------------------------------------------------------------------------------- 1 | ../7/good_pcb_layers.txt -------------------------------------------------------------------------------- /tests/reference/8/good_sch_bw_top.pdf: -------------------------------------------------------------------------------- 1 | ../7/good_sch_bw_top.pdf -------------------------------------------------------------------------------- /kiauto/interposer/libinterposer.so: -------------------------------------------------------------------------------- 1 | ../../interposer/libinterposer.so -------------------------------------------------------------------------------- /tests/kicad5/fail-project/fail.filter: -------------------------------------------------------------------------------- 1 | 3,C3 2 | 3,C4 3 | 5,U1 4 | -------------------------------------------------------------------------------- /tests/kicad5/zone-refill/.gitignore: -------------------------------------------------------------------------------- 1 | *-bak 2 | fp-info-cache 3 | 4 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/.gitignore: -------------------------------------------------------------------------------- 1 | *.xml 2 | *-bak 3 | fp-info-cache 4 | -------------------------------------------------------------------------------- /debian/source/local-options: -------------------------------------------------------------------------------- 1 | #abort-on-upstream-changes 2 | #unapply-patches 3 | -------------------------------------------------------------------------------- /src/requirements.txt: -------------------------------------------------------------------------------- 1 | xvfbwrapper==0.2.9 2 | argparse==1.2.1 3 | psutil==5.6.1 4 | -------------------------------------------------------------------------------- /tests/kicad6/zone-refill/.gitignore: -------------------------------------------------------------------------------- 1 | *-bak 2 | fp-info-cache 3 | zone-refill-backups 4 | -------------------------------------------------------------------------------- /tests/kicad7/zone-refill/.gitignore: -------------------------------------------------------------------------------- 1 | *-bak 2 | fp-info-cache 3 | zone-refill-backups 4 | -------------------------------------------------------------------------------- /tests/kicad8/zone-refill/.gitignore: -------------------------------------------------------------------------------- 1 | *-bak 2 | fp-info-cache 3 | zone-refill-backups 4 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include MANIFEST.in 2 | include LICENSE 3 | include kiauto/interposer/*.so 4 | -------------------------------------------------------------------------------- /debian/patches/series: -------------------------------------------------------------------------------- 1 | # You must remove unused comment lines for the released package. 2 | -------------------------------------------------------------------------------- /tests/kicad6/fail-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | fail-project-backups 3 | *-bak 4 | -------------------------------------------------------------------------------- /tests/kicad6/fail-project/fail.filter: -------------------------------------------------------------------------------- 1 | pin_to_pin,U2 2 | pin_to_pin,U1A 3 | pin_to_pin,U4 4 | -------------------------------------------------------------------------------- /tests/kicad7/fail-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | fail-project-backups 3 | *-bak 4 | -------------------------------------------------------------------------------- /tests/kicad7/fail-project/fail.filter: -------------------------------------------------------------------------------- 1 | pin_to_pin,U2 2 | pin_to_pin,U1 3 | pin_to_pin,U4 4 | -------------------------------------------------------------------------------- /tests/kicad8/fail-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | fail-project-backups 3 | *-bak 4 | -------------------------------------------------------------------------------- /tests/kicad6/warning-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | warning-project-backups 3 | *-bak 4 | -------------------------------------------------------------------------------- /tests/kicad7/warning-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | warning-project-backups 3 | *-bak 4 | -------------------------------------------------------------------------------- /tests/kicad8/warning-project/.gitignore: -------------------------------------------------------------------------------- 1 | fp-info-cache 2 | warning-project-backups 3 | *-bak 4 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/.gitignore: -------------------------------------------------------------------------------- 1 | *.xml 2 | *-bak 3 | fp-info-cache 4 | good-project-backups 5 | -------------------------------------------------------------------------------- /tests/kicad7/good-project/.gitignore: -------------------------------------------------------------------------------- 1 | *.xml 2 | *-bak 3 | fp-info-cache 4 | good-project-backups 5 | -------------------------------------------------------------------------------- /tests/kicad8/good-project/.gitignore: -------------------------------------------------------------------------------- 1 | *.xml 2 | *-bak 3 | fp-info-cache 4 | good-project-backups 5 | -------------------------------------------------------------------------------- /.flake8: -------------------------------------------------------------------------------- 1 | [flake8] 2 | ignore = E402, E226, E126, W504 3 | max-line-length = 127 4 | max-complexity = 36 5 | -------------------------------------------------------------------------------- /interposer/libinterposer.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/interposer/libinterposer.so -------------------------------------------------------------------------------- /tests/kicad8/fail-project/fail.filter: -------------------------------------------------------------------------------- 1 | pin_to_pin,U2 Pin 4 2 | pin_to_pin,U1 Pin 4 3 | pin_to_pin,U4 Pin 4 4 | -------------------------------------------------------------------------------- /tests/reference/5/zone-refill.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/zone-refill.pdf -------------------------------------------------------------------------------- /tests/reference/6/zone-refill.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/zone-refill.pdf -------------------------------------------------------------------------------- /tests/reference/7/zone-refill.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/zone-refill.pdf -------------------------------------------------------------------------------- /tests/reference/8/zone-refill.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/zone-refill.pdf -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.epr 3 | */__pycache__/ 4 | output/ 5 | pp/ 6 | # Coverage reports 7 | .coverage 8 | htmlcov/ 9 | -------------------------------------------------------------------------------- /tests/reference/5/drawings_real.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/drawings_real.png -------------------------------------------------------------------------------- /tests/reference/5/good_3d_rt_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_3d_rt_1.png -------------------------------------------------------------------------------- /tests/reference/5/good_3d_rt_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_3d_rt_2.png -------------------------------------------------------------------------------- /tests/reference/5/good_sch_all.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_sch_all.pdf -------------------------------------------------------------------------------- /tests/reference/5/good_sch_top.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_sch_top.pdf -------------------------------------------------------------------------------- /tests/reference/6/drawings_real.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/drawings_real.png -------------------------------------------------------------------------------- /tests/reference/6/good_3d_rt_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_3d_rt_1.png -------------------------------------------------------------------------------- /tests/reference/6/good_3d_rt_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_3d_rt_2.png -------------------------------------------------------------------------------- /tests/reference/6/good_sch_all.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_sch_all.pdf -------------------------------------------------------------------------------- /tests/reference/6/good_sch_top.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_sch_top.pdf -------------------------------------------------------------------------------- /tests/reference/7/drawings_real.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/drawings_real.png -------------------------------------------------------------------------------- /tests/reference/7/good_3d_rt_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_3d_rt_1.png -------------------------------------------------------------------------------- /tests/reference/7/good_3d_rt_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_3d_rt_2.png -------------------------------------------------------------------------------- /tests/reference/7/good_sch_all.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_sch_all.pdf -------------------------------------------------------------------------------- /tests/reference/7/good_sch_top.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_sch_top.pdf -------------------------------------------------------------------------------- /tests/reference/8/drawings_real.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/drawings_real.png -------------------------------------------------------------------------------- /tests/reference/8/good_3d_rt_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_3d_rt_1.png -------------------------------------------------------------------------------- /tests/reference/8/good_3d_rt_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_3d_rt_2.png -------------------------------------------------------------------------------- /tests/reference/8/good_sch_all.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_sch_all.pdf -------------------------------------------------------------------------------- /tests/reference/8/good_sch_top.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_sch_top.pdf -------------------------------------------------------------------------------- /tests/reference/5/drawings_layer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/drawings_layer.png -------------------------------------------------------------------------------- /tests/reference/5/drawings_stackup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/drawings_stackup.png -------------------------------------------------------------------------------- /tests/reference/5/good_pcb_inners.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_pcb_inners.pdf -------------------------------------------------------------------------------- /tests/reference/5/good_pcb_sep_bn.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_pcb_sep_bn.pdf -------------------------------------------------------------------------------- /tests/reference/5/good_sch_bw_top.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_sch_bw_top.pdf -------------------------------------------------------------------------------- /tests/reference/6/drawings_layer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/drawings_layer.png -------------------------------------------------------------------------------- /tests/reference/6/drawings_stackup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/drawings_stackup.png -------------------------------------------------------------------------------- /tests/reference/6/good_pcb_inners.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_pcb_inners.pdf -------------------------------------------------------------------------------- /tests/reference/6/good_pcb_sep_bn.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_pcb_sep_bn.pdf -------------------------------------------------------------------------------- /tests/reference/7/drawings_layer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/drawings_layer.png -------------------------------------------------------------------------------- /tests/reference/7/drawings_stackup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/drawings_stackup.png -------------------------------------------------------------------------------- /tests/reference/7/good_pcb_inners.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_pcb_inners.pdf -------------------------------------------------------------------------------- /tests/reference/7/good_pcb_sep_bn.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_pcb_sep_bn.pdf -------------------------------------------------------------------------------- /tests/reference/7/good_sch_bw_top.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_sch_bw_top.pdf -------------------------------------------------------------------------------- /tests/reference/8/drawings_layer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/drawings_layer.png -------------------------------------------------------------------------------- /tests/reference/8/drawings_stackup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/drawings_stackup.png -------------------------------------------------------------------------------- /tests/reference/8/good_pcb_inners.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_pcb_inners.pdf -------------------------------------------------------------------------------- /tests/reference/8/good_pcb_sep_bn.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_pcb_sep_bn.pdf -------------------------------------------------------------------------------- /tests/get_window_focus.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | while (1) 3 | { 4 | system("xdotool getwindowfocus"); 5 | sleep(1); 6 | } 7 | -------------------------------------------------------------------------------- /tests/reference/5/good_pcb_with_dwg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_pcb_with_dwg.pdf -------------------------------------------------------------------------------- /tests/reference/6/good_pcb_with_dwg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_pcb_with_dwg.pdf -------------------------------------------------------------------------------- /tests/reference/7/good_pcb_with_dwg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_pcb_with_dwg.pdf -------------------------------------------------------------------------------- /tests/reference/8/good_pcb_with_dwg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_pcb_with_dwg.pdf -------------------------------------------------------------------------------- /debian/watch: -------------------------------------------------------------------------------- 1 | version=3 2 | https://github.com/INTI-CMNB/kicad-automation-scripts/tags .*/(\d[\d\.]*)\.(?:tar.gz|tar.bz2|tar.xz) 3 | 4 | -------------------------------------------------------------------------------- /tests/reference/5/good_pcb_sep_bn_fit.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/5/good_pcb_sep_bn_fit.pdf -------------------------------------------------------------------------------- /tests/reference/6/good_pcb_sep_bn_fit.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/6/good_pcb_sep_bn_fit.pdf -------------------------------------------------------------------------------- /tests/reference/7/good_pcb_sep_bn_fit.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/7/good_pcb_sep_bn_fit.pdf -------------------------------------------------------------------------------- /tests/reference/8/good_pcb_sep_bn_fit.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/INTI-CMNB/KiAuto/HEAD/tests/reference/8/good_pcb_sep_bn_fit.pdf -------------------------------------------------------------------------------- /tests/kicad5/inner_layer_net-tie/inner_layer_net-tie.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 2 2 | EELAYER 25 0 3 | EELAYER END 4 | $EndSCHEMATC 5 | -------------------------------------------------------------------------------- /.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | source = 3 | kiauto 4 | src 5 | 6 | [report] 7 | exclude_lines = 8 | pragma: no cover 9 | raise RuntimeError 10 | 11 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name fail-project-rescue)(type Legacy)(uri ${KIPRJMOD}/fail-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name good-project-rescue)(type Legacy)(uri ${KIPRJMOD}/good-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad5/inner_layer_net-tie/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Carrier_NetTie)(type KiCad)(uri ${KIPRJMOD}/Carrier_NetTie.pretty)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad5/missing-lib/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name kicad4-project-rescue)(type Legacy)(uri ${KIPRJMOD}/missing-lib-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad6/fail-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name fail-project-rescue)(type Legacy)(uri ${KIPRJMOD}/fail-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad7/fail-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name fail-project-rescue)(type Legacy)(uri ${KIPRJMOD}/fail-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad8/fail-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name fail-project-rescue)(type Legacy)(uri ${KIPRJMOD}/fail-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad8/warning-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name fail-project-rescue)(type Legacy)(uri ${KIPRJMOD}/fail-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name warning-project-rescue)(type Legacy)(uri ${KIPRJMOD}/warning-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad6/warning-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name warning-project-rescue)(type Legacy)(uri ${KIPRJMOD}/warning-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad7/warning-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name warning-project-rescue)(type Legacy)(uri ${KIPRJMOD}/warning-project-rescue.lib)(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /tests/kicad7/good-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (version 7) 3 | (lib (name "good-project-rescue")(type "KiCad")(uri "${KIPRJMOD}/good-project-rescue.kicad_sym")(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /tools/get_name.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | while (1) 3 | { 4 | $a = `xdotool getwindowfocus getwindowname`; 5 | print $a; 6 | print "----\n"; 7 | $a = `xdotool search --onlyvisible --name 'Pcbnew.*'`; 8 | print $a; 9 | sleep(1); 10 | } 11 | -------------------------------------------------------------------------------- /debian/rules: -------------------------------------------------------------------------------- 1 | #!/usr/bin/make -f 2 | # You must remove unused comment lines for the released package. 3 | #export DH_VERBOSE = 1 4 | 5 | %: 6 | dh $@ --with python3 --buildsystem=pybuild 7 | 8 | override_dh_python3: 9 | dh_python3 --no-ext-rename --skip-private 10 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name good-project-rescue)(type Legacy)(uri ${KIPRJMOD}/good-project-rescue.lib)(options "")(descr "")) 3 | (lib (name power)(type Legacy)(uri ${KICAD_SYMBOL_DIR}/power.lib)(options "")(descr "Power symbols, special power flags")) 4 | ) 5 | -------------------------------------------------------------------------------- /tests/kicad6/missing-lib/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name "kicad4-project-rescue")(type "Legacy")(uri "${KIPRJMOD}/missing-lib-rescue.lib")(options "")(descr "")) 3 | (lib (name "missing-lib-rescue")(type "Legacy")(uri "${KIPRJMOD}/missing-lib-rescue.lib")(options "")(descr "")) 4 | ) 5 | -------------------------------------------------------------------------------- /tests/kicad6/missing-project/missing-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch (version 20211123) (generator eeschema) 2 | 3 | (uuid d5f67cf9-d685-4aff-b46f-1c16f5512d61) 4 | 5 | (paper "A4") 6 | 7 | (lib_symbols 8 | ) 9 | 10 | 11 | (sheet_instances 12 | (path "/" (page "1")) 13 | ) 14 | ) 15 | -------------------------------------------------------------------------------- /tests/kicad7/missing-project/missing-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch (version 20230121) (generator eeschema) 2 | 3 | (uuid d5f67cf9-d685-4aff-b46f-1c16f5512d61) 4 | 5 | (paper "A4") 6 | 7 | (lib_symbols 8 | ) 9 | 10 | 11 | (sheet_instances 12 | (path "/" (page "1")) 13 | ) 14 | ) 15 | -------------------------------------------------------------------------------- /tests/kicad8/missing-project/missing-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch 2 | (version 20231120) 3 | (generator "eeschema") 4 | (generator_version "8.0") 5 | (uuid "d5f67cf9-d685-4aff-b46f-1c16f5512d61") 6 | (paper "A4") 7 | (lib_symbols) 8 | (sheet_instances 9 | (path "/" 10 | (page "1") 11 | ) 12 | ) 13 | ) -------------------------------------------------------------------------------- /debian/README.Debian: -------------------------------------------------------------------------------- 1 | kicad-automation-scripts.inti-cmnb for Debian 2 | 3 | Please edit this to provide information specific to 4 | this kicad-automation-scripts.inti-cmnb Debian package. 5 | 6 | (Automatically generated by debmake Version 4.3.1) 7 | 8 | -- Salvador Eduardo Tropea Tue, 10 Mar 2020 08:39:25 -0300 9 | -------------------------------------------------------------------------------- /tests/kicad8/good-project/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (version 7) 3 | (lib (name "good-project-rescue")(type "KiCad")(uri "${KIPRJMOD}/good-project-rescue.kicad_sym")(options "")(descr "")) 4 | (lib (name "power")(type "KiCad")(uri "${KICAD7_SYMBOL_DIR}/power.kicad_sym")(options "")(descr "Power symbols, special power flags")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/reference/5/good_pcb_layers.txt: -------------------------------------------------------------------------------- 1 | F.Cu 2 | GND.Cu 3 | Signal1.Cu 4 | Signal2.Cu 5 | Power.Cu 6 | B.Cu 7 | B.Adhes 8 | F.Adhes 9 | B.Paste 10 | F.Paste 11 | B.SilkS 12 | F.SilkS 13 | B.Mask 14 | F.Mask 15 | Dwgs.User 16 | Cmts.User 17 | Eco1.User 18 | Eco2.User 19 | Edge.Cuts 20 | Margin 21 | B.CrtYd 22 | F.CrtYd 23 | B.Fab 24 | F.Fab 25 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KISYSMOD}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KISYSMOD}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KISYSMOD}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KISYSMOD}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KISYSMOD}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KISYSMOD}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KISYSMOD}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KISYSMOD}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KISYSMOD}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad6/fail-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KISYSMOD}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KISYSMOD}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KISYSMOD}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KISYSMOD}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KISYSMOD}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KISYSMOD}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad6/warning-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KISYSMOD}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KISYSMOD}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KISYSMOD}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/reference/6/good_pcb_layers.txt: -------------------------------------------------------------------------------- 1 | F.Cu 2 | GND.Cu 3 | Signal1.Cu 4 | Signal2.Cu 5 | Power.Cu 6 | B.Cu 7 | B.Adhesive 8 | F.Adhesive 9 | B.Paste 10 | F.Paste 11 | B.Silkscreen 12 | F.Silkscreen 13 | B.Mask 14 | F.Mask 15 | User.Drawings 16 | User.Comments 17 | User.Eco1 18 | User.Eco2 19 | Edge.Cuts 20 | Margin 21 | B.Courtyard 22 | F.Courtyard 23 | B.Fab 24 | F.Fab 25 | -------------------------------------------------------------------------------- /interposer/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Runs KiCad with the interposer enabled 3 | # We use LANG=C to avoid translations, this works on Debian 11 4 | #LANG=C LD_PRELOAD=`pwd`/libinterposer.so eeschema "$@" | grep "GTK:" 5 | #LANG=C LD_PRELOAD=`pwd`/libinterposer.so eeschema "$@" 6 | #LANG=C LD_PRELOAD=`pwd`/libinterposer.so pcbnew "$@" | grep "IO:Wait" 7 | LANG=C LD_PRELOAD=`pwd`/libinterposer.so pcbnew "$@" 8 | -------------------------------------------------------------------------------- /tests/kicad7/fail-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad8/good-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad7/warning-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_JST)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Connector_JST.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tools/filter_interposer.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | $c=1; 3 | while (<>) 4 | { 5 | if ($_=~/(GTK:Window|GTK:Main|DEBUG:=|INFO:|DEBUG:Waiting for \`\[\'IO:|DEBUG:\['xdotool', '(key|click)',|Interposer match|DEBUG:Found IO)/) # "\* " 6 | { 7 | if ($_=~/(INFO:)/) 8 | { 9 | print("\n"); 10 | } 11 | printf("%05d %s", $c, $_); 12 | } 13 | $c++; 14 | } 15 | -------------------------------------------------------------------------------- /tests/kicad7/zone-refill/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_PinHeader_2.54mm)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Connector_PinHeader_2.54mm.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad8/zone-refill/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (lib (name Connector_PinHeader_2.54mm)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Connector_PinHeader_2.54mm.pretty)(options "")(descr "")) 3 | (lib (name Capacitor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Capacitor_SMD.pretty)(options "")(descr "")) 4 | (lib (name Resistor_SMD)(type KiCad)(uri ${KICAD7_FOOTPRINT_DIR}/Resistor_SMD.pretty)(options "")(descr "")) 5 | ) 6 | -------------------------------------------------------------------------------- /tests/kicad5/kicad4-project/.gitignore: -------------------------------------------------------------------------------- 1 | # KiCad temporary file. 2 | *.000 3 | # KiCad backup of schematic file. 4 | *.bak 5 | # (Undocumented) backup of EESchema schematic file 6 | _saved_*.sch 7 | # backup of the PCB Layout file. 8 | *.-save.kicad_pcb 9 | *.kicad_pcb-bak 10 | # backup file for the symbol editor of the .dcm file. 11 | *.bck 12 | # report file, for documentation. 13 | *.rpt 14 | # ERC report files 15 | *.erc 16 | # Netlists 17 | *.net 18 | -------------------------------------------------------------------------------- /tests/kicad5/missing-lib/.gitignore: -------------------------------------------------------------------------------- 1 | # KiCad temporary file. 2 | *.000 3 | # KiCad backup of schematic file. 4 | *.bak 5 | # (Undocumented) backup of EESchema schematic file 6 | _saved_*.sch 7 | # backup of the PCB Layout file. 8 | *.-save.kicad_pcb 9 | *.kicad_pcb-bak 10 | # backup file for the symbol editor of the .dcm file. 11 | *.bck 12 | # report file, for documentation. 13 | *.rpt 14 | # ERC report files 15 | *.erc 16 | # Netlists 17 | *.net 18 | -------------------------------------------------------------------------------- /tests/kicad6/kicad4-project/.gitignore: -------------------------------------------------------------------------------- 1 | # KiCad temporary file. 2 | *.000 3 | # KiCad backup of schematic file. 4 | *.bak 5 | # (Undocumented) backup of EESchema schematic file 6 | _saved_*.sch 7 | # backup of the PCB Layout file. 8 | *.-save.kicad_pcb 9 | *.kicad_pcb-bak 10 | # backup file for the symbol editor of the .dcm file. 11 | *.bck 12 | # report file, for documentation. 13 | *.rpt 14 | # ERC report files 15 | *.erc 16 | # Netlists 17 | *.net 18 | -------------------------------------------------------------------------------- /tests/kicad6/missing-lib/.gitignore: -------------------------------------------------------------------------------- 1 | # KiCad temporary file. 2 | *.000 3 | # KiCad backup of schematic file. 4 | *.bak 5 | # (Undocumented) backup of EESchema schematic file 6 | _saved_*.sch 7 | # backup of the PCB Layout file. 8 | *.-save.kicad_pcb 9 | *.kicad_pcb-bak 10 | # backup file for the symbol editor of the .dcm file. 11 | *.bck 12 | # report file, for documentation. 13 | *.rpt 14 | # ERC report files 15 | *.erc 16 | # Netlists 17 | *.net 18 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- 1 | """ 2 | Test configuration 3 | """ 4 | import pytest 5 | 6 | 7 | def pytest_addoption(parser): 8 | parser.addoption("--test_dir", action="store", default=None, 9 | help="the test output dir to use (omit to use a temp dir). " 10 | "If given, outputs will _not_ be cleared after testing.") 11 | 12 | 13 | @pytest.fixture 14 | def test_dir(request): 15 | return request.config.getoption("--test_dir") 16 | -------------------------------------------------------------------------------- /interposer/Makefile: -------------------------------------------------------------------------------- 1 | #!/usr/bin/make 2 | # Needs GTK and GLX 3 | 4 | # apt update 5 | # apt install -y gcc binutils pkgconf libgtk-3-dev 6 | # Change gtk+-3.0 to the name of the .pc used in your system 7 | # gtk+-3.0.pc is used for GTK 3 on Debian 11 and similar systems 8 | GTK_FLAGS=`pkg-config --cflags --libs gtk+-3.0` 9 | GLX_LIB=-lGL 10 | 11 | all: libinterposer.so 12 | 13 | libinterposer.so: interposer.c 14 | gcc -D_GNU_SOURCE -fpic -shared -o $@ $(GTK_FLAGS) $< -ldl $(GLX_LIB) 15 | 16 | clean: 17 | @-rm libinterposer.so 18 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/fail-project.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 1 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Sheet 17 | S 3220 2140 1130 1460 18 | U 5CA71704 19 | F0 "Power" 50 20 | F1 "power.sch" 50 21 | F2 "VCC" O R 4350 2490 50 22 | $EndSheet 23 | $Sheet 24 | S 5460 2180 1230 1430 25 | U 5CA75BC1 26 | F0 "logic" 50 27 | F1 "logic.sch" 50 28 | F2 "VCC" I L 5460 2490 50 29 | $EndSheet 30 | Wire Wire Line 31 | 4350 2490 5460 2490 32 | $EndSCHEMATC 33 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/good-project.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 1 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Sheet 17 | S 3220 2140 1130 1460 18 | U 5CA71704 19 | F0 "Power" 50 20 | F1 "power.sch" 50 21 | F2 "VCC" O R 4350 2490 50 22 | $EndSheet 23 | $Sheet 24 | S 5460 2180 1230 1430 25 | U 5CA75BC1 26 | F0 "logic" 50 27 | F1 "logic.sch" 50 28 | F2 "VCC" I L 5460 2490 50 29 | $EndSheet 30 | Wire Wire Line 31 | 4350 2490 5460 2490 32 | $EndSCHEMATC 33 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/warning-project.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 1 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Sheet 17 | S 3220 2140 1130 1460 18 | U 5CA71704 19 | F0 "Power" 50 20 | F1 "power.sch" 50 21 | F2 "VCC" O R 4350 2490 50 22 | $EndSheet 23 | $Sheet 24 | S 5460 2180 1230 1430 25 | U 5CA75BC1 26 | F0 "logic" 50 27 | F1 "logic.sch" 50 28 | F2 "VCC" I L 5460 2490 50 29 | $EndSheet 30 | Wire Wire Line 31 | 4350 2490 5460 2490 32 | $EndSCHEMATC 33 | -------------------------------------------------------------------------------- /tests/kicad8/fail-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (version 7) 3 | (lib (name "Connector_JST")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Connector_JST.pretty")(options "")(descr "")) 4 | (lib (name "Capacitor_SMD")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Capacitor_SMD.pretty")(options "")(descr "")) 5 | (lib (name "Resistor_SMD")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Resistor_SMD.pretty")(options "")(descr "")) 6 | (lib (name "Package_TO_SOT_SMD")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Package_TO_SOT_SMD.pretty")(options "")(descr "")) 7 | (lib (name "Package_SO")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Package_SO.pretty")(options "")(descr "")) 8 | ) 9 | -------------------------------------------------------------------------------- /tests/kicad8/warning-project/fp-lib-table: -------------------------------------------------------------------------------- 1 | (fp_lib_table 2 | (version 7) 3 | (lib (name "Connector_JST")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Connector_JST.pretty")(options "")(descr "")) 4 | (lib (name "Capacitor_SMD")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Capacitor_SMD.pretty")(options "")(descr "")) 5 | (lib (name "Resistor_SMD")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Resistor_SMD.pretty")(options "")(descr "")) 6 | (lib (name "Package_TO_SOT_SMD")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Package_TO_SOT_SMD.pretty")(options "")(descr "")) 7 | (lib (name "Package_SO")(type "KiCad")(uri "${KICAD7_FOOTPRINT_DIR}/Package_SO.pretty")(options "")(descr "")) 8 | ) 9 | -------------------------------------------------------------------------------- /tests/kicad5/inner_layer_net-tie/Carrier_NetTie.pretty/Chassis-GND.kicad_mod: -------------------------------------------------------------------------------- 1 | (module Chassis-GND (layer F.Cu) (tedit 630CCB1F) 2 | (descr "Tie connecting chassis GND area to circuit GND area") 3 | (tags "net tie") 4 | (attr virtual) 5 | (fp_text value Chassis-GND (at 0 0) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_poly (pts (xy 0.4 4.5) (xy -0.4 4.5) (xy -0.4 -4.5) (xy 0.4 -4.5)) (layer In1.Cu) (width 0.0)) 9 | (fp_poly (pts (xy 0.4 4.5) (xy -0.4 4.5) (xy -0.4 -4.5) (xy 0.4 -4.5)) (layer In2.Cu) (width 0.0)) 10 | (pad 1 smd rect (at -0.5 0) (size 0.4 9) (layers In1.Cu In2.Cu)) 11 | (pad 2 smd rect (at 0.5 0) (size 0.4 9) (layers In1.Cu In2.Cu)) 12 | ) 13 | -------------------------------------------------------------------------------- /.github/workflows/python-publish.yml: -------------------------------------------------------------------------------- 1 | # This workflows will upload a Python Package using Twine when a release is created 2 | # For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries 3 | 4 | name: Upload Python Package 5 | 6 | on: 7 | push: 8 | tags: 9 | - "v*" 10 | 11 | jobs: 12 | deploy: 13 | 14 | runs-on: ubuntu-latest 15 | container: setsoft/kicad_pybuild:latest 16 | 17 | steps: 18 | - uses: actions/checkout@v4 19 | 20 | - name: Build and publish 21 | env: 22 | TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} 23 | TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} 24 | run: | 25 | python3 setup.py sdist bdist_wheel 26 | twine upload dist/* 27 | -------------------------------------------------------------------------------- /tests/kicad5/missing-lib/missing-lib.pro: -------------------------------------------------------------------------------- 1 | update=Tue May 12 11:29:42 2020 2 | version=1 3 | last_client=eeschema 4 | [pcbnew] 5 | version=1 6 | LastNetListRead= 7 | UseCmpFile=1 8 | PadDrill=0.600000000000 9 | PadDrillOvalY=0.600000000000 10 | PadSizeH=1.500000000000 11 | PadSizeV=1.500000000000 12 | PcbTextSizeV=1.500000000000 13 | PcbTextSizeH=1.500000000000 14 | PcbTextThickness=0.300000000000 15 | ModuleTextSizeV=1.000000000000 16 | ModuleTextSizeH=1.000000000000 17 | ModuleTextSizeThickness=0.150000000000 18 | SolderMaskClearance=0.000000000000 19 | SolderMaskMinWidth=0.000000000000 20 | DrawSegmentWidth=0.200000000000 21 | BoardOutlineThickness=0.100000000000 22 | ModuleOutlineThickness=0.150000000000 23 | [cvpcb] 24 | version=1 25 | NetIExt=net 26 | [general] 27 | version=1 28 | [eeschema] 29 | version=1 30 | LibDir= 31 | -------------------------------------------------------------------------------- /tests/kicad5/kicad4-project/kicad4-project.pro: -------------------------------------------------------------------------------- 1 | update=Tue May 12 10:02:27 2020 2 | version=1 3 | last_client=eeschema 4 | [pcbnew] 5 | version=1 6 | LastNetListRead= 7 | UseCmpFile=1 8 | PadDrill=0.600000000000 9 | PadDrillOvalY=0.600000000000 10 | PadSizeH=1.500000000000 11 | PadSizeV=1.500000000000 12 | PcbTextSizeV=1.500000000000 13 | PcbTextSizeH=1.500000000000 14 | PcbTextThickness=0.300000000000 15 | ModuleTextSizeV=1.000000000000 16 | ModuleTextSizeH=1.000000000000 17 | ModuleTextSizeThickness=0.150000000000 18 | SolderMaskClearance=0.000000000000 19 | SolderMaskMinWidth=0.000000000000 20 | DrawSegmentWidth=0.200000000000 21 | BoardOutlineThickness=0.100000000000 22 | ModuleOutlineThickness=0.150000000000 23 | [cvpcb] 24 | version=1 25 | NetIExt=net 26 | [general] 27 | version=1 28 | [eeschema] 29 | version=1 30 | LibDir= 31 | -------------------------------------------------------------------------------- /tests/kicad6/kicad4-project/kicad4-project.pro: -------------------------------------------------------------------------------- 1 | update=Tue May 12 10:02:27 2020 2 | version=1 3 | last_client=eeschema 4 | [pcbnew] 5 | version=1 6 | LastNetListRead= 7 | UseCmpFile=1 8 | PadDrill=0.600000000000 9 | PadDrillOvalY=0.600000000000 10 | PadSizeH=1.500000000000 11 | PadSizeV=1.500000000000 12 | PcbTextSizeV=1.500000000000 13 | PcbTextSizeH=1.500000000000 14 | PcbTextThickness=0.300000000000 15 | ModuleTextSizeV=1.000000000000 16 | ModuleTextSizeH=1.000000000000 17 | ModuleTextSizeThickness=0.150000000000 18 | SolderMaskClearance=0.000000000000 19 | SolderMaskMinWidth=0.000000000000 20 | DrawSegmentWidth=0.200000000000 21 | BoardOutlineThickness=0.100000000000 22 | ModuleOutlineThickness=0.150000000000 23 | [cvpcb] 24 | version=1 25 | NetIExt=net 26 | [general] 27 | version=1 28 | [eeschema] 29 | version=1 30 | LibDir= 31 | -------------------------------------------------------------------------------- /debian/control: -------------------------------------------------------------------------------- 1 | Source: kiauto 2 | Section: electronics 3 | Priority: optional 4 | Maintainer: Salvador Eduardo Tropea 5 | Build-Depends: debhelper (>=11~), dh-python, python3-all 6 | Standards-Version: 4.1.4 7 | Homepage: https://github.com/INTI-CMNB/kicad-automation-scripts/ 8 | X-Python3-Version: >= 3.2 9 | 10 | Package: kiauto 11 | Architecture: all 12 | Multi-Arch: foreign 13 | Depends: ${misc:Depends}, ${python3:Depends}, python3-xvfbwrapper, python3-psutil, recordmydesktop, xdotool, kicad (>= 5.1.0) | kicad-nightly (>= 5.1.0), xsltproc, xclip, imagemagick 14 | Recommends: fluxbox, wmctrl, x11vnc, ssvnc, procps 15 | Description: KiCad automation scripts 16 | Runs KiCad in a virtual environment to automate some tasks. 17 | You can run the ERC and DRC, print the PCB and schematic, 18 | generate the netlist and the BoM. 19 | -------------------------------------------------------------------------------- /tests/kicad5/zone-refill/zone-refill.pro: -------------------------------------------------------------------------------- 1 | update=22/05/2015 07:44:53 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 | -------------------------------------------------------------------------------- /tests/eeschema/test_bom_xml.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Copyright (c) 2020 Salvador E. Tropea 3 | # Copyright (c) 2020 Instituto Nacional de Tecnologïa Industrial 4 | # License: Apache 2.0 5 | # Project: KiAuto (formerly kicad-automation-scripts) 6 | """ 7 | Tests for eeschema_do bom_xml. 8 | 9 | For debug information use: 10 | pytest-3 --log-cli-level debug 11 | 12 | """ 13 | 14 | import os 15 | import sys 16 | import logging 17 | # Look for the 'utils' module from where the script is running 18 | script_dir = os.path.dirname(os.path.abspath(__file__)) 19 | sys.path.insert(0, os.path.dirname(script_dir)) 20 | # Utils import 21 | from utils import context 22 | 23 | PROG = 'eeschema_do' 24 | 25 | 26 | def test_bom_xml(test_dir): 27 | prj = 'good-project' 28 | ctx = context.TestContextSCH(test_dir, 'BoM_XML', prj) 29 | bom = ctx.board_file.replace(ctx.sch_ext, '.xml') 30 | if os.path.isfile(bom): 31 | os.remove(bom) 32 | cmd = [PROG, '-vv', '-r', '--time_out_scale', '0.9', 'bom_xml'] 33 | ctx.run(cmd) 34 | ctx.expect_out_file(bom) 35 | logging.debug(bom) 36 | ctx.clean_up() 37 | -------------------------------------------------------------------------------- /.github/workflows/pythonapp_stable_nightly.yml: -------------------------------------------------------------------------------- 1 | name: Regression tests (stable nightly) 2 | 3 | on: 4 | workflow_dispatch 5 | 6 | jobs: 7 | test_stable_nightly: 8 | 9 | runs-on: ubuntu-latest 10 | container: ghcr.io/inti-cmnb/kicad_auto_test:stable_nightly 11 | 12 | steps: 13 | - uses: actions/checkout@v4 14 | - name: Test stable nightly 15 | run: | 16 | make test_server_ki7 17 | - name: Store results 18 | if: ${{ always() }} 19 | uses: actions/upload-artifact@v4 20 | with: 21 | name: Test_Output_stable_nightly 22 | path: output 23 | - name: Upload Coverage 24 | env: 25 | COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} 26 | COVERALLS_FLAG_NAME: nightly 27 | COVERALLS_PARALLEL: true 28 | run: coveralls 29 | 30 | coveralls: 31 | name: Finish Coveralls 32 | needs: test_stable_nightly 33 | runs-on: ubuntu-latest 34 | steps: 35 | - name: Finished 36 | env: 37 | COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} 38 | run: | 39 | curl -k https://coveralls.io/webhook?repo_token=$COVERALLS_REPO_TOKEN -d "payload[build_num]="$GITHUB_RUN_ID"&payload[status]=done" 40 | -------------------------------------------------------------------------------- /tests/kicad2step/test_step.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Copyright (c) 2022 Salvador E. Tropea 3 | # Copyright (c) 2022 Instituto Nacional de Tecnologïa Industrial 4 | # License: Apache 2.0 5 | # Project: KiAuto (formerly kicad-automation-scripts) 6 | """ 7 | Tests for kicad2step 8 | 9 | For debug information use: 10 | pytest-3 --log-cli-level debug 11 | 12 | """ 13 | 14 | import os 15 | import sys 16 | # Look for the 'utils' module from where the script is running 17 | script_dir = os.path.dirname(os.path.abspath(__file__)) 18 | prev_dir = os.path.dirname(script_dir) 19 | sys.path.insert(0, prev_dir) 20 | # Utils import 21 | from utils import context 22 | sys.path.insert(0, os.path.dirname(prev_dir)) 23 | 24 | PROG = 'kicad2step_do' 25 | 26 | 27 | def test_kicad2step_1(test_dir): 28 | fname = 'good.step' 29 | fdir = os.path.join(test_dir, 'STEP_1') 30 | ctx = context.TestContext(test_dir, 'STEP_1', 'good-project') 31 | os.environ['KIPRJMOD'] = os.path.dirname(ctx.board_file) 32 | cmd = [PROG, '-vvv', '-o', fname, '-d', fdir, '--subst-models'] 33 | ffname = os.path.join(fdir, fname) 34 | if os.path.isfile(ffname): 35 | os.remove(ffname) 36 | ctx.run(cmd, no_dir=True) 37 | del os.environ['KIPRJMOD'] 38 | ctx.expect_out_file(fname) 39 | ctx.clean_up() 40 | -------------------------------------------------------------------------------- /tests/pcbnew/test_export_gencad.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Copyright (c) 2022 Theo Hussey 3 | # License: Apache 2.0 4 | # Project: KiAuto (formerly kicad-automation-scripts) 5 | """ 6 | Tests for 'pcbnew_do export_gencad' 7 | 8 | For debug information use: 9 | pytest-3 --log-cli-level debug 10 | 11 | """ 12 | import os 13 | import sys 14 | import re 15 | # Look for the 'utils' module from where the script is running 16 | script_dir = os.path.dirname(os.path.abspath(__file__)) 17 | prev_dir = os.path.dirname(script_dir) 18 | sys.path.insert(0, prev_dir) 19 | # Utils import 20 | from utils import context 21 | sys.path.insert(0, os.path.dirname(prev_dir)) 22 | 23 | PROG = 'pcbnew_do' 24 | 25 | 26 | def test_export_gencad_1(test_dir): 27 | """ Generate a GenCAD file with no special options test """ 28 | ctx = context.TestContext(test_dir, 'export_gencad_1', 'good-project') 29 | cmd = [PROG, '-vv', 'export_gencad', '-f', '-n', '-O', '--output_name', 'good.cad'] 30 | ctx.run(cmd) 31 | ctx.expect_out_file('good.cad') 32 | file = ctx.get_out_path('good.cad') 33 | with open(file, 'rt') as f: 34 | text = f.read() 35 | text = re.sub(r'(USER|DRAWING) "(.*)"', r'\1 ""', text) 36 | with open(file, 'wt') as f: 37 | f.write(text) 38 | ctx.compare_txt('good.cad') 39 | ctx.clean_up() 40 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/fail-project.pro: -------------------------------------------------------------------------------- 1 | update=Fri 05 Apr 2019 11:16:31 AM CEST 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead=fail-project.net 19 | CopperLayerCount=2 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.4 27 | MinViaDrill=0.3 28 | MinMicroViaDiameter=0.2 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.25 32 | ViaDiameter1=0.8 33 | ViaDrill1=0.4 34 | dPairWidth1=0.2 35 | dPairGap1=0.25 36 | dPairViaGap1=0.25 37 | SilkLineWidth=0.12 38 | SilkTextSizeV=1 39 | SilkTextSizeH=1 40 | SilkTextSizeThickness=0.15 41 | SilkTextItalic=0 42 | SilkTextUpright=1 43 | CopperLineWidth=0.2 44 | CopperTextSizeV=1.5 45 | CopperTextSizeH=1.5 46 | CopperTextThickness=0.3 47 | CopperTextItalic=0 48 | CopperTextUpright=1 49 | EdgeCutLineWidth=0.05 50 | CourtyardLineWidth=0.05 51 | OthersLineWidth=0.15 52 | OthersTextSizeV=1 53 | OthersTextSizeH=1 54 | OthersTextSizeThickness=0.15 55 | OthersTextItalic=0 56 | OthersTextUpright=1 57 | SolderMaskClearance=0.051 58 | SolderMaskMinWidth=0.25 59 | SolderPasteClearance=0 60 | SolderPasteRatio=0 61 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/warning-project.pro: -------------------------------------------------------------------------------- 1 | update=Fri 05 Apr 2019 11:24:37 AM CEST 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead=warning-project.net 19 | CopperLayerCount=2 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.4 27 | MinViaDrill=0.3 28 | MinMicroViaDiameter=0.2 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.25 32 | ViaDiameter1=0.8 33 | ViaDrill1=0.4 34 | dPairWidth1=0.2 35 | dPairGap1=0.25 36 | dPairViaGap1=0.25 37 | SilkLineWidth=0.12 38 | SilkTextSizeV=1 39 | SilkTextSizeH=1 40 | SilkTextSizeThickness=0.15 41 | SilkTextItalic=0 42 | SilkTextUpright=1 43 | CopperLineWidth=0.2 44 | CopperTextSizeV=1.5 45 | CopperTextSizeH=1.5 46 | CopperTextThickness=0.3 47 | CopperTextItalic=0 48 | CopperTextUpright=1 49 | EdgeCutLineWidth=0.05 50 | CourtyardLineWidth=0.05 51 | OthersLineWidth=0.15 52 | OthersTextSizeV=1 53 | OthersTextSizeH=1 54 | OthersTextSizeThickness=0.15 55 | OthersTextItalic=0 56 | OthersTextUpright=1 57 | SolderMaskClearance=0.051 58 | SolderMaskMinWidth=0.25 59 | SolderPasteClearance=0 60 | SolderPasteRatio=0 61 | -------------------------------------------------------------------------------- /.github/workflows/pythonapp_nightly.yml: -------------------------------------------------------------------------------- 1 | name: Regression tests (nightly) 2 | 3 | on: 4 | push: 5 | paths: 6 | - '**.py' 7 | - 'src/*_do' 8 | - 'tests/**' 9 | - '.github/workflows/pythonapp_nightly.yml' 10 | pull_request: 11 | paths: 12 | - '**.py' 13 | - 'src/*_do' 14 | - 'tests/**' 15 | - '.github/workflows/pythonapp_nightly.yml' 16 | 17 | jobs: 18 | test_nightly: 19 | 20 | runs-on: ubuntu-latest 21 | container: setsoft/kicad_auto_test:nightly 22 | 23 | steps: 24 | - uses: actions/checkout@v4 25 | - name: Test nightly 26 | run: | 27 | make test_server_nightly 28 | - name: Store results 29 | if: ${{ always() }} 30 | uses: actions/upload-artifact@v4 31 | with: 32 | name: Test_Output_nightly 33 | path: output 34 | - name: Upload Coverage 35 | env: 36 | COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} 37 | COVERALLS_FLAG_NAME: nightly 38 | COVERALLS_PARALLEL: true 39 | run: coveralls 40 | 41 | coveralls: 42 | name: Finish Coveralls 43 | needs: test_nightly 44 | runs-on: ubuntu-latest 45 | steps: 46 | - name: Finished 47 | env: 48 | COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} 49 | run: | 50 | curl -k https://coveralls.io/webhook?repo_token=$COVERALLS_REPO_TOKEN -d "payload[build_num]="$GITHUB_RUN_ID"&payload[status]=done" 51 | 52 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/good-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # R-passive 46 | # 47 | DEF R-passive R 0 40 N N 1 F N 48 | F0 "R" 0 50 40 H V C CNN 49 | F1 "R-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | S 25 10 -25 -10 0 1 0 f 54 | P 2 0 1 0 -25 0 -50 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | #End Library 62 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/good-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # R-passive 46 | # 47 | DEF R-passive R 0 40 N N 1 F N 48 | F0 "R" 0 50 40 H V C CNN 49 | F1 "R-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | S 25 10 -25 -10 0 1 0 f 54 | P 2 0 1 0 -25 0 -50 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | #End Library 62 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/logic.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 3 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L good-project-rescue:R-passive R1 18 | U 1 1 5CA75C86 19 | P 5500 2790 20 | F 0 "R1" H 5492 2948 40 0000 C CNN 21 | F 1 "R" H 5492 2872 40 0000 C CNN 22 | F 2 "Resistor_SMD:R_0402_1005Metric" H 5500 2790 60 0001 C CNN 23 | F 3 "" H 5500 2790 60 0000 C CNN 24 | 1 5500 2790 25 | 1 0 0 -1 26 | $EndComp 27 | $Comp 28 | L good-project-rescue:C-passive C2 29 | U 1 1 5CA76352 30 | P 5700 2860 31 | F 0 "C2" V 5654 2904 40 0000 L CNN 32 | F 1 "C" V 5730 2904 40 0000 L CNN 33 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5700 2860 60 0001 C CNN 34 | F 3 "" H 5700 2860 60 0000 C CNN 35 | 1 5700 2860 36 | 0 1 1 0 37 | $EndComp 38 | Wire Wire Line 39 | 5700 2790 5700 2810 40 | Wire Wire Line 41 | 5700 2910 5700 3000 42 | $Comp 43 | L power:GND #PWR03 44 | U 1 1 5CA77789 45 | P 5700 3000 46 | F 0 "#PWR03" H 5700 2750 50 0001 C CNN 47 | F 1 "GND" H 5705 2827 50 0000 C CNN 48 | F 2 "" H 5700 3000 50 0000 C CNN 49 | F 3 "" H 5700 3000 50 0000 C CNN 50 | 1 5700 3000 51 | 1 0 0 -1 52 | $EndComp 53 | Wire Wire Line 54 | 5450 2790 5310 2790 55 | Text HLabel 5310 2790 0 50 Input ~ 0 56 | VCC 57 | Wire Wire Line 58 | 5550 2790 5700 2790 59 | $EndSCHEMATC 60 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/logic.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 3 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L warning-project-rescue:R-passive R1 18 | U 1 1 5CA75C86 19 | P 5500 2790 20 | F 0 "R1" H 5492 2948 40 0000 C CNN 21 | F 1 "R" H 5492 2872 40 0000 C CNN 22 | F 2 "Resistor_SMD:R_0402_1005Metric" H 5500 2790 60 0001 C CNN 23 | F 3 "" H 5500 2790 60 0000 C CNN 24 | 1 5500 2790 25 | 1 0 0 -1 26 | $EndComp 27 | $Comp 28 | L warning-project-rescue:C-passive C2 29 | U 1 1 5CA76352 30 | P 5700 2860 31 | F 0 "C2" V 5654 2904 40 0000 L CNN 32 | F 1 "C" V 5730 2904 40 0000 L CNN 33 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5700 2860 60 0001 C CNN 34 | F 3 "" H 5700 2860 60 0000 C CNN 35 | 1 5700 2860 36 | 0 1 1 0 37 | $EndComp 38 | Wire Wire Line 39 | 5700 2790 5700 2810 40 | Wire Wire Line 41 | 5700 2910 5700 3000 42 | $Comp 43 | L power:GND #PWR03 44 | U 1 1 5CA77789 45 | P 5700 3000 46 | F 0 "#PWR03" H 5700 2750 50 0001 C CNN 47 | F 1 "GND" H 5705 2827 50 0000 C CNN 48 | F 2 "" H 5700 3000 50 0000 C CNN 49 | F 3 "" H 5700 3000 50 0000 C CNN 50 | 1 5700 3000 51 | 1 0 0 -1 52 | $EndComp 53 | Wire Wire Line 54 | 5450 2790 5310 2790 55 | Text HLabel 5310 2790 0 50 Input ~ 0 56 | VCC 57 | Wire Wire Line 58 | 5550 2790 5700 2790 59 | $EndSCHEMATC 60 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/warning-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # R-passive 46 | # 47 | DEF R-passive R 0 40 N N 1 F N 48 | F0 "R" 0 50 40 H V C CNN 49 | F1 "R-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | S 25 10 -25 -10 0 1 0 f 54 | P 2 0 1 0 -25 0 -50 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | #End Library 62 | -------------------------------------------------------------------------------- /tests/kicad6/warning-project/warning-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # R-passive 46 | # 47 | DEF R-passive R 0 40 N N 1 F N 48 | F0 "R" 0 50 40 H V C CNN 49 | F1 "R-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | S 25 10 -25 -10 0 1 0 f 54 | P 2 0 1 0 -25 0 -50 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | #End Library 62 | -------------------------------------------------------------------------------- /tests/kicad6/missing-project/missing-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 0.6 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 8, 37 | 9, 38 | 10, 39 | 11, 40 | 12, 41 | 13, 42 | 14, 43 | 15, 44 | 16, 45 | 17, 46 | 18, 47 | 19, 48 | 20, 49 | 21, 50 | 22, 51 | 23, 52 | 24, 53 | 25, 54 | 26, 55 | 27, 56 | 28, 57 | 29, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36 64 | ], 65 | "visible_layers": "fffffff_ffffffff", 66 | "zone_display_mode": 0 67 | }, 68 | "meta": { 69 | "filename": "missing-project.kicad_prl", 70 | "version": 3 71 | }, 72 | "project": { 73 | "files": [] 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /tests/kicad7/good-project/good-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 37, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 34, 59 | 35, 60 | 36, 61 | 37, 62 | 38 63 | ], 64 | "visible_layers": "007ffff_ffffffff", 65 | "zone_display_mode": 0 66 | }, 67 | "meta": { 68 | "filename": "good-project.kicad_prl", 69 | "version": 3 70 | }, 71 | "project": { 72 | "files": [] 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python3 2 | from setuptools import setup, find_namespace_packages 3 | from kiauto.misc import __version__, __author__, __email__, __url__ 4 | 5 | # Use the README.md as a long description. 6 | # Note this is also included in the MANIFEST.in 7 | with open('README.md', encoding='utf-8') as f: 8 | long_description = '\n' + f.read() 9 | 10 | setup(name='kiauto', 11 | version=__version__, 12 | description='KiCad Automation Scripts', 13 | long_description=long_description, 14 | long_description_content_type='text/markdown', 15 | author=__author__, 16 | author_email=__email__, 17 | url=__url__, 18 | # Packages are marked using __init__.py 19 | packages=find_namespace_packages(), 20 | scripts=['src/eeschema_do', 'src/pcbnew_do', 'src/kicad2step_do'], 21 | install_requires=['xvfbwrapper', 'psutil'], 22 | include_package_data=True, 23 | classifiers=['Development Status :: 4 - Beta', 24 | 'Environment :: Console', 25 | 'Intended Audience :: Developers', 26 | 'License :: OSI Approved :: Apache Software License', 27 | 'Natural Language :: English', 28 | 'Operating System :: POSIX :: Linux', 29 | 'Programming Language :: Python :: 3', 30 | 'Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)', 31 | ], 32 | platforms='POSIX', 33 | license='Apache License 2.0', 34 | python_requires='>=3.4', 35 | ) 36 | -------------------------------------------------------------------------------- /tests/kicad7/zone-refill/zone-refill.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 31, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36, 64 | 37, 65 | 38 66 | ], 67 | "visible_layers": "007ffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "meta": { 71 | "filename": "zone-refill.kicad_prl", 72 | "version": 3 73 | }, 74 | "project": { 75 | "files": [] 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /tests/kicad7/fail-project/fail-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36, 64 | 37, 65 | 38 66 | ], 67 | "visible_layers": "007ffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "meta": { 71 | "filename": "fail-project.kicad_prl", 72 | "version": 3 73 | }, 74 | "project": { 75 | "files": [] 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /tests/kicad7/warning-project/warning-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36, 64 | 37, 65 | 38 66 | ], 67 | "visible_layers": "007ffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "meta": { 71 | "filename": "warning-project.kicad_prl", 72 | "version": 3 73 | }, 74 | "project": { 75 | "files": [] 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /tests/kicad7/missing-project/missing-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 0.6 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 8, 39 | 9, 40 | 10, 41 | 11, 42 | 12, 43 | 13, 44 | 14, 45 | 15, 46 | 16, 47 | 17, 48 | 18, 49 | 19, 50 | 20, 51 | 21, 52 | 22, 53 | 23, 54 | 24, 55 | 25, 56 | 26, 57 | 27, 58 | 28, 59 | 29, 60 | 30, 61 | 32, 62 | 33, 63 | 34, 64 | 35, 65 | 36 66 | ], 67 | "visible_layers": "fffffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "meta": { 71 | "filename": "missing-project.kicad_prl", 72 | "version": 3 73 | }, 74 | "project": { 75 | "files": [] 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /tests/kicad8/good-project/good-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 37, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 34, 59 | 35, 60 | 36, 61 | 37, 62 | 38 63 | ], 64 | "visible_layers": "007ffff_ffffffff", 65 | "zone_display_mode": 0 66 | }, 67 | "git": { 68 | "repo_password": "", 69 | "repo_type": "", 70 | "repo_username": "", 71 | "ssh_key": "" 72 | }, 73 | "meta": { 74 | "filename": "good-project.kicad_prl", 75 | "version": 3 76 | }, 77 | "project": { 78 | "files": [] 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /tests/kicad5/zone-refill/zone-refill-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 | # Device_C 25 | # 26 | DEF Device_C C 0 10 N Y 1 F N 27 | F0 "C" 25 100 50 H V L CNN 28 | F1 "Device_C" 25 -100 50 H V L CNN 29 | F2 "" 38 -150 50 H I C CNN 30 | F3 "" 0 0 50 H I C CNN 31 | $FPLIST 32 | C_* 33 | $ENDFPLIST 34 | DRAW 35 | P 2 0 1 20 -80 -30 80 -30 N 36 | P 2 0 1 20 -80 30 80 30 N 37 | X ~ 1 0 150 110 D 50 50 1 1 P 38 | X ~ 2 0 -150 110 U 50 50 1 1 P 39 | ENDDRAW 40 | ENDDEF 41 | # 42 | # Device_R 43 | # 44 | DEF Device_R R 0 0 N Y 1 F N 45 | F0 "R" 80 0 50 V V C CNN 46 | F1 "Device_R" 0 0 50 V V C CNN 47 | F2 "" -70 0 50 V I C CNN 48 | F3 "" 0 0 50 H I C CNN 49 | $FPLIST 50 | R_* 51 | $ENDFPLIST 52 | DRAW 53 | S -40 -100 40 100 0 1 10 N 54 | X ~ 1 0 150 50 D 50 50 1 1 P 55 | X ~ 2 0 -150 50 U 50 50 1 1 P 56 | ENDDRAW 57 | ENDDEF 58 | # 59 | # power_GND 60 | # 61 | DEF power_GND #PWR 0 0 Y Y 1 F P 62 | F0 "#PWR" 0 -250 50 H I C CNN 63 | F1 "power_GND" 0 -150 50 H V C CNN 64 | F2 "" 0 0 50 H I C CNN 65 | F3 "" 0 0 50 H I C CNN 66 | DRAW 67 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 68 | X GND 1 0 0 0 D 50 50 1 1 W N 69 | ENDDRAW 70 | ENDDEF 71 | # 72 | #End Library 73 | -------------------------------------------------------------------------------- /tests/kicad6/zone-refill/zone-refill-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 | # Device_C 25 | # 26 | DEF Device_C C 0 10 N Y 1 F N 27 | F0 "C" 25 100 50 H V L CNN 28 | F1 "Device_C" 25 -100 50 H V L CNN 29 | F2 "" 38 -150 50 H I C CNN 30 | F3 "" 0 0 50 H I C CNN 31 | $FPLIST 32 | C_* 33 | $ENDFPLIST 34 | DRAW 35 | P 2 0 1 20 -80 -30 80 -30 N 36 | P 2 0 1 20 -80 30 80 30 N 37 | X ~ 1 0 150 110 D 50 50 1 1 P 38 | X ~ 2 0 -150 110 U 50 50 1 1 P 39 | ENDDRAW 40 | ENDDEF 41 | # 42 | # Device_R 43 | # 44 | DEF Device_R R 0 0 N Y 1 F N 45 | F0 "R" 80 0 50 V V C CNN 46 | F1 "Device_R" 0 0 50 V V C CNN 47 | F2 "" -70 0 50 V I C CNN 48 | F3 "" 0 0 50 H I C CNN 49 | $FPLIST 50 | R_* 51 | $ENDFPLIST 52 | DRAW 53 | S -40 -100 40 100 0 1 10 N 54 | X ~ 1 0 150 50 D 50 50 1 1 P 55 | X ~ 2 0 -150 50 U 50 50 1 1 P 56 | ENDDRAW 57 | ENDDEF 58 | # 59 | # power_GND 60 | # 61 | DEF power_GND #PWR 0 0 Y Y 1 F P 62 | F0 "#PWR" 0 -250 50 H I C CNN 63 | F1 "power_GND" 0 -150 50 H V C CNN 64 | F2 "" 0 0 50 H I C CNN 65 | F3 "" 0 0 50 H I C CNN 66 | DRAW 67 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 68 | X GND 1 0 0 0 D 50 50 1 1 W N 69 | ENDDRAW 70 | ENDDEF 71 | # 72 | #End Library 73 | -------------------------------------------------------------------------------- /tests/kicad7/zone-refill/zone-refill-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 | # Device_C 25 | # 26 | DEF Device_C C 0 10 N Y 1 F N 27 | F0 "C" 25 100 50 H V L CNN 28 | F1 "Device_C" 25 -100 50 H V L CNN 29 | F2 "" 38 -150 50 H I C CNN 30 | F3 "" 0 0 50 H I C CNN 31 | $FPLIST 32 | C_* 33 | $ENDFPLIST 34 | DRAW 35 | P 2 0 1 20 -80 -30 80 -30 N 36 | P 2 0 1 20 -80 30 80 30 N 37 | X ~ 1 0 150 110 D 50 50 1 1 P 38 | X ~ 2 0 -150 110 U 50 50 1 1 P 39 | ENDDRAW 40 | ENDDEF 41 | # 42 | # Device_R 43 | # 44 | DEF Device_R R 0 0 N Y 1 F N 45 | F0 "R" 80 0 50 V V C CNN 46 | F1 "Device_R" 0 0 50 V V C CNN 47 | F2 "" -70 0 50 V I C CNN 48 | F3 "" 0 0 50 H I C CNN 49 | $FPLIST 50 | R_* 51 | $ENDFPLIST 52 | DRAW 53 | S -40 -100 40 100 0 1 10 N 54 | X ~ 1 0 150 50 D 50 50 1 1 P 55 | X ~ 2 0 -150 50 U 50 50 1 1 P 56 | ENDDRAW 57 | ENDDEF 58 | # 59 | # power_GND 60 | # 61 | DEF power_GND #PWR 0 0 Y Y 1 F P 62 | F0 "#PWR" 0 -250 50 H I C CNN 63 | F1 "power_GND" 0 -150 50 H V C CNN 64 | F2 "" 0 0 50 H I C CNN 65 | F3 "" 0 0 50 H I C CNN 66 | DRAW 67 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 68 | X GND 1 0 0 0 D 50 50 1 1 W N 69 | ENDDRAW 70 | ENDDEF 71 | # 72 | #End Library 73 | -------------------------------------------------------------------------------- /tests/kicad8/zone-refill/zone-refill-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 | # Device_C 25 | # 26 | DEF Device_C C 0 10 N Y 1 F N 27 | F0 "C" 25 100 50 H V L CNN 28 | F1 "Device_C" 25 -100 50 H V L CNN 29 | F2 "" 38 -150 50 H I C CNN 30 | F3 "" 0 0 50 H I C CNN 31 | $FPLIST 32 | C_* 33 | $ENDFPLIST 34 | DRAW 35 | P 2 0 1 20 -80 -30 80 -30 N 36 | P 2 0 1 20 -80 30 80 30 N 37 | X ~ 1 0 150 110 D 50 50 1 1 P 38 | X ~ 2 0 -150 110 U 50 50 1 1 P 39 | ENDDRAW 40 | ENDDEF 41 | # 42 | # Device_R 43 | # 44 | DEF Device_R R 0 0 N Y 1 F N 45 | F0 "R" 80 0 50 V V C CNN 46 | F1 "Device_R" 0 0 50 V V C CNN 47 | F2 "" -70 0 50 V I C CNN 48 | F3 "" 0 0 50 H I C CNN 49 | $FPLIST 50 | R_* 51 | $ENDFPLIST 52 | DRAW 53 | S -40 -100 40 100 0 1 10 N 54 | X ~ 1 0 150 50 D 50 50 1 1 P 55 | X ~ 2 0 -150 50 U 50 50 1 1 P 56 | ENDDRAW 57 | ENDDEF 58 | # 59 | # power_GND 60 | # 61 | DEF power_GND #PWR 0 0 Y Y 1 F P 62 | F0 "#PWR" 0 -250 50 H I C CNN 63 | F1 "power_GND" 0 -150 50 H V C CNN 64 | F2 "" 0 0 50 H I C CNN 65 | F3 "" 0 0 50 H I C CNN 66 | DRAW 67 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 68 | X GND 1 0 0 0 D 50 50 1 1 W N 69 | ENDDRAW 70 | ENDDEF 71 | # 72 | #End Library 73 | -------------------------------------------------------------------------------- /tests/kicad8/zone-refill/zone-refill.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 31, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36, 64 | 37, 65 | 38 66 | ], 67 | "visible_layers": "007ffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "git": { 71 | "repo_password": "", 72 | "repo_type": "", 73 | "repo_username": "", 74 | "ssh_key": "" 75 | }, 76 | "meta": { 77 | "filename": "zone-refill.kicad_prl", 78 | "version": 3 79 | }, 80 | "project": { 81 | "files": [] 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /tests/kicad8/fail-project/fail-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 37, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36, 64 | 37, 65 | 38 66 | ], 67 | "visible_layers": "007ffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "git": { 71 | "repo_password": "", 72 | "repo_type": "", 73 | "repo_username": "", 74 | "ssh_key": "" 75 | }, 76 | "meta": { 77 | "filename": "fail-project.kicad_prl", 78 | "version": 3 79 | }, 80 | "project": { 81 | "files": [] 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /tests/kicad8/warning-project/warning-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 37, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 1.0 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 6, 39 | 8, 40 | 9, 41 | 10, 42 | 11, 43 | 12, 44 | 13, 45 | 14, 46 | 15, 47 | 16, 48 | 17, 49 | 18, 50 | 19, 51 | 20, 52 | 21, 53 | 22, 54 | 23, 55 | 24, 56 | 25, 57 | 26, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36, 64 | 37, 65 | 38 66 | ], 67 | "visible_layers": "007ffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "git": { 71 | "repo_password": "", 72 | "repo_type": "", 73 | "repo_username": "", 74 | "ssh_key": "" 75 | }, 76 | "meta": { 77 | "filename": "fail-project.kicad_prl", 78 | "version": 3 79 | }, 80 | "project": { 81 | "files": [] 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /tests/eeschema/test_netlist.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Copyright (c) 2020 Salvador E. Tropea 3 | # Copyright (c) 2020 Instituto Nacional de Tecnologïa Industrial 4 | # License: Apache 2.0 5 | # Project: KiAuto (formerly kicad-automation-scripts) 6 | """ 7 | Tests for eeschema_do netlist 8 | 9 | For debug information use: 10 | pytest-3 --log-cli-level debug 11 | 12 | """ 13 | 14 | import os 15 | import sys 16 | # Look for the 'utils' module from where the script is running 17 | script_dir = os.path.dirname(os.path.abspath(__file__)) 18 | sys.path.insert(0, os.path.dirname(script_dir)) 19 | # Utils import 20 | from utils import context 21 | 22 | PROG = 'eeschema_do' 23 | 24 | 25 | def test_netlist_1(test_dir): 26 | """ 1) Test netlist creation. 27 | 2) Output file already exists. """ 28 | prj = 'good-project' 29 | net = prj+'.net' 30 | ctx = context.TestContextSCH(test_dir, 'Netlist', prj) 31 | # Force removing the .net 32 | ctx.create_dummy_out_file(net) 33 | cmd = [PROG, '-vvv', 'netlist'] 34 | ctx.run(cmd) 35 | ctx.expect_out_file(net) 36 | ctx.search_in_file(net, [r'\(node \(ref "?R1"?\) \(pin "?1"?\)( \(pinfunction "1"\))?( \(pintype "passive"\))?\)', 37 | r'\(node \(ref "?R1"?\) \(pin "?2"?\)( \(pinfunction "2"\))?( \(pintype "passive"\))?\)', 38 | r'\(export \(version "?[DE]"?\)']) 39 | ctx.clean_up() 40 | 41 | 42 | def test_ipc_netlist(test_dir): 43 | prj = 'good-project' 44 | net = prj+'.d356' 45 | ctx = context.TestContext(test_dir, 'IPC_Netlist', prj) 46 | cmd = ['pcbnew_do', '-vv', 'ipc_netlist', '-o', net] 47 | ctx.run(cmd) 48 | ctx.expect_out_file(net) 49 | ctx.clean_up() 50 | -------------------------------------------------------------------------------- /tests/kicad8/missing-project/missing-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_netclasses": [], 7 | "hidden_nets": [], 8 | "high_contrast_mode": 0, 9 | "net_color_mode": 1, 10 | "opacity": { 11 | "images": 0.6, 12 | "pads": 1.0, 13 | "tracks": 1.0, 14 | "vias": 1.0, 15 | "zones": 0.6 16 | }, 17 | "ratsnest_display_mode": 0, 18 | "selection_filter": { 19 | "dimensions": true, 20 | "footprints": true, 21 | "graphics": true, 22 | "keepouts": true, 23 | "lockedItems": true, 24 | "otherItems": true, 25 | "pads": true, 26 | "text": true, 27 | "tracks": true, 28 | "vias": true, 29 | "zones": true 30 | }, 31 | "visible_items": [ 32 | 0, 33 | 1, 34 | 2, 35 | 3, 36 | 4, 37 | 5, 38 | 8, 39 | 9, 40 | 10, 41 | 11, 42 | 12, 43 | 13, 44 | 14, 45 | 15, 46 | 16, 47 | 17, 48 | 18, 49 | 19, 50 | 20, 51 | 21, 52 | 22, 53 | 23, 54 | 24, 55 | 25, 56 | 26, 57 | 27, 58 | 28, 59 | 29, 60 | 30, 61 | 32, 62 | 33, 63 | 34, 64 | 35, 65 | 36 66 | ], 67 | "visible_layers": "fffffff_ffffffff", 68 | "zone_display_mode": 0 69 | }, 70 | "git": { 71 | "repo_password": "", 72 | "repo_type": "", 73 | "repo_username": "", 74 | "ssh_key": "" 75 | }, 76 | "meta": { 77 | "filename": "missing-project.kicad_prl", 78 | "version": 3 79 | }, 80 | "project": { 81 | "files": [] 82 | } 83 | } 84 | -------------------------------------------------------------------------------- /tests/kicad6/missing-lib/missing-lib.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 1.0 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 6, 37 | 8, 38 | 9, 39 | 10, 40 | 11, 41 | 12, 42 | 13, 43 | 14, 44 | 15, 45 | 16, 46 | 17, 47 | 18, 48 | 19, 49 | 20, 50 | 21, 51 | 22, 52 | 24, 53 | 25, 54 | 26, 55 | 27, 56 | 34, 57 | 35, 58 | 36, 59 | 37, 60 | 38 61 | ], 62 | "visible_layers": "007ffff_ffffffff", 63 | "zone_display_mode": 0 64 | }, 65 | "meta": { 66 | "filename": "missing-lib.kicad_prl", 67 | "version": 3 68 | }, 69 | "project": { 70 | "files": [ 71 | { 72 | "name": "missing-lib.kicad_sch", 73 | "open": false, 74 | "window": { 75 | "display": 0, 76 | "maximized": true, 77 | "pos_x": 381, 78 | "pos_y": 333, 79 | "size_x": 585, 80 | "size_y": 400 81 | } 82 | } 83 | ] 84 | } 85 | } 86 | -------------------------------------------------------------------------------- /tests/kicad6/fail-project/fail-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 1.0 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 6, 37 | 8, 38 | 9, 39 | 10, 40 | 11, 41 | 12, 42 | 13, 43 | 14, 44 | 15, 45 | 16, 46 | 17, 47 | 18, 48 | 19, 49 | 20, 50 | 21, 51 | 22, 52 | 23, 53 | 24, 54 | 25, 55 | 26, 56 | 34, 57 | 35, 58 | 36, 59 | 37, 60 | 38 61 | ], 62 | "visible_layers": "007ffff_ffffffff", 63 | "zone_display_mode": 0 64 | }, 65 | "meta": { 66 | "filename": "fail-project.kicad_prl", 67 | "version": 3 68 | }, 69 | "project": { 70 | "files": [ 71 | { 72 | "name": "fail-project.kicad_sch", 73 | "open": false, 74 | "window": { 75 | "display": 0, 76 | "maximized": true, 77 | "pos_x": 381, 78 | "pos_y": 37, 79 | "size_x": 1440, 80 | "size_y": 451 81 | } 82 | } 83 | ] 84 | } 85 | } 86 | -------------------------------------------------------------------------------- /tests/kicad6/warning-project/warning-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 47, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 1.0 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 6, 37 | 8, 38 | 9, 39 | 10, 40 | 11, 41 | 12, 42 | 13, 43 | 14, 44 | 15, 45 | 16, 46 | 17, 47 | 18, 48 | 19, 49 | 20, 50 | 21, 51 | 22, 52 | 23, 53 | 24, 54 | 25, 55 | 26, 56 | 34, 57 | 35, 58 | 36, 59 | 37, 60 | 38 61 | ], 62 | "visible_layers": "fffffff_ffffffff", 63 | "zone_display_mode": 0 64 | }, 65 | "meta": { 66 | "filename": "warning-project.kicad_prl", 67 | "version": 3 68 | }, 69 | "project": { 70 | "files": [ 71 | { 72 | "name": "warning-project.kicad_sch", 73 | "open": false, 74 | "window": { 75 | "display": 0, 76 | "maximized": false, 77 | "pos_x": 752, 78 | "pos_y": 556, 79 | "size_x": 1616, 80 | "size_y": 1257 81 | } 82 | } 83 | ] 84 | } 85 | } 86 | -------------------------------------------------------------------------------- /tests/kicad6/zone-refill/zone-refill.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 31, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 1.0 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 6, 37 | 8, 38 | 9, 39 | 10, 40 | 11, 41 | 12, 42 | 13, 43 | 14, 44 | 15, 45 | 16, 46 | 17, 47 | 18, 48 | 19, 49 | 20, 50 | 21, 51 | 22, 52 | 23, 53 | 24, 54 | 25, 55 | 26, 56 | 27, 57 | 28, 58 | 29, 59 | 30, 60 | 31, 61 | 36, 62 | 37, 63 | 38 64 | ], 65 | "visible_layers": "007ffff_ffffffff", 66 | "zone_display_mode": 0 67 | }, 68 | "meta": { 69 | "filename": "zone-refill.kicad_prl", 70 | "version": 2 71 | }, 72 | "project": { 73 | "files": [ 74 | { 75 | "name": "zone-refill.kicad_pcb", 76 | "open": false, 77 | "window": { 78 | "display": 0, 79 | "maximized": true, 80 | "pos_x": -2, 81 | "pos_y": 1, 82 | "size_x": 1366, 83 | "size_y": 410 84 | } 85 | } 86 | ] 87 | } 88 | } 89 | -------------------------------------------------------------------------------- /tests/kicad7/fail-project/fail-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch (version 20230121) (generator eeschema) 2 | 3 | (uuid 87c78429-be2b-40ed-8d3b-56cb9666a56f) 4 | 5 | (paper "A4") 6 | 7 | (lib_symbols 8 | ) 9 | 10 | 11 | (wire (pts (xy 111.76 63.5) (xy 137.16 63.5)) 12 | (stroke (width 0) (type default)) 13 | (uuid da6d10cb-92aa-4b78-ab10-321cb0ff8fb3) 14 | ) 15 | 16 | (sheet (at 81.28 53.34) (size 30.48 40.64) 17 | (stroke (width 0) (type solid)) 18 | (fill (color 0 0 0 0.0000)) 19 | (uuid 00000000-0000-0000-0000-00005ca71704) 20 | (property "Sheetname" "Power" (at 81.28 52.7045 0) 21 | (effects (font (size 1.27 1.27)) (justify left bottom)) 22 | ) 23 | (property "Sheetfile" "power.kicad_sch" (at 81.28 90.9325 0) 24 | (effects (font (size 1.27 1.27)) (justify left top)) 25 | ) 26 | (pin "VCC" output (at 111.76 63.5 0) 27 | (effects (font (size 1.27 1.27)) (justify right)) 28 | (uuid 7e969d15-6cc0-4258-8b27-586608a21adb) 29 | ) 30 | (instances 31 | (project "fail-project" 32 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" (page "2")) 33 | ) 34 | ) 35 | ) 36 | 37 | (sheet (at 137.16 53.34) (size 33.02 40.64) 38 | (stroke (width 0) (type solid)) 39 | (fill (color 0 0 0 0.0000)) 40 | (uuid 00000000-0000-0000-0000-00005ca75bc1) 41 | (property "Sheetname" "logic" (at 137.16 52.7045 0) 42 | (effects (font (size 1.27 1.27)) (justify left bottom)) 43 | ) 44 | (property "Sheetfile" "logic.kicad_sch" (at 137.16 90.1705 0) 45 | (effects (font (size 1.27 1.27)) (justify left top)) 46 | ) 47 | (pin "VCC" input (at 137.16 63.5 180) 48 | (effects (font (size 1.27 1.27)) (justify left)) 49 | (uuid 6ca3c38c-4e71-4202-b6c1-1b25f04a27ae) 50 | ) 51 | (instances 52 | (project "fail-project" 53 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" (page "3")) 54 | ) 55 | ) 56 | ) 57 | 58 | (sheet_instances 59 | (path "/" (page "1")) 60 | ) 61 | ) 62 | -------------------------------------------------------------------------------- /tests/kicad7/good-project/good-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch (version 20230121) (generator eeschema) 2 | 3 | (uuid 87c78429-be2b-40ed-8d3b-56cb9666a56f) 4 | 5 | (paper "A4") 6 | 7 | (lib_symbols 8 | ) 9 | 10 | 11 | (wire (pts (xy 110.49 63.5) (xy 138.43 63.5)) 12 | (stroke (width 0) (type default)) 13 | (uuid 08c5f609-eb80-4144-aeb8-3504aa93de6a) 14 | ) 15 | 16 | (sheet (at 81.28 54.61) (size 29.21 36.83) 17 | (stroke (width 0) (type solid)) 18 | (fill (color 0 0 0 0.0000)) 19 | (uuid 00000000-0000-0000-0000-00005ca71704) 20 | (property "Sheetname" "Power" (at 81.28 53.9745 0) 21 | (effects (font (size 1.27 1.27)) (justify left bottom)) 22 | ) 23 | (property "Sheetfile" "power.kicad_sch" (at 81.28 92.2025 0) 24 | (effects (font (size 1.27 1.27)) (justify left top)) 25 | ) 26 | (pin "VCC" output (at 110.49 63.5 0) 27 | (effects (font (size 1.27 1.27)) (justify right)) 28 | (uuid e83e0227-ac0f-4180-82bd-68d3a7b56476) 29 | ) 30 | (instances 31 | (project "good-project" 32 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" (page "2")) 33 | ) 34 | ) 35 | ) 36 | 37 | (sheet (at 138.43 55.88) (size 31.75 35.56) 38 | (stroke (width 0) (type solid)) 39 | (fill (color 0 0 0 0.0000)) 40 | (uuid 00000000-0000-0000-0000-00005ca75bc1) 41 | (property "Sheetname" "logic" (at 138.43 55.2445 0) 42 | (effects (font (size 1.27 1.27)) (justify left bottom)) 43 | ) 44 | (property "Sheetfile" "logic.kicad_sch" (at 138.43 92.7105 0) 45 | (effects (font (size 1.27 1.27)) (justify left top)) 46 | ) 47 | (pin "VCC" input (at 138.43 63.5 180) 48 | (effects (font (size 1.27 1.27)) (justify left)) 49 | (uuid 7e969d15-6cc0-4258-8b27-586608a21adb) 50 | ) 51 | (instances 52 | (project "good-project" 53 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" (page "3")) 54 | ) 55 | ) 56 | ) 57 | 58 | (sheet_instances 59 | (path "/" (page "1")) 60 | ) 61 | ) 62 | -------------------------------------------------------------------------------- /tests/kicad7/warning-project/warning-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch (version 20230121) (generator eeschema) 2 | 3 | (uuid 87c78429-be2b-40ed-8d3b-56cb9666a56f) 4 | 5 | (paper "A4") 6 | 7 | (lib_symbols 8 | ) 9 | 10 | 11 | (wire (pts (xy 111.76 63.5) (xy 137.16 63.5)) 12 | (stroke (width 0) (type default)) 13 | (uuid da6d10cb-92aa-4b78-ab10-321cb0ff8fb3) 14 | ) 15 | 16 | (sheet (at 81.28 53.34) (size 30.48 40.64) 17 | (stroke (width 0) (type solid)) 18 | (fill (color 0 0 0 0.0000)) 19 | (uuid 00000000-0000-0000-0000-00005ca71704) 20 | (property "Sheetname" "Power" (at 81.28 52.7045 0) 21 | (effects (font (size 1.27 1.27)) (justify left bottom)) 22 | ) 23 | (property "Sheetfile" "power.kicad_sch" (at 81.28 90.9325 0) 24 | (effects (font (size 1.27 1.27)) (justify left top)) 25 | ) 26 | (pin "VCC" output (at 111.76 63.5 0) 27 | (effects (font (size 1.27 1.27)) (justify right)) 28 | (uuid 7e969d15-6cc0-4258-8b27-586608a21adb) 29 | ) 30 | (instances 31 | (project "warning-project" 32 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" (page "2")) 33 | ) 34 | ) 35 | ) 36 | 37 | (sheet (at 137.16 53.34) (size 33.02 40.64) 38 | (stroke (width 0) (type solid)) 39 | (fill (color 0 0 0 0.0000)) 40 | (uuid 00000000-0000-0000-0000-00005ca75bc1) 41 | (property "Sheetname" "logic" (at 137.16 52.7045 0) 42 | (effects (font (size 1.27 1.27)) (justify left bottom)) 43 | ) 44 | (property "Sheetfile" "logic.kicad_sch" (at 137.16 90.1705 0) 45 | (effects (font (size 1.27 1.27)) (justify left top)) 46 | ) 47 | (pin "VCC" input (at 137.16 63.5 180) 48 | (effects (font (size 1.27 1.27)) (justify left)) 49 | (uuid 6ca3c38c-4e71-4202-b6c1-1b25f04a27ae) 50 | ) 51 | (instances 52 | (project "warning-project" 53 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" (page "3")) 54 | ) 55 | ) 56 | ) 57 | 58 | (sheet_instances 59 | (path "/" (page "1")) 60 | ) 61 | ) 62 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/fail-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # CP-passive 46 | # 47 | DEF CP-passive C 0 40 N N 1 F N 48 | F0 "C" 0 55 40 H V C CNN 49 | F1 "CP-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 54 | S -35 20 -15 20 0 1 0 N 55 | S -25 25 -25 10 0 1 0 N 56 | S -25 30 -25 25 0 1 0 N 57 | P 2 0 1 0 -25 0 -50 0 N 58 | P 2 0 1 0 -25 0 -15 0 N 59 | P 2 0 1 0 -10 15 -10 -15 N 60 | P 2 0 1 0 25 0 10 0 N 61 | P 2 0 1 0 50 0 25 0 N 62 | X 1 1 -50 0 0 R 25 25 1 1 I 63 | X 2 2 50 0 0 R 25 25 1 1 I 64 | ENDDRAW 65 | ENDDEF 66 | # 67 | # R-passive 68 | # 69 | DEF R-passive R 0 40 N N 1 F N 70 | F0 "R" 0 50 40 H V C CNN 71 | F1 "R-passive" 0 -50 40 H V C CNN 72 | F2 "" 0 0 60 H V C CNN 73 | F3 "" 0 0 60 H V C CNN 74 | DRAW 75 | S 25 10 -25 -10 0 1 0 f 76 | P 2 0 1 0 -25 0 -50 0 N 77 | P 2 0 1 0 50 0 25 0 N 78 | X 1 1 -50 0 0 R 25 25 1 1 P 79 | X 2 2 50 0 0 R 25 25 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | #End Library 84 | -------------------------------------------------------------------------------- /tests/kicad6/fail-project/fail-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # CP-passive 46 | # 47 | DEF CP-passive C 0 40 N N 1 F N 48 | F0 "C" 0 55 40 H V C CNN 49 | F1 "CP-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 54 | S -35 20 -15 20 0 1 0 N 55 | S -25 25 -25 10 0 1 0 N 56 | S -25 30 -25 25 0 1 0 N 57 | P 2 0 1 0 -25 0 -50 0 N 58 | P 2 0 1 0 -25 0 -15 0 N 59 | P 2 0 1 0 -10 15 -10 -15 N 60 | P 2 0 1 0 25 0 10 0 N 61 | P 2 0 1 0 50 0 25 0 N 62 | X 1 1 -50 0 0 R 25 25 1 1 I 63 | X 2 2 50 0 0 R 25 25 1 1 I 64 | ENDDRAW 65 | ENDDEF 66 | # 67 | # R-passive 68 | # 69 | DEF R-passive R 0 40 N N 1 F N 70 | F0 "R" 0 50 40 H V C CNN 71 | F1 "R-passive" 0 -50 40 H V C CNN 72 | F2 "" 0 0 60 H V C CNN 73 | F3 "" 0 0 60 H V C CNN 74 | DRAW 75 | S 25 10 -25 -10 0 1 0 f 76 | P 2 0 1 0 -25 0 -50 0 N 77 | P 2 0 1 0 50 0 25 0 N 78 | X 1 1 -50 0 0 R 25 25 1 1 P 79 | X 2 2 50 0 0 R 25 25 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | #End Library 84 | -------------------------------------------------------------------------------- /tests/kicad7/fail-project/fail-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # CP-passive 46 | # 47 | DEF CP-passive C 0 40 N N 1 F N 48 | F0 "C" 0 55 40 H V C CNN 49 | F1 "CP-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 54 | S -35 20 -15 20 0 1 0 N 55 | S -25 25 -25 10 0 1 0 N 56 | S -25 30 -25 25 0 1 0 N 57 | P 2 0 1 0 -25 0 -50 0 N 58 | P 2 0 1 0 -25 0 -15 0 N 59 | P 2 0 1 0 -10 15 -10 -15 N 60 | P 2 0 1 0 25 0 10 0 N 61 | P 2 0 1 0 50 0 25 0 N 62 | X 1 1 -50 0 0 R 25 25 1 1 I 63 | X 2 2 50 0 0 R 25 25 1 1 I 64 | ENDDRAW 65 | ENDDEF 66 | # 67 | # R-passive 68 | # 69 | DEF R-passive R 0 40 N N 1 F N 70 | F0 "R" 0 50 40 H V C CNN 71 | F1 "R-passive" 0 -50 40 H V C CNN 72 | F2 "" 0 0 60 H V C CNN 73 | F3 "" 0 0 60 H V C CNN 74 | DRAW 75 | S 25 10 -25 -10 0 1 0 f 76 | P 2 0 1 0 -25 0 -50 0 N 77 | P 2 0 1 0 50 0 25 0 N 78 | X 1 1 -50 0 0 R 25 25 1 1 P 79 | X 2 2 50 0 0 R 25 25 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | #End Library 84 | -------------------------------------------------------------------------------- /tests/kicad8/fail-project/fail-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # CP-passive 46 | # 47 | DEF CP-passive C 0 40 N N 1 F N 48 | F0 "C" 0 55 40 H V C CNN 49 | F1 "CP-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 54 | S -35 20 -15 20 0 1 0 N 55 | S -25 25 -25 10 0 1 0 N 56 | S -25 30 -25 25 0 1 0 N 57 | P 2 0 1 0 -25 0 -50 0 N 58 | P 2 0 1 0 -25 0 -15 0 N 59 | P 2 0 1 0 -10 15 -10 -15 N 60 | P 2 0 1 0 25 0 10 0 N 61 | P 2 0 1 0 50 0 25 0 N 62 | X 1 1 -50 0 0 R 25 25 1 1 I 63 | X 2 2 50 0 0 R 25 25 1 1 I 64 | ENDDRAW 65 | ENDDEF 66 | # 67 | # R-passive 68 | # 69 | DEF R-passive R 0 40 N N 1 F N 70 | F0 "R" 0 50 40 H V C CNN 71 | F1 "R-passive" 0 -50 40 H V C CNN 72 | F2 "" 0 0 60 H V C CNN 73 | F3 "" 0 0 60 H V C CNN 74 | DRAW 75 | S 25 10 -25 -10 0 1 0 f 76 | P 2 0 1 0 -25 0 -50 0 N 77 | P 2 0 1 0 50 0 25 0 N 78 | X 1 1 -50 0 0 R 25 25 1 1 P 79 | X 2 2 50 0 0 R 25 25 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | #End Library 84 | -------------------------------------------------------------------------------- /tests/kicad7/warning-project/warning-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # CP-passive 46 | # 47 | DEF CP-passive C 0 40 N N 1 F N 48 | F0 "C" 0 55 40 H V C CNN 49 | F1 "CP-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 54 | S -35 20 -15 20 0 1 0 N 55 | S -25 25 -25 10 0 1 0 N 56 | S -25 30 -25 25 0 1 0 N 57 | P 2 0 1 0 -25 0 -50 0 N 58 | P 2 0 1 0 -25 0 -15 0 N 59 | P 2 0 1 0 -10 15 -10 -15 N 60 | P 2 0 1 0 25 0 10 0 N 61 | P 2 0 1 0 50 0 25 0 N 62 | X 1 1 -50 0 0 R 25 25 1 1 I 63 | X 2 2 50 0 0 R 25 25 1 1 I 64 | ENDDRAW 65 | ENDDEF 66 | # 67 | # R-passive 68 | # 69 | DEF R-passive R 0 40 N N 1 F N 70 | F0 "R" 0 50 40 H V C CNN 71 | F1 "R-passive" 0 -50 40 H V C CNN 72 | F2 "" 0 0 60 H V C CNN 73 | F3 "" 0 0 60 H V C CNN 74 | DRAW 75 | S 25 10 -25 -10 0 1 0 f 76 | P 2 0 1 0 -25 0 -50 0 N 77 | P 2 0 1 0 50 0 25 0 N 78 | X 1 1 -50 0 0 R 25 25 1 1 P 79 | X 2 2 50 0 0 R 25 25 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | #End Library 84 | -------------------------------------------------------------------------------- /tests/kicad8/warning-project/warning-project-rescue.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # C-passive 5 | # 6 | DEF C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # CONN_01X02-conn 24 | # 25 | DEF CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # CP-passive 46 | # 47 | DEF CP-passive C 0 40 N N 1 F N 48 | F0 "C" 0 55 40 H V C CNN 49 | F1 "CP-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 54 | S -35 20 -15 20 0 1 0 N 55 | S -25 25 -25 10 0 1 0 N 56 | S -25 30 -25 25 0 1 0 N 57 | P 2 0 1 0 -25 0 -50 0 N 58 | P 2 0 1 0 -25 0 -15 0 N 59 | P 2 0 1 0 -10 15 -10 -15 N 60 | P 2 0 1 0 25 0 10 0 N 61 | P 2 0 1 0 50 0 25 0 N 62 | X 1 1 -50 0 0 R 25 25 1 1 I 63 | X 2 2 50 0 0 R 25 25 1 1 I 64 | ENDDRAW 65 | ENDDEF 66 | # 67 | # R-passive 68 | # 69 | DEF R-passive R 0 40 N N 1 F N 70 | F0 "R" 0 50 40 H V C CNN 71 | F1 "R-passive" 0 -50 40 H V C CNN 72 | F2 "" 0 0 60 H V C CNN 73 | F3 "" 0 0 60 H V C CNN 74 | DRAW 75 | S 25 10 -25 -10 0 1 0 f 76 | P 2 0 1 0 -25 0 -50 0 N 77 | P 2 0 1 0 50 0 25 0 N 78 | X 1 1 -50 0 0 R 25 25 1 1 P 79 | X 2 2 50 0 0 R 25 25 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | #End Library 84 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/good-project.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 1.0 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 6, 37 | 8, 38 | 9, 39 | 10, 40 | 11, 41 | 12, 42 | 13, 43 | 14, 44 | 15, 45 | 16, 46 | 17, 47 | 18, 48 | 19, 49 | 20, 50 | 21, 51 | 22, 52 | 23, 53 | 24, 54 | 25, 55 | 26, 56 | 34, 57 | 35, 58 | 36, 59 | 37, 60 | 38 61 | ], 62 | "visible_layers": "007ffff_ffffffff", 63 | "zone_display_mode": 0 64 | }, 65 | "meta": { 66 | "filename": "good-project.kicad_prl", 67 | "version": 3 68 | }, 69 | "project": { 70 | "files": [ 71 | { 72 | "name": "good-project.kicad_sch", 73 | "open": false, 74 | "window": { 75 | "display": 0, 76 | "maximized": true, 77 | "pos_x": 381, 78 | "pos_y": 37, 79 | "size_x": 1440, 80 | "size_y": 377 81 | } 82 | }, 83 | { 84 | "name": "good-project.kicad_pcb", 85 | "open": false, 86 | "window": { 87 | "display": 0, 88 | "maximized": true, 89 | "pos_x": -2, 90 | "pos_y": 1, 91 | "size_x": 1366, 92 | "size_y": 812 93 | } 94 | } 95 | ] 96 | } 97 | } 98 | -------------------------------------------------------------------------------- /tests/pcbnew/test_export_vrml.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Copyright (c) 2022-2023 Salvador E. Tropea 3 | # Copyright (c) 2022-2023 Instituto Nacional de Tecnologïa Industrial 4 | # License: Apache 2.0 5 | # Project: KiAuto (formerly kicad-automation-scripts) 6 | """ 7 | Tests for 'pcbnew_do export_vrml' 8 | 9 | For debug information use: 10 | pytest-3 --log-cli-level debug 11 | 12 | """ 13 | import os 14 | import sys 15 | # Look for the 'utils' module from where the script is running 16 | script_dir = os.path.dirname(os.path.abspath(__file__)) 17 | prev_dir = os.path.dirname(script_dir) 18 | sys.path.insert(0, prev_dir) 19 | # Utils import 20 | from utils import context 21 | sys.path.insert(0, os.path.dirname(prev_dir)) 22 | 23 | PROG = 'pcbnew_do' 24 | 25 | 26 | def test_export_vrml_1(test_dir): 27 | """ Generate a GenCAD file with no special options test """ 28 | ctx = context.TestContext(test_dir, 'export_vrml_1', 'good-project') 29 | cmd = [PROG, '-vv', 'export_vrml', '--output_name', 'good.wrl'] 30 | ctx.run(cmd) 31 | ctx.expect_out_file('good.wrl') 32 | ctx.clean_up() 33 | 34 | 35 | def test_export_vrml_2(test_dir): 36 | """ Generate a GenCAD file 3D models separated """ 37 | ctx = context.TestContext(test_dir, 'export_vrml_2', 'good-project') 38 | cmd = [PROG, '-vv', 'export_vrml', '--dir_models', '3DModels', '--output_name', 'good.wrl'] 39 | ctx.run(cmd) 40 | vrml_file = ctx.expect_out_file('good.wrl') 41 | with open(vrml_file, 'rt') as f: 42 | vrml = f.read() 43 | models = ['B02B-JWPF-SK-R.wrl', 'C_0402_1005Metric.wrl', 'R_0402_1005Metric.wrl'] 44 | for m in models: 45 | m_f = os.path.join('3DModels', m) 46 | ctx.expect_out_file(m_f) 47 | assert 'url "{}"'.format(m_f) in vrml 48 | ctx.clean_up() 49 | 50 | 51 | def test_export_vrml_3(test_dir): 52 | """ Generate a GenCAD file with some options """ 53 | ctx = context.TestContext(test_dir, 'export_vrml_3', 'good-project') 54 | cmd = [PROG, '-vv', 'export_vrml', '-x', '1', '-y', '1', '-u', 'inches', '-U', 'inches', '--dir_models', '3DModels', 55 | '--output_name', 'good.wrl'] 56 | ctx.run(cmd) 57 | ctx.expect_out_file('good.wrl') 58 | ctx.clean_up() 59 | -------------------------------------------------------------------------------- /tests/kicad6/missing-project/missing-project.kicad_pcb: -------------------------------------------------------------------------------- 1 | (kicad_pcb (version 20211014) (generator pcbnew) 2 | 3 | (general 4 | (thickness 1.6) 5 | ) 6 | 7 | (paper "A4") 8 | (layers 9 | (0 "F.Cu" signal) 10 | (31 "B.Cu" signal) 11 | (32 "B.Adhes" user "B.Adhesive") 12 | (33 "F.Adhes" user "F.Adhesive") 13 | (34 "B.Paste" user) 14 | (35 "F.Paste" user) 15 | (36 "B.SilkS" user "B.Silkscreen") 16 | (37 "F.SilkS" user "F.Silkscreen") 17 | (38 "B.Mask" user) 18 | (39 "F.Mask" user) 19 | (40 "Dwgs.User" user "User.Drawings") 20 | (41 "Cmts.User" user "User.Comments") 21 | (42 "Eco1.User" user "User.Eco1") 22 | (43 "Eco2.User" user "User.Eco2") 23 | (44 "Edge.Cuts" user) 24 | (45 "Margin" user) 25 | (46 "B.CrtYd" user "B.Courtyard") 26 | (47 "F.CrtYd" user "F.Courtyard") 27 | (48 "B.Fab" user) 28 | (49 "F.Fab" user) 29 | (50 "User.1" user) 30 | (51 "User.2" user) 31 | (52 "User.3" user) 32 | (53 "User.4" user) 33 | (54 "User.5" user) 34 | (55 "User.6" user) 35 | (56 "User.7" user) 36 | (57 "User.8" user) 37 | (58 "User.9" user) 38 | ) 39 | 40 | (setup 41 | (pad_to_mask_clearance 0) 42 | (pcbplotparams 43 | (layerselection 0x00010fc_ffffffff) 44 | (disableapertmacros false) 45 | (usegerberextensions false) 46 | (usegerberattributes true) 47 | (usegerberadvancedattributes true) 48 | (creategerberjobfile true) 49 | (svguseinch false) 50 | (svgprecision 6) 51 | (excludeedgelayer true) 52 | (plotframeref false) 53 | (viasonmask false) 54 | (mode 1) 55 | (useauxorigin false) 56 | (hpglpennumber 1) 57 | (hpglpenspeed 20) 58 | (hpglpendiameter 15.000000) 59 | (dxfpolygonmode true) 60 | (dxfimperialunits true) 61 | (dxfusepcbnewfont true) 62 | (psnegative false) 63 | (psa4output false) 64 | (plotreference true) 65 | (plotvalue true) 66 | (plotinvisibletext false) 67 | (sketchpadsonfab false) 68 | (subtractmaskfromsilk false) 69 | (outputformat 1) 70 | (mirror false) 71 | (drillshape 1) 72 | (scaleselection 1) 73 | (outputdirectory "") 74 | ) 75 | ) 76 | 77 | (net 0 "") 78 | 79 | ) 80 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/good-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # good-project-rescue_C-passive 5 | # 6 | DEF good-project-rescue_C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "good-project-rescue_C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # good-project-rescue_CONN_01X02-conn 24 | # 25 | DEF good-project-rescue_CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "good-project-rescue_CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # good-project-rescue_R-passive 46 | # 47 | DEF good-project-rescue_R-passive R 0 40 N N 1 F N 48 | F0 "R" 0 50 40 H V C CNN 49 | F1 "good-project-rescue_R-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | S 25 10 -25 -10 0 1 0 f 54 | P 2 0 1 0 -25 0 -50 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | # power_GND 62 | # 63 | DEF power_GND #PWR 0 0 Y Y 1 F P 64 | F0 "#PWR" 0 -250 50 H I C CNN 65 | F1 "power_GND" 0 -150 50 H V C CNN 66 | F2 "" 0 0 50 H I C CNN 67 | F3 "" 0 0 50 H I C CNN 68 | DRAW 69 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 70 | X GND 1 0 0 0 D 50 50 1 1 W N 71 | ENDDRAW 72 | ENDDEF 73 | # 74 | # power_PWR_FLAG 75 | # 76 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 77 | F0 "#FLG" 0 75 50 H I C CNN 78 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 79 | F2 "" 0 0 50 H I C CNN 80 | F3 "" 0 0 50 H I C CNN 81 | DRAW 82 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 83 | X pwr 1 0 0 0 U 50 50 0 0 w 84 | ENDDRAW 85 | ENDDEF 86 | # 87 | #End Library 88 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/good-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # good-project-rescue_C-passive 5 | # 6 | DEF good-project-rescue_C-passive C 0 40 N N 1 F N 7 | F0 "C" 0 50 40 H V C CNN 8 | F1 "good-project-rescue_C-passive" 0 -50 40 H V C CNN 9 | F2 "" 0 0 60 H V C CNN 10 | F3 "" 0 0 60 H V C CNN 11 | DRAW 12 | P 2 0 1 0 -25 0 -50 0 N 13 | P 2 0 1 0 -25 0 -15 0 N 14 | P 2 0 1 0 -10 15 -10 -15 N 15 | P 2 0 1 0 10 15 10 -15 N 16 | P 2 0 1 0 25 0 10 0 N 17 | P 2 0 1 0 50 0 25 0 N 18 | X 1 1 -50 0 0 R 25 25 1 1 P 19 | X 2 2 50 0 0 R 25 25 1 1 P 20 | ENDDRAW 21 | ENDDEF 22 | # 23 | # good-project-rescue_CONN_01X02-conn 24 | # 25 | DEF good-project-rescue_CONN_01X02-conn P 0 40 Y N 1 F N 26 | F0 "P" 0 150 50 H V C CNN 27 | F1 "good-project-rescue_CONN_01X02-conn" 100 0 50 V V C CNN 28 | F2 "" 0 0 50 H V C CNN 29 | F3 "" 0 0 50 H V C CNN 30 | $FPLIST 31 | Pin_Header_Straight_1X02 32 | Pin_Header_Angled_1X02 33 | Socket_Strip_Straight_1X02 34 | Socket_Strip_Angled_1X02 35 | $ENDFPLIST 36 | DRAW 37 | S -50 -45 10 -55 0 1 0 N 38 | S -50 55 10 45 0 1 0 N 39 | S -50 100 50 -100 0 1 0 N 40 | X P1 1 -200 50 150 R 50 50 1 1 P 41 | X P2 2 -200 -50 150 R 50 50 1 1 P 42 | ENDDRAW 43 | ENDDEF 44 | # 45 | # good-project-rescue_R-passive 46 | # 47 | DEF good-project-rescue_R-passive R 0 40 N N 1 F N 48 | F0 "R" 0 50 40 H V C CNN 49 | F1 "good-project-rescue_R-passive" 0 -50 40 H V C CNN 50 | F2 "" 0 0 60 H V C CNN 51 | F3 "" 0 0 60 H V C CNN 52 | DRAW 53 | S 25 10 -25 -10 0 1 0 f 54 | P 2 0 1 0 -25 0 -50 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | # power_GND 62 | # 63 | DEF power_GND #PWR 0 0 Y Y 1 F P 64 | F0 "#PWR" 0 -250 50 H I C CNN 65 | F1 "power_GND" 0 -150 50 H V C CNN 66 | F2 "" 0 0 50 H I C CNN 67 | F3 "" 0 0 50 H I C CNN 68 | DRAW 69 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 70 | X GND 1 0 0 0 D 50 50 1 1 W N 71 | ENDDRAW 72 | ENDDEF 73 | # 74 | # power_PWR_FLAG 75 | # 76 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 77 | F0 "#FLG" 0 75 50 H I C CNN 78 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 79 | F2 "" 0 0 50 H I C CNN 80 | F3 "" 0 0 50 H I C CNN 81 | DRAW 82 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 83 | X pwr 1 0 0 0 U 50 50 0 0 w 84 | ENDDRAW 85 | ENDDEF 86 | # 87 | #End Library 88 | -------------------------------------------------------------------------------- /tests/kicad8/missing-project/missing-project.kicad_pcb: -------------------------------------------------------------------------------- 1 | (kicad_pcb 2 | (version 20240108) 3 | (generator "pcbnew") 4 | (generator_version "8.0") 5 | (general 6 | (thickness 1.6) 7 | (legacy_teardrops no) 8 | ) 9 | (paper "A4") 10 | (layers 11 | (0 "F.Cu" signal) 12 | (31 "B.Cu" signal) 13 | (32 "B.Adhes" user "B.Adhesive") 14 | (33 "F.Adhes" user "F.Adhesive") 15 | (34 "B.Paste" user) 16 | (35 "F.Paste" user) 17 | (36 "B.SilkS" user "B.Silkscreen") 18 | (37 "F.SilkS" user "F.Silkscreen") 19 | (38 "B.Mask" user) 20 | (39 "F.Mask" user) 21 | (40 "Dwgs.User" user "User.Drawings") 22 | (41 "Cmts.User" user "User.Comments") 23 | (42 "Eco1.User" user "User.Eco1") 24 | (43 "Eco2.User" user "User.Eco2") 25 | (44 "Edge.Cuts" user) 26 | (45 "Margin" user) 27 | (46 "B.CrtYd" user "B.Courtyard") 28 | (47 "F.CrtYd" user "F.Courtyard") 29 | (48 "B.Fab" user) 30 | (49 "F.Fab" user) 31 | (50 "User.1" user) 32 | (51 "User.2" user) 33 | (52 "User.3" user) 34 | (53 "User.4" user) 35 | (54 "User.5" user) 36 | (55 "User.6" user) 37 | (56 "User.7" user) 38 | (57 "User.8" user) 39 | (58 "User.9" user) 40 | ) 41 | (setup 42 | (pad_to_mask_clearance 0) 43 | (allow_soldermask_bridges_in_footprints no) 44 | (pcbplotparams 45 | (layerselection 0x00010fc_ffffffff) 46 | (plot_on_all_layers_selection 0x0000000_00000000) 47 | (disableapertmacros no) 48 | (usegerberextensions no) 49 | (usegerberattributes yes) 50 | (usegerberadvancedattributes yes) 51 | (creategerberjobfile yes) 52 | (dashed_line_dash_ratio 12.000000) 53 | (dashed_line_gap_ratio 3.000000) 54 | (svgprecision 6) 55 | (plotframeref no) 56 | (viasonmask no) 57 | (mode 1) 58 | (useauxorigin no) 59 | (hpglpennumber 1) 60 | (hpglpenspeed 20) 61 | (hpglpendiameter 15.000000) 62 | (pdf_front_fp_property_popups yes) 63 | (pdf_back_fp_property_popups yes) 64 | (dxfpolygonmode yes) 65 | (dxfimperialunits yes) 66 | (dxfusepcbnewfont yes) 67 | (psnegative no) 68 | (psa4output no) 69 | (plotreference yes) 70 | (plotvalue yes) 71 | (plotfptext yes) 72 | (plotinvisibletext no) 73 | (sketchpadsonfab no) 74 | (subtractmaskfromsilk no) 75 | (outputformat 1) 76 | (mirror no) 77 | (drillshape 1) 78 | (scaleselection 1) 79 | (outputdirectory "") 80 | ) 81 | ) 82 | (net 0 "") 83 | ) -------------------------------------------------------------------------------- /tests/kicad7/missing-project/missing-project.kicad_pcb: -------------------------------------------------------------------------------- 1 | (kicad_pcb (version 20221018) (generator pcbnew) 2 | 3 | (general 4 | (thickness 1.6) 5 | ) 6 | 7 | (paper "A4") 8 | (layers 9 | (0 "F.Cu" signal) 10 | (31 "B.Cu" signal) 11 | (32 "B.Adhes" user "B.Adhesive") 12 | (33 "F.Adhes" user "F.Adhesive") 13 | (34 "B.Paste" user) 14 | (35 "F.Paste" user) 15 | (36 "B.SilkS" user "B.Silkscreen") 16 | (37 "F.SilkS" user "F.Silkscreen") 17 | (38 "B.Mask" user) 18 | (39 "F.Mask" user) 19 | (40 "Dwgs.User" user "User.Drawings") 20 | (41 "Cmts.User" user "User.Comments") 21 | (42 "Eco1.User" user "User.Eco1") 22 | (43 "Eco2.User" user "User.Eco2") 23 | (44 "Edge.Cuts" user) 24 | (45 "Margin" user) 25 | (46 "B.CrtYd" user "B.Courtyard") 26 | (47 "F.CrtYd" user "F.Courtyard") 27 | (48 "B.Fab" user) 28 | (49 "F.Fab" user) 29 | (50 "User.1" user) 30 | (51 "User.2" user) 31 | (52 "User.3" user) 32 | (53 "User.4" user) 33 | (54 "User.5" user) 34 | (55 "User.6" user) 35 | (56 "User.7" user) 36 | (57 "User.8" user) 37 | (58 "User.9" user) 38 | ) 39 | 40 | (setup 41 | (pad_to_mask_clearance 0) 42 | (pcbplotparams 43 | (layerselection 0x00010fc_ffffffff) 44 | (plot_on_all_layers_selection 0x0000000_00000000) 45 | (disableapertmacros false) 46 | (usegerberextensions false) 47 | (usegerberattributes true) 48 | (usegerberadvancedattributes true) 49 | (creategerberjobfile true) 50 | (dashed_line_dash_ratio 12.000000) 51 | (dashed_line_gap_ratio 3.000000) 52 | (svgprecision 6) 53 | (plotframeref false) 54 | (viasonmask false) 55 | (mode 1) 56 | (useauxorigin false) 57 | (hpglpennumber 1) 58 | (hpglpenspeed 20) 59 | (hpglpendiameter 15.000000) 60 | (dxfpolygonmode true) 61 | (dxfimperialunits true) 62 | (dxfusepcbnewfont true) 63 | (psnegative false) 64 | (psa4output false) 65 | (plotreference true) 66 | (plotvalue true) 67 | (plotinvisibletext false) 68 | (sketchpadsonfab false) 69 | (subtractmaskfromsilk false) 70 | (outputformat 1) 71 | (mirror false) 72 | (drillshape 1) 73 | (scaleselection 1) 74 | (outputdirectory "") 75 | ) 76 | ) 77 | 78 | (net 0 "") 79 | 80 | ) 81 | -------------------------------------------------------------------------------- /tests/kicad8/good-project/good-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch 2 | (version 20231120) 3 | (generator "eeschema") 4 | (generator_version "8.0") 5 | (uuid "87c78429-be2b-40ed-8d3b-56cb9666a56f") 6 | (paper "A4") 7 | (lib_symbols) 8 | (wire 9 | (pts 10 | (xy 110.49 63.5) (xy 138.43 63.5) 11 | ) 12 | (stroke 13 | (width 0) 14 | (type default) 15 | ) 16 | (uuid "2a50bf50-479c-4ec9-a8e8-b17f5dd2cfb7") 17 | ) 18 | (sheet 19 | (at 82.55 55.88) 20 | (size 27.94 35.56) 21 | (stroke 22 | (width 0) 23 | (type solid) 24 | ) 25 | (fill 26 | (color 0 0 0 0.0000) 27 | ) 28 | (uuid "00000000-0000-0000-0000-00005ca71704") 29 | (property "Sheetname" "Power" 30 | (at 82.55 55.2445 0) 31 | (effects 32 | (font 33 | (size 1.27 1.27) 34 | ) 35 | (justify left bottom) 36 | ) 37 | ) 38 | (property "Sheetfile" "power.kicad_sch" 39 | (at 82.55 93.4725 0) 40 | (effects 41 | (font 42 | (size 1.27 1.27) 43 | ) 44 | (justify left top) 45 | ) 46 | ) 47 | (pin "VCC" output 48 | (at 110.49 63.5 0) 49 | (effects 50 | (font 51 | (size 1.27 1.27) 52 | ) 53 | (justify right) 54 | ) 55 | (uuid "e83e0227-ac0f-4180-82bd-68d3a7b56476") 56 | ) 57 | (instances 58 | (project "good-project" 59 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" 60 | (page "2") 61 | ) 62 | ) 63 | ) 64 | ) 65 | (sheet 66 | (at 138.43 55.88) 67 | (size 31.496 35.814) 68 | (stroke 69 | (width 0) 70 | (type solid) 71 | ) 72 | (fill 73 | (color 0 0 0 0.0000) 74 | ) 75 | (uuid "00000000-0000-0000-0000-00005ca75bc1") 76 | (property "Sheetname" "logic" 77 | (at 138.43 55.2445 0) 78 | (effects 79 | (font 80 | (size 1.27 1.27) 81 | ) 82 | (justify left bottom) 83 | ) 84 | ) 85 | (property "Sheetfile" "logic.kicad_sch" 86 | (at 138.43 92.7105 0) 87 | (effects 88 | (font 89 | (size 1.27 1.27) 90 | ) 91 | (justify left top) 92 | ) 93 | ) 94 | (pin "VCC" input 95 | (at 138.43 63.5 180) 96 | (effects 97 | (font 98 | (size 1.27 1.27) 99 | ) 100 | (justify left) 101 | ) 102 | (uuid "7e969d15-6cc0-4258-8b27-586608a21adb") 103 | ) 104 | (instances 105 | (project "good-project" 106 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" 107 | (page "3") 108 | ) 109 | ) 110 | ) 111 | ) 112 | (sheet_instances 113 | (path "/" 114 | (page "1") 115 | ) 116 | ) 117 | ) -------------------------------------------------------------------------------- /tests/kicad8/fail-project/fail-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch 2 | (version 20231120) 3 | (generator "eeschema") 4 | (generator_version "8.0") 5 | (uuid "87c78429-be2b-40ed-8d3b-56cb9666a56f") 6 | (paper "A4") 7 | (lib_symbols) 8 | (wire 9 | (pts 10 | (xy 113.03 64.77) (xy 135.89 64.77) 11 | ) 12 | (stroke 13 | (width 0) 14 | (type default) 15 | ) 16 | (uuid "72bc9b20-f26f-4bf8-b14d-da9f1c9fbcfe") 17 | ) 18 | (sheet 19 | (at 81.28 53.34) 20 | (size 31.75 40.64) 21 | (stroke 22 | (width 0) 23 | (type solid) 24 | ) 25 | (fill 26 | (color 0 0 0 0.0000) 27 | ) 28 | (uuid "00000000-0000-0000-0000-00005ca71704") 29 | (property "Sheetname" "Power" 30 | (at 81.28 52.7045 0) 31 | (effects 32 | (font 33 | (size 1.27 1.27) 34 | ) 35 | (justify left bottom) 36 | ) 37 | ) 38 | (property "Sheetfile" "power.kicad_sch" 39 | (at 81.28 90.9325 0) 40 | (effects 41 | (font 42 | (size 1.27 1.27) 43 | ) 44 | (justify left top) 45 | ) 46 | ) 47 | (pin "VCC" output 48 | (at 113.03 64.77 0) 49 | (effects 50 | (font 51 | (size 1.27 1.27) 52 | ) 53 | (justify right) 54 | ) 55 | (uuid "7e969d15-6cc0-4258-8b27-586608a21adb") 56 | ) 57 | (instances 58 | (project "fail-project" 59 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" 60 | (page "2") 61 | ) 62 | ) 63 | ) 64 | ) 65 | (sheet 66 | (at 135.89 53.34) 67 | (size 34.29 40.64) 68 | (stroke 69 | (width 0) 70 | (type solid) 71 | ) 72 | (fill 73 | (color 0 0 0 0.0000) 74 | ) 75 | (uuid "00000000-0000-0000-0000-00005ca75bc1") 76 | (property "Sheetname" "logic" 77 | (at 135.89 52.7045 0) 78 | (effects 79 | (font 80 | (size 1.27 1.27) 81 | ) 82 | (justify left bottom) 83 | ) 84 | ) 85 | (property "Sheetfile" "logic.kicad_sch" 86 | (at 135.89 90.1705 0) 87 | (effects 88 | (font 89 | (size 1.27 1.27) 90 | ) 91 | (justify left top) 92 | ) 93 | ) 94 | (pin "VCC" input 95 | (at 135.89 64.77 180) 96 | (effects 97 | (font 98 | (size 1.27 1.27) 99 | ) 100 | (justify left) 101 | ) 102 | (uuid "6ca3c38c-4e71-4202-b6c1-1b25f04a27ae") 103 | ) 104 | (instances 105 | (project "fail-project" 106 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" 107 | (page "3") 108 | ) 109 | ) 110 | ) 111 | ) 112 | (sheet_instances 113 | (path "/" 114 | (page "1") 115 | ) 116 | ) 117 | ) -------------------------------------------------------------------------------- /tests/kicad8/warning-project/warning-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch 2 | (version 20231120) 3 | (generator "eeschema") 4 | (generator_version "8.0") 5 | (uuid "87c78429-be2b-40ed-8d3b-56cb9666a56f") 6 | (paper "A4") 7 | (lib_symbols) 8 | (wire 9 | (pts 10 | (xy 113.03 64.77) (xy 135.89 64.77) 11 | ) 12 | (stroke 13 | (width 0) 14 | (type default) 15 | ) 16 | (uuid "72bc9b20-f26f-4bf8-b14d-da9f1c9fbcfe") 17 | ) 18 | (sheet 19 | (at 81.28 53.34) 20 | (size 31.75 40.64) 21 | (stroke 22 | (width 0) 23 | (type solid) 24 | ) 25 | (fill 26 | (color 0 0 0 0.0000) 27 | ) 28 | (uuid "00000000-0000-0000-0000-00005ca71704") 29 | (property "Sheetname" "Power" 30 | (at 81.28 52.7045 0) 31 | (effects 32 | (font 33 | (size 1.27 1.27) 34 | ) 35 | (justify left bottom) 36 | ) 37 | ) 38 | (property "Sheetfile" "power.kicad_sch" 39 | (at 81.28 90.9325 0) 40 | (effects 41 | (font 42 | (size 1.27 1.27) 43 | ) 44 | (justify left top) 45 | ) 46 | ) 47 | (pin "VCC" output 48 | (at 113.03 64.77 0) 49 | (effects 50 | (font 51 | (size 1.27 1.27) 52 | ) 53 | (justify right) 54 | ) 55 | (uuid "7e969d15-6cc0-4258-8b27-586608a21adb") 56 | ) 57 | (instances 58 | (project "warning-project" 59 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" 60 | (page "2") 61 | ) 62 | ) 63 | ) 64 | ) 65 | (sheet 66 | (at 135.89 53.34) 67 | (size 34.29 40.64) 68 | (stroke 69 | (width 0) 70 | (type solid) 71 | ) 72 | (fill 73 | (color 0 0 0 0.0000) 74 | ) 75 | (uuid "00000000-0000-0000-0000-00005ca75bc1") 76 | (property "Sheetname" "logic" 77 | (at 135.89 52.7045 0) 78 | (effects 79 | (font 80 | (size 1.27 1.27) 81 | ) 82 | (justify left bottom) 83 | ) 84 | ) 85 | (property "Sheetfile" "logic.kicad_sch" 86 | (at 135.89 90.1705 0) 87 | (effects 88 | (font 89 | (size 1.27 1.27) 90 | ) 91 | (justify left top) 92 | ) 93 | ) 94 | (pin "VCC" input 95 | (at 135.89 64.77 180) 96 | (effects 97 | (font 98 | (size 1.27 1.27) 99 | ) 100 | (justify left) 101 | ) 102 | (uuid "6ca3c38c-4e71-4202-b6c1-1b25f04a27ae") 103 | ) 104 | (instances 105 | (project "warning-project" 106 | (path "/87c78429-be2b-40ed-8d3b-56cb9666a56f" 107 | (page "3") 108 | ) 109 | ) 110 | ) 111 | ) 112 | (sheet_instances 113 | (path "/" 114 | (page "1") 115 | ) 116 | ) 117 | ) -------------------------------------------------------------------------------- /tests/kicad5/kicad4-project/kicad4-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.3 2 | #encoding utf-8 3 | # 4 | # Conn_01x02 5 | # 6 | DEF Conn_01x02 J 0 40 Y N 1 F N 7 | F0 "J" 0 100 50 H V C CNN 8 | F1 "Conn_01x02" 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*:*_??x*mm* 13 | Connector*:*1x??x*mm* 14 | Pin?Header?Straight?1X* 15 | Pin?Header?Angled?1X* 16 | Socket?Strip?Straight?1X* 17 | Socket?Strip?Angled?1X* 18 | $ENDFPLIST 19 | DRAW 20 | S -50 -95 0 -105 1 1 6 N 21 | S -50 5 0 -5 1 1 6 N 22 | S -50 50 50 -150 1 1 10 f 23 | X Pin_1 1 -200 0 150 R 50 50 1 1 P 24 | X Pin_2 2 -200 -100 150 R 50 50 1 1 P 25 | ENDDRAW 26 | ENDDEF 27 | # 28 | # GND 29 | # 30 | DEF GND #PWR 0 0 Y Y 1 F P 31 | F0 "#PWR" 0 -250 50 H I C CNN 32 | F1 "GND" 0 -150 50 H V C CNN 33 | F2 "" 0 0 50 H I C CNN 34 | F3 "" 0 0 50 H I C CNN 35 | DRAW 36 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 37 | X GND 1 0 0 0 D 50 50 1 1 W N 38 | ENDDRAW 39 | ENDDEF 40 | # 41 | # LED 42 | # 43 | DEF LED D 0 40 Y N 1 F N 44 | F0 "D" 0 100 50 H V C CNN 45 | F1 "LED" 0 -100 50 H V C CNN 46 | F2 "" 0 0 50 H I C CNN 47 | F3 "" 0 0 50 H I C CNN 48 | $FPLIST 49 | LED* 50 | $ENDFPLIST 51 | DRAW 52 | P 2 0 1 8 -50 -50 -50 50 N 53 | P 2 0 1 0 -50 0 50 0 N 54 | P 4 0 1 8 50 -50 50 50 -50 0 50 -50 N 55 | P 5 0 1 0 -120 -30 -180 -90 -150 -90 -180 -90 -180 -60 N 56 | P 5 0 1 0 -70 -30 -130 -90 -100 -90 -130 -90 -130 -60 N 57 | X K 1 -150 0 100 R 50 50 1 1 P 58 | X A 2 150 0 100 L 50 50 1 1 P 59 | ENDDRAW 60 | ENDDEF 61 | # 62 | # PWR_FLAG 63 | # 64 | DEF PWR_FLAG #FLG 0 0 N N 1 F P 65 | F0 "#FLG" 0 75 50 H I C CNN 66 | F1 "PWR_FLAG" 0 150 50 H V C CNN 67 | F2 "" 0 0 50 H I C CNN 68 | F3 "" 0 0 50 H I C CNN 69 | DRAW 70 | X pwr 1 0 0 0 U 50 50 0 0 w 71 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 72 | ENDDRAW 73 | ENDDEF 74 | # 75 | # R 76 | # 77 | DEF R R 0 0 N Y 1 F N 78 | F0 "R" 80 0 50 V V C CNN 79 | F1 "R" 0 0 50 V V C CNN 80 | F2 "" -70 0 50 V I C CNN 81 | F3 "" 0 0 50 H I C CNN 82 | $FPLIST 83 | R_* 84 | R_* 85 | $ENDFPLIST 86 | DRAW 87 | S -40 -100 40 100 0 1 10 N 88 | X ~ 1 0 150 50 D 50 50 1 1 P 89 | X ~ 2 0 -150 50 U 50 50 1 1 P 90 | ENDDRAW 91 | ENDDEF 92 | # 93 | # VCC 94 | # 95 | DEF VCC #PWR 0 0 Y Y 1 F P 96 | F0 "#PWR" 0 -150 50 H I C CNN 97 | F1 "VCC" 0 150 50 H V C CNN 98 | F2 "" 0 0 50 H I C CNN 99 | F3 "" 0 0 50 H I C CNN 100 | DRAW 101 | C 0 75 25 0 1 0 N 102 | P 2 0 1 0 0 0 0 50 N 103 | X VCC 1 0 0 0 U 50 50 1 1 W N 104 | ENDDRAW 105 | ENDDEF 106 | # 107 | #End Library 108 | -------------------------------------------------------------------------------- /tests/kicad6/kicad4-project/kicad4-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.3 2 | #encoding utf-8 3 | # 4 | # Conn_01x02 5 | # 6 | DEF Conn_01x02 J 0 40 Y N 1 F N 7 | F0 "J" 0 100 50 H V C CNN 8 | F1 "Conn_01x02" 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*:*_??x*mm* 13 | Connector*:*1x??x*mm* 14 | Pin?Header?Straight?1X* 15 | Pin?Header?Angled?1X* 16 | Socket?Strip?Straight?1X* 17 | Socket?Strip?Angled?1X* 18 | $ENDFPLIST 19 | DRAW 20 | S -50 -95 0 -105 1 1 6 N 21 | S -50 5 0 -5 1 1 6 N 22 | S -50 50 50 -150 1 1 10 f 23 | X Pin_1 1 -200 0 150 R 50 50 1 1 P 24 | X Pin_2 2 -200 -100 150 R 50 50 1 1 P 25 | ENDDRAW 26 | ENDDEF 27 | # 28 | # GND 29 | # 30 | DEF GND #PWR 0 0 Y Y 1 F P 31 | F0 "#PWR" 0 -250 50 H I C CNN 32 | F1 "GND" 0 -150 50 H V C CNN 33 | F2 "" 0 0 50 H I C CNN 34 | F3 "" 0 0 50 H I C CNN 35 | DRAW 36 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 37 | X GND 1 0 0 0 D 50 50 1 1 W N 38 | ENDDRAW 39 | ENDDEF 40 | # 41 | # LED 42 | # 43 | DEF LED D 0 40 Y N 1 F N 44 | F0 "D" 0 100 50 H V C CNN 45 | F1 "LED" 0 -100 50 H V C CNN 46 | F2 "" 0 0 50 H I C CNN 47 | F3 "" 0 0 50 H I C CNN 48 | $FPLIST 49 | LED* 50 | $ENDFPLIST 51 | DRAW 52 | P 2 0 1 8 -50 -50 -50 50 N 53 | P 2 0 1 0 -50 0 50 0 N 54 | P 4 0 1 8 50 -50 50 50 -50 0 50 -50 N 55 | P 5 0 1 0 -120 -30 -180 -90 -150 -90 -180 -90 -180 -60 N 56 | P 5 0 1 0 -70 -30 -130 -90 -100 -90 -130 -90 -130 -60 N 57 | X K 1 -150 0 100 R 50 50 1 1 P 58 | X A 2 150 0 100 L 50 50 1 1 P 59 | ENDDRAW 60 | ENDDEF 61 | # 62 | # PWR_FLAG 63 | # 64 | DEF PWR_FLAG #FLG 0 0 N N 1 F P 65 | F0 "#FLG" 0 75 50 H I C CNN 66 | F1 "PWR_FLAG" 0 150 50 H V C CNN 67 | F2 "" 0 0 50 H I C CNN 68 | F3 "" 0 0 50 H I C CNN 69 | DRAW 70 | X pwr 1 0 0 0 U 50 50 0 0 w 71 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 72 | ENDDRAW 73 | ENDDEF 74 | # 75 | # R 76 | # 77 | DEF R R 0 0 N Y 1 F N 78 | F0 "R" 80 0 50 V V C CNN 79 | F1 "R" 0 0 50 V V C CNN 80 | F2 "" -70 0 50 V I C CNN 81 | F3 "" 0 0 50 H I C CNN 82 | $FPLIST 83 | R_* 84 | R_* 85 | $ENDFPLIST 86 | DRAW 87 | S -40 -100 40 100 0 1 10 N 88 | X ~ 1 0 150 50 D 50 50 1 1 P 89 | X ~ 2 0 -150 50 U 50 50 1 1 P 90 | ENDDRAW 91 | ENDDEF 92 | # 93 | # VCC 94 | # 95 | DEF VCC #PWR 0 0 Y Y 1 F P 96 | F0 "#PWR" 0 -150 50 H I C CNN 97 | F1 "VCC" 0 150 50 H V C CNN 98 | F2 "" 0 0 50 H I C CNN 99 | F3 "" 0 0 50 H I C CNN 100 | DRAW 101 | C 0 75 25 0 1 0 N 102 | P 2 0 1 0 0 0 0 50 N 103 | X VCC 1 0 0 0 U 50 50 1 1 W N 104 | ENDDRAW 105 | ENDDEF 106 | # 107 | #End Library 108 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/warning-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # power_GND 5 | # 6 | DEF power_GND #PWR 0 0 Y Y 1 F P 7 | F0 "#PWR" 0 -250 50 H I C CNN 8 | F1 "power_GND" 0 -150 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | DRAW 12 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 13 | X GND 1 0 0 0 D 50 50 1 1 W N 14 | ENDDRAW 15 | ENDDEF 16 | # 17 | # power_PWR_FLAG 18 | # 19 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 20 | F0 "#FLG" 0 75 50 H I C CNN 21 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 22 | F2 "" 0 0 50 H I C CNN 23 | F3 "" 0 0 50 H I C CNN 24 | DRAW 25 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 26 | X pwr 1 0 0 0 U 50 50 0 0 w 27 | ENDDRAW 28 | ENDDEF 29 | # 30 | # power_VCC 31 | # 32 | DEF power_VCC #PWR 0 0 Y Y 1 F P 33 | F0 "#PWR" 0 -150 50 H I C CNN 34 | F1 "power_VCC" 0 150 50 H V C CNN 35 | F2 "" 0 0 50 H I C CNN 36 | F3 "" 0 0 50 H I C CNN 37 | DRAW 38 | C 0 75 25 0 1 0 N 39 | P 2 0 1 0 0 0 0 50 N 40 | X VCC 1 0 0 0 U 50 50 1 1 W N 41 | ENDDRAW 42 | ENDDEF 43 | # 44 | # warning-project-rescue_C-passive 45 | # 46 | DEF warning-project-rescue_C-passive C 0 40 N N 1 F N 47 | F0 "C" 0 50 40 H V C CNN 48 | F1 "warning-project-rescue_C-passive" 0 -50 40 H V C CNN 49 | F2 "" 0 0 60 H V C CNN 50 | F3 "" 0 0 60 H V C CNN 51 | DRAW 52 | P 2 0 1 0 -25 0 -50 0 N 53 | P 2 0 1 0 -25 0 -15 0 N 54 | P 2 0 1 0 -10 15 -10 -15 N 55 | P 2 0 1 0 10 15 10 -15 N 56 | P 2 0 1 0 25 0 10 0 N 57 | P 2 0 1 0 50 0 25 0 N 58 | X 1 1 -50 0 0 R 25 25 1 1 P 59 | X 2 2 50 0 0 R 25 25 1 1 P 60 | ENDDRAW 61 | ENDDEF 62 | # 63 | # warning-project-rescue_CONN_01X02-conn 64 | # 65 | DEF warning-project-rescue_CONN_01X02-conn P 0 40 Y N 1 F N 66 | F0 "P" 0 150 50 H V C CNN 67 | F1 "warning-project-rescue_CONN_01X02-conn" 100 0 50 V V C CNN 68 | F2 "" 0 0 50 H V C CNN 69 | F3 "" 0 0 50 H V C CNN 70 | $FPLIST 71 | Pin_Header_Straight_1X02 72 | Pin_Header_Angled_1X02 73 | Socket_Strip_Straight_1X02 74 | Socket_Strip_Angled_1X02 75 | $ENDFPLIST 76 | DRAW 77 | S -50 -45 10 -55 0 1 0 N 78 | S -50 55 10 45 0 1 0 N 79 | S -50 100 50 -100 0 1 0 N 80 | X P1 1 -200 50 150 R 50 50 1 1 P 81 | X P2 2 -200 -50 150 R 50 50 1 1 P 82 | ENDDRAW 83 | ENDDEF 84 | # 85 | # warning-project-rescue_R-passive 86 | # 87 | DEF warning-project-rescue_R-passive R 0 40 N N 1 F N 88 | F0 "R" 0 50 40 H V C CNN 89 | F1 "warning-project-rescue_R-passive" 0 -50 40 H V C CNN 90 | F2 "" 0 0 60 H V C CNN 91 | F3 "" 0 0 60 H V C CNN 92 | DRAW 93 | S 25 10 -25 -10 0 1 0 f 94 | P 2 0 1 0 -25 0 -50 0 N 95 | P 2 0 1 0 50 0 25 0 N 96 | X 1 1 -50 0 0 R 25 25 1 1 P 97 | X 2 2 50 0 0 R 25 25 1 1 P 98 | ENDDRAW 99 | ENDDEF 100 | # 101 | #End Library 102 | -------------------------------------------------------------------------------- /tests/kicad6/warning-project/warning-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # power_GND 5 | # 6 | DEF power_GND #PWR 0 0 Y Y 1 F P 7 | F0 "#PWR" 0 -250 50 H I C CNN 8 | F1 "power_GND" 0 -150 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | DRAW 12 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 13 | X GND 1 0 0 0 D 50 50 1 1 W N 14 | ENDDRAW 15 | ENDDEF 16 | # 17 | # power_PWR_FLAG 18 | # 19 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 20 | F0 "#FLG" 0 75 50 H I C CNN 21 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 22 | F2 "" 0 0 50 H I C CNN 23 | F3 "" 0 0 50 H I C CNN 24 | DRAW 25 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 26 | X pwr 1 0 0 0 U 50 50 0 0 w 27 | ENDDRAW 28 | ENDDEF 29 | # 30 | # power_VCC 31 | # 32 | DEF power_VCC #PWR 0 0 Y Y 1 F P 33 | F0 "#PWR" 0 -150 50 H I C CNN 34 | F1 "power_VCC" 0 150 50 H V C CNN 35 | F2 "" 0 0 50 H I C CNN 36 | F3 "" 0 0 50 H I C CNN 37 | DRAW 38 | C 0 75 25 0 1 0 N 39 | P 2 0 1 0 0 0 0 50 N 40 | X VCC 1 0 0 0 U 50 50 1 1 W N 41 | ENDDRAW 42 | ENDDEF 43 | # 44 | # warning-project-rescue_C-passive 45 | # 46 | DEF warning-project-rescue_C-passive C 0 40 N N 1 F N 47 | F0 "C" 0 50 40 H V C CNN 48 | F1 "warning-project-rescue_C-passive" 0 -50 40 H V C CNN 49 | F2 "" 0 0 60 H V C CNN 50 | F3 "" 0 0 60 H V C CNN 51 | DRAW 52 | P 2 0 1 0 -25 0 -50 0 N 53 | P 2 0 1 0 -25 0 -15 0 N 54 | P 2 0 1 0 -10 15 -10 -15 N 55 | P 2 0 1 0 10 15 10 -15 N 56 | P 2 0 1 0 25 0 10 0 N 57 | P 2 0 1 0 50 0 25 0 N 58 | X 1 1 -50 0 0 R 25 25 1 1 P 59 | X 2 2 50 0 0 R 25 25 1 1 P 60 | ENDDRAW 61 | ENDDEF 62 | # 63 | # warning-project-rescue_CONN_01X02-conn 64 | # 65 | DEF warning-project-rescue_CONN_01X02-conn P 0 40 Y N 1 F N 66 | F0 "P" 0 150 50 H V C CNN 67 | F1 "warning-project-rescue_CONN_01X02-conn" 100 0 50 V V C CNN 68 | F2 "" 0 0 50 H V C CNN 69 | F3 "" 0 0 50 H V C CNN 70 | $FPLIST 71 | Pin_Header_Straight_1X02 72 | Pin_Header_Angled_1X02 73 | Socket_Strip_Straight_1X02 74 | Socket_Strip_Angled_1X02 75 | $ENDFPLIST 76 | DRAW 77 | S -50 -45 10 -55 0 1 0 N 78 | S -50 55 10 45 0 1 0 N 79 | S -50 100 50 -100 0 1 0 N 80 | X P1 1 -200 50 150 R 50 50 1 1 P 81 | X P2 2 -200 -50 150 R 50 50 1 1 P 82 | ENDDRAW 83 | ENDDEF 84 | # 85 | # warning-project-rescue_R-passive 86 | # 87 | DEF warning-project-rescue_R-passive R 0 40 N N 1 F N 88 | F0 "R" 0 50 40 H V C CNN 89 | F1 "warning-project-rescue_R-passive" 0 -50 40 H V C CNN 90 | F2 "" 0 0 60 H V C CNN 91 | F3 "" 0 0 60 H V C CNN 92 | DRAW 93 | S 25 10 -25 -10 0 1 0 f 94 | P 2 0 1 0 -25 0 -50 0 N 95 | P 2 0 1 0 50 0 25 0 N 96 | X 1 1 -50 0 0 R 25 25 1 1 P 97 | X 2 2 50 0 0 R 25 25 1 1 P 98 | ENDDRAW 99 | ENDDEF 100 | # 101 | #End Library 102 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/power.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 2 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L fail-project-rescue:CONN_01X02-conn P1 18 | U 1 1 5CA714F2 19 | P 4350 3610 20 | AR Path="/5CA714F2" Ref="P1" Part="1" 21 | AR Path="/5CA71704/5CA714F2" Ref="P1" Part="1" 22 | F 0 "P1" H 4267 3335 50 0000 C CNN 23 | F 1 "CONN_01X02" H 4267 3426 50 0000 C CNN 24 | F 2 "Connector_JST:JST_JWPF_B02B-JWPF-SK-R_1x02_P2.00mm_Vertical" H 4350 3610 50 0001 C CNN 25 | F 3 "" H 4350 3610 50 0000 C CNN 26 | 1 4350 3610 27 | -1 0 0 1 28 | $EndComp 29 | $Comp 30 | L power:PWR_FLAG #FLG01 31 | U 1 1 5CA71C3C 32 | P 4850 3560 33 | F 0 "#FLG01" H 4850 3655 50 0001 C CNN 34 | F 1 "PWR_FLAG" H 4850 3783 50 0000 C CNN 35 | F 2 "" H 4850 3560 50 0000 C CNN 36 | F 3 "" H 4850 3560 50 0000 C CNN 37 | 1 4850 3560 38 | 1 0 0 -1 39 | $EndComp 40 | Wire Wire Line 41 | 4550 3560 4850 3560 42 | Connection ~ 4850 3560 43 | $Comp 44 | L power:PWR_FLAG #FLG02 45 | U 1 1 5CA72902 46 | P 4850 3660 47 | F 0 "#FLG02" H 4850 3755 50 0001 C CNN 48 | F 1 "PWR_FLAG" H 4850 3883 50 0000 C CNN 49 | F 2 "" H 4850 3660 50 0000 C CNN 50 | F 3 "" H 4850 3660 50 0000 C CNN 51 | 1 4850 3660 52 | -1 0 0 1 53 | $EndComp 54 | Wire Wire Line 55 | 4550 3660 4850 3660 56 | Wire Wire Line 57 | 4850 3660 5210 3660 58 | Wire Wire Line 59 | 5210 3660 5210 3760 60 | Connection ~ 4850 3660 61 | $Comp 62 | L power:GND #PWR01 63 | U 1 1 5CA73F58 64 | P 5210 3760 65 | F 0 "#PWR01" H 5210 3510 50 0001 C CNN 66 | F 1 "GND" H 5215 3587 50 0000 C CNN 67 | F 2 "" H 5210 3760 50 0000 C CNN 68 | F 3 "" H 5210 3760 50 0000 C CNN 69 | 1 5210 3760 70 | 1 0 0 -1 71 | $EndComp 72 | Wire Wire Line 73 | 4850 3560 5450 3560 74 | $Comp 75 | L fail-project-rescue:C-passive C1 76 | U 1 1 5CA745A6 77 | P 5450 3610 78 | F 0 "C1" V 5404 3654 40 0000 L CNN 79 | F 1 "C" V 5480 3654 40 0000 L CNN 80 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5450 3610 60 0001 C CNN 81 | F 3 "" H 5450 3610 60 0000 C CNN 82 | 1 5450 3610 83 | 0 1 1 0 84 | $EndComp 85 | Connection ~ 5450 3560 86 | Wire Wire Line 87 | 5450 3560 5620 3560 88 | $Comp 89 | L power:GND #PWR02 90 | U 1 1 5CA755F5 91 | P 5450 3660 92 | F 0 "#PWR02" H 5450 3410 50 0001 C CNN 93 | F 1 "GND" H 5455 3487 50 0000 C CNN 94 | F 2 "" H 5450 3660 50 0000 C CNN 95 | F 3 "" H 5450 3660 50 0000 C CNN 96 | 1 5450 3660 97 | 1 0 0 -1 98 | $EndComp 99 | Text HLabel 5620 3560 2 50 Output ~ 0 100 | VCC 101 | $EndSCHEMATC 102 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/power.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 2 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L good-project-rescue:CONN_01X02-conn P1 18 | U 1 1 5CA714F2 19 | P 4350 3610 20 | AR Path="/5CA714F2" Ref="P1" Part="1" 21 | AR Path="/5CA71704/5CA714F2" Ref="P1" Part="1" 22 | F 0 "P1" H 4267 3335 50 0000 C CNN 23 | F 1 "CONN_01X02" H 4267 3426 50 0000 C CNN 24 | F 2 "Connector_JST:JST_JWPF_B02B-JWPF-SK-R_1x02_P2.00mm_Vertical" H 4350 3610 50 0001 C CNN 25 | F 3 "" H 4350 3610 50 0000 C CNN 26 | 1 4350 3610 27 | -1 0 0 1 28 | $EndComp 29 | $Comp 30 | L power:PWR_FLAG #FLG02 31 | U 1 1 5CA72902 32 | P 4850 3660 33 | F 0 "#FLG02" H 4850 3755 50 0001 C CNN 34 | F 1 "PWR_FLAG" H 4850 3883 50 0000 C CNN 35 | F 2 "" H 4850 3660 50 0000 C CNN 36 | F 3 "" H 4850 3660 50 0000 C CNN 37 | 1 4850 3660 38 | -1 0 0 1 39 | $EndComp 40 | Wire Wire Line 41 | 4550 3660 4850 3660 42 | Wire Wire Line 43 | 4850 3660 5210 3660 44 | Wire Wire Line 45 | 5210 3660 5210 3760 46 | Connection ~ 4850 3660 47 | $Comp 48 | L power:GND #PWR01 49 | U 1 1 5CA73F58 50 | P 5210 3760 51 | F 0 "#PWR01" H 5210 3510 50 0001 C CNN 52 | F 1 "GND" H 5215 3587 50 0000 C CNN 53 | F 2 "" H 5210 3760 50 0000 C CNN 54 | F 3 "" H 5210 3760 50 0000 C CNN 55 | 1 5210 3760 56 | 1 0 0 -1 57 | $EndComp 58 | $Comp 59 | L good-project-rescue:C-passive C1 60 | U 1 1 5CA745A6 61 | P 5450 3610 62 | F 0 "C1" V 5404 3654 40 0000 L CNN 63 | F 1 "C" V 5480 3654 40 0000 L CNN 64 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5450 3610 60 0001 C CNN 65 | F 3 "" H 5450 3610 60 0000 C CNN 66 | 1 5450 3610 67 | 0 1 1 0 68 | $EndComp 69 | Connection ~ 5450 3560 70 | Wire Wire Line 71 | 5450 3560 5620 3560 72 | $Comp 73 | L power:GND #PWR02 74 | U 1 1 5CA755F5 75 | P 5450 3660 76 | F 0 "#PWR02" H 5450 3410 50 0001 C CNN 77 | F 1 "GND" H 5455 3487 50 0000 C CNN 78 | F 2 "" H 5450 3660 50 0000 C CNN 79 | F 3 "" H 5450 3660 50 0000 C CNN 80 | 1 5450 3660 81 | 1 0 0 -1 82 | $EndComp 83 | Text HLabel 5620 3560 2 50 Output ~ 0 84 | VCC 85 | Wire Wire Line 86 | 4850 3560 5450 3560 87 | Wire Wire Line 88 | 4550 3560 4850 3560 89 | Connection ~ 4850 3560 90 | $Comp 91 | L power:PWR_FLAG #FLG01 92 | U 1 1 5CA71C3C 93 | P 4850 3560 94 | F 0 "#FLG01" H 4850 3655 50 0001 C CNN 95 | F 1 "PWR_FLAG" H 4850 3783 50 0000 C CNN 96 | F 2 "" H 4850 3560 50 0000 C CNN 97 | F 3 "" H 4850 3560 50 0000 C CNN 98 | 1 4850 3560 99 | 1 0 0 -1 100 | $EndComp 101 | $EndSCHEMATC 102 | -------------------------------------------------------------------------------- /tests/kicad5/warning-project/power.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 2 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L warning-project-rescue:CONN_01X02-conn P1 18 | U 1 1 5CA714F2 19 | P 4350 3610 20 | AR Path="/5CA714F2" Ref="P1" Part="1" 21 | AR Path="/5CA71704/5CA714F2" Ref="P1" Part="1" 22 | F 0 "P1" H 4267 3335 50 0000 C CNN 23 | F 1 "CONN_01X02" H 4267 3426 50 0000 C CNN 24 | F 2 "Connector_JST:JST_JWPF_B02B-JWPF-SK-R_1x02_P2.00mm_Vertical" H 4350 3610 50 0001 C CNN 25 | F 3 "" H 4350 3610 50 0000 C CNN 26 | 1 4350 3610 27 | -1 0 0 1 28 | $EndComp 29 | $Comp 30 | L power:PWR_FLAG #FLG02 31 | U 1 1 5CA72902 32 | P 4850 3660 33 | F 0 "#FLG02" H 4850 3755 50 0001 C CNN 34 | F 1 "PWR_FLAG" H 4850 3883 50 0000 C CNN 35 | F 2 "" H 4850 3660 50 0000 C CNN 36 | F 3 "" H 4850 3660 50 0000 C CNN 37 | 1 4850 3660 38 | -1 0 0 1 39 | $EndComp 40 | Wire Wire Line 41 | 4550 3660 4850 3660 42 | Wire Wire Line 43 | 4850 3660 5210 3660 44 | Wire Wire Line 45 | 5210 3660 5210 3760 46 | Connection ~ 4850 3660 47 | $Comp 48 | L power:GND #PWR01 49 | U 1 1 5CA73F58 50 | P 5210 3760 51 | F 0 "#PWR01" H 5210 3510 50 0001 C CNN 52 | F 1 "GND" H 5215 3587 50 0000 C CNN 53 | F 2 "" H 5210 3760 50 0000 C CNN 54 | F 3 "" H 5210 3760 50 0000 C CNN 55 | 1 5210 3760 56 | 1 0 0 -1 57 | $EndComp 58 | $Comp 59 | L warning-project-rescue:C-passive C1 60 | U 1 1 5CA745A6 61 | P 5450 3610 62 | F 0 "C1" V 5404 3654 40 0000 L CNN 63 | F 1 "C" V 5480 3654 40 0000 L CNN 64 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5450 3610 60 0001 C CNN 65 | F 3 "" H 5450 3610 60 0000 C CNN 66 | 1 5450 3610 67 | 0 1 1 0 68 | $EndComp 69 | Connection ~ 5450 3560 70 | Wire Wire Line 71 | 5450 3560 5620 3560 72 | $Comp 73 | L power:GND #PWR02 74 | U 1 1 5CA755F5 75 | P 5450 3660 76 | F 0 "#PWR02" H 5450 3410 50 0001 C CNN 77 | F 1 "GND" H 5455 3487 50 0000 C CNN 78 | F 2 "" H 5450 3660 50 0000 C CNN 79 | F 3 "" H 5450 3660 50 0000 C CNN 80 | 1 5450 3660 81 | 1 0 0 -1 82 | $EndComp 83 | Text HLabel 5620 3560 2 50 Output ~ 0 84 | VCC 85 | $Comp 86 | L power:VCC #PWR0101 87 | U 1 1 5CA71FA4 88 | P 5210 3560 89 | F 0 "#PWR0101" H 5210 3410 50 0001 C CNN 90 | F 1 "VCC" H 5227 3733 50 0000 C CNN 91 | F 2 "" H 5210 3560 50 0000 C CNN 92 | F 3 "" H 5210 3560 50 0000 C CNN 93 | 1 5210 3560 94 | 1 0 0 -1 95 | $EndComp 96 | Connection ~ 5210 3560 97 | Wire Wire Line 98 | 5210 3560 5450 3560 99 | Wire Wire Line 100 | 4550 3560 5210 3560 101 | $EndSCHEMATC 102 | -------------------------------------------------------------------------------- /tests/kicad5/missing-lib/missing-lib-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # kicad4-project-rescue_Conn_01x02 5 | # 6 | DEF kicad4-project-rescue_Conn_01x02 J 0 40 Y N 1 F N 7 | F0 "J" 0 100 50 H V C CNN 8 | F1 "kicad4-project-rescue_Conn_01x02" 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*:*_??x*mm* 13 | Connector*:*1x??x*mm* 14 | Pin?Header?Straight?1X* 15 | Pin?Header?Angled?1X* 16 | Socket?Strip?Straight?1X* 17 | Socket?Strip?Angled?1X* 18 | $ENDFPLIST 19 | DRAW 20 | S -50 -95 0 -105 1 1 6 N 21 | S -50 5 0 -5 1 1 6 N 22 | S -50 50 50 -150 1 1 10 f 23 | X Pin_1 1 -200 0 150 R 50 50 1 1 P 24 | X Pin_2 2 -200 -100 150 R 50 50 1 1 P 25 | ENDDRAW 26 | ENDDEF 27 | # 28 | # kicad4-project-rescue_GND 29 | # 30 | DEF kicad4-project-rescue_GND #PWR 0 0 Y Y 1 F P 31 | F0 "#PWR" 0 -250 50 H I C CNN 32 | F1 "kicad4-project-rescue_GND" 0 -150 50 H V C CNN 33 | F2 "" 0 0 50 H I C CNN 34 | F3 "" 0 0 50 H I C CNN 35 | DRAW 36 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 37 | X GND 1 0 0 0 D 50 50 1 1 W N 38 | ENDDRAW 39 | ENDDEF 40 | # 41 | # kicad4-project-rescue_LED 42 | # 43 | DEF kicad4-project-rescue_LED D 0 40 Y N 1 F N 44 | F0 "D" 0 100 50 H V C CNN 45 | F1 "kicad4-project-rescue_LED" 0 -100 50 H V C CNN 46 | F2 "" 0 0 50 H I C CNN 47 | F3 "" 0 0 50 H I C CNN 48 | $FPLIST 49 | LED* 50 | $ENDFPLIST 51 | DRAW 52 | P 2 0 1 8 -50 -50 -50 50 N 53 | P 2 0 1 0 -50 0 50 0 N 54 | P 4 0 1 8 50 -50 50 50 -50 0 50 -50 N 55 | P 5 0 1 0 -120 -30 -180 -90 -150 -90 -180 -90 -180 -60 N 56 | P 5 0 1 0 -70 -30 -130 -90 -100 -90 -130 -90 -130 -60 N 57 | X K 1 -150 0 100 R 50 50 1 1 P 58 | X A 2 150 0 100 L 50 50 1 1 P 59 | ENDDRAW 60 | ENDDEF 61 | # 62 | # kicad4-project-rescue_PWR_FLAG 63 | # 64 | DEF kicad4-project-rescue_PWR_FLAG #FLG 0 0 N N 1 F P 65 | F0 "#FLG" 0 75 50 H I C CNN 66 | F1 "kicad4-project-rescue_PWR_FLAG" 0 150 50 H V C CNN 67 | F2 "" 0 0 50 H I C CNN 68 | F3 "" 0 0 50 H I C CNN 69 | DRAW 70 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 71 | X pwr 1 0 0 0 U 50 50 0 0 w 72 | ENDDRAW 73 | ENDDEF 74 | # 75 | # kicad4-project-rescue_R 76 | # 77 | DEF kicad4-project-rescue_R R 0 0 N Y 1 F N 78 | F0 "R" 80 0 50 V V C CNN 79 | F1 "kicad4-project-rescue_R" 0 0 50 V V C CNN 80 | F2 "" -70 0 50 V I C CNN 81 | F3 "" 0 0 50 H I C CNN 82 | $FPLIST 83 | R_* 84 | R_* 85 | $ENDFPLIST 86 | DRAW 87 | S -40 -100 40 100 0 1 10 N 88 | X ~ 1 0 150 50 D 50 50 1 1 P 89 | X ~ 2 0 -150 50 U 50 50 1 1 P 90 | ENDDRAW 91 | ENDDEF 92 | # 93 | # kicad4-project-rescue_VCC 94 | # 95 | DEF kicad4-project-rescue_VCC #PWR 0 0 Y Y 1 F P 96 | F0 "#PWR" 0 -150 50 H I C CNN 97 | F1 "kicad4-project-rescue_VCC" 0 150 50 H V C CNN 98 | F2 "" 0 0 50 H I C CNN 99 | F3 "" 0 0 50 H I C CNN 100 | DRAW 101 | C 0 75 25 0 1 0 N 102 | P 2 0 1 0 0 0 0 50 N 103 | X VCC 1 0 0 0 U 50 50 1 1 W N 104 | ENDDRAW 105 | ENDDEF 106 | # 107 | #End Library 108 | -------------------------------------------------------------------------------- /tests/kicad5/zone-refill/zone-refill.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 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 Connector:Conn_01x02_Male J1 18 | U 1 1 5EBAC114 19 | P 4000 1550 20 | F 0 "J1" H 4108 1731 50 0000 C CNN 21 | F 1 "Conn_01x02_Male" H 3850 1350 50 0000 C CNN 22 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical" H 4000 1550 50 0001 C CNN 23 | F 3 "~" H 4000 1550 50 0001 C CNN 24 | 1 4000 1550 25 | 1 0 0 -1 26 | $EndComp 27 | $Comp 28 | L Connector:Conn_01x02_Male J2 29 | U 1 1 5EBAC9BE 30 | P 5400 1650 31 | F 0 "J2" H 5372 1532 50 0000 R CNN 32 | F 1 "Conn_01x02_Male" H 5600 1750 50 0000 R CNN 33 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical" H 5400 1650 50 0001 C CNN 34 | F 3 "~" H 5400 1650 50 0001 C CNN 35 | 1 5400 1650 36 | -1 0 0 1 37 | $EndComp 38 | $Comp 39 | L Device:R R1 40 | U 1 1 5EBAD9A3 41 | P 4550 1550 42 | F 0 "R1" V 4343 1550 50 0000 C CNN 43 | F 1 "R" V 4434 1550 50 0000 C CNN 44 | F 2 "Resistor_SMD:R_0805_2012Metric" V 4480 1550 50 0001 C CNN 45 | F 3 "~" H 4550 1550 50 0001 C CNN 46 | 1 4550 1550 47 | 0 1 1 0 48 | $EndComp 49 | Wire Wire Line 50 | 4200 1550 4400 1550 51 | $Comp 52 | L Device:C C1 53 | U 1 1 5EBAE412 54 | P 4800 1800 55 | F 0 "C1" H 4915 1846 50 0000 L CNN 56 | F 1 "C" H 4915 1755 50 0000 L CNN 57 | F 2 "Capacitor_SMD:C_0805_2012Metric" H 4838 1650 50 0001 C CNN 58 | F 3 "~" H 4800 1800 50 0001 C CNN 59 | 1 4800 1800 60 | 1 0 0 -1 61 | $EndComp 62 | Wire Wire Line 63 | 5200 1550 4800 1550 64 | Wire Wire Line 65 | 4800 1650 4800 1550 66 | Connection ~ 4800 1550 67 | Wire Wire Line 68 | 4800 1550 4700 1550 69 | $Comp 70 | L power:GND #PWR02 71 | U 1 1 5EBAF08D 72 | P 4800 2050 73 | F 0 "#PWR02" H 4800 1800 50 0001 C CNN 74 | F 1 "GND" H 4805 1877 50 0000 C CNN 75 | F 2 "" H 4800 2050 50 0001 C CNN 76 | F 3 "" H 4800 2050 50 0001 C CNN 77 | 1 4800 2050 78 | 1 0 0 -1 79 | $EndComp 80 | $Comp 81 | L power:GND #PWR01 82 | U 1 1 5EBAF4F0 83 | P 4250 1750 84 | F 0 "#PWR01" H 4250 1500 50 0001 C CNN 85 | F 1 "GND" H 4255 1577 50 0000 C CNN 86 | F 2 "" H 4250 1750 50 0001 C CNN 87 | F 3 "" H 4250 1750 50 0001 C CNN 88 | 1 4250 1750 89 | 1 0 0 -1 90 | $EndComp 91 | $Comp 92 | L power:GND #PWR03 93 | U 1 1 5EBAF84D 94 | P 5100 1750 95 | F 0 "#PWR03" H 5100 1500 50 0001 C CNN 96 | F 1 "GND" H 5105 1577 50 0000 C CNN 97 | F 2 "" H 5100 1750 50 0001 C CNN 98 | F 3 "" H 5100 1750 50 0001 C CNN 99 | 1 5100 1750 100 | 1 0 0 -1 101 | $EndComp 102 | Wire Wire Line 103 | 5200 1650 5100 1650 104 | Wire Wire Line 105 | 5100 1650 5100 1750 106 | Wire Wire Line 107 | 4250 1750 4250 1650 108 | Wire Wire Line 109 | 4250 1650 4200 1650 110 | Wire Wire Line 111 | 4800 2050 4800 1950 112 | $EndSCHEMATC 113 | -------------------------------------------------------------------------------- /tests/pcbnew/test_3d.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Copyright (c) 2021 Salvador E. Tropea 3 | # Copyright (c) 2021 Instituto Nacional de Tecnologïa Industrial 4 | # License: Apache 2.0 5 | # Project: KiAuto (formerly kicad-automation-scripts) 6 | """ 7 | Tests for 'pcbnew_do 3d_view' 8 | 9 | For debug information use: 10 | pytest-3 --log-cli-level debug 11 | 12 | """ 13 | 14 | import os 15 | import sys 16 | # Look for the 'utils' module from where the script is running 17 | script_dir = os.path.dirname(os.path.abspath(__file__)) 18 | prev_dir = os.path.dirname(script_dir) 19 | sys.path.insert(0, prev_dir) 20 | # Utils import 21 | from utils import context 22 | sys.path.insert(0, os.path.dirname(prev_dir)) 23 | 24 | PROG = 'pcbnew_do' 25 | 26 | 27 | def test_3d_view_1(test_dir): 28 | """ Simple 3D Viewer test """ 29 | ctx = context.TestContext(test_dir, '3DView_1', 'good-project') 30 | cmd = [PROG, '-r', '-vvv', '3d_view', '-x', '1', '--output_name', 'good_3d_rt_1.png', '-r', '-d', '-w', '20', 31 | '-X', '3', '-Z', '3'] 32 | if not context.ki8: 33 | # KiCad 8 does a zoom to fit 34 | cmd.extend(['--zoom', '3']) 35 | ctx.run(cmd) 36 | ctx.compare_image('good_3d_rt_1.png', fuzz='50%', tol=2000) 37 | ctx.clean_up() 38 | 39 | 40 | def test_3d_view_2(test_dir): 41 | """ Simple 3D Viewer test """ 42 | ctx = context.TestContext(test_dir, '3DView_2', 'good-project') 43 | cmd = [PROG, '-vvv', '3d_view', '-x', '-1', '--output_name', 'good_3d_rt_2.png', '--no_smd', '-r', '-O', 44 | '-d', '-w', '20', '--zoom'] 45 | # KiCad 8 does a zoom to fit 46 | cmd.append('1' if context.ki8 else '6') 47 | ctx.run(cmd) 48 | ctx.compare_image('good_3d_rt_2.png', fuzz='50%', tol=2000) 49 | ctx.clean_up() 50 | 51 | 52 | def test_3d_view_draw_layer_colors(test_dir): 53 | """ Test using the layer colors """ 54 | ctx = context.TestContext(test_dir, '3d_view_draw_layer_colors', 'drawings') 55 | cmd = [PROG, '-vvv', '3d_view', '--output_name', 'drawings_layer.png', '--use_layer_colors', '--show_comment', 56 | '--show_drawings', '--show_eco'] 57 | ctx.run(cmd) 58 | ctx.compare_image('drawings_layer.png', fuzz='50%', tol=2000) 59 | ctx.clean_up() 60 | 61 | 62 | def test_3d_view_draw_real_colors(test_dir): 63 | """ Test using the provided colors """ 64 | ctx = context.TestContext(test_dir, '3d_view_draw_real_colors', 'drawings') 65 | cmd = [PROG, '-vvv', '3d_view', '--output_name', 'drawings_real.png', '--show_comment', '--sm_color', '#285e3a', 66 | '--show_drawings', '--show_eco'] 67 | ctx.run(cmd) 68 | ctx.compare_image('drawings_real.png', fuzz='50%', tol=2000) 69 | ctx.clean_up() 70 | 71 | 72 | def test_3d_view_draw_stackup_colors(test_dir): 73 | """ Test using the stackup colors """ 74 | ctx = context.TestContext(test_dir, '3d_view_draw_stackup_colors', 'drawings') 75 | cmd = [PROG, '-vvv', '3d_view', '--output_name', 'drawings_stackup.png', '--show_comment', '--use_stackup_colors', 76 | '--show_drawings', '--show_eco'] 77 | ctx.run(cmd) 78 | ctx.compare_image('drawings_stackup.png', fuzz='50%', tol=2000) 79 | ctx.clean_up() 80 | -------------------------------------------------------------------------------- /tests/kicad5/kicad4-project/kicad4-project.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 2 2 | LIBS:good-project-cache 3 | EELAYER 25 0 4 | EELAYER END 5 | $Descr A4 11693 8268 6 | encoding utf-8 7 | Sheet 1 1 8 | Title "" 9 | Date "" 10 | Rev "" 11 | Comp "" 12 | Comment1 "" 13 | Comment2 "" 14 | Comment3 "" 15 | Comment4 "" 16 | $EndDescr 17 | $Comp 18 | L R R1 19 | U 1 1 5CA32696 20 | P 3100 3425 21 | F 0 "R1" V 3180 3425 50 0000 C CNN 22 | F 1 "330" V 3100 3425 50 0000 C CNN 23 | F 2 "Resistor_SMD:R_0603_1608Metric" V 3030 3425 50 0001 C CNN 24 | F 3 "" H 3100 3425 50 0001 C CNN 25 | 1 3100 3425 26 | 1 0 0 -1 27 | $EndComp 28 | $Comp 29 | L LED D1 30 | U 1 1 5CA326B7 31 | P 3100 3075 32 | F 0 "D1" H 3100 3175 50 0000 C CNN 33 | F 1 "LED" H 3100 2975 50 0000 C CNN 34 | F 2 "LED_SMD:LED_0805_2012Metric" H 3100 3075 50 0001 C CNN 35 | F 3 "" H 3100 3075 50 0001 C CNN 36 | 1 3100 3075 37 | 0 -1 -1 0 38 | $EndComp 39 | $Comp 40 | L VCC #PWR01 41 | U 1 1 5CA32709 42 | P 3100 2875 43 | F 0 "#PWR01" H 3100 2725 50 0001 C CNN 44 | F 1 "VCC" H 3100 3025 50 0000 C CNN 45 | F 2 "" H 3100 2875 50 0001 C CNN 46 | F 3 "" H 3100 2875 50 0001 C CNN 47 | 1 3100 2875 48 | 1 0 0 -1 49 | $EndComp 50 | $Comp 51 | L Conn_01x02 J1 52 | U 1 1 5CA32731 53 | P 2000 3125 54 | F 0 "J1" H 2000 3225 50 0000 C CNN 55 | F 1 "Conn_01x02" H 2000 2925 50 0000 C CNN 56 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical" H 2000 3125 50 0001 C CNN 57 | F 3 "" H 2000 3125 50 0001 C CNN 58 | 1 2000 3125 59 | -1 0 0 1 60 | $EndComp 61 | $Comp 62 | L VCC #PWR02 63 | U 1 1 5CA327B9 64 | P 2625 2875 65 | F 0 "#PWR02" H 2625 2725 50 0001 C CNN 66 | F 1 "VCC" H 2625 3025 50 0000 C CNN 67 | F 2 "" H 2625 2875 50 0001 C CNN 68 | F 3 "" H 2625 2875 50 0001 C CNN 69 | 1 2625 2875 70 | 1 0 0 -1 71 | $EndComp 72 | Wire Wire Line 73 | 2200 3025 2625 3025 74 | Wire Wire Line 75 | 3100 2875 3100 2925 76 | Wire Wire Line 77 | 3100 3225 3100 3275 78 | $Comp 79 | L GND #PWR03 80 | U 1 1 5CA32803 81 | P 2625 3250 82 | F 0 "#PWR03" H 2625 3000 50 0001 C CNN 83 | F 1 "GND" H 2625 3100 50 0000 C CNN 84 | F 2 "" H 2625 3250 50 0001 C CNN 85 | F 3 "" H 2625 3250 50 0001 C CNN 86 | 1 2625 3250 87 | 1 0 0 -1 88 | $EndComp 89 | Wire Wire Line 90 | 2200 3125 2625 3125 91 | $Comp 92 | L PWR_FLAG #FLG04 93 | U 1 1 5CA33697 94 | P 2300 2875 95 | F 0 "#FLG04" H 2300 2950 50 0001 C CNN 96 | F 1 "PWR_FLAG" H 2300 3025 50 0000 C CNN 97 | F 2 "" H 2300 2875 50 0001 C CNN 98 | F 3 "" H 2300 2875 50 0001 C CNN 99 | 1 2300 2875 100 | 1 0 0 -1 101 | $EndComp 102 | Wire Wire Line 103 | 2625 3025 2625 2875 104 | Wire Wire Line 105 | 2300 2875 2300 3025 106 | Connection ~ 2300 3025 107 | $Comp 108 | L PWR_FLAG #FLG05 109 | U 1 1 5CA341D3 110 | P 2300 3250 111 | F 0 "#FLG05" H 2300 3325 50 0001 C CNN 112 | F 1 "PWR_FLAG" H 2300 3400 50 0000 C CNN 113 | F 2 "" H 2300 3250 50 0001 C CNN 114 | F 3 "" H 2300 3250 50 0001 C CNN 115 | 1 2300 3250 116 | -1 0 0 1 117 | $EndComp 118 | Wire Wire Line 119 | 2625 3125 2625 3250 120 | Wire Wire Line 121 | 2300 3250 2300 3125 122 | Connection ~ 2300 3125 123 | $Comp 124 | L GND #PWR? 125 | U 1 1 5CA38687 126 | P 3100 3650 127 | F 0 "#PWR?" H 3100 3400 50 0001 C CNN 128 | F 1 "GND" H 3100 3500 50 0000 C CNN 129 | F 2 "" H 3100 3650 50 0001 C CNN 130 | F 3 "" H 3100 3650 50 0001 C CNN 131 | 1 3100 3650 132 | 1 0 0 -1 133 | $EndComp 134 | Wire Wire Line 135 | 3100 3575 3100 3650 136 | $EndSCHEMATC 137 | -------------------------------------------------------------------------------- /tests/kicad6/kicad4-project/kicad4-project.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 2 2 | LIBS:good-project-cache 3 | EELAYER 25 0 4 | EELAYER END 5 | $Descr A4 11693 8268 6 | encoding utf-8 7 | Sheet 1 1 8 | Title "" 9 | Date "" 10 | Rev "" 11 | Comp "" 12 | Comment1 "" 13 | Comment2 "" 14 | Comment3 "" 15 | Comment4 "" 16 | $EndDescr 17 | $Comp 18 | L R R1 19 | U 1 1 5CA32696 20 | P 3100 3425 21 | F 0 "R1" V 3180 3425 50 0000 C CNN 22 | F 1 "330" V 3100 3425 50 0000 C CNN 23 | F 2 "Resistor_SMD:R_0603_1608Metric" V 3030 3425 50 0001 C CNN 24 | F 3 "" H 3100 3425 50 0001 C CNN 25 | 1 3100 3425 26 | 1 0 0 -1 27 | $EndComp 28 | $Comp 29 | L LED D1 30 | U 1 1 5CA326B7 31 | P 3100 3075 32 | F 0 "D1" H 3100 3175 50 0000 C CNN 33 | F 1 "LED" H 3100 2975 50 0000 C CNN 34 | F 2 "LED_SMD:LED_0805_2012Metric" H 3100 3075 50 0001 C CNN 35 | F 3 "" H 3100 3075 50 0001 C CNN 36 | 1 3100 3075 37 | 0 -1 -1 0 38 | $EndComp 39 | $Comp 40 | L VCC #PWR01 41 | U 1 1 5CA32709 42 | P 3100 2875 43 | F 0 "#PWR01" H 3100 2725 50 0001 C CNN 44 | F 1 "VCC" H 3100 3025 50 0000 C CNN 45 | F 2 "" H 3100 2875 50 0001 C CNN 46 | F 3 "" H 3100 2875 50 0001 C CNN 47 | 1 3100 2875 48 | 1 0 0 -1 49 | $EndComp 50 | $Comp 51 | L Conn_01x02 J1 52 | U 1 1 5CA32731 53 | P 2000 3125 54 | F 0 "J1" H 2000 3225 50 0000 C CNN 55 | F 1 "Conn_01x02" H 2000 2925 50 0000 C CNN 56 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical" H 2000 3125 50 0001 C CNN 57 | F 3 "" H 2000 3125 50 0001 C CNN 58 | 1 2000 3125 59 | -1 0 0 1 60 | $EndComp 61 | $Comp 62 | L VCC #PWR02 63 | U 1 1 5CA327B9 64 | P 2625 2875 65 | F 0 "#PWR02" H 2625 2725 50 0001 C CNN 66 | F 1 "VCC" H 2625 3025 50 0000 C CNN 67 | F 2 "" H 2625 2875 50 0001 C CNN 68 | F 3 "" H 2625 2875 50 0001 C CNN 69 | 1 2625 2875 70 | 1 0 0 -1 71 | $EndComp 72 | Wire Wire Line 73 | 2200 3025 2625 3025 74 | Wire Wire Line 75 | 3100 2875 3100 2925 76 | Wire Wire Line 77 | 3100 3225 3100 3275 78 | $Comp 79 | L GND #PWR03 80 | U 1 1 5CA32803 81 | P 2625 3250 82 | F 0 "#PWR03" H 2625 3000 50 0001 C CNN 83 | F 1 "GND" H 2625 3100 50 0000 C CNN 84 | F 2 "" H 2625 3250 50 0001 C CNN 85 | F 3 "" H 2625 3250 50 0001 C CNN 86 | 1 2625 3250 87 | 1 0 0 -1 88 | $EndComp 89 | Wire Wire Line 90 | 2200 3125 2625 3125 91 | $Comp 92 | L PWR_FLAG #FLG04 93 | U 1 1 5CA33697 94 | P 2300 2875 95 | F 0 "#FLG04" H 2300 2950 50 0001 C CNN 96 | F 1 "PWR_FLAG" H 2300 3025 50 0000 C CNN 97 | F 2 "" H 2300 2875 50 0001 C CNN 98 | F 3 "" H 2300 2875 50 0001 C CNN 99 | 1 2300 2875 100 | 1 0 0 -1 101 | $EndComp 102 | Wire Wire Line 103 | 2625 3025 2625 2875 104 | Wire Wire Line 105 | 2300 2875 2300 3025 106 | Connection ~ 2300 3025 107 | $Comp 108 | L PWR_FLAG #FLG05 109 | U 1 1 5CA341D3 110 | P 2300 3250 111 | F 0 "#FLG05" H 2300 3325 50 0001 C CNN 112 | F 1 "PWR_FLAG" H 2300 3400 50 0000 C CNN 113 | F 2 "" H 2300 3250 50 0001 C CNN 114 | F 3 "" H 2300 3250 50 0001 C CNN 115 | 1 2300 3250 116 | -1 0 0 1 117 | $EndComp 118 | Wire Wire Line 119 | 2625 3125 2625 3250 120 | Wire Wire Line 121 | 2300 3250 2300 3125 122 | Connection ~ 2300 3125 123 | $Comp 124 | L GND #PWR? 125 | U 1 1 5CA38687 126 | P 3100 3650 127 | F 0 "#PWR?" H 3100 3400 50 0001 C CNN 128 | F 1 "GND" H 3100 3500 50 0000 C CNN 129 | F 2 "" H 3100 3650 50 0001 C CNN 130 | F 3 "" H 3100 3650 50 0001 C CNN 131 | 1 3100 3650 132 | 1 0 0 -1 133 | $EndComp 134 | Wire Wire Line 135 | 3100 3575 3100 3650 136 | $EndSCHEMATC 137 | -------------------------------------------------------------------------------- /tests/kicad6/good-project/good-project.kicad_sch: -------------------------------------------------------------------------------- 1 | (kicad_sch (version 20211123) (generator eeschema) 2 | 3 | (uuid 87c78429-be2b-40ed-8d3b-56cb9666a56f) 4 | 5 | (paper "A4") 6 | 7 | (lib_symbols 8 | ) 9 | 10 | 11 | (wire (pts (xy 110.49 63.246) (xy 138.684 63.246)) 12 | (stroke (width 0) (type solid) (color 0 0 0 0)) 13 | (uuid edc9ab4f-487a-48dc-95f2-4d87f0e9cf9e) 14 | ) 15 | 16 | (sheet (at 81.788 54.356) (size 28.702 37.084) 17 | (stroke (width 0) (type solid) (color 0 0 0 0)) 18 | (fill (color 0 0 0 0.0000)) 19 | (uuid 00000000-0000-0000-0000-00005ca71704) 20 | (property "Sheet name" "Power" (id 0) (at 81.788 53.7205 0) 21 | (effects (font (size 1.27 1.27)) (justify left bottom)) 22 | ) 23 | (property "Sheet file" "power.kicad_sch" (id 1) (at 81.788 91.9485 0) 24 | (effects (font (size 1.27 1.27)) (justify left top)) 25 | ) 26 | (pin "VCC" output (at 110.49 63.246 0) 27 | (effects (font (size 1.27 1.27)) (justify right)) 28 | (uuid e83e0227-ac0f-4180-82bd-68d3a7b56476) 29 | ) 30 | ) 31 | 32 | (sheet (at 138.684 55.372) (size 31.242 36.322) 33 | (stroke (width 0) (type solid) (color 0 0 0 0)) 34 | (fill (color 0 0 0 0.0000)) 35 | (uuid 00000000-0000-0000-0000-00005ca75bc1) 36 | (property "Sheet name" "logic" (id 0) (at 138.684 54.7365 0) 37 | (effects (font (size 1.27 1.27)) (justify left bottom)) 38 | ) 39 | (property "Sheet file" "logic.kicad_sch" (id 1) (at 138.684 92.2025 0) 40 | (effects (font (size 1.27 1.27)) (justify left top)) 41 | ) 42 | (pin "VCC" input (at 138.684 63.246 180) 43 | (effects (font (size 1.27 1.27)) (justify left)) 44 | (uuid 7e969d15-6cc0-4258-8b27-586608a21adb) 45 | ) 46 | ) 47 | 48 | (sheet_instances 49 | (path "/" (page "1")) 50 | (path "/00000000-0000-0000-0000-00005ca71704" (page "2")) 51 | (path "/00000000-0000-0000-0000-00005ca75bc1" (page "3")) 52 | ) 53 | 54 | (symbol_instances 55 | (path "/00000000-0000-0000-0000-00005ca71704/00000000-0000-0000-0000-00005ca71c3c" 56 | (reference "#FLG01") (unit 1) (value "PWR_FLAG") (footprint "") 57 | ) 58 | (path "/00000000-0000-0000-0000-00005ca71704/00000000-0000-0000-0000-00005ca72902" 59 | (reference "#FLG02") (unit 1) (value "PWR_FLAG") (footprint "") 60 | ) 61 | (path "/00000000-0000-0000-0000-00005ca71704/00000000-0000-0000-0000-00005ca73f58" 62 | (reference "#PWR01") (unit 1) (value "GND") (footprint "") 63 | ) 64 | (path "/00000000-0000-0000-0000-00005ca71704/00000000-0000-0000-0000-00005ca755f5" 65 | (reference "#PWR02") (unit 1) (value "GND") (footprint "") 66 | ) 67 | (path "/00000000-0000-0000-0000-00005ca75bc1/00000000-0000-0000-0000-00005ca77789" 68 | (reference "#PWR03") (unit 1) (value "GND") (footprint "") 69 | ) 70 | (path "/00000000-0000-0000-0000-00005ca71704/00000000-0000-0000-0000-00005ca745a6" 71 | (reference "C1") (unit 1) (value "C") (footprint "Capacitor_SMD:C_0402_1005Metric") 72 | ) 73 | (path "/00000000-0000-0000-0000-00005ca75bc1/00000000-0000-0000-0000-00005ca76352" 74 | (reference "C2") (unit 1) (value "C") (footprint "Capacitor_SMD:C_0402_1005Metric") 75 | ) 76 | (path "/00000000-0000-0000-0000-00005ca71704/00000000-0000-0000-0000-00005ca714f2" 77 | (reference "P1") (unit 1) (value "CONN_01X02") (footprint "Connector_JST:JST_JWPF_B02B-JWPF-SK-R_1x02_P2.00mm_Vertical") 78 | ) 79 | (path "/00000000-0000-0000-0000-00005ca75bc1/00000000-0000-0000-0000-00005ca75c86" 80 | (reference "R1") (unit 1) (value "R") (footprint "Resistor_SMD:R_0402_1005Metric") 81 | ) 82 | ) 83 | ) 84 | -------------------------------------------------------------------------------- /tests/kicad5/missing-lib/missing-lib.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 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 kicad4-project-rescue:R R1 18 | U 1 1 5CA32696 19 | P 3100 3425 20 | F 0 "R1" V 3180 3425 50 0000 C CNN 21 | F 1 "330" V 3100 3425 50 0000 C CNN 22 | F 2 "Resistor_SMD:R_0603_1608Metric" V 3030 3425 50 0001 C CNN 23 | F 3 "" H 3100 3425 50 0001 C CNN 24 | 1 3100 3425 25 | 1 0 0 -1 26 | $EndComp 27 | $Comp 28 | L kicad4-project-rescue:LED D1 29 | U 1 1 5CA326B7 30 | P 3100 3075 31 | F 0 "D1" H 3100 3175 50 0000 C CNN 32 | F 1 "LED" H 3100 2975 50 0000 C CNN 33 | F 2 "LED_SMD:LED_0805_2012Metric" H 3100 3075 50 0001 C CNN 34 | F 3 "" H 3100 3075 50 0001 C CNN 35 | 1 3100 3075 36 | 0 -1 -1 0 37 | $EndComp 38 | $Comp 39 | L kicad4-project-rescue:VCC #PWR01 40 | U 1 1 5CA32709 41 | P 3100 2875 42 | F 0 "#PWR01" H 3100 2725 50 0001 C CNN 43 | F 1 "VCC" H 3100 3025 50 0000 C CNN 44 | F 2 "" H 3100 2875 50 0001 C CNN 45 | F 3 "" H 3100 2875 50 0001 C CNN 46 | 1 3100 2875 47 | 1 0 0 -1 48 | $EndComp 49 | $Comp 50 | L kicad4-project-rescue:Conn_01x02 J1 51 | U 1 1 5CA32731 52 | P 2000 3125 53 | F 0 "J1" H 2000 3225 50 0000 C CNN 54 | F 1 "Conn_01x02" H 2000 2925 50 0000 C CNN 55 | F 2 "Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical" H 2000 3125 50 0001 C CNN 56 | F 3 "" H 2000 3125 50 0001 C CNN 57 | 1 2000 3125 58 | -1 0 0 1 59 | $EndComp 60 | $Comp 61 | L kicad4-project-rescue:VCC #PWR02 62 | U 1 1 5CA327B9 63 | P 2625 2875 64 | F 0 "#PWR02" H 2625 2725 50 0001 C CNN 65 | F 1 "VCC" H 2625 3025 50 0000 C CNN 66 | F 2 "" H 2625 2875 50 0001 C CNN 67 | F 3 "" H 2625 2875 50 0001 C CNN 68 | 1 2625 2875 69 | 1 0 0 -1 70 | $EndComp 71 | Wire Wire Line 72 | 2200 3025 2300 3025 73 | Wire Wire Line 74 | 3100 2875 3100 2925 75 | Wire Wire Line 76 | 3100 3225 3100 3275 77 | $Comp 78 | L kicad4-project-rescue:GND #PWR03 79 | U 1 1 5CA32803 80 | P 2625 3250 81 | F 0 "#PWR03" H 2625 3000 50 0001 C CNN 82 | F 1 "GND" H 2625 3100 50 0000 C CNN 83 | F 2 "" H 2625 3250 50 0001 C CNN 84 | F 3 "" H 2625 3250 50 0001 C CNN 85 | 1 2625 3250 86 | 1 0 0 -1 87 | $EndComp 88 | Wire Wire Line 89 | 2200 3125 2300 3125 90 | $Comp 91 | L kicad4-project-rescue:PWR_FLAG #FLG04 92 | U 1 1 5CA33697 93 | P 2300 2875 94 | F 0 "#FLG04" H 2300 2950 50 0001 C CNN 95 | F 1 "PWR_FLAG" H 2300 3025 50 0000 C CNN 96 | F 2 "" H 2300 2875 50 0001 C CNN 97 | F 3 "" H 2300 2875 50 0001 C CNN 98 | 1 2300 2875 99 | 1 0 0 -1 100 | $EndComp 101 | Wire Wire Line 102 | 2625 3025 2625 2875 103 | Wire Wire Line 104 | 2300 2875 2300 3025 105 | Connection ~ 2300 3025 106 | $Comp 107 | L kicad4-project-rescue:PWR_FLAG #FLG05 108 | U 1 1 5CA341D3 109 | P 2300 3250 110 | F 0 "#FLG05" H 2300 3325 50 0001 C CNN 111 | F 1 "PWR_FLAG" H 2300 3400 50 0000 C CNN 112 | F 2 "" H 2300 3250 50 0001 C CNN 113 | F 3 "" H 2300 3250 50 0001 C CNN 114 | 1 2300 3250 115 | -1 0 0 1 116 | $EndComp 117 | Wire Wire Line 118 | 2625 3125 2625 3250 119 | Wire Wire Line 120 | 2300 3250 2300 3125 121 | Connection ~ 2300 3125 122 | $Comp 123 | L kicad4-project-rescue:GND #PWR? 124 | U 1 1 5CA38687 125 | P 3100 3650 126 | F 0 "#PWR?" H 3100 3400 50 0001 C CNN 127 | F 1 "GND" H 3100 3500 50 0000 C CNN 128 | F 2 "" H 3100 3650 50 0001 C CNN 129 | F 3 "" H 3100 3650 50 0001 C CNN 130 | 1 3100 3650 131 | 1 0 0 -1 132 | $EndComp 133 | Wire Wire Line 134 | 3100 3575 3100 3650 135 | Wire Wire Line 136 | 2300 3025 2625 3025 137 | Wire Wire Line 138 | 2300 3125 2625 3125 139 | $EndSCHEMATC 140 | -------------------------------------------------------------------------------- /tests/kicad5/good-project/good-project.net: -------------------------------------------------------------------------------- 1 | (export (version D) 2 | (design 3 | (source good-project.sch) 4 | (date "Fri 05 Apr 2019 11:22:38 AM CEST") 5 | (tool "Eeschema 5.1.0") 6 | (sheet (number 1) (name /) (tstamps /) 7 | (title_block 8 | (title) 9 | (company) 10 | (rev) 11 | (date) 12 | (source good-project.sch) 13 | (comment (number 1) (value "")) 14 | (comment (number 2) (value "")) 15 | (comment (number 3) (value "")) 16 | (comment (number 4) (value "")))) 17 | (sheet (number 2) (name /Power/) (tstamps /5CA71704/) 18 | (title_block 19 | (title) 20 | (company) 21 | (rev) 22 | (date) 23 | (source power.sch) 24 | (comment (number 1) (value "")) 25 | (comment (number 2) (value "")) 26 | (comment (number 3) (value "")) 27 | (comment (number 4) (value "")))) 28 | (sheet (number 3) (name /logic/) (tstamps /5CA75BC1/) 29 | (title_block 30 | (title) 31 | (company) 32 | (rev) 33 | (date) 34 | (source logic.sch) 35 | (comment (number 1) (value "")) 36 | (comment (number 2) (value "")) 37 | (comment (number 3) (value "")) 38 | (comment (number 4) (value ""))))) 39 | (components 40 | (comp (ref P1) 41 | (value CONN_01X02) 42 | (footprint Connector_JST:JST_JWPF_B02B-JWPF-SK-R_1x02_P2.00mm_Vertical) 43 | (libsource (lib conn) (part CONN_01X02) (description "")) 44 | (sheetpath (names /Power/) (tstamps /5CA71704/)) 45 | (tstamp 5CA714F2)) 46 | (comp (ref C1) 47 | (value C) 48 | (footprint Capacitor_SMD:C_0402_1005Metric) 49 | (libsource (lib passive) (part C) (description "")) 50 | (sheetpath (names /Power/) (tstamps /5CA71704/)) 51 | (tstamp 5CA745A6)) 52 | (comp (ref R1) 53 | (value R) 54 | (footprint Resistor_SMD:R_0402_1005Metric) 55 | (libsource (lib passive) (part R) (description "")) 56 | (sheetpath (names /logic/) (tstamps /5CA75BC1/)) 57 | (tstamp 5CA75C86)) 58 | (comp (ref C2) 59 | (value C) 60 | (footprint Capacitor_SMD:C_0402_1005Metric) 61 | (libsource (lib passive) (part C) (description "")) 62 | (sheetpath (names /logic/) (tstamps /5CA75BC1/)) 63 | (tstamp 5CA76352))) 64 | (libparts 65 | (libpart (lib conn) (part CONN_01X02) 66 | (footprints 67 | (fp Pin_Header_Straight_1X02) 68 | (fp Pin_Header_Angled_1X02) 69 | (fp Socket_Strip_Straight_1X02) 70 | (fp Socket_Strip_Angled_1X02)) 71 | (fields 72 | (field (name Reference) P) 73 | (field (name Value) CONN_01X02)) 74 | (pins 75 | (pin (num 1) (name P1) (type passive)) 76 | (pin (num 2) (name P2) (type passive)))) 77 | (libpart (lib passive) (part C) 78 | (fields 79 | (field (name Reference) C) 80 | (field (name Value) C)) 81 | (pins 82 | (pin (num 1) (name 1) (type passive)) 83 | (pin (num 2) (name 2) (type passive)))) 84 | (libpart (lib passive) (part R) 85 | (fields 86 | (field (name Reference) R) 87 | (field (name Value) R)) 88 | (pins 89 | (pin (num 1) (name 1) (type passive)) 90 | (pin (num 2) (name 2) (type passive))))) 91 | (libraries 92 | (library (logical conn) 93 | (uri conn.lib)) 94 | (library (logical passive) 95 | (uri passive.lib))) 96 | (nets 97 | (net (code 1) (name /Power/VCC) 98 | (node (ref R1) (pin 1)) 99 | (node (ref C1) (pin 1)) 100 | (node (ref P1) (pin 2))) 101 | (net (code 2) (name GND) 102 | (node (ref P1) (pin 1)) 103 | (node (ref C2) (pin 2)) 104 | (node (ref C1) (pin 2))) 105 | (net (code 3) (name "Net-(C2-Pad1)") 106 | (node (ref C2) (pin 1)) 107 | (node (ref R1) (pin 2))))) -------------------------------------------------------------------------------- /tests/kicad5/warning-project/warning-project.net: -------------------------------------------------------------------------------- 1 | (export (version D) 2 | (design 3 | (source warning-project.sch) 4 | (date "Fri 05 Apr 2019 11:24:21 AM CEST") 5 | (tool "Eeschema 5.1.0") 6 | (sheet (number 1) (name /) (tstamps /) 7 | (title_block 8 | (title) 9 | (company) 10 | (rev) 11 | (date) 12 | (source warning-project.sch) 13 | (comment (number 1) (value "")) 14 | (comment (number 2) (value "")) 15 | (comment (number 3) (value "")) 16 | (comment (number 4) (value "")))) 17 | (sheet (number 2) (name /Power/) (tstamps /5CA71704/) 18 | (title_block 19 | (title) 20 | (company) 21 | (rev) 22 | (date) 23 | (source power.sch) 24 | (comment (number 1) (value "")) 25 | (comment (number 2) (value "")) 26 | (comment (number 3) (value "")) 27 | (comment (number 4) (value "")))) 28 | (sheet (number 3) (name /logic/) (tstamps /5CA75BC1/) 29 | (title_block 30 | (title) 31 | (company) 32 | (rev) 33 | (date) 34 | (source logic.sch) 35 | (comment (number 1) (value "")) 36 | (comment (number 2) (value "")) 37 | (comment (number 3) (value "")) 38 | (comment (number 4) (value ""))))) 39 | (components 40 | (comp (ref P1) 41 | (value CONN_01X02) 42 | (footprint Connector_JST:JST_JWPF_B02B-JWPF-SK-R_1x02_P2.00mm_Vertical) 43 | (libsource (lib conn) (part CONN_01X02) (description "")) 44 | (sheetpath (names /Power/) (tstamps /5CA71704/)) 45 | (tstamp 5CA714F2)) 46 | (comp (ref C1) 47 | (value C) 48 | (footprint Capacitor_SMD:C_0402_1005Metric) 49 | (libsource (lib passive) (part C) (description "")) 50 | (sheetpath (names /Power/) (tstamps /5CA71704/)) 51 | (tstamp 5CA745A6)) 52 | (comp (ref R1) 53 | (value R) 54 | (footprint Resistor_SMD:R_0402_1005Metric) 55 | (libsource (lib passive) (part R) (description "")) 56 | (sheetpath (names /logic/) (tstamps /5CA75BC1/)) 57 | (tstamp 5CA75C86)) 58 | (comp (ref C2) 59 | (value C) 60 | (footprint Capacitor_SMD:C_0402_1005Metric) 61 | (libsource (lib passive) (part C) (description "")) 62 | (sheetpath (names /logic/) (tstamps /5CA75BC1/)) 63 | (tstamp 5CA76352))) 64 | (libparts 65 | (libpart (lib conn) (part CONN_01X02) 66 | (footprints 67 | (fp Pin_Header_Straight_1X02) 68 | (fp Pin_Header_Angled_1X02) 69 | (fp Socket_Strip_Straight_1X02) 70 | (fp Socket_Strip_Angled_1X02)) 71 | (fields 72 | (field (name Reference) P) 73 | (field (name Value) CONN_01X02)) 74 | (pins 75 | (pin (num 1) (name P1) (type passive)) 76 | (pin (num 2) (name P2) (type passive)))) 77 | (libpart (lib passive) (part C) 78 | (fields 79 | (field (name Reference) C) 80 | (field (name Value) C)) 81 | (pins 82 | (pin (num 1) (name 1) (type passive)) 83 | (pin (num 2) (name 2) (type passive)))) 84 | (libpart (lib passive) (part R) 85 | (fields 86 | (field (name Reference) R) 87 | (field (name Value) R)) 88 | (pins 89 | (pin (num 1) (name 1) (type passive)) 90 | (pin (num 2) (name 2) (type passive))))) 91 | (libraries 92 | (library (logical conn) 93 | (uri conn.lib)) 94 | (library (logical passive) 95 | (uri passive.lib))) 96 | (nets 97 | (net (code 1) (name VCC) 98 | (node (ref R1) (pin 1)) 99 | (node (ref P1) (pin 2)) 100 | (node (ref C1) (pin 1))) 101 | (net (code 2) (name GND) 102 | (node (ref P1) (pin 1)) 103 | (node (ref C2) (pin 2)) 104 | (node (ref C1) (pin 2))) 105 | (net (code 3) (name "Net-(C2-Pad1)") 106 | (node (ref C2) (pin 1)) 107 | (node (ref R1) (pin 2))))) -------------------------------------------------------------------------------- /tests/kicad6/drawings/drawings.kicad_pcb: -------------------------------------------------------------------------------- 1 | (kicad_pcb (version 20211014) (generator pcbnew) 2 | 3 | (general 4 | (thickness 1.6) 5 | ) 6 | 7 | (paper "A4") 8 | (layers 9 | (0 "F.Cu" signal) 10 | (31 "B.Cu" signal) 11 | (32 "B.Adhes" user "B.Adhesive") 12 | (33 "F.Adhes" user "F.Adhesive") 13 | (34 "B.Paste" user) 14 | (35 "F.Paste" user) 15 | (36 "B.SilkS" user "B.Silkscreen") 16 | (37 "F.SilkS" user "F.Silkscreen") 17 | (38 "B.Mask" user) 18 | (39 "F.Mask" user) 19 | (40 "Dwgs.User" user "User.Drawings") 20 | (41 "Cmts.User" user "User.Comments") 21 | (42 "Eco1.User" user "User.Eco1") 22 | (43 "Eco2.User" user "User.Eco2") 23 | (44 "Edge.Cuts" user) 24 | (45 "Margin" user) 25 | (46 "B.CrtYd" user "B.Courtyard") 26 | (47 "F.CrtYd" user "F.Courtyard") 27 | (48 "B.Fab" user) 28 | (49 "F.Fab" user) 29 | ) 30 | 31 | (setup 32 | (pad_to_mask_clearance 0) 33 | (pcbplotparams 34 | (layerselection 0x00010fc_ffffffff) 35 | (disableapertmacros false) 36 | (usegerberextensions false) 37 | (usegerberattributes true) 38 | (usegerberadvancedattributes true) 39 | (creategerberjobfile true) 40 | (svguseinch false) 41 | (svgprecision 6) 42 | (excludeedgelayer true) 43 | (plotframeref false) 44 | (viasonmask false) 45 | (mode 1) 46 | (useauxorigin false) 47 | (hpglpennumber 1) 48 | (hpglpenspeed 20) 49 | (hpglpendiameter 15.000000) 50 | (dxfpolygonmode true) 51 | (dxfimperialunits true) 52 | (dxfusepcbnewfont true) 53 | (psnegative false) 54 | (psa4output false) 55 | (plotreference true) 56 | (plotvalue true) 57 | (plotinvisibletext false) 58 | (sketchpadsonfab false) 59 | (subtractmaskfromsilk false) 60 | (outputformat 1) 61 | (mirror false) 62 | (drillshape 1) 63 | (scaleselection 1) 64 | (outputdirectory "") 65 | ) 66 | ) 67 | 68 | (net 0 "") 69 | 70 | (gr_line (start 128 79) (end 129 79) (layer "Edge.Cuts") (width 0.05) (tstamp 00000000-0000-0000-0000-000066264cde)) 71 | (gr_line (start 129 79) (end 140 79) (layer "Edge.Cuts") (width 0.05) (tstamp 5de1bd25-a4a5-45a4-9974-9a84b3d8f3e2)) 72 | (gr_line (start 140 89) (end 128 89) (layer "Edge.Cuts") (width 0.05) (tstamp 79b44144-1530-48c3-8727-a3fdfdfc2e24)) 73 | (gr_line (start 128 89) (end 128 79) (layer "Edge.Cuts") (width 0.05) (tstamp bac198cf-ed66-44d3-b2c5-08fe718b4d73)) 74 | (gr_line (start 140 79) (end 140 89) (layer "Edge.Cuts") (width 0.05) (tstamp ce015dd4-1c29-4544-a412-611f6db6289c)) 75 | (gr_text "Drawings" (at 130 81) (layer "Dwgs.User") (tstamp 8dd1b917-5ed2-4f46-9fd2-935cf6708fa4) 76 | (effects (font (size 1 1) (thickness 0.15)) (justify left)) 77 | ) 78 | (gr_text "Drawings" (at 129.67 71.19) (layer "Dwgs.User") (tstamp bcf68808-039c-4346-b66a-dcbee36401dc) 79 | (effects (font (size 1 1) (thickness 0.15)) (justify left)) 80 | ) 81 | (gr_text "Comments" (at 130 83) (layer "Cmts.User") (tstamp 584f4036-e104-4439-9b91-67ab011fdee5) 82 | (effects (font (size 1 1) (thickness 0.15)) (justify left)) 83 | ) 84 | (gr_text "Comments" (at 129.67 73.19) (layer "Cmts.User") (tstamp a8603a13-2ef3-4e29-b2fe-7786b4986a38) 85 | (effects (font (size 1 1) (thickness 0.15)) (justify left)) 86 | ) 87 | (gr_text "Eco1" (at 132 85) (layer "Eco1.User") (tstamp 0ceaadfb-31c2-4706-8346-8f4270319d7c) 88 | (effects (font (size 1 1) (thickness 0.15))) 89 | ) 90 | (gr_text "Eco1" (at 131.67 75.19) (layer "Eco1.User") (tstamp f01f8c68-9033-424f-822a-909d88f9d3dc) 91 | (effects (font (size 1 1) (thickness 0.15))) 92 | ) 93 | (gr_text "Eco2" (at 132 87) (layer "Eco2.User") (tstamp 42a9eafc-149c-4152-9757-7fa46195223b) 94 | (effects (font (size 1 1) (thickness 0.15))) 95 | ) 96 | (gr_text "Eco2" (at 131.67 77.19) (layer "Eco2.User") (tstamp 9b93cfc0-f120-4d49-a63e-fdcfcd40d189) 97 | (effects (font (size 1 1) (thickness 0.15))) 98 | ) 99 | 100 | ) 101 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/logic.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 3 3 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L fail-project-rescue:R-passive R1 18 | U 1 1 5CA75C86 19 | P 5500 2790 20 | F 0 "R1" H 5492 2948 40 0000 C CNN 21 | F 1 "R" H 5492 2872 40 0000 C CNN 22 | F 2 "Resistor_SMD:R_0402_1005Metric" H 5500 2790 60 0001 C CNN 23 | F 3 "" H 5500 2790 60 0000 C CNN 24 | 1 5500 2790 25 | 1 0 0 -1 26 | $EndComp 27 | $Comp 28 | L fail-project-rescue:C-passive C2 29 | U 1 1 5CA76352 30 | P 5700 2860 31 | F 0 "C2" V 5654 2904 40 0000 L CNN 32 | F 1 "C" V 5730 2904 40 0000 L CNN 33 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5700 2860 60 0001 C CNN 34 | F 3 "" H 5700 2860 60 0000 C CNN 35 | 1 5700 2860 36 | 0 1 1 0 37 | $EndComp 38 | Wire Wire Line 39 | 5550 2790 5700 2790 40 | Wire Wire Line 41 | 5700 2790 5700 2810 42 | Wire Wire Line 43 | 5700 2910 5700 3000 44 | $Comp 45 | L power:GND #PWR03 46 | U 1 1 5CA77789 47 | P 5700 3000 48 | F 0 "#PWR03" H 5700 2750 50 0001 C CNN 49 | F 1 "GND" H 5705 2827 50 0000 C CNN 50 | F 2 "" H 5700 3000 50 0000 C CNN 51 | F 3 "" H 5700 3000 50 0000 C CNN 52 | 1 5700 3000 53 | 1 0 0 -1 54 | $EndComp 55 | Wire Wire Line 56 | 5450 2790 5310 2790 57 | Text HLabel 5310 2790 0 50 Input ~ 0 58 | VCC 59 | $Comp 60 | L fail-project-rescue:CP-passive C3 61 | U 1 1 5CA7214E 62 | P 6110 2580 63 | F 0 "C3" V 6064 2638 40 0000 L CNN 64 | F 1 "CP" V 6140 2638 40 0000 L CNN 65 | F 2 "Capacitor_SMD:CP_Elec_3x5.3" V 6178 2638 60 0001 L CNN 66 | F 3 "" H 6110 2580 60 0000 C CNN 67 | 1 6110 2580 68 | 0 1 1 0 69 | $EndComp 70 | $Comp 71 | L fail-project-rescue:CP-passive C4 72 | U 1 1 5CA735B9 73 | P 6320 2580 74 | F 0 "C4" V 6274 2638 40 0000 L CNN 75 | F 1 "CP" V 6350 2638 40 0000 L CNN 76 | F 2 "Capacitor_SMD:CP_Elec_3x5.3" V 6388 2638 60 0001 L CNN 77 | F 3 "" H 6320 2580 60 0000 C CNN 78 | 1 6320 2580 79 | 0 1 1 0 80 | $EndComp 81 | Wire Wire Line 82 | 6110 2530 6110 2440 83 | Wire Wire Line 84 | 6110 2440 6320 2440 85 | Wire Wire Line 86 | 6320 2440 6320 2530 87 | Wire Wire Line 88 | 6320 2630 6320 2720 89 | Wire Wire Line 90 | 6320 2720 6110 2720 91 | Wire Wire Line 92 | 6110 2720 6110 2630 93 | Text Notes 6150 3550 0 50 ~ 0 94 | Output to Output: ERC error 95 | $Comp 96 | L 74xx:74LS04 U1 97 | U 1 1 5EAD683A 98 | P 6350 3250 99 | F 0 "U1" H 6350 3567 50 0000 C CNN 100 | F 1 "74LS04" H 6350 3476 50 0000 C CNN 101 | F 2 "" H 6350 3250 50 0001 C CNN 102 | F 3 "http://www.ti.com/lit/gpn/sn74LS04" H 6350 3250 50 0001 C CNN 103 | 1 6350 3250 104 | 1 0 0 -1 105 | $EndComp 106 | $Comp 107 | L 74xx:74LS04 U1 108 | U 2 1 5EAD766B 109 | P 7050 3250 110 | F 0 "U1" H 7050 2933 50 0000 C CNN 111 | F 1 "74LS04" H 7050 3024 50 0000 C CNN 112 | F 2 "" H 7050 3250 50 0001 C CNN 113 | F 3 "http://www.ti.com/lit/gpn/sn74LS04" H 7050 3250 50 0001 C CNN 114 | 2 7050 3250 115 | -1 0 0 1 116 | $EndComp 117 | Wire Wire Line 118 | 6650 3250 6750 3250 119 | Wire Wire Line 120 | 6050 3250 6000 3250 121 | Wire Wire Line 122 | 6000 3250 6000 3350 123 | Wire Wire Line 124 | 7350 3250 7400 3250 125 | Wire Wire Line 126 | 7400 3250 7400 3350 127 | $Comp 128 | L power:GND #PWR05 129 | U 1 1 5EAD892D 130 | P 7400 3350 131 | F 0 "#PWR05" H 7400 3100 50 0001 C CNN 132 | F 1 "GND" H 7405 3177 50 0000 C CNN 133 | F 2 "" H 7400 3350 50 0001 C CNN 134 | F 3 "" H 7400 3350 50 0001 C CNN 135 | 1 7400 3350 136 | 1 0 0 -1 137 | $EndComp 138 | $Comp 139 | L power:GND #PWR04 140 | U 1 1 5EAD967D 141 | P 6000 3350 142 | F 0 "#PWR04" H 6000 3100 50 0001 C CNN 143 | F 1 "GND" H 6005 3177 50 0000 C CNN 144 | F 2 "" H 6000 3350 50 0001 C CNN 145 | F 3 "" H 6000 3350 50 0001 C CNN 146 | 1 6000 3350 147 | 1 0 0 -1 148 | $EndComp 149 | Text Notes 5800 2400 0 50 ~ 0 150 | No driver ERC warning 151 | $EndSCHEMATC 152 | -------------------------------------------------------------------------------- /tests/kicad5/inner_layer_net-tie/inner_layer_net-tie.kicad_pcb: -------------------------------------------------------------------------------- 1 | (kicad_pcb (version 20171130) (host pcbnew "(5.1.12)-1") 2 | 3 | (general 4 | (thickness 1.6) 5 | (drawings 4) 6 | (tracks 0) 7 | (zones 0) 8 | (modules 1) 9 | (nets 1) 10 | ) 11 | 12 | (page A4) 13 | (layers 14 | (0 F.Cu signal) 15 | (1 In1.Cu signal) 16 | (2 In2.Cu signal) 17 | (31 B.Cu signal) 18 | (32 B.Adhes user) 19 | (33 F.Adhes user) 20 | (34 B.Paste user) 21 | (35 F.Paste user) 22 | (36 B.SilkS user) 23 | (37 F.SilkS user) 24 | (38 B.Mask user) 25 | (39 F.Mask user) 26 | (40 Dwgs.User user) 27 | (41 Cmts.User user) 28 | (42 Eco1.User user) 29 | (43 Eco2.User user) 30 | (44 Edge.Cuts user) 31 | (45 Margin user) 32 | (46 B.CrtYd user) 33 | (47 F.CrtYd user) 34 | (48 B.Fab user) 35 | (49 F.Fab user) 36 | ) 37 | 38 | (setup 39 | (last_trace_width 0.25) 40 | (trace_clearance 0.2) 41 | (zone_clearance 0.508) 42 | (zone_45_only no) 43 | (trace_min 0.2) 44 | (via_size 0.8) 45 | (via_drill 0.4) 46 | (via_min_size 0.4) 47 | (via_min_drill 0.3) 48 | (uvia_size 0.3) 49 | (uvia_drill 0.1) 50 | (uvias_allowed no) 51 | (uvia_min_size 0.2) 52 | (uvia_min_drill 0.1) 53 | (edge_width 0.05) 54 | (segment_width 0.2) 55 | (pcb_text_width 0.3) 56 | (pcb_text_size 1.5 1.5) 57 | (mod_edge_width 0.12) 58 | (mod_text_size 1 1) 59 | (mod_text_width 0.15) 60 | (pad_size 1.524 1.524) 61 | (pad_drill 0.762) 62 | (pad_to_mask_clearance 0) 63 | (aux_axis_origin 0 0) 64 | (visible_elements FFFFFF7F) 65 | (pcbplotparams 66 | (layerselection 0x010fc_ffffffff) 67 | (usegerberextensions false) 68 | (usegerberattributes true) 69 | (usegerberadvancedattributes true) 70 | (creategerberjobfile true) 71 | (excludeedgelayer true) 72 | (linewidth 0.100000) 73 | (plotframeref false) 74 | (viasonmask false) 75 | (mode 1) 76 | (useauxorigin false) 77 | (hpglpennumber 1) 78 | (hpglpenspeed 20) 79 | (hpglpendiameter 15.000000) 80 | (psnegative false) 81 | (psa4output false) 82 | (plotreference true) 83 | (plotvalue true) 84 | (plotinvisibletext false) 85 | (padsonsilk false) 86 | (subtractmaskfromsilk false) 87 | (outputformat 1) 88 | (mirror false) 89 | (drillshape 1) 90 | (scaleselection 1) 91 | (outputdirectory "")) 92 | ) 93 | 94 | (net 0 "") 95 | 96 | (net_class Default "This is the default net class." 97 | (clearance 0.2) 98 | (trace_width 0.25) 99 | (via_dia 0.8) 100 | (via_drill 0.4) 101 | (uvia_dia 0.3) 102 | (uvia_drill 0.1) 103 | ) 104 | 105 | (module Carrier_NetTie:Chassis-GND (layer F.Cu) (tedit 630CCB1F) (tstamp 632B8059) 106 | (at 156.21 78.613) 107 | (descr "Tie connecting chassis GND area to circuit GND area") 108 | (tags "net tie") 109 | (attr virtual) 110 | (fp_text reference "" (at 0 0) (layer F.SilkS) 111 | (effects (font (size 1.27 1.27) (thickness 0.15))) 112 | ) 113 | (fp_text value Chassis-GND (at 0 0) (layer F.Fab) 114 | (effects (font (size 1 1) (thickness 0.15))) 115 | ) 116 | (fp_poly (pts (xy 0.4 4.5) (xy -0.4 4.5) (xy -0.4 -4.5) (xy 0.4 -4.5)) (layer In1.Cu) (width 0)) 117 | (fp_poly (pts (xy 0.4 4.5) (xy -0.4 4.5) (xy -0.4 -4.5) (xy 0.4 -4.5)) (layer In2.Cu) (width 0)) 118 | (pad 2 smd rect (at 0.5 0) (size 0.4 9) (layers In1.Cu In2.Cu)) 119 | (pad 1 smd rect (at -0.5 0) (size 0.4 9) (layers In1.Cu In2.Cu)) 120 | ) 121 | 122 | (gr_line (start 173 67) (end 144 67) (layer Edge.Cuts) (width 0.05) (tstamp 632B805A)) 123 | (gr_line (start 173 92) (end 173 67) (layer Edge.Cuts) (width 0.05)) 124 | (gr_line (start 144 92) (end 173 92) (layer Edge.Cuts) (width 0.05)) 125 | (gr_line (start 144 67) (end 144 92) (layer Edge.Cuts) (width 0.05)) 126 | 127 | ) 128 | -------------------------------------------------------------------------------- /.github/workflows/pythonapp.yml: -------------------------------------------------------------------------------- 1 | name: Regression tests 2 | 3 | on: 4 | push: 5 | paths: 6 | - '**.py' 7 | - 'src/*_do' 8 | - 'tests/**' 9 | - 'interposer/interposer.c' 10 | - 'interposer/libinterposer.so' 11 | - '.github/workflows/pythonapp.yml' 12 | pull_request: 13 | paths: 14 | - '**.py' 15 | - 'src/*_do' 16 | - 'tests/**' 17 | - 'interposer/interposer.c' 18 | - 'interposer/libinterposer.so' 19 | - '.github/workflows/pythonapp.yml' 20 | 21 | jobs: 22 | test: 23 | # continue-on-error: true 24 | strategy: 25 | fail-fast: false 26 | matrix: 27 | ki_release: [ki5, ki6, ki7, ki8] 28 | w_tests: [interposer, no_interposer] 29 | 30 | runs-on: ubuntu-latest 31 | container: ghcr.io/inti-cmnb/kicad_auto_test:${{ matrix.ki_release }} 32 | 33 | steps: 34 | - uses: actions/checkout@v4 35 | - name: Lint with flake8 36 | run: | 37 | # stop the build if there are Python syntax errors or undefined names 38 | flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics 39 | # exit-zero treats all errors as warnings. 40 | flake8 . --count --exit-zero --statistics 41 | - name: Test ${{ matrix.ki_release }} 42 | shell: bash 43 | run: | 44 | if [ "${{ matrix.w_tests }}" == 'no_interposer' ]; then export KIAUTO_INTERPOSER_DISABLE=1; fi 45 | make test_server_${{ matrix.ki_release }} 46 | - name: Store results 47 | if: ${{ always() }} 48 | uses: actions/upload-artifact@v4 49 | with: 50 | name: Test_Output_${{ matrix.ki_release }}_${{ matrix.w_tests }} 51 | path: output 52 | # Coveralls reporter v0.6.10 support for Python is broken, the action uses the latest available 53 | # - name: Upload Coverage 54 | # uses: coverallsapp/github-action@v2 55 | # with: 56 | # flag-name: ${{ matrix.ki_release }}_${{ matrix.w_tests }} 57 | # parallel: true 58 | # github-token: ${{ secrets.GITHUB_TOKEN }} 59 | - name: Upload Coverage 60 | env: 61 | COVERALLS_DEBUG: true 62 | COVERALLS_FLAG_NAME: ${{ matrix.ki_release }}_${{ matrix.w_tests }} 63 | COVERALLS_PARALLEL: true 64 | COVERALLS_ENDPOINT: https://coveralls.io 65 | # COVERALLS_GIT_BRANCH: ${{ inputs.git-branch }} 66 | # COVERALLS_GIT_COMMIT: ${{ inputs.git-commit }} 67 | COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} 68 | # COVERALLS_COMPARE_REF: ${{ inputs.compare-ref }} 69 | # COVERALLS_COMPARE_SHA: ${{ inputs.compare-sha }} 70 | COVERALLS_SOURCE_HEADER: github-action 71 | run: | 72 | ls -la .coverage* 73 | mkdir -p ~/bin/ 74 | echo ~/bin >> $GITHUB_PATH 75 | ln -s `which python3-coverage` /usr/bin/coverage 76 | python3-coverage --version 77 | coverage --version 78 | export CURDIR=`pwd` 79 | cd ~/bin/ 80 | curl -sLO https://github.com/coverallsapp/coverage-reporter/releases/download/v0.6.9/coveralls-linux.tar.gz 81 | curl -sLO https://github.com/coverallsapp/coverage-reporter/releases/download/v0.6.9/coveralls-checksums.txt 82 | # curl -sLO https://github.com/coverallsapp/coverage-reporter/releases/latest/download/coveralls-linux.tar.gz 83 | # curl -sLO https://github.com/coverallsapp/coverage-reporter/releases/latest/download/coveralls-checksums.txt 84 | cat coveralls-checksums.txt | grep coveralls-linux.tar.gz | sha256sum --check 85 | tar -xzf coveralls-linux.tar.gz 86 | rm coveralls-checksums.txt 87 | ls -la ~/bin/ 88 | cd ${CURDIR} 89 | ~/bin/coveralls report --debug --format python .coverage 90 | 91 | coveralls: 92 | name: Finish Coveralls 93 | needs: test 94 | runs-on: ubuntu-latest 95 | steps: 96 | - name: Finished 97 | env: 98 | COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }} 99 | run: | 100 | curl -k https://coveralls.io/webhook?repo_token=$COVERALLS_REPO_TOKEN -d "payload[build_num]="$GITHUB_RUN_ID"&payload[status]=done" 101 | 102 | -------------------------------------------------------------------------------- /tests/kicad5/fail-project/fail-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74xx_74LS04 5 | # 6 | DEF 74xx_74LS04 U 0 20 Y Y 7 L N 7 | F0 "U" 0 50 50 H V C CNN 8 | F1 "74xx_74LS04" 0 -50 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | ALIAS 74HC04 74HCT04 74AHC04 74AHCT04 12 | $FPLIST 13 | DIP*W7.62mm* 14 | SSOP?14* 15 | TSSOP?14* 16 | $ENDFPLIST 17 | DRAW 18 | S -200 300 200 -300 7 1 10 f 19 | P 4 1 0 10 -150 150 -150 -150 150 0 -150 150 f 20 | P 4 2 0 10 -150 150 -150 -150 150 0 -150 150 f 21 | P 4 3 0 10 -150 150 -150 -150 150 0 -150 150 f 22 | P 4 4 0 10 -150 150 -150 -150 150 0 -150 150 f 23 | P 4 5 0 10 -150 150 -150 -150 150 0 -150 150 f 24 | P 4 6 0 10 -150 150 -150 -150 150 0 -150 150 f 25 | X ~ 1 -300 0 150 R 50 50 1 0 I 26 | X ~ 2 300 0 150 L 50 50 1 0 O I 27 | X ~ 3 -300 0 150 R 50 50 2 0 I 28 | X ~ 4 300 0 150 L 50 50 2 0 O I 29 | X ~ 5 -300 0 150 R 50 50 3 0 I 30 | X ~ 6 300 0 150 L 50 50 3 0 O I 31 | X ~ 8 300 0 150 L 50 50 4 0 O I 32 | X ~ 9 -300 0 150 R 50 50 4 0 I 33 | X ~ 10 300 0 150 L 50 50 5 0 O I 34 | X ~ 11 -300 0 150 R 50 50 5 0 I 35 | X ~ 12 300 0 150 L 50 50 6 0 O I 36 | X ~ 13 -300 0 150 R 50 50 6 0 I 37 | X VCC 14 0 500 200 D 50 50 7 0 W 38 | X GND 7 0 -500 200 U 50 50 7 0 W 39 | ENDDRAW 40 | ENDDEF 41 | # 42 | # fail-project-rescue_C-passive 43 | # 44 | DEF fail-project-rescue_C-passive C 0 40 N N 1 F N 45 | F0 "C" 0 50 40 H V C CNN 46 | F1 "fail-project-rescue_C-passive" 0 -50 40 H V C CNN 47 | F2 "" 0 0 60 H V C CNN 48 | F3 "" 0 0 60 H V C CNN 49 | DRAW 50 | P 2 0 1 0 -25 0 -50 0 N 51 | P 2 0 1 0 -25 0 -15 0 N 52 | P 2 0 1 0 -10 15 -10 -15 N 53 | P 2 0 1 0 10 15 10 -15 N 54 | P 2 0 1 0 25 0 10 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | # fail-project-rescue_CONN_01X02-conn 62 | # 63 | DEF fail-project-rescue_CONN_01X02-conn P 0 40 Y N 1 F N 64 | F0 "P" 0 150 50 H V C CNN 65 | F1 "fail-project-rescue_CONN_01X02-conn" 100 0 50 V V C CNN 66 | F2 "" 0 0 50 H V C CNN 67 | F3 "" 0 0 50 H V C CNN 68 | $FPLIST 69 | Pin_Header_Straight_1X02 70 | Pin_Header_Angled_1X02 71 | Socket_Strip_Straight_1X02 72 | Socket_Strip_Angled_1X02 73 | $ENDFPLIST 74 | DRAW 75 | S -50 -45 10 -55 0 1 0 N 76 | S -50 55 10 45 0 1 0 N 77 | S -50 100 50 -100 0 1 0 N 78 | X P1 1 -200 50 150 R 50 50 1 1 P 79 | X P2 2 -200 -50 150 R 50 50 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | # fail-project-rescue_CP-passive 84 | # 85 | DEF fail-project-rescue_CP-passive C 0 40 N N 1 F N 86 | F0 "C" 0 55 40 H V C CNN 87 | F1 "fail-project-rescue_CP-passive" 0 -50 40 H V C CNN 88 | F2 "" 0 0 60 H V C CNN 89 | F3 "" 0 0 60 H V C CNN 90 | DRAW 91 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 92 | S -35 20 -15 20 0 1 0 N 93 | S -25 25 -25 10 0 1 0 N 94 | S -25 30 -25 25 0 1 0 N 95 | P 2 0 1 0 -25 0 -50 0 N 96 | P 2 0 1 0 -25 0 -15 0 N 97 | P 2 0 1 0 -10 15 -10 -15 N 98 | P 2 0 1 0 25 0 10 0 N 99 | P 2 0 1 0 50 0 25 0 N 100 | X 1 1 -50 0 0 R 25 25 1 1 I 101 | X 2 2 50 0 0 R 25 25 1 1 I 102 | ENDDRAW 103 | ENDDEF 104 | # 105 | # fail-project-rescue_R-passive 106 | # 107 | DEF fail-project-rescue_R-passive R 0 40 N N 1 F N 108 | F0 "R" 0 50 40 H V C CNN 109 | F1 "fail-project-rescue_R-passive" 0 -50 40 H V C CNN 110 | F2 "" 0 0 60 H V C CNN 111 | F3 "" 0 0 60 H V C CNN 112 | DRAW 113 | S 25 10 -25 -10 0 1 0 f 114 | P 2 0 1 0 -25 0 -50 0 N 115 | P 2 0 1 0 50 0 25 0 N 116 | X 1 1 -50 0 0 R 25 25 1 1 P 117 | X 2 2 50 0 0 R 25 25 1 1 P 118 | ENDDRAW 119 | ENDDEF 120 | # 121 | # power_GND 122 | # 123 | DEF power_GND #PWR 0 0 Y Y 1 F P 124 | F0 "#PWR" 0 -250 50 H I C CNN 125 | F1 "power_GND" 0 -150 50 H V C CNN 126 | F2 "" 0 0 50 H I C CNN 127 | F3 "" 0 0 50 H I C CNN 128 | DRAW 129 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 130 | X GND 1 0 0 0 D 50 50 1 1 W N 131 | ENDDRAW 132 | ENDDEF 133 | # 134 | # power_PWR_FLAG 135 | # 136 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 137 | F0 "#FLG" 0 75 50 H I C CNN 138 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 139 | F2 "" 0 0 50 H I C CNN 140 | F3 "" 0 0 50 H I C CNN 141 | DRAW 142 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 143 | X pwr 1 0 0 0 U 50 50 0 0 w 144 | ENDDRAW 145 | ENDDEF 146 | # 147 | #End Library 148 | -------------------------------------------------------------------------------- /tests/kicad6/fail-project/fail-project-cache.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # 74xx_74LS04 5 | # 6 | DEF 74xx_74LS04 U 0 20 Y Y 7 L N 7 | F0 "U" 0 50 50 H V C CNN 8 | F1 "74xx_74LS04" 0 -50 50 H V C CNN 9 | F2 "" 0 0 50 H I C CNN 10 | F3 "" 0 0 50 H I C CNN 11 | ALIAS 74HC04 74HCT04 74AHC04 74AHCT04 12 | $FPLIST 13 | DIP*W7.62mm* 14 | SSOP?14* 15 | TSSOP?14* 16 | $ENDFPLIST 17 | DRAW 18 | S -200 300 200 -300 7 1 10 f 19 | P 4 1 0 10 -150 150 -150 -150 150 0 -150 150 f 20 | P 4 2 0 10 -150 150 -150 -150 150 0 -150 150 f 21 | P 4 3 0 10 -150 150 -150 -150 150 0 -150 150 f 22 | P 4 4 0 10 -150 150 -150 -150 150 0 -150 150 f 23 | P 4 5 0 10 -150 150 -150 -150 150 0 -150 150 f 24 | P 4 6 0 10 -150 150 -150 -150 150 0 -150 150 f 25 | X ~ 1 -300 0 150 R 50 50 1 0 I 26 | X ~ 2 300 0 150 L 50 50 1 0 O I 27 | X ~ 3 -300 0 150 R 50 50 2 0 I 28 | X ~ 4 300 0 150 L 50 50 2 0 O I 29 | X ~ 5 -300 0 150 R 50 50 3 0 I 30 | X ~ 6 300 0 150 L 50 50 3 0 O I 31 | X ~ 8 300 0 150 L 50 50 4 0 O I 32 | X ~ 9 -300 0 150 R 50 50 4 0 I 33 | X ~ 10 300 0 150 L 50 50 5 0 O I 34 | X ~ 11 -300 0 150 R 50 50 5 0 I 35 | X ~ 12 300 0 150 L 50 50 6 0 O I 36 | X ~ 13 -300 0 150 R 50 50 6 0 I 37 | X VCC 14 0 500 200 D 50 50 7 0 W 38 | X GND 7 0 -500 200 U 50 50 7 0 W 39 | ENDDRAW 40 | ENDDEF 41 | # 42 | # fail-project-rescue_C-passive 43 | # 44 | DEF fail-project-rescue_C-passive C 0 40 N N 1 F N 45 | F0 "C" 0 50 40 H V C CNN 46 | F1 "fail-project-rescue_C-passive" 0 -50 40 H V C CNN 47 | F2 "" 0 0 60 H V C CNN 48 | F3 "" 0 0 60 H V C CNN 49 | DRAW 50 | P 2 0 1 0 -25 0 -50 0 N 51 | P 2 0 1 0 -25 0 -15 0 N 52 | P 2 0 1 0 -10 15 -10 -15 N 53 | P 2 0 1 0 10 15 10 -15 N 54 | P 2 0 1 0 25 0 10 0 N 55 | P 2 0 1 0 50 0 25 0 N 56 | X 1 1 -50 0 0 R 25 25 1 1 P 57 | X 2 2 50 0 0 R 25 25 1 1 P 58 | ENDDRAW 59 | ENDDEF 60 | # 61 | # fail-project-rescue_CONN_01X02-conn 62 | # 63 | DEF fail-project-rescue_CONN_01X02-conn P 0 40 Y N 1 F N 64 | F0 "P" 0 150 50 H V C CNN 65 | F1 "fail-project-rescue_CONN_01X02-conn" 100 0 50 V V C CNN 66 | F2 "" 0 0 50 H V C CNN 67 | F3 "" 0 0 50 H V C CNN 68 | $FPLIST 69 | Pin_Header_Straight_1X02 70 | Pin_Header_Angled_1X02 71 | Socket_Strip_Straight_1X02 72 | Socket_Strip_Angled_1X02 73 | $ENDFPLIST 74 | DRAW 75 | S -50 -45 10 -55 0 1 0 N 76 | S -50 55 10 45 0 1 0 N 77 | S -50 100 50 -100 0 1 0 N 78 | X P1 1 -200 50 150 R 50 50 1 1 P 79 | X P2 2 -200 -50 150 R 50 50 1 1 P 80 | ENDDRAW 81 | ENDDEF 82 | # 83 | # fail-project-rescue_CP-passive 84 | # 85 | DEF fail-project-rescue_CP-passive C 0 40 N N 1 F N 86 | F0 "C" 0 55 40 H V C CNN 87 | F1 "fail-project-rescue_CP-passive" 0 -50 40 H V C CNN 88 | F2 "" 0 0 60 H V C CNN 89 | F3 "" 0 0 60 H V C CNN 90 | DRAW 91 | A 20 0 15 901 -901 0 1 0 N 20 15 20 -15 92 | S -35 20 -15 20 0 1 0 N 93 | S -25 25 -25 10 0 1 0 N 94 | S -25 30 -25 25 0 1 0 N 95 | P 2 0 1 0 -25 0 -50 0 N 96 | P 2 0 1 0 -25 0 -15 0 N 97 | P 2 0 1 0 -10 15 -10 -15 N 98 | P 2 0 1 0 25 0 10 0 N 99 | P 2 0 1 0 50 0 25 0 N 100 | X 1 1 -50 0 0 R 25 25 1 1 I 101 | X 2 2 50 0 0 R 25 25 1 1 I 102 | ENDDRAW 103 | ENDDEF 104 | # 105 | # fail-project-rescue_R-passive 106 | # 107 | DEF fail-project-rescue_R-passive R 0 40 N N 1 F N 108 | F0 "R" 0 50 40 H V C CNN 109 | F1 "fail-project-rescue_R-passive" 0 -50 40 H V C CNN 110 | F2 "" 0 0 60 H V C CNN 111 | F3 "" 0 0 60 H V C CNN 112 | DRAW 113 | S 25 10 -25 -10 0 1 0 f 114 | P 2 0 1 0 -25 0 -50 0 N 115 | P 2 0 1 0 50 0 25 0 N 116 | X 1 1 -50 0 0 R 25 25 1 1 P 117 | X 2 2 50 0 0 R 25 25 1 1 P 118 | ENDDRAW 119 | ENDDEF 120 | # 121 | # power_GND 122 | # 123 | DEF power_GND #PWR 0 0 Y Y 1 F P 124 | F0 "#PWR" 0 -250 50 H I C CNN 125 | F1 "power_GND" 0 -150 50 H V C CNN 126 | F2 "" 0 0 50 H I C CNN 127 | F3 "" 0 0 50 H I C CNN 128 | DRAW 129 | P 6 0 1 0 0 0 0 -50 50 -50 0 -100 -50 -50 0 -50 N 130 | X GND 1 0 0 0 D 50 50 1 1 W N 131 | ENDDRAW 132 | ENDDEF 133 | # 134 | # power_PWR_FLAG 135 | # 136 | DEF power_PWR_FLAG #FLG 0 0 N N 1 F P 137 | F0 "#FLG" 0 75 50 H I C CNN 138 | F1 "power_PWR_FLAG" 0 150 50 H V C CNN 139 | F2 "" 0 0 50 H I C CNN 140 | F3 "" 0 0 50 H I C CNN 141 | DRAW 142 | P 6 0 1 0 0 0 0 50 -40 75 0 100 40 75 0 50 N 143 | X pwr 1 0 0 0 U 50 50 0 0 w 144 | ENDDRAW 145 | ENDDEF 146 | # 147 | #End Library 148 | --------------------------------------------------------------------------------