diff --git a/tests/board_samples/kicad_7/bom_ok_drc.kicad_pcb b/tests/board_samples/kicad_7/bom_ok_drc.kicad_pcb new file mode 100644 index 00000000..434a7767 --- /dev/null +++ b/tests/board_samples/kicad_7/bom_ok_drc.kicad_pcb @@ -0,0 +1,240 @@ +(kicad_pcb (version 20221018) (generator pcbnew) + + (general + (thickness 1.6) + ) + + (paper "A4") + (layers + (0 "F.Cu" signal) + (31 "B.Cu" signal) + (32 "B.Adhes" user "B.Adhesive") + (33 "F.Adhes" user "F.Adhesive") + (34 "B.Paste" user) + (35 "F.Paste" user) + (36 "B.SilkS" user "B.Silkscreen") + (37 "F.SilkS" user "F.Silkscreen") + (38 "B.Mask" user) + (39 "F.Mask" user) + (40 "Dwgs.User" user "User.Drawings") + (41 "Cmts.User" user "User.Comments") + (42 "Eco1.User" user "User.Eco1") + (43 "Eco2.User" user "User.Eco2") + (44 "Edge.Cuts" user) + (45 "Margin" user) + (46 "B.CrtYd" user "B.Courtyard") + (47 "F.CrtYd" user "F.Courtyard") + (48 "B.Fab" user) + (49 "F.Fab" user) + ) + + (setup + (pad_to_mask_clearance 0) + (aux_axis_origin 148.4 80.2) + (pcbplotparams + (layerselection 0x00010fc_ffffffff) + (plot_on_all_layers_selection 0x0000000_00000000) + (disableapertmacros false) + (usegerberextensions false) + (usegerberattributes false) + (usegerberadvancedattributes false) + (creategerberjobfile false) + (dashed_line_dash_ratio 12.000000) + (dashed_line_gap_ratio 3.000000) + (svgprecision 6) + (plotframeref false) + (viasonmask false) + (mode 1) + (useauxorigin false) + (hpglpennumber 1) + (hpglpenspeed 20) + (hpglpendiameter 15.000000) + (dxfpolygonmode true) + (dxfimperialunits true) + (dxfusepcbnewfont true) + (psnegative false) + (psa4output false) + (plotreference true) + (plotvalue true) + (plotinvisibletext false) + (sketchpadsonfab false) + (subtractmaskfromsilk false) + (outputformat 1) + (mirror false) + (drillshape 1) + (scaleselection 1) + (outputdirectory "") + ) + ) + + (net 0 "") + (net 1 "GND") + (net 2 "Net-(C1-Pad1)") + (net 3 "VCC") + + (footprint "Capacitor_SMD:C_0805_2012Metric" (layer "F.Cu") + (tstamp 00000000-0000-0000-0000-00005ebea01d) + (at 146.3 78.6) + (descr "Capacitor SMD 0805 (2012 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 76, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf, https://docs.google.com/spreadsheets/d/1BsfQQcO9C6DZCsRaXUlFlo91Tg2WpOkGARC1WS5S8t0/edit?usp=sharing), generated with kicad-footprint-generator") + (tags "capacitor") + (path "/00000000-0000-0000-0000-00005ebe91ac") + (attr smd) + (fp_text reference "C1" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp cf64c803-8201-493d-8ede-135d8ebf46cc) + ) + (fp_text value "1uF" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp b752c763-5f46-455c-97e2-bec25d8f2b34) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp fd325bad-9a60-4082-884c-1542d743db77) + ) + (fp_line (start -0.261252 -0.735) (end 0.261252 -0.735) + (stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 04a6488f-1abf-4c72-a2e9-9e0e6f14c5e8)) + (fp_line (start -0.261252 0.735) (end 0.261252 0.735) + (stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 9b32171a-4714-41ee-997d-80c56313248d)) + (fp_line (start -1.7 -0.98) (end 1.7 -0.98) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 7e9349c0-5553-4ae9-9194-74a8e03eb008)) + (fp_line (start -1.7 0.98) (end -1.7 -0.98) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 5bb76b7f-b92e-4b51-934a-61a2e24f193b)) + (fp_line (start 1.7 -0.98) (end 1.7 0.98) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 02b203e7-18fd-4322-9735-692ec0cc0596)) + (fp_line (start 1.7 0.98) (end -1.7 0.98) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp ab2b81a7-cce1-4b91-b357-82a398c29249)) + (fp_line (start -1 -0.625) (end 1 -0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp cbfaee45-8b29-4368-8d0d-cb20180a9d6f)) + (fp_line (start -1 0.625) (end -1 -0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 33c47812-a39a-45b5-a550-a28a23c90afb)) + (fp_line (start 1 -0.625) (end 1 0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp e8fafe0d-019a-41dc-8e33-f1f5648883db)) + (fp_line (start 1 0.625) (end -1 0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 4574b1a6-8490-405d-93a0-6bf27bbb1afe)) + (pad "1" smd roundrect (at -0.95 0) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 2 "Net-(C1-Pad1)") (tstamp bc6fa8f3-7f00-4db5-8d56-56897b0dbbc3)) + (pad "2" smd roundrect (at 0.95 0) (size 1 1.45) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 1 "GND") (tstamp 7b467463-8279-4d90-b18f-2c91db4938bf)) + (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0805_2012Metric.wrl" + (offset (xyz 0 0 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 0)) + ) + ) + + (footprint "Resistor_SMD:R_0805_2012Metric" (layer "F.Cu") + (tstamp 00000000-0000-0000-0000-00005ebea02e) + (at 146.3 81.55 180) + (descr "Resistor SMD 0805 (2012 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator") + (tags "resistor") + (path "/00000000-0000-0000-0000-00005ebe8a2e") + (attr smd) + (fp_text reference "R1" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 82371f96-1a5b-4053-a8fa-181db72a9d9a) + ) + (fp_text value "100" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 8eb9c7f0-f8e5-4967-bbce-e16673643ea6) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp 8ae40efa-3e60-49b8-91a5-b88f7cbe2630) + ) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) + (stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 1f4d7d5b-15d2-4dbb-a3ef-9a2f6e2d985d)) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) + (stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp bc3aaf61-8f21-4210-ae32-70830ec2acd2)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 1e393ade-b1d1-4b30-bfa2-a3368ebd339c)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 35b90a34-fc70-48d4-8a72-c4f7bf8ca133)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 26e08a6b-e8a5-4b24-aa10-65aeab5487a5)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 34bb2540-2724-49ad-a79a-0d65e1d7127e)) + (fp_line (start -1 -0.625) (end 1 -0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp df166c41-7ad6-4078-8103-0d04493f8725)) + (fp_line (start -1 0.625) (end -1 -0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp e10d8bd9-a793-4d09-af8e-9c3ba0ec65cc)) + (fp_line (start 1 -0.625) (end 1 0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp cc13f802-eab5-48de-bf68-3f7ff2c66214)) + (fp_line (start 1 0.625) (end -1 0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp b8bfb84c-735c-42ec-9f1e-3a29d590fbe2)) + (pad "1" smd roundrect (at -0.9125 0 180) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 3 "VCC") (tstamp b4cc87fa-f1ed-4454-bf02-a27b21416fbe)) + (pad "2" smd roundrect (at 0.9125 0 180) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 2 "Net-(C1-Pad1)") (tstamp d18e1117-53f0-44c8-9af0-2bdb3c0d55ae)) + (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" + (offset (xyz 0 0 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 0)) + ) + ) + + (footprint "Resistor_SMD:R_0805_2012Metric" (layer "F.Cu") + (tstamp 00000000-0000-0000-0000-00005ebea03f) + (at 150.71 78.6 180) + (descr "Resistor SMD 0805 (2012 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 72, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf), generated with kicad-footprint-generator") + (tags "resistor") + (path "/00000000-0000-0000-0000-00005ebe8e9e") + (attr smd) + (fp_text reference "R2" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp d3e7d335-8a47-4717-94a9-3b94c7c92bdc) + ) + (fp_text value "200" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp b949720f-ba54-4808-bda7-0a89a5b31ad9) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp 82d87d63-1cfa-4849-b8e6-eab04082ba66) + ) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) + (stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp f1b77ccb-2a26-4fc6-985c-8d281d4b0265)) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) + (stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 58914e62-8872-4004-9d9f-5b223a96191c)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp d3a49d1e-b73d-49b5-9ce1-0e17526dd6c8)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 887bb4e9-8eeb-457c-9090-05fad0cfdb33)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 62c18ff3-b53c-4658-99af-ef2181c3d2d3)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) + (stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp dc8efa54-6fc9-48dc-b304-f076e43dd4b2)) + (fp_line (start -1 -0.625) (end 1 -0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 37dcc5e5-47a4-49a6-a769-8245340d9c8b)) + (fp_line (start -1 0.625) (end -1 -0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 5a022f84-fa0b-478f-9bb5-f15bbcda69af)) + (fp_line (start 1 -0.625) (end 1 0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 4b084b77-e784-4594-9905-ecf1b3cbb968)) + (fp_line (start 1 0.625) (end -1 0.625) + (stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 799e1513-77cd-4b47-a346-1fef7275bfec)) + (pad "1" smd roundrect (at -0.9125 0 180) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 2 "Net-(C1-Pad1)") (tstamp 237498af-773c-48c8-a1c8-b4cd0aaf635e)) + (pad "2" smd roundrect (at 0.9125 0 180) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 1 "GND") (tstamp 96c15294-3e52-45e2-9f01-25b1e8a80d60)) + (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0805_2012Metric.wrl" + (offset (xyz 0 0 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 0)) + ) + ) + + (gr_line (start 153 84) (end 153 76) + (stroke (width 0.05) (type solid)) (layer "Edge.Cuts") (tstamp 00000000-0000-0000-0000-00005ebea29b)) + (gr_line (start 144 76) (end 144 84) + (stroke (width 0.05) (type solid)) (layer "Edge.Cuts") (tstamp bb3326cd-028c-43fb-af47-5975412a67c7)) + (gr_line (start 153 76) (end 144 76) + (stroke (width 0.05) (type solid)) (layer "Edge.Cuts") (tstamp d534140b-6f16-4b83-8893-ef4b026f6ec9)) + (gr_line (start 144 84) (end 153 84) + (stroke (width 0.05) (type solid)) (layer "Edge.Cuts") (tstamp ea655683-6135-4d3f-a322-1186e1a703b2)) + + (segment (start 147.2375 78.6) (end 149.7725 78.6) (width 0.25) (layer "F.Cu") (net 1) (tstamp 4ebf58f7-8428-4480-b240-bb7d3c895103)) + (segment (start 145.3625 78.6) (end 146.4625 77.5) (width 0.25) (layer "F.Cu") (net 2) (tstamp 094b0da9-055e-4caf-8a61-eb0abbabc6ad)) + (segment (start 150.5475 77.5) (end 151.6475 78.6) (width 0.25) (layer "F.Cu") (net 2) (tstamp 3ec9ac06-d662-405d-a323-fd037fa00de7)) + (segment (start 146.4625 77.5) (end 150.5475 77.5) (width 0.25) (layer "F.Cu") (net 2) (tstamp 636a61f2-1871-4e58-a0a3-09c17469dd1e)) + (segment (start 145.3625 81.55) (end 145.3625 78.6) (width 0.25) (layer "F.Cu") (net 2) (tstamp 88783723-a7d1-470c-aea1-fc38629b827f)) + +) diff --git a/tests/test_plot/test_preflight.py b/tests/test_plot/test_preflight.py index 07f6ec6b..fc6b2344 100644 --- a/tests/test_plot/test_preflight.py +++ b/tests/test_plot/test_preflight.py @@ -82,6 +82,8 @@ def test_erc_warning_2(test_dir): def test_drc_1(test_dir): prj = name = 'bom' + if context.ki7(): + prj = name = 'bom_ok_drc' ctx = context.TestContext(test_dir, prj, 'drc', '') ctx.run() # Check all outputs are there