From 7808946e1829afeeac24aeccdcd4b913ade5a4d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?King=20K=C3=A9vin?= Date: Sun, 19 Jun 2022 17:44:03 +0200 Subject: [PATCH] rake: add BoM configuration --- bom.ini | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 bom.ini diff --git a/bom.ini b/bom.ini new file mode 100644 index 0000000..4afbc4e --- /dev/null +++ b/bom.ini @@ -0,0 +1,117 @@ +[BOM_OPTIONS] +; General BoM options here +; If 'ignore_dnf' option is set to 1, rows that are not to be fitted on the PCB will not be written to the BoM file +ignore_dnf = 1 +; If 'html_generate_dnf' option is set to 1, also generate a list of components not fitted on the PCB (HTML only) +html_generate_dnf = 1 +; If 'use_alt' option is set to 1, grouped references will be printed in the alternate compressed style eg: R1-R7,R18 +use_alt = 0 +; If 'number_rows' option is set to 1, each row in the BoM will be prepended with an incrementing row number +number_rows = 1 +; If 'group_connectors' option is set to 1, connectors with the same footprints will be grouped together, independent of the name of the connector +group_connectors = 1 +; If 'test_regex' option is set to 1, each component group will be tested against a number of regular-expressions (specified, per column, below). If any matches are found, the row is ignored in the output file +test_regex = 1 +; If 'merge_blank_fields' option is set to 1, component groups with blank fields will be merged into the most compatible group, where possible +merge_blank_fields = 1 +; Specify output file name format, %O is the defined output name, %v is the version, %V is the variant name which will be ammended according to 'variant_file_name_format'. +output_file_name = %O +; Specify the variant file name format, this is a unique field as the variant is not always used/specified. When it is unused you will want to strip all of this. +variant_file_name_format = _(%V) +; Field name used to determine if a particular part is to be fitted +fit_field = Config +; Complex variant processing (disabled by default) +complex_variant = 0 +; Character used to separate reference designators in output +ref_separator = ' ' +; Make a backup of the bom before generating the new one, using the following template +make_backup = %O.tmp +; Put the datasheet as a link for the following field +datasheet_as_link = +; Default number of boards to produce if none given on CLI with -n +number_boards = 1 +; Default PCB variant if none given on CLI with -r +board_variant = default +; If 'complex_variant' option is set to 1, the complex variant field processing is enabled +; If 'hide_headers' option is set to 1, column headers aren't included in the output file +hide_headers = 0 +; If 'hide_pcb_info' option is set to 1, PCB info isn't included in the output file +hide_pcb_info = 0 +; Interpret as a Digikey P/N and link the following field +digikey_link = + +[IGNORE_COLUMNS] +; Any column heading that appears here will be excluded from the Generated BoM +; Titles are case-insensitive +part lib +footprint lib +sheetpath +JLCPCB_CORRECTION + +[COLUMN_ORDER] +; Columns will appear in the order they are listed here +; Titles are case-insensitive +Description +Part +Part Lib +References +Value +Footprint +Footprint Lib +Quantity Per PCB +Build Quantity +Datasheet + +[GROUP_FIELDS] +; List of fields used for sorting individual components into groups +; Components which match (comparing *all* fields) will be grouped together +; Field names are case-insensitive +Part +Part Lib +Value +Footprint +Footprint Lib + +[COMPONENT_ALIASES] +; A series of values which are considered to be equivalent for the part name +; Each line represents a list of equivalent component name values separated by a tab +; e.g. 'c c_small cap' will ensure the equivalent capacitor symbols can be grouped together +; Aliases are case-insensitive +c c_small cap capacitor +r r_small res resistor +sw switch +l l_small inductor +zener zenersmall +d diode d_small + +[JOIN] +; A list of rules to join the content of fields +; Each line is a rule, the first name is the field that will receive the data +; from the other fields +; Use tab (ASCII 9) as separator +; Field names are case sensitive + +[REGEX_INCLUDE] +; A series of regular expressions used to include parts in the BoM +; If there are any regex defined here, only components that match against ANY of them will be included in the BOM +; Column names are case-insensitive +; Format is: "[ColumName] [Regex]" (separated by a tab) + +[COLUMN_RENAME] +; A list of columns to be renamed +; Format is: "[ColumName] [NewName]" (separated by a tab) + +[REGEX_EXCLUDE] +; A series of regular expressions used to exclude parts from the BoM +; If a component matches ANY of these, it will be excluded from the BoM +; Column names are case-insensitive +; Format is: "[ColumName] [Regex]" (separated by a tab) +References ^TP[0-9]* +References ^FID +Part mount.*hole +Part solder.*bridge +Part test.*point +Footprint test.*point +Footprint mount.*hole +Footprint fiducial +