diff --git a/CHANGELOG.md b/CHANGELOG.md index 5fe255d8..a09ca891 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -44,7 +44,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Option to change the title (similar to PCB Variant) - Render_3D: Options to disable some technical layers and control the silkscreen clipping. (#282) -- Internal BoM: Now you can aggregate components using CSV files. (See #248) +- Internal BoM: + - Now you can aggregate components using CSV files. (See #248) + - Added some basic support for "Exclude from BoM" flag (See #316) - Now you can check PCB and schematic parity using the `update_xml` preflight (See #297) - New filters: diff --git a/README.md b/README.md index 73d7e134..f952d17d 100644 --- a/README.md +++ b/README.md @@ -1556,6 +1556,10 @@ Notes: - `exclude_filter`: [string|list(string)='_mechanical'] Name of the filter to exclude components from BoM processing. The default filter excludes test points, fiducial marks, mounting holes, etc. This option is for simple cases, consider using a full variant for complex cases. + - `exclude_marked_in_pcb`: [boolean=false] Exclude components marked with *Exclude from BOM* in the PCB. + This is a KiCad 6 option. + - `exclude_marked_in_sch`: [boolean=true] Exclude components marked with *Exclude from bill of materials* in the schematic. + This is a KiCad 6 option. - `expand_text_vars`: [boolean=true] Expand KiCad 6 text variables after applying all filters and variants. This is done using a **_expand_text_vars** filter. If you need to customize the filter, or apply it before, you can disable this option and @@ -2823,7 +2827,6 @@ Notes: Important: when using separate files you must use `%i` to differentiate them. Affected by global options. - **`separate_files_for_front_and_back`**: [boolean=true] Generate two separated files, one for the top and another for the bottom. - **`units`**: [string='millimeters'] [millimeters,inches,mils] Units used for the positions. Affected by global options. - - **`right_digits`**: [number=4] number of digits for mantissa part of coordinates and rotation (0 is auto). - `bottom_negative_x`: [boolean=false] Use negative X coordinates for footprints on bottom layer. - `columns`: [list(dict)|list(string)] Which columns are included in the output. * Valid keys: @@ -2834,6 +2837,7 @@ Notes: - `include_virtual`: [boolean=false] Include virtual components. For special purposes, not pick & place. - `pre_transform`: [string|list(string)='_none'] Name of the filter to transform fields before applying other filters. A short-cut to use for simple cases where a variant is an overkill. + - `right_digits`: [number=4] number of digits for mantissa part of coordinates (0 is auto). - `use_aux_axis_as_origin`: [boolean=true] Use the auxiliary axis as origin for coordinates (KiCad default). - `variant`: [string=''] Board variant to apply. - `category`: [string|list(string)=''] The category for this output. If not specified an internally defined category is used. diff --git a/docs/samples/generic_plot.kibot.yaml b/docs/samples/generic_plot.kibot.yaml index e33305ac..84a5abc1 100644 --- a/docs/samples/generic_plot.kibot.yaml +++ b/docs/samples/generic_plot.kibot.yaml @@ -226,6 +226,12 @@ outputs: # The default filter excludes test points, fiducial marks, mounting holes, etc. # This option is for simple cases, consider using a full variant for complex cases exclude_filter: '_mechanical' + # [boolean=false] Exclude components marked with *Exclude from BOM* in the PCB. + # This is a KiCad 6 option + exclude_marked_in_pcb: false + # [boolean=true] Exclude components marked with *Exclude from bill of materials* in the schematic. + # This is a KiCad 6 option + exclude_marked_in_sch: true # [boolean=true] Expand KiCad 6 text variables after applying all filters and variants. # This is done using a **_expand_text_vars** filter. # If you need to customize the filter, or apply it before, you can disable this option and @@ -1586,12 +1592,12 @@ outputs: # [string|list(string)='_none'] Name of the filter to transform fields before applying other filters. # A short-cut to use for simple cases where a variant is an overkill pre_transform: '_none' + # [number=4] number of digits for mantissa part of coordinates (0 is auto) + right_digits: 4 # [boolean=true] Generate two separated files, one for the top and another for the bottom separate_files_for_front_and_back: true # [string='millimeters'] [millimeters,inches,mils] Units used for the positions. Affected by global options units: 'millimeters' - # [number=4] number of digits for mantissa part of coordinates (0 is auto) - right_digits: 4 # [boolean=true] Use the auxiliary axis as origin for coordinates (KiCad default) use_aux_axis_as_origin: true # [string=''] Board variant to apply diff --git a/kibot/kicad/v5_sch.py b/kibot/kicad/v5_sch.py index e0f06dd1..22007c0a 100644 --- a/kibot/kicad/v5_sch.py +++ b/kibot/kicad/v5_sch.py @@ -906,6 +906,13 @@ class SchematicComponent(object): self.smd = False self.virtual = False self.tht = False + # KiCad 6 SCH flags + self.in_bom = True + self.on_board = True + # KiCad 6 PCB flags + self.in_bom_pcb = True + self.in_pos = True + self.in_pcb_only = False def get_field_value(self, field): field = field.lower() diff --git a/kibot/kicad/v6_sch.py b/kibot/kicad/v6_sch.py index 5779331d..49959b16 100644 --- a/kibot/kicad/v6_sch.py +++ b/kibot/kicad/v6_sch.py @@ -760,8 +760,8 @@ class LibComponent(object): self.pin_numbers_hide = None self.pin_names_hide = None self.pin_names_offset = None - self.in_bom = False - self.on_board = False + self.in_bom = True + self.on_board = True self.is_power = False self.unit = 0 self.draw = [] @@ -947,10 +947,10 @@ class LibComponent(object): if s.pin_names_hide is not None: aux.append(Symbol('hide')) sdata.append(_symbol('pin_names', aux)) - if s.in_bom: - sdata.append(_symbol('in_bom', [Symbol('yes')])) - if s.on_board: - sdata.append(_symbol('on_board', [Symbol('yes')])) + if not s.in_bom: + sdata.append(_symbol('in_bom', [Symbol('no')])) + if not s.on_board: + sdata.append(_symbol('on_board', [Symbol('no')])) sdata.append(Sep()) # Properties for f in s.fields: @@ -973,8 +973,6 @@ class LibComponent(object): class SchematicComponentV6(SchematicComponent): def __init__(self): super().__init__() - self.in_bom = False - self.on_board = False self.pins = OrderedDict() self.unit = 1 self.unit_specified = False @@ -1129,11 +1127,11 @@ class SchematicComponentV6(SchematicComponent): if self.convert is not None: data.append(_symbol('convert', [self.convert])) data.append(Sep()) - if self.in_bom or self.on_board or self.fields_autoplaced: - if self.in_bom: - data.append(_symbol('in_bom', [Symbol('yes')])) - if self.on_board: - data.append(_symbol('on_board', [Symbol('yes')])) + if not self.in_bom or not self.on_board or self.fields_autoplaced: + if not self.in_bom: + data.append(_symbol('in_bom', [Symbol('no')])) + if not self.on_board: + data.append(_symbol('on_board', [Symbol('no')])) if self.fields_autoplaced: data.append(_symbol('fields_autoplaced')) data.append(Sep()) diff --git a/kibot/kiplot.py b/kibot/kiplot.py index 7ca0c4a7..0ef10c78 100644 --- a/kibot/kiplot.py +++ b/kibot/kiplot.py @@ -25,7 +25,8 @@ from .registrable import RegOutput from .misc import (PLOT_ERROR, CORRUPTED_PCB, EXIT_BAD_ARGS, CORRUPTED_SCH, version_str2tuple, EXIT_BAD_CONFIG, WRONG_INSTALL, UI_SMD, UI_VIRTUAL, TRY_INSTALL_CHECK, MOD_SMD, MOD_THROUGH_HOLE, MOD_VIRTUAL, W_PCBNOSCH, W_NONEEDSKIP, W_WRONGCHAR, name2make, W_TIMEOUT, W_KIAUTO, W_VARSCH, - NO_SCH_FILE, NO_PCB_FILE, W_VARPCB, NO_YAML_MODULE, WRONG_ARGUMENTS, FAILED_EXECUTE) + NO_SCH_FILE, NO_PCB_FILE, W_VARPCB, NO_YAML_MODULE, WRONG_ARGUMENTS, FAILED_EXECUTE, + MOD_EXCLUDE_FROM_POS_FILES, MOD_EXCLUDE_FROM_BOM, MOD_BOARD_ONLY) from .error import PlotError, KiPlotConfigurationError, config_error, trace_dump from .config_reader import CfgYamlReader from .pre_base import BasePreFlight @@ -316,6 +317,14 @@ def get_board_comps_data(comps): c.tht = True if attrs & MOD_VIRTUAL == MOD_VIRTUAL: c.virtual = True + if attrs & MOD_EXCLUDE_FROM_POS_FILES: + c.in_pos = False + # The PCB contains another flag for the BoM + # I guess it should be in sync, but: why should somebody want to unsync it? + if attrs & MOD_EXCLUDE_FROM_BOM: + c.in_bom_pcb = False + if attrs & MOD_BOARD_ONLY: + c.in_pcb_only = True def preflight_checks(skip_pre, targets): diff --git a/kibot/out_bom.py b/kibot/out_bom.py index b2e631ba..6055658c 100644 --- a/kibot/out_bom.py +++ b/kibot/out_bom.py @@ -514,6 +514,12 @@ class BoMOptions(BaseOptions): This is done using a **_expand_text_vars** filter. If you need to customize the filter, or apply it before, you can disable this option and add a custom filter to the filter chain """ + self.exclude_marked_in_sch = True + """ Exclude components marked with *Exclude from bill of materials* in the schematic. + This is a KiCad 6 option """ + self.exclude_marked_in_pcb = False + """ Exclude components marked with *Exclude from BOM* in the PCB. + This is a KiCad 6 option """ self._format_example = 'CSV' self._footprint_populate_values_example = 'no,yes' self._footprint_type_values_example = 'SMD,THT,VIRTUAL' @@ -844,6 +850,14 @@ class BoMOptions(BaseOptions): self.aggregate_comps(comps) # Apply all the filters reset_filters(comps) + if self.exclude_marked_in_sch: + for c in comps: + if c.included: + c.included = c.in_bom + if self.exclude_marked_in_pcb: + for c in comps: + if c.included: + c.included = c.in_bom_pcb comps = apply_pre_transform(comps, self.pre_transform) apply_exclude_filter(comps, self.exclude_filter) apply_fitted_filter(comps, self.dnf_filter) diff --git a/tests/board_samples/kicad_6/kibom-test-marked.kicad_pcb b/tests/board_samples/kicad_6/kibom-test-marked.kicad_pcb new file mode 100644 index 00000000..bce22148 --- /dev/null +++ b/tests/board_samples/kicad_6/kibom-test-marked.kicad_pcb @@ -0,0 +1,694 @@ +(kicad_pcb (version 20211014) (generator pcbnew) + + (general + (thickness 1.6) + ) + + (paper "A4") + (layers + (0 "F.Cu" signal) + (1 "In1.Cu" signal "GND.Cu") + (2 "In2.Cu" signal "Signal1.Cu") + (3 "In3.Cu" signal "Signal2.Cu") + (4 "In4.Cu" signal "Power.Cu") + (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) + (pcbplotparams + (layerselection 0x00010fc_ffffffff) + (disableapertmacros false) + (usegerberextensions false) + (usegerberattributes false) + (usegerberadvancedattributes false) + (creategerberjobfile false) + (svguseinch false) + (svgprecision 6) + (excludeedgelayer true) + (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 "unconnected-(C1-Pad1)") + (net 2 "unconnected-(C1-Pad2)") + (net 3 "unconnected-(C2-Pad1)") + (net 4 "unconnected-(C2-Pad2)") + (net 5 "unconnected-(C3-Pad1)") + (net 6 "unconnected-(C3-Pad2)") + (net 7 "unconnected-(C4-Pad1)") + (net 8 "unconnected-(C4-Pad2)") + (net 9 "unconnected-(R1-Pad1)") + (net 10 "unconnected-(R1-Pad2)") + (net 11 "unconnected-(R2-Pad1)") + (net 12 "unconnected-(R2-Pad2)") + (net 13 "unconnected-(R3-Pad1)") + (net 14 "unconnected-(R3-Pad2)") + (net 15 "unconnected-(R4-Pad1)") + (net 16 "unconnected-(R4-Pad2)") + (net 17 "unconnected-(R5-Pad1)") + (net 18 "unconnected-(R5-Pad2)") + (net 19 "unconnected-(R6-Pad1)") + (net 20 "unconnected-(R6-Pad2)") + (net 21 "unconnected-(R7-Pad1)") + (net 22 "unconnected-(R7-Pad2)") + (net 23 "unconnected-(R8-Pad1)") + (net 24 "unconnected-(R8-Pad2)") + (net 25 "unconnected-(R9-Pad1)") + (net 26 "unconnected-(R9-Pad2)") + (net 27 "unconnected-(R10-Pad1)") + (net 28 "unconnected-(R10-Pad2)") + + (footprint "Resistor_SMD:R_0805_2012Metric" (layer "F.Cu") + (tedit 5F68FEEE) (tstamp 10c6ccde-e3f7-488e-93a4-a587e57b1e59) + (at 122.94 73.55) + (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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a39eb") + (attr smd) + (fp_text reference "R5" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp adfd1820-34f1-4c10-adb8-0face24c5834) + ) + (fp_text value "10K" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 7e264f41-c112-4a39-8312-31cbfcef6632) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp 09344646-ade6-4057-9273-bf72ab8b0cd1) + ) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp 1d1d74df-c84e-4e5f-b691-a458fb119f89)) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp f0a80b54-cc08-47d9-a6a5-69eddf0e8d9a)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 109c05a6-ec7e-4943-8ea1-e434d69772cb)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 3711cbd4-4966-46f8-abbc-5fcf8331d66c)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp 6138546e-9c69-42b2-b417-8b2d867889bc)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp ec126fd4-b87a-4363-a654-d406af6823c7)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp 005b2eb8-f0ea-413e-a5fa-9c392cf04a7f)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp 2dec1402-5383-4c5e-b5a0-abbe74c1544d)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 541eaa70-75ee-46e7-8933-735deaad5ae6)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 9e62fef3-8c7e-4a86-afaa-014b0688b11c)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 17 "unconnected-(R5-Pad1)") (pintype "passive") (tstamp 06d294a9-d73e-4aa2-bb05-5c4b6f6c1452)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 18 "unconnected-(R5-Pad2)") (pintype "passive") (tstamp 0162c89f-4eb0-4150-b703-f80f9f60a402)) + (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") + (tedit 5F68FEEE) (tstamp 5eb27656-4bf4-4d8c-920a-845a766dfd14) + (at 127.35 70.6) + (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") + (property "Config" "DNF") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a3ca0") + (attr smd) + (fp_text reference "R6" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp d0f41196-cdf4-44f2-911f-7dab20a2c688) + ) + (fp_text value "4K7" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 2d6d1bb6-f7d2-4033-972c-2bae1080d303) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp 4e7280b8-b008-4500-8ae6-a10bf8a97f58) + ) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp c070a764-8cb6-47e9-a672-55f5b881f5eb)) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp f8bf75cb-fdc6-4396-94d2-401af63a86b7)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 09e1ad3a-2668-44da-ba03-f2d133f36750)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 3d6ba4e4-745a-41f5-856f-6d967695ff58)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp d6381922-6645-40b3-b5db-65aa97f8f0bb)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp fc0dc778-5b23-48b9-82ce-48001cedeaa8)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 24bc74b9-d56e-4671-9517-30a6106f284b)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp 3ce7458f-c8d0-4503-ac54-6d26e6262b26)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 5e842b06-4232-45e3-9fc5-af3cee7c6481)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp 8aa7b8d6-4a88-450a-88bd-1d4f020b5d93)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 19 "unconnected-(R6-Pad1)") (pintype "passive") (tstamp 057dc35f-2259-4112-a9f0-d90f464e61ee)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 20 "unconnected-(R6-Pad2)") (pintype "passive") (tstamp 91fdc5db-b93e-4eac-a908-8419870167ea)) + (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") + (tedit 5F68FEEE) (tstamp 65f337f4-f719-4c3c-b4fd-ef2dc452ed8d) + (at 127.35 73.55) + (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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a4181") + (attr smd) + (fp_text reference "R8" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp b4799665-eed2-4adf-8458-08294aff8a9e) + ) + (fp_text value "4.7K" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp f821e04a-7412-470f-ad5a-b4b4fb104a84) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp 1db7fabc-7408-4509-97fb-3273b614afb6) + ) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp 22b5fdff-08b7-4c5c-bf7f-222e593b0de7)) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp f87d979c-8260-460d-b847-6674eafd9114)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 053a5b56-aa01-4c1b-b28f-119e050fb49d)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp a3b6e705-5ed7-43ab-bd62-ba96e88a8b91)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp dcea6f8a-fb9e-44d0-8d06-485c2991c21f)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp ee7dbb20-dbd4-48eb-bdce-e54a03f5501e)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp 2e90688a-4c99-46d9-936e-b914a99b3021)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp 670c45af-dc7f-478e-aa8e-525b1052bc2e)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 8df9353b-f8d5-410b-866a-18db5bb96724)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp d5270f20-2ff6-405a-87c8-fe80e24d5d25)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 23 "unconnected-(R8-Pad1)") (pintype "passive") (tstamp a9ae9e73-fc2c-4597-ad62-d2ad9081c41d)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 24 "unconnected-(R8-Pad2)") (pintype "passive") (tstamp 327918aa-781d-4712-936f-f4ca46870e5d)) + (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") + (tedit 5F68FEEE) (tstamp 697e1d3f-68aa-458c-aa42-f1a27950ece4) + (at 122.94 70.6) + (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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a35e1") + (attr smd) + (fp_text reference "R3" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 50cdc6ba-e1b2-43cd-97fe-aa0d14435450) + ) + (fp_text value "10K" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 591df35c-9d8d-4839-8f1a-0bbda813f214) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp f59d1e73-baa7-4ddc-a96e-9b7f4064eadb) + ) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp 0d74315e-9c10-4e33-afda-5b525a25ec59)) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp b2f633a1-2463-455b-bbe1-784d84774cc3)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 1e3c08b4-1d2e-45a3-a17d-6d8af630ba3d)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 2df8254c-0627-424d-a757-678d0eee3398)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp 78975baa-7517-48f5-8204-eb9689a16187)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp f1952d85-22b7-4c70-b85d-402cbfa5c974)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp 44504073-3e68-4ed0-918e-292b89104cf3)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 46056e19-edad-4066-a055-d2fca2945f9b)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp b76ca284-109f-40a1-a86b-380bd51c3509)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp c3f2b2a7-2397-486b-aa1c-a3c879e3d1c0)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 13 "unconnected-(R3-Pad1)") (pintype "passive") (tstamp 5ad6aceb-308a-43dc-878d-aade01de2242)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 14 "unconnected-(R3-Pad2)") (pintype "passive") (tstamp f78a287d-a79f-4c5b-aefc-7f099c1b945e)) + (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 "Capacitor_SMD:C_0603_1608Metric" (layer "F.Cu") + (tedit 5F68FEEE) (tstamp 73e5ca63-baa7-4c0b-af4a-a7086e7ca678) + (at 125.6 81.93) + (descr "Capacitor SMD 0603 (1608 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), generated with kicad-footprint-generator") + (tags "capacitor") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a62cc") + (attr smd exclude_from_pos_files) + (fp_text reference "C1" (at 0 -1.43) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 68ef850a-5737-4335-a688-4149f31c1b00) + ) + (fp_text value "10nF" (at 0 1.43) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 38d66b48-6d8f-40c7-839b-7e0ba4bc63f4) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.4 0.4) (thickness 0.06))) + (tstamp 99bbc07a-7a17-4bb1-9ce8-c823850febe7) + ) + (fp_line (start -0.14058 -0.51) (end 0.14058 -0.51) (layer "F.SilkS") (width 0.12) (tstamp 1ed3625d-0a48-4c2a-be8d-069437a5e9d1)) + (fp_line (start -0.14058 0.51) (end 0.14058 0.51) (layer "F.SilkS") (width 0.12) (tstamp e021e73a-a5f1-4dcd-9154-0d17b91210c5)) + (fp_line (start -1.48 -0.73) (end 1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 4415afb8-d918-4139-9117-42cf6d0d5890)) + (fp_line (start 1.48 -0.73) (end 1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 4cc6f6dd-d8fa-4c56-b9c0-1e4f0d8f9059)) + (fp_line (start 1.48 0.73) (end -1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 83f47374-0b5f-46c7-ae4c-c15c22ad4be4)) + (fp_line (start -1.48 0.73) (end -1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp f6437080-4555-4795-a6a2-5fc6131616f1)) + (fp_line (start -0.8 -0.4) (end 0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp 697874f1-84c5-4d09-a9dd-c781222108e1)) + (fp_line (start 0.8 0.4) (end -0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp 6d0e4f1b-053f-4421-a725-6374cb8820ea)) + (fp_line (start -0.8 0.4) (end -0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp cb4a53b9-d006-4289-b21c-38e35c902ef8)) + (fp_line (start 0.8 -0.4) (end 0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp eabac3d1-ebe2-4753-b0e2-faad04baa0c3)) + (pad "1" smd roundrect (at -0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 1 "unconnected-(C1-Pad1)") (pintype "passive") (tstamp 9765e3ab-4c6d-45a5-9ba1-e209c0cc912f)) + (pad "2" smd roundrect (at 0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 2 "unconnected-(C1-Pad2)") (pintype "passive") (tstamp 759041bf-17d3-44db-97c3-099f7db57bd9)) + (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0603_1608Metric.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") + (tedit 5F68FEEE) (tstamp 7c3fa7de-7cec-475c-b3c4-b8b3a4fd6a43) + (at 140.09 75.02) + (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") + (property "Config" "DNC") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a3f38") + (attr smd) + (fp_text reference "R7" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp a8958f10-bee0-4128-912a-b58828d001a7) + ) + (fp_text value "4700" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 5101158f-f5e3-487b-9767-2c236120275c) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp a240124a-df70-4557-994e-55c6b254e8c6) + ) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp 18b35024-1661-4424-8ef7-b52cb6d4bfbb)) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp 8c3050f6-ae89-4ca1-8603-4dcea001387c)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp 0731aab1-5059-40df-b09e-eaec16eaa6b6)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp 3cef635d-6a3b-4fae-9244-4978ba24a800)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp dd2a502c-2fa2-494e-8085-ce272cf48c12)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp f782ca6e-6d7e-492a-8bd4-84f34dfd9d24)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 17acc6c2-5c91-4710-b48f-2b307e435d22)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp 1aa47be2-38dd-48d9-8eda-0e26f57e29a5)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp 6931e30e-7490-46e5-bf0e-f3c9e35dea4a)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 7eca0036-aab5-42a7-8138-067a77a7543d)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 21 "unconnected-(R7-Pad1)") (pintype "passive") (tstamp ff6e10ae-361c-4a53-ab9d-2528c5e60826)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 22 "unconnected-(R7-Pad2)") (pintype "passive") (tstamp 7a791a71-b88d-4bb6-a775-6e5e56948996)) + (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 "Capacitor_SMD:C_0603_1608Metric" (layer "F.Cu") + (tedit 5F68FEEE) (tstamp 904674d0-912e-46a4-b0a8-1c2bf5731712) + (at 132.69 87.07) + (descr "Capacitor SMD 0603 (1608 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), generated with kicad-footprint-generator") + (tags "capacitor") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (property "exclude_from_bom" "") + (path "/00000000-0000-0000-0000-00005e6a6a34") + (attr smd exclude_from_bom) + (fp_text reference "C3" (at 0 -1.43) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 2f155aa0-0eda-497e-b5ba-ec85057d28d5) + ) + (fp_text value "0.01uF" (at 0 1.43) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp c5a076b7-3542-4981-be3f-ddf8bfdfcddb) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.4 0.4) (thickness 0.06))) + (tstamp c79488ec-dfa0-4a22-93a6-d42edbcfa103) + ) + (fp_line (start -0.14058 0.51) (end 0.14058 0.51) (layer "F.SilkS") (width 0.12) (tstamp 7e6e6836-6d74-49c2-b5d3-ae1c370d68b0)) + (fp_line (start -0.14058 -0.51) (end 0.14058 -0.51) (layer "F.SilkS") (width 0.12) (tstamp 98fe983c-20d8-46f6-af01-566fb3bddca1)) + (fp_line (start 1.48 0.73) (end -1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 2ad331c0-ce55-4c67-b196-5a1b5592c3ce)) + (fp_line (start -1.48 0.73) (end -1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 53064894-7b0a-4187-81fc-ad26341ac676)) + (fp_line (start -1.48 -0.73) (end 1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 743843e8-8548-449b-8b29-67c42b0bf2f0)) + (fp_line (start 1.48 -0.73) (end 1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp ee33e7da-35d1-4105-80d4-9b95e472604c)) + (fp_line (start 0.8 -0.4) (end 0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp 83001755-e596-42b8-882f-40dfde6e40de)) + (fp_line (start -0.8 0.4) (end -0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp 84a85adb-9567-4551-8772-df5204d55283)) + (fp_line (start -0.8 -0.4) (end 0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp a9c002ee-1978-4853-8135-c6e6b360db8e)) + (fp_line (start 0.8 0.4) (end -0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp f557d1b3-7f5e-493e-8427-39ed94940559)) + (pad "1" smd roundrect (at -0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 5 "unconnected-(C3-Pad1)") (pintype "passive") (tstamp 87bb00bf-f022-4efe-8541-4712f87119cd)) + (pad "2" smd roundrect (at 0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 6 "unconnected-(C3-Pad2)") (pintype "passive") (tstamp 5f61a445-4f2b-4a8f-a486-e49700d1a002)) + (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0603_1608Metric.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") + (tedit 5F68FEEE) (tstamp b10f2fbe-42b4-4acb-975b-4b3992e082fd) + (at 112.17 71.49) + (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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a330d") + (attr smd) + (fp_text reference "R2" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp b6c737dd-fe54-4245-bfed-6925e0649bbe) + ) + (fp_text value "10K" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 87d9e290-abd3-4efd-90d8-7b3a632a2598) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp 44bf2782-f880-43bd-8bdd-1e09ab31ff85) + ) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp 63985a3f-7206-453a-85c4-f7397c382c34)) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp 64cbf894-a296-43b2-9979-344f0777161e)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 3338d3cc-b03d-4567-a65d-7ee7494ccd28)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp 5116d564-80fa-4de2-ad1e-6b5ce859bcb3)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 9a9d18fb-3f6b-4c05-8bb7-615c061b528a)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp d169fed8-51a7-4a06-870d-270b27d81369)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp 3d02cf97-e78e-41bb-86a1-1ffaf0dbbbad)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 5a86518d-45d1-4c41-a964-5443c0b7889c)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp 72770055-0f56-44d4-9a2b-038d5c77bc5a)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp a19cf67a-b7ff-4f23-9cca-6ef2ec3fd2ba)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 11 "unconnected-(R2-Pad1)") (pintype "passive") (tstamp b7c74ff7-cfbf-4321-ba4e-5d0b4a38de5b)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 12 "unconnected-(R2-Pad2)") (pintype "passive") (tstamp ae940271-f3db-4a2a-bb61-c1e9f7aede71)) + (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 "Capacitor_SMD:C_0603_1608Metric" (layer "F.Cu") + (tedit 5F68FEEE) (tstamp bb06a184-2900-4d34-8d2a-0700e8826e20) + (at 125.47 86.79) + (descr "Capacitor SMD 0603 (1608 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), generated with kicad-footprint-generator") + (tags "capacitor") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a6854") + (attr smd) + (fp_text reference "C2" (at 0 -1.43) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 05c0c31d-b1e3-459f-885a-890ae7c48287) + ) + (fp_text value "10n" (at 0 1.43) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp d0a58aee-4b15-4462-8943-ac86d44e815a) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.4 0.4) (thickness 0.06))) + (tstamp f34ed1a6-1588-41e1-a568-2463bc3dcfb5) + ) + (fp_line (start -0.14058 0.51) (end 0.14058 0.51) (layer "F.SilkS") (width 0.12) (tstamp 7f3a7701-a530-4e0a-b8a9-d43c8b4c090d)) + (fp_line (start -0.14058 -0.51) (end 0.14058 -0.51) (layer "F.SilkS") (width 0.12) (tstamp a43c8e04-34eb-4aed-ae42-37add43164f6)) + (fp_line (start -1.48 -0.73) (end 1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 43d6aab9-189f-4811-bddb-bbf6077ac91d)) + (fp_line (start -1.48 0.73) (end -1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 9838b40a-1f7c-4684-be46-526f2dae915e)) + (fp_line (start 1.48 0.73) (end -1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp ef3a6dde-464a-4bd2-bf9a-96ca48c37c3e)) + (fp_line (start 1.48 -0.73) (end 1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp f69337fd-860d-488e-a5d5-c945a1204b07)) + (fp_line (start -0.8 0.4) (end -0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp 6fe527be-253c-4832-b65a-0cd9fdda627b)) + (fp_line (start -0.8 -0.4) (end 0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp 86dcfb90-395f-4188-8f45-7b0814e1e0f2)) + (fp_line (start 0.8 0.4) (end -0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp 9c780c38-90ba-42a1-812a-932119a675a3)) + (fp_line (start 0.8 -0.4) (end 0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp c8805354-85be-48f8-bcdf-6bb5f6213e84)) + (pad "1" smd roundrect (at -0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 3 "unconnected-(C2-Pad1)") (pintype "passive") (tstamp c9750c8a-ac89-4e8f-9795-c8e2c7330487)) + (pad "2" smd roundrect (at 0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 4 "unconnected-(C2-Pad2)") (pintype "passive") (tstamp cbf5b3ca-010e-4457-9a87-9ebafd707ee6)) + (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0603_1608Metric.wrl" + (offset (xyz 0 0 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 0)) + ) + ) + + (footprint "Resistor_SMD:R_0603_1608Metric" (layer "F.Cu") + (tedit 5F68FEEE) (tstamp bcf70ad8-b2cf-4659-9dba-ae981c57fc30) + (at 131.56 70.38) + (descr "Resistor SMD 0603 (1608 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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a491a") + (attr smd) + (fp_text reference "R10" (at 0 -1.43) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 8ba72740-29c2-4d82-bcfb-8609ab90364d) + ) + (fp_text value "4K7" (at 0 1.43) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 5a7fb40a-5104-4f05-9030-8ee92a95c313) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.4 0.4) (thickness 0.06))) + (tstamp dd6b32d5-c842-4a9e-b760-6f3d44fd2bd4) + ) + (fp_line (start -0.237258 -0.5225) (end 0.237258 -0.5225) (layer "F.SilkS") (width 0.12) (tstamp 8a9920da-d431-4082-9098-5b5f43c871a4)) + (fp_line (start -0.237258 0.5225) (end 0.237258 0.5225) (layer "F.SilkS") (width 0.12) (tstamp ed036bb4-c036-407c-9c7d-fa17ca0ab6a9)) + (fp_line (start 1.48 -0.73) (end 1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 0da3f196-0029-4742-87c5-92022ac64634)) + (fp_line (start 1.48 0.73) (end -1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 4f543056-350f-4c97-8941-03485df811b2)) + (fp_line (start -1.48 0.73) (end -1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp ad8367e5-bafc-4de1-b13c-65f791276d04)) + (fp_line (start -1.48 -0.73) (end 1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp f0272e95-8ce4-45c0-9a6a-6f2126dc2505)) + (fp_line (start 0.8 -0.4125) (end 0.8 0.4125) (layer "F.Fab") (width 0.1) (tstamp 1a8697ec-a798-49d3-832e-07ebd7cab4c6)) + (fp_line (start -0.8 -0.4125) (end 0.8 -0.4125) (layer "F.Fab") (width 0.1) (tstamp 8a40723d-f4a6-4b47-82dd-60ae6a486698)) + (fp_line (start -0.8 0.4125) (end -0.8 -0.4125) (layer "F.Fab") (width 0.1) (tstamp a4e97c6d-ef1f-46ca-8bdc-2dda559ca229)) + (fp_line (start 0.8 0.4125) (end -0.8 0.4125) (layer "F.Fab") (width 0.1) (tstamp d1307e1c-b67a-41bc-b9ad-571789c0d30c)) + (pad "1" smd roundrect (at -0.825 0) (size 0.8 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 27 "unconnected-(R10-Pad1)") (pintype "passive") (tstamp 6c75c6cf-6da5-451f-8c75-2d5c594d85c2)) + (pad "2" smd roundrect (at 0.825 0) (size 0.8 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 28 "unconnected-(R10-Pad2)") (pintype "passive") (tstamp 6a31403f-9c0b-41a1-a5ca-947e88e1cdab)) + (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0603_1608Metric.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") + (tedit 5F68FEEE) (tstamp bdaf95c6-eb65-4fb0-93d0-a7f5ac5d630b) + (at 118.53 70.6) + (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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a2873") + (attr smd exclude_from_pos_files) + (fp_text reference "R1" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 7b7a031d-d8b7-4e41-afa1-18b0d6307e7d) + ) + (fp_text value "10K" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 6a40c626-0eab-43ce-87a9-b06fcf718ec6) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp 371bbd2c-bf48-455f-bff6-f71ec82c8aef) + ) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp 767d0f12-eb08-4fb1-954b-70d4d072a5e9)) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp e40dee47-c286-45ab-8b1b-c5b7262ae503)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 53670963-fac9-41a1-b24d-4218f9d06244)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp 91efe98a-1972-4da9-bc8a-ac3948582357)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp c57f0f4f-2588-498f-85e8-1ed9bdfaf77a)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp d7470248-38e8-43a0-a442-0b87ea60add7)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 304b0812-c95d-4f4d-a890-34002d5174c1)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 33f7da41-8a63-4245-9ce3-ba1b0af1a23e)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp c0bab759-ed78-47c1-ab5e-87bb99a1b665)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp dbdcb7a1-b665-4aca-aa8d-76bd49d18430)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 9 "unconnected-(R1-Pad1)") (pintype "passive") (tstamp 6470018d-22bd-48a4-b671-45989b34e2da)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 10 "unconnected-(R1-Pad2)") (pintype "passive") (tstamp 4908086b-f6b0-46b3-9074-fb30a2d46b93)) + (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_0603_1608Metric" (layer "F.Cu") + (tedit 5F68FEEE) (tstamp ca09d825-ef11-4bdd-b071-10473f4cad52) + (at 113.27 81.76) + (descr "Resistor SMD 0603 (1608 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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (property "exclude_from_bom" "") + (path "/00000000-0000-0000-0000-00005e6a448b") + (attr smd exclude_from_bom) + (fp_text reference "R9" (at 0 -1.43) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp fa5e215c-4f80-43c2-a296-ce6af82d0e86) + ) + (fp_text value "4K7" (at 0 1.43) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 65c9635c-ebf0-4b25-b675-22d555a271e6) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.4 0.4) (thickness 0.06))) + (tstamp d5a41b86-267f-4aaa-96ef-2e00e726d324) + ) + (fp_line (start -0.237258 0.5225) (end 0.237258 0.5225) (layer "F.SilkS") (width 0.12) (tstamp 07eeabce-07bd-430f-b026-8c4468b4df80)) + (fp_line (start -0.237258 -0.5225) (end 0.237258 -0.5225) (layer "F.SilkS") (width 0.12) (tstamp c057768d-471e-4f4c-96e8-a2267c972d46)) + (fp_line (start 1.48 0.73) (end -1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 5e4e1bbd-5ec9-4716-a897-d412477b1dbf)) + (fp_line (start 1.48 -0.73) (end 1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 621f6561-16bd-407c-b8a0-dc8d42e65d21)) + (fp_line (start -1.48 0.73) (end -1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 87863e30-acd7-424e-8151-3f2ac6f5c0a7)) + (fp_line (start -1.48 -0.73) (end 1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 94e4f8d9-8142-416f-b6f2-9d2466a98cfa)) + (fp_line (start 0.8 0.4125) (end -0.8 0.4125) (layer "F.Fab") (width 0.1) (tstamp 753ffd4d-b055-48a8-aba4-807a3773251a)) + (fp_line (start -0.8 -0.4125) (end 0.8 -0.4125) (layer "F.Fab") (width 0.1) (tstamp 80e8d936-1f70-4e1b-b180-a3d5ce3c7cf5)) + (fp_line (start -0.8 0.4125) (end -0.8 -0.4125) (layer "F.Fab") (width 0.1) (tstamp a90c1cc4-e3f9-4206-ae2e-84f7ab934c13)) + (fp_line (start 0.8 -0.4125) (end 0.8 0.4125) (layer "F.Fab") (width 0.1) (tstamp f7352de3-43f3-41b4-b514-24244232f623)) + (pad "1" smd roundrect (at -0.825 0) (size 0.8 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 25 "unconnected-(R9-Pad1)") (pintype "passive") (tstamp c78cc41c-3674-443b-a37b-d317452eea4e)) + (pad "2" smd roundrect (at 0.825 0) (size 0.8 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 26 "unconnected-(R9-Pad2)") (pintype "passive") (tstamp b9608f84-4100-4c25-b2b1-7205de528c4a)) + (model "${KICAD6_3DMODEL_DIR}/Resistor_SMD.3dshapes/R_0603_1608Metric.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") + (tedit 5F68FEEE) (tstamp cddcf2f4-0a8b-415a-ab7a-e65a49927e0a) + (at 111.98 76.35) + (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") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a37b2") + (attr smd) + (fp_text reference "R4" (at 0 -1.65) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 65380499-c54a-4e19-a0f7-e08e104b7f89) + ) + (fp_text value "10K" (at 0 1.65) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp e9fb5b74-ab26-4fcd-8605-593d3ae31836) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.5 0.5) (thickness 0.08))) + (tstamp a55bbdbe-4549-4f15-8ac0-febab1ef0cdc) + ) + (fp_line (start -0.227064 -0.735) (end 0.227064 -0.735) (layer "F.SilkS") (width 0.12) (tstamp 2d1c6138-9bb8-4ce1-8681-bc7f97022cd8)) + (fp_line (start -0.227064 0.735) (end 0.227064 0.735) (layer "F.SilkS") (width 0.12) (tstamp 3a99b559-7a6f-432f-97b3-00ef913ada08)) + (fp_line (start -1.68 -0.95) (end 1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp 637ecfdc-cedf-46aa-a068-61b67a3c3700)) + (fp_line (start 1.68 -0.95) (end 1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp 9f8b21f5-bf90-4b74-9c63-16470aaf00d9)) + (fp_line (start -1.68 0.95) (end -1.68 -0.95) (layer "F.CrtYd") (width 0.05) (tstamp db6424b0-5307-49d7-98bc-6641f74db1ea)) + (fp_line (start 1.68 0.95) (end -1.68 0.95) (layer "F.CrtYd") (width 0.05) (tstamp ddac947e-aae0-4fc9-a680-835548f88888)) + (fp_line (start 1 -0.625) (end 1 0.625) (layer "F.Fab") (width 0.1) (tstamp 804255f2-0981-41be-b7f8-4a5138adfcba)) + (fp_line (start -1 -0.625) (end 1 -0.625) (layer "F.Fab") (width 0.1) (tstamp 85f1f330-8a78-4196-825c-7bd06e4a54c0)) + (fp_line (start -1 0.625) (end -1 -0.625) (layer "F.Fab") (width 0.1) (tstamp c030cfef-76a9-48af-8c38-353a57ab85ba)) + (fp_line (start 1 0.625) (end -1 0.625) (layer "F.Fab") (width 0.1) (tstamp c5c2e585-49ec-4342-b519-00f90c54fc53)) + (pad "1" smd roundrect (at -0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 15 "unconnected-(R4-Pad1)") (pintype "passive") (tstamp d0737d11-4d80-4ae7-91da-b297ebcf0619)) + (pad "2" smd roundrect (at 0.9125 0) (size 1.025 1.4) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.243902) + (net 16 "unconnected-(R4-Pad2)") (pintype "passive") (tstamp 0f6f5b96-267e-4849-a7b7-5f9a7e0df777)) + (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 "Capacitor_SMD:C_0603_1608Metric" (layer "F.Cu") + (tedit 5F68FEEE) (tstamp d37aabb7-0c1a-4aca-860a-fbb49a798ba7) + (at 132.63 82.37) + (descr "Capacitor SMD 0603 (1608 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), generated with kicad-footprint-generator") + (tags "capacitor") + (property "Sheetfile" "kibom-test-marked.kicad_sch") + (property "Sheetname" "") + (path "/00000000-0000-0000-0000-00005e6a6cb6") + (attr smd exclude_from_bom) + (fp_text reference "C4" (at 0 -1.43) (layer "F.SilkS") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp 96ba7f7f-70c4-406f-949f-396905a89bf4) + ) + (fp_text value "0.01uf" (at 0 1.43) (layer "F.Fab") + (effects (font (size 1 1) (thickness 0.15))) + (tstamp c88db542-712d-4dca-9936-ffc02a194b77) + ) + (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") + (effects (font (size 0.4 0.4) (thickness 0.06))) + (tstamp e9356123-baac-455a-8bc3-af9a59d705da) + ) + (fp_line (start -0.14058 0.51) (end 0.14058 0.51) (layer "F.SilkS") (width 0.12) (tstamp 37e3f524-5be8-4f36-a5fb-f926e3253087)) + (fp_line (start -0.14058 -0.51) (end 0.14058 -0.51) (layer "F.SilkS") (width 0.12) (tstamp 3e977e59-1705-440c-a289-9f1e1dbbc39f)) + (fp_line (start 1.48 -0.73) (end 1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 42771a07-a490-4cab-b5fd-51970a638ce3)) + (fp_line (start -1.48 0.73) (end -1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp 53d71433-b3d2-48b5-9d32-51a089bb9d9f)) + (fp_line (start 1.48 0.73) (end -1.48 0.73) (layer "F.CrtYd") (width 0.05) (tstamp 71a77cb3-93d7-4ed5-b68f-3aff618fe5ae)) + (fp_line (start -1.48 -0.73) (end 1.48 -0.73) (layer "F.CrtYd") (width 0.05) (tstamp f1136c3c-bc48-4d62-9100-e5b97a67e83c)) + (fp_line (start 0.8 -0.4) (end 0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp 0d8ab1ca-6397-4a56-8d2e-4c68a9c99f8c)) + (fp_line (start -0.8 -0.4) (end 0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp 606d46c0-3674-4655-8ddd-918ad21a6c1d)) + (fp_line (start 0.8 0.4) (end -0.8 0.4) (layer "F.Fab") (width 0.1) (tstamp 6aa00581-de10-4fca-a54c-44a7a001aa9a)) + (fp_line (start -0.8 0.4) (end -0.8 -0.4) (layer "F.Fab") (width 0.1) (tstamp 7948bc9f-9ac0-441c-b281-96028ad389d5)) + (pad "1" smd roundrect (at -0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 7 "unconnected-(C4-Pad1)") (pintype "passive") (tstamp 28301ee6-d562-476e-bf02-3f119f590a1d)) + (pad "2" smd roundrect (at 0.775 0) (size 0.9 0.95) (layers "F.Cu" "F.Paste" "F.Mask") (roundrect_rratio 0.25) + (net 8 "unconnected-(C4-Pad2)") (pintype "passive") (tstamp 92bd1ef9-24b4-4d51-890f-3193c3157591)) + (model "${KICAD6_3DMODEL_DIR}/Capacitor_SMD.3dshapes/C_0603_1608Metric.wrl" + (offset (xyz 0 0 0)) + (scale (xyz 1 1 1)) + (rotate (xyz 0 0 0)) + ) + ) + +) diff --git a/tests/board_samples/kicad_6/kibom-test-marked.kicad_sch b/tests/board_samples/kicad_6/kibom-test-marked.kicad_sch new file mode 100644 index 00000000..c5e35bc7 --- /dev/null +++ b/tests/board_samples/kicad_6/kibom-test-marked.kicad_sch @@ -0,0 +1,406 @@ +(kicad_sch (version 20211123) (generator eeschema) + + (uuid e6521bef-4109-48f7-8b88-4121b0468927) + + (paper "A4") + + (title_block + (title "KiBom Test Schematic") + (date "2020-03-12") + (rev "A") + (company "https://github.com/SchrodingersGat/KiBom") + ) + + (lib_symbols + (symbol "Device:C" (pin_numbers hide) (pin_names (offset 0.254)) (in_bom yes) (on_board yes) + (property "Reference" "C" (id 0) (at 0.635 2.54 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Value" "C" (id 1) (at 0.635 -2.54 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Footprint" "" (id 2) (at 0.9652 -3.81 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "ki_keywords" "cap capacitor" (id 4) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "ki_description" "Unpolarized capacitor" (id 5) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "ki_fp_filters" "C_*" (id 6) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (symbol "C_0_1" + (polyline + (pts + (xy -2.032 -0.762) + (xy 2.032 -0.762) + ) + (stroke (width 0.508) (type default) (color 0 0 0 0)) + (fill (type none)) + ) + (polyline + (pts + (xy -2.032 0.762) + (xy 2.032 0.762) + ) + (stroke (width 0.508) (type default) (color 0 0 0 0)) + (fill (type none)) + ) + ) + (symbol "C_1_1" + (pin passive line (at 0 3.81 270) (length 2.794) + (name "~" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27)))) + ) + (pin passive line (at 0 -3.81 90) (length 2.794) + (name "~" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27)))) + ) + ) + ) + (symbol "Device:R" (pin_numbers hide) (pin_names (offset 0)) (in_bom yes) (on_board yes) + (property "Reference" "R" (id 0) (at 2.032 0 90) + (effects (font (size 1.27 1.27))) + ) + (property "Value" "R" (id 1) (at 0 0 90) + (effects (font (size 1.27 1.27))) + ) + (property "Footprint" "" (id 2) (at -1.778 0 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "ki_keywords" "R res resistor" (id 4) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "ki_description" "Resistor" (id 5) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "ki_fp_filters" "R_*" (id 6) (at 0 0 0) + (effects (font (size 1.27 1.27)) hide) + ) + (symbol "R_0_1" + (rectangle (start -1.016 -2.54) (end 1.016 2.54) + (stroke (width 0.254) (type default) (color 0 0 0 0)) + (fill (type none)) + ) + ) + (symbol "R_1_1" + (pin passive line (at 0 3.81 270) (length 1.27) + (name "~" (effects (font (size 1.27 1.27)))) + (number "1" (effects (font (size 1.27 1.27)))) + ) + (pin passive line (at 0 -3.81 90) (length 1.27) + (name "~" (effects (font (size 1.27 1.27)))) + (number "2" (effects (font (size 1.27 1.27)))) + ) + ) + ) + ) + + + (text "3 x 4K7 resistors in 0603 package" (at 88.9 92.71 0) + (effects (font (size 1.27 1.27)) (justify left bottom)) + (uuid 0d35483a-0b12-46cc-b9f2-896fd6831779) + ) + (text "This schematic serves as a test-file for the KiBom export script.\n\nAfter making a change to the schematic, remember to re-export the BOM to generate the intermediate .xml file\n\n(The testing framework cannot perform the netlist-export step!)" + (at 13.97 24.13 0) + (effects (font (size 1.27 1.27)) (justify left bottom)) + (uuid 4e66a44f-7fa6-4e16-bf9b-62ec864301a5) + ) + (text "5 x 10K resistors in 0805 package" (at 88.9 64.77 0) + (effects (font (size 1.27 1.27)) (justify left bottom)) + (uuid 6199bec7-e7eb-4ae0-b9ec-c563e157d635) + ) + (text "3 x 4K7 resistors in 0805 package\nNote: Values are identical even if specified differently" + (at 88.9 80.01 0) + (effects (font (size 1.27 1.27)) (justify left bottom)) + (uuid 9a9f2d82-f64d-4264-8bec-c182528fc4de) + ) + + (symbol (lib_id "Device:R") (at 55.88 64.77 0) (unit 1) + (uuid 00000000-0000-0000-0000-00005e6a2873) + (property "Reference" "R1" (id 0) (at 57.912 64.77 90)) + (property "Value" "10K" (id 1) (at 55.88 64.77 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 54.102 64.77 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 55.88 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 6c9aaaba-b9a5-4111-8987-89315ec6be88)) + (pin "2" (uuid 0f924b75-883b-4726-a9f0-fbdae6b526a3)) + ) + + (symbol (lib_id "Device:R") (at 63.5 64.77 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a330d) + (property "Reference" "R2" (id 0) (at 65.532 64.77 90)) + (property "Value" "10K" (id 1) (at 63.5 64.77 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 61.722 64.77 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 63.5 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 230e039b-1200-49f4-9764-81cfdd0b465a)) + (pin "2" (uuid 4bb6aa50-20a8-40c0-9694-aa4503d2e061)) + ) + + (symbol (lib_id "Device:R") (at 69.85 64.77 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a35e1) + (property "Reference" "R3" (id 0) (at 71.882 64.77 90)) + (property "Value" "10K" (id 1) (at 69.85 64.77 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 68.072 64.77 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 69.85 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 19a78422-b95d-4f86-b628-f6242f9aacfd)) + (pin "2" (uuid 161f5455-8297-4c70-b65c-7a745abba5c6)) + ) + + (symbol (lib_id "Device:R") (at 76.2 64.77 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a37b2) + (property "Reference" "R4" (id 0) (at 78.232 64.77 90)) + (property "Value" "10K" (id 1) (at 76.2 64.77 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 74.422 64.77 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 76.2 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 82e15225-a105-45b2-84d4-4b70931897e0)) + (pin "2" (uuid 3af48b74-9eb6-4a31-be66-715160acfc85)) + ) + + (symbol (lib_id "Device:R") (at 82.55 64.77 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a39eb) + (property "Reference" "R5" (id 0) (at 84.582 64.77 90)) + (property "Value" "10K" (id 1) (at 82.55 64.77 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 80.772 64.77 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 82.55 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 3074fade-b34d-479b-8200-fadd967b837d)) + (pin "2" (uuid a5da963a-270f-4c3d-a079-114d8eef79b7)) + ) + + (symbol (lib_id "Device:R") (at 55.88 78.74 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a3ca0) + (property "Reference" "R6" (id 0) (at 57.912 78.74 90)) + (property "Value" "4K7" (id 1) (at 55.88 78.74 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 54.102 78.74 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 55.88 78.74 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Config" "DNF" (id 4) (at 55.88 78.74 90) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 5be841dc-3b4a-40c9-969b-e11a4fb210b2)) + (pin "2" (uuid fcd8b1c2-0644-4e8e-b5df-9c237120459f)) + ) + + (symbol (lib_id "Device:R") (at 63.5 78.74 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a3f38) + (property "Reference" "R7" (id 0) (at 65.532 78.74 90)) + (property "Value" "4700" (id 1) (at 63.5 78.74 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 61.722 78.74 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "http://www.google.com/" (id 3) (at 63.5 78.74 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Config" "DNC" (id 4) (at 63.5 78.74 90) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 5aee846a-8592-4b29-bd9b-9c316ee83d69)) + (pin "2" (uuid bb5372f2-1ad0-4a4d-b4cb-b3226f0cfcbd)) + ) + + (symbol (lib_id "Device:R") (at 69.85 78.74 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a4181) + (property "Reference" "R8" (id 0) (at 71.882 78.74 90)) + (property "Value" "4.7K" (id 1) (at 69.85 78.74 90)) + (property "Footprint" "Resistor_SMD:R_0805_2012Metric" (id 2) (at 68.072 78.74 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 69.85 78.74 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid b7ea6100-ff11-4609-86f6-89b95a0d171e)) + (pin "2" (uuid b8a5679e-0824-4fd4-bd37-515f1c75fd73)) + ) + + (symbol (lib_id "Device:R") (at 55.88 92.71 0) (unit 1) + (in_bom no) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a448b) + (property "Reference" "R9" (id 0) (at 57.912 92.71 90)) + (property "Value" "4K7" (id 1) (at 55.88 92.71 90)) + (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 54.102 92.71 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 55.88 92.71 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 35505c17-306b-4361-9895-a67ced902f2d)) + (pin "2" (uuid 0db9632a-21af-4acb-9c05-e041f8c89b3a)) + ) + + (symbol (lib_id "Device:R") (at 63.5 92.71 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a491a) + (property "Reference" "R10" (id 0) (at 65.532 92.71 90)) + (property "Value" "4K7" (id 1) (at 63.5 92.71 90)) + (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 61.722 92.71 90) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 63.5 92.71 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid b93d027f-21f6-4fc9-ad3f-317eded6973b)) + (pin "2" (uuid 395df0a5-800c-4cca-a0f1-3ad76d2e76ca)) + ) + + (symbol (lib_id "Device:C") (at 168.91 64.77 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a62cc) + (property "Reference" "C1" (id 0) (at 169.545 62.23 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Value" "10nF" (id 1) (at 169.545 67.31 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 169.8752 68.58 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "This is a long text, wrap check" (id 3) (at 168.91 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 675b2a1e-1d1e-4f5b-91f1-23d348015a92)) + (pin "2" (uuid 97823ebb-0711-4a96-9596-e1b6f4baec60)) + ) + + (symbol (lib_id "Device:C") (at 179.07 64.77 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a6854) + (property "Reference" "C2" (id 0) (at 179.705 62.23 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Value" "10n" (id 1) (at 179.705 67.31 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 180.0352 68.58 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 179.07 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 047cf595-1972-4c2a-a70b-65489a060f88)) + (pin "2" (uuid 23708b85-adf5-4cbf-a4c4-69f9be2b941b)) + ) + + (symbol (lib_id "Device:C") (at 189.23 64.77 0) (unit 1) + (in_bom no) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a6a34) + (property "Reference" "C3" (id 0) (at 189.865 62.23 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Value" "0.01uF" (id 1) (at 189.865 67.31 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 190.1952 68.58 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 189.23 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid 8ef140e1-a86a-45e5-8f2c-e06066832fcb)) + (pin "2" (uuid 623a95d3-92aa-43fc-bfb7-1927169d4600)) + ) + + (symbol (lib_id "Device:C") (at 200.66 64.77 0) (unit 1) + (in_bom yes) (on_board yes) + (uuid 00000000-0000-0000-0000-00005e6a6cb6) + (property "Reference" "C4" (id 0) (at 201.295 62.23 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Value" "0.01uf" (id 1) (at 201.295 67.31 0) + (effects (font (size 1.27 1.27)) (justify left)) + ) + (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 201.6252 68.58 0) + (effects (font (size 1.27 1.27)) hide) + ) + (property "Datasheet" "~" (id 3) (at 200.66 64.77 0) + (effects (font (size 1.27 1.27)) hide) + ) + (pin "1" (uuid afaec224-6eb9-4aa4-acce-937066a89442)) + (pin "2" (uuid fbe4ca78-db1d-425c-822e-cbaf51a10d48)) + ) + + (sheet_instances + (path "/" (page "1")) + ) + + (symbol_instances + (path "/00000000-0000-0000-0000-00005e6a62cc" + (reference "C1") (unit 1) (value "10nF") (footprint "Capacitor_SMD:C_0603_1608Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a6854" + (reference "C2") (unit 1) (value "10n") (footprint "Capacitor_SMD:C_0603_1608Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a6a34" + (reference "C3") (unit 1) (value "0.01uF") (footprint "Capacitor_SMD:C_0603_1608Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a6cb6" + (reference "C4") (unit 1) (value "0.01uf") (footprint "Capacitor_SMD:C_0603_1608Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a2873" + (reference "R1") (unit 1) (value "10K") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a330d" + (reference "R2") (unit 1) (value "10K") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a35e1" + (reference "R3") (unit 1) (value "10K") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a37b2" + (reference "R4") (unit 1) (value "10K") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a39eb" + (reference "R5") (unit 1) (value "10K") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a3ca0" + (reference "R6") (unit 1) (value "4K7") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a3f38" + (reference "R7") (unit 1) (value "4700") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a4181" + (reference "R8") (unit 1) (value "4.7K") (footprint "Resistor_SMD:R_0805_2012Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a448b" + (reference "R9") (unit 1) (value "4K7") (footprint "Resistor_SMD:R_0603_1608Metric") + ) + (path "/00000000-0000-0000-0000-00005e6a491a" + (reference "R10") (unit 1) (value "4K7") (footprint "Resistor_SMD:R_0603_1608Metric") + ) + ) +) diff --git a/tests/test_plot/test_int_bom.py b/tests/test_plot/test_int_bom.py index 8aba5d05..8514067d 100644 --- a/tests/test_plot/test_int_bom.py +++ b/tests/test_plot/test_int_bom.py @@ -73,6 +73,8 @@ KIBOM_RENAME_HEAD = [COMP_COLUMN_NAME_R, REF_COLUMN_NAME_R, 'Componente', 'Valor CONN_HEAD = [COMP_COLUMN_NAME, 'Description', 'Part', REF_COLUMN_NAME, 'Value', 'Footprint', QTY_COLUMN_NAME, 'Status', DATASHEET_COLUMN_NAME] KIBOM_TEST_COMPONENTS = ['C1', 'C2', 'C3', 'C4', 'R1', 'R2', 'R3', 'R4', 'R5', 'R7', 'R8', 'R9', 'R10'] +KIBOM_TEST_COMPONENTS_FIL = ['C1', 'C2', 'C4', 'R1', 'R2', 'R3', 'R4', 'R5', 'R7', 'R8', 'R10'] +KIBOM_TEST_COMPONENTS_FIL2 = ['C1', 'C2', 'R1', 'R2', 'R3', 'R4', 'R5', 'R7', 'R8', 'R10'] KIBOM_TEST_COMPONENTS_ALT = ['C1-C4', 'R9', 'R10', 'R7', 'R8', 'R1-R5'] KIBOM_TEST_COMPONENTS_ALT2 = ['C1-C4', 'R9', 'R10', 'R7', 'R8', 'R1', 'R2', 'R4', 'R5', 'R3'] KIBOM_TEST_EXCLUDE = ['R6'] @@ -100,14 +102,14 @@ MERGED_R1_SRC = 'A:(3) B:(3) C:(1)' def check_kibom_test_netlist(rows, ref_column, groups, exclude, comps, ref_sep=' '): """ Checks the kibom-test.sch expected results """ # Groups - assert len(rows) == groups + assert len(rows) == groups, "Number of groups" logging.debug(str(groups) + " groups OK") # Components if comps: components = [] for r in rows: components.extend(r[ref_column].split(ref_sep)) - assert len(components) == len(comps) + assert len(components) == len(comps), "Number of components" logging.debug(str(len(comps)) + " components OK") # Excluded if exclude: @@ -722,6 +724,40 @@ def test_int_bom_use_alt_1(test_dir): ctx.clean_up() +@pytest.mark.skipif(context.ki5(), reason="needs KiCad 6 sch attributes") +def test_int_bom_marked_1(test_dir): + """ Components marked as `Exclude from bill of materials` """ + prj = 'kibom-test-marked' + ext = 'csv' + ctx = context.TestContextSCH(test_dir, prj, 'int_bom_simple_csv', BOM_DIR) + ctx.run() + out = prj + '-bom.' + ext + rows, header, info = ctx.load_csv(out) + assert header == KIBOM_TEST_HEAD + ref_column = header.index(REF_COLUMN_NAME) + status_column = header.index(STATUS_COLUMN_NAME) + check_kibom_test_netlist(rows, ref_column, KIBOM_TEST_GROUPS, KIBOM_TEST_EXCLUDE, KIBOM_TEST_COMPONENTS_FIL) + check_dnc(rows, 'R7', ref_column, status_column) + ctx.clean_up() + + +@pytest.mark.skipif(context.ki5(), reason="needs KiCad 6 PCB attributes") +def test_int_bom_marked_2(test_dir): + """ Components marked as `Exclude from bill of materials`, also PCB """ + prj = 'kibom-test-marked' + ext = 'csv' + ctx = context.TestContextSCH(test_dir, prj, 'int_bom_simple_csv_npcb', BOM_DIR) + ctx.run() + out = prj + '-bom.' + ext + rows, header, info = ctx.load_csv(out) + assert header == KIBOM_TEST_HEAD + ref_column = header.index(REF_COLUMN_NAME) + status_column = header.index(STATUS_COLUMN_NAME) + check_kibom_test_netlist(rows, ref_column, KIBOM_TEST_GROUPS, KIBOM_TEST_EXCLUDE, KIBOM_TEST_COMPONENTS_FIL2) + check_dnc(rows, 'R7', ref_column, status_column) + ctx.clean_up() + + def test_int_bom_use_alt_2(test_dir): """ use_alt: true and not merge blank fields, non contiguous """ prj = 'kibom-test-2' diff --git a/tests/yaml_samples/int_bom_simple_csv_npcb.kibot.yaml b/tests/yaml_samples/int_bom_simple_csv_npcb.kibot.yaml new file mode 100644 index 00000000..ff8ddb14 --- /dev/null +++ b/tests/yaml_samples/int_bom_simple_csv_npcb.kibot.yaml @@ -0,0 +1,12 @@ +# Example KiBot config file +kibot: + version: 1 + +outputs: + - name: 'bom_internal' + comment: "Bill of Materials in CSV format" + type: bom + dir: BoM + options: + group_fields: ['Part', 'Part Lib', 'Value', 'Footprint', 'Footprint Lib'] + exclude_marked_in_pcb: True