Compare commits
32 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d2c2e72db1 | ||
| 8afb0f11e3 | |||
| 9e36c93eb6 | |||
|
|
eb9192b67d | ||
| 1e58530fdb | |||
| eb41358254 | |||
| 74e91a560b | |||
| 781a0de536 | |||
| 50dcde2d53 | |||
| bd5eff3816 | |||
| 69cbded632 | |||
| 1c9f199ca3 | |||
|
|
01fac39ee6 | ||
| 7c913f5f06 | |||
|
|
9f8bac09c8 | ||
| e30ec22dcc | |||
|
|
8f744ce121 | ||
| 9241a228b7 | |||
|
|
1a389d8398 | ||
| f060645431 | |||
|
|
99d7feab4e | ||
| de1c19795d | |||
| 8060c688ef | |||
| 684dceec17 | |||
| 294edcf797 | |||
|
|
5ccf357fcc | ||
| 974f9a11e3 | |||
|
|
86cd82203c | ||
| cbf7e8e00b | |||
|
|
3706c4103a | ||
| 68b80701e9 | |||
|
|
7517d49113 |
7
.gitattributes
vendored
Normal file
7
.gitattributes
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
*.csv filter=bom_csv
|
||||||
|
*.html filter=bom_html
|
||||||
|
*.gbr filter=gerber
|
||||||
|
*.gbrjob filter=gbrjob
|
||||||
|
*.xml filter=xml
|
||||||
|
*.kicad_pcb filter=kicad_pcb_f
|
||||||
|
*.net filter=net_filter
|
||||||
20
.gitconfig
Normal file
20
.gitconfig
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
[filter "bom_csv"]
|
||||||
|
clean = sed -E 's/^BoM Date:.*$/BoM Date:Date/'
|
||||||
|
smudge = sed -E \"s/BoM Date:Date/BoM Date:,`date +\\\"%a %d %b %Y %X %:::z\\\"`/\"
|
||||||
|
[filter "bom_html"]
|
||||||
|
clean = sed -E 's/^<tr><td>BoM Date<\\/td><td>.*$/<tr><td>BoM Date<\\/td><td>Date<\\/td><\\/tr>/'
|
||||||
|
smudge = sed -E \"s/<tr><td>BoM Date<\\/td><td>Date<\\/td><\\/tr>/<tr><td>BoM Date<\\/td><td>`date +\\\"%a %d %b %Y %X %:::z\\\"`<\\/td><\\/tr>/\"
|
||||||
|
[filter "gerber"]
|
||||||
|
clean = sed -E -e 's/^%TF.CreationDate,.*$/%TF.CreationDate,Date%/' -e 's/^G04 Created by KiCad.*$/G04 Created by KiCad*/'
|
||||||
|
smudge = sed -E \"s/%TF.CreationDate,Date%/%TF.CreationDate,`date +%Y-%m-%dT%H:%M:%S%:z`/\"
|
||||||
|
[filter "gbrjob"]
|
||||||
|
clean = sed -E 's/\"CreationDate\":.*/\"CreationDate\": \"Date\"/'
|
||||||
|
smudge = sed -E \"s/\\\"CreationDate\\\": \\\"Date\\\"/\\\"CreationDate\\\": \\\"`date +%Y-%m-%dT%H:%M:%S%:z`\\\"/\"
|
||||||
|
[filter "xml"]
|
||||||
|
clean = sed -E -e 's/^ <date>.*<\\/date>/ <date>Date2<\\/date>/' -e 's/^ <date>.*<\\/date>/ <date>Date1<\\/date>/'
|
||||||
|
smudge = sed -E -e \"s/<date>Date1<\\/date>/<date>`date +\\\"%a %d %b %Y %X %:::z\\\"`<\\/date>/\" -e \"s/<date>Date2<\\/date>/<date>`date +\\\"%Y-%m-%d\\\"`<\\/date>/\"
|
||||||
|
[filter "kicad_pcb_f"]
|
||||||
|
clean = sed -E 's/\\(host pcbnew ([[:digit:]]+\\.[[:digit:]]+\\.[[:digit:]]+).*/\\(host pcbnew \\1\\)/'
|
||||||
|
[filter "net_filter"]
|
||||||
|
clean = sed -E -e 's/\\(date \\\".*\\\"\\)/\\(date \\\"Date\\\"\\)/'
|
||||||
|
smudge = sed -E -e \"s/\\(date \\\"Date\\\"\\)/\\(date \\\"`date +\\\"%a %d %b %Y %X %:::z\\\"`\\\"\\)/\"
|
||||||
@@ -125,7 +125,7 @@ jobs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
/usr/bin/kicad-git-filters.py
|
/usr/bin/kicad-git-filters.py
|
||||||
kibot -c kibot/yaml/kibot_pre_update_xml.yaml -d . --log kibot_run_xml.log
|
kibot -c kibot/yaml/preflights/kibot_pre_update_xml.yaml -d . --log kibot_run_xml.log
|
||||||
|
|
||||||
- name: Run KiBot (Preprocessing)
|
- name: Run KiBot (Preprocessing)
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|||||||
@@ -649,32 +649,35 @@
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
"text_variables": {
|
"text_variables": {
|
||||||
"ASSEMBLY_NAME": "",
|
"ASSEMBLY_NAME": "nRF52840 Development Board",
|
||||||
"ASSEMBLY_NUMBER": "",
|
"ASSEMBLY_NOTES": "ASSEMBLY NOTES (UNLESS OTHERWISE SPECIFIED)\n\n1)\tDO NOT POPULATE COMPONENTS ARE MARKED WITH A RED CROSS\n\n2)\tDO NOT POPULATE COMPONENTS ARE NOT PRESENT IN THE BOM\n\n3)\tIF CONFLICTING INFORMATION IS FOUND BETWEEN THE ASSEMBLY\n\tFILE AND BOM, BOM SHOULD BE USED AS THE MAIN SOURCE.\n\n4)\tDOT IDENTIFIES PIN #1 LOCATION AND DEVICE ORIENTATION\n\tWHEN VIEWED FROM THE TOP.",
|
||||||
"ASSEMBLY_SCALE": "",
|
"ASSEMBLY_NUMBER": "A98-1001",
|
||||||
|
"ASSEMBLY_SCALE": "1",
|
||||||
"COMPANY": "Asymworks, LLC",
|
"COMPANY": "Asymworks, LLC",
|
||||||
"DESIGNER": "JPK",
|
"DESIGNER": "JPK",
|
||||||
"DWG_NUMBER_PCB": "",
|
"DWG_NUMBER_PCB": "P98-1001",
|
||||||
"DWG_NUMBER_SCH": "",
|
"DWG_NUMBER_SCH": "S98-1001",
|
||||||
"DWG_TITLE_ASSY": "",
|
"DWG_TITLE_ASSY": "Assembly, nRF52840 Development Board",
|
||||||
"DWG_TITLE_PCB": "",
|
"DWG_TITLE_PCB": "PCB Fabrication, nRF52840 Development Board",
|
||||||
"DWG_TITLE_SCH": "",
|
"DWG_TITLE_SCH": "Schematic, nRF52840 Development Board",
|
||||||
"GIT_HASH": "",
|
"FABRICATION_NOTES": "FABRICATION NOTES (UNLESS OTHERWISE SPECIFIED)\n\n1)\tFABRICATE PER IPC-6012A CLASS 2.\n\n2)\tOUTLINE DEFINED IN SEPARATE GERBER FILE WITH\n\t\"Edge_Cuts.GBR\" SUFFIX.\n\n3)\tSEE SEPARATE DRILL FILES WITH \".DRL\" SUFFIX \n\tFOR HOLE LOCATIONS.\n\n\tSELECTED HOLE LOCATIONS SHOWN ON THIS DRAWING \n\tFOR REFERENCE ONLY.\n\n4)\tSURFACE FINISH: ENIG\n\n5)\tSOLDERMASK ON BOTH SIDES OF THE BOARD SHALL \n\tBE LPI, COLOR GREEN.\n\n6)\tSILK SCREEN LEGEND TO BE APPLIED PER LAYER \n\tSTACKUP USING WHITE NON-CONDUCTIVE EPOXY INK.\n\n7)\tALL VIAS ARE TENTED ON BOTH SIDES UNLESS \n\tSOLDERMASK OPENED IN GERBER.\n\n8)\tRESERVED\n\n9)\tPCB MATERIAL REQUIREMENTS:\n\n\tA.\tFLAMMABILITY RATING MUST MEET OR EXCEED \n\t\tUL94V-0 REQUIREMENTS.\n\tB.\tTg 135 C OR EQUIVALENT.\n\n10)\tDESIGN GEOMETRY MINIMUM FEATURE SIZES:\n\n\tBOARD SIZE\t\t\t\tN/A \u00d7 N/A mm\n\tBOARD THICKNESS\t\t1.647 mm\n\tTRACE WIDTH\t\t\tN/A mm\n\tTRACE TO TRACE\t\t0.200 mm\n\tMIN. HOLE (PTH)\t\t\tN/A mm\n\tMIN. HOLE (NPTH)\t\tN/A mm\n\tANNULAR RING\t\t\tN/A mm\n\tCOPPER TO HOLE\t\t0.250 mm\n\tCOPPER TO EDGE\t\t0.500 mm\n\tHOLE TO HOLE\t\t\t0.250 mm\n\n11)\tALL DIMENSIONS ARE IN MILLIMETERS UNLESS OTHERWISE\n\tSPECIFIED.\n\n12)\tFOR REFERENCE ONLY THE STACKUP CORRESPONDS TO JLCPCB\n\tSTACKUP JLC04161H-7628.",
|
||||||
"GIT_HASH_PCB": "",
|
"GIT_HASH": "8afb0f1",
|
||||||
"GIT_HASH_SCH": "",
|
"GIT_HASH_PCB": "68b8070",
|
||||||
"GIT_URL": "",
|
"GIT_HASH_SCH": "68b8070",
|
||||||
"PROJECT_CODE": "",
|
"GIT_URL": "https://git.asymworks.com/jkrauss/Test_7",
|
||||||
"RELEASE_DATE": "",
|
"PROJECT_CODE": "P98",
|
||||||
"RELEASE_STATE": "",
|
"RELEASE_DATE": "2026-03-10",
|
||||||
"REVISION": "${REVISION}",
|
"RELEASE_STATE": "DRAFT",
|
||||||
|
"REVISION": "NO_TAG+ (Unreleased)",
|
||||||
"SCALE": "1:1",
|
"SCALE": "1:1",
|
||||||
|
"SCHEMATIC_NOTES": "Unless otherwise specified, components Values are in ohms, \u00b5F, and \u00b5H.",
|
||||||
"SHEET_NAME_01": "Cover Page",
|
"SHEET_NAME_01": "Cover Page",
|
||||||
"SHEET_NAME_02": "Block Diagram",
|
"SHEET_NAME_02": "Block Diagram",
|
||||||
"SHEET_NAME_03": "Project Architecture",
|
"SHEET_NAME_03": "Project Architecture",
|
||||||
"SHEET_NAME_04": "Circuit 1",
|
"SHEET_NAME_04": "Circuit 1",
|
||||||
"SHEET_NAME_05": "Circuit 2",
|
"SHEET_NAME_05": "Circuit 2",
|
||||||
"SHEET_NAME_06": "Circuit 3",
|
"SHEET_NAME_06": "Circuit 3",
|
||||||
"SHEET_NAME_07": "Parts List",
|
"SHEET_NAME_07": "......................................",
|
||||||
"SHEET_NAME_08": "......................................",
|
"SHEET_NAME_08": "......................................",
|
||||||
"SHEET_NAME_09": "......................................",
|
"SHEET_NAME_09": "......................................",
|
||||||
"SHEET_NAME_10": "......................................",
|
"SHEET_NAME_10": "......................................",
|
||||||
@@ -688,7 +691,6 @@
|
|||||||
"SHEET_NAME_18": "......................................",
|
"SHEET_NAME_18": "......................................",
|
||||||
"SHEET_NAME_19": "......................................",
|
"SHEET_NAME_19": "......................................",
|
||||||
"SHEET_NAME_20": "......................................",
|
"SHEET_NAME_20": "......................................",
|
||||||
"STATE": "TEMPLATE",
|
|
||||||
"VARIANT": ""
|
"VARIANT": ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
222
A98-1001.xml
Normal file
222
A98-1001.xml
Normal file
@@ -0,0 +1,222 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<export version="E">
|
||||||
|
<design>
|
||||||
|
<source>/workspace/jkrauss/Test_7/A98-1001.kicad_sch</source>
|
||||||
|
<date>Date1</date>
|
||||||
|
<tool>Eeschema 9.0.7+1</tool>
|
||||||
|
<textvar name="ASSEMBLY_NAME">nRF52840 Development Board</textvar>
|
||||||
|
<textvar name="ASSEMBLY_NOTES">ASSEMBLY NOTES (UNLESS OTHERWISE SPECIFIED)
|
||||||
|
|
||||||
|
1) DO NOT POPULATE COMPONENTS ARE MARKED WITH A RED CROSS
|
||||||
|
|
||||||
|
2) DO NOT POPULATE COMPONENTS ARE NOT PRESENT IN THE BOM
|
||||||
|
|
||||||
|
3) IF CONFLICTING INFORMATION IS FOUND BETWEEN THE ASSEMBLY
|
||||||
|
FILE AND BOM, BOM SHOULD BE USED AS THE MAIN SOURCE.
|
||||||
|
|
||||||
|
4) DOT IDENTIFIES PIN #1 LOCATION AND DEVICE ORIENTATION
|
||||||
|
WHEN VIEWED FROM THE TOP.</textvar>
|
||||||
|
<textvar name="ASSEMBLY_NUMBER">A98-1001</textvar>
|
||||||
|
<textvar name="ASSEMBLY_SCALE">1</textvar>
|
||||||
|
<textvar name="COMPANY">Asymworks, LLC</textvar>
|
||||||
|
<textvar name="DESIGNER">JPK</textvar>
|
||||||
|
<textvar name="DWG_NUMBER_PCB">P98-1001</textvar>
|
||||||
|
<textvar name="DWG_NUMBER_SCH">S98-1001</textvar>
|
||||||
|
<textvar name="DWG_TITLE_ASSY">Assembly, nRF52840 Development Board</textvar>
|
||||||
|
<textvar name="DWG_TITLE_PCB">PCB Fabrication, nRF52840 Development Board</textvar>
|
||||||
|
<textvar name="DWG_TITLE_SCH">Schematic, nRF52840 Development Board</textvar>
|
||||||
|
<textvar name="FABRICATION_NOTES">FABRICATION NOTES (UNLESS OTHERWISE SPECIFIED)
|
||||||
|
|
||||||
|
1) FABRICATE PER IPC-6012A CLASS 2.
|
||||||
|
|
||||||
|
2) OUTLINE DEFINED IN SEPARATE GERBER FILE WITH
|
||||||
|
"Edge_Cuts.GBR" SUFFIX.
|
||||||
|
|
||||||
|
3) SEE SEPARATE DRILL FILES WITH ".DRL" SUFFIX
|
||||||
|
FOR HOLE LOCATIONS.
|
||||||
|
|
||||||
|
SELECTED HOLE LOCATIONS SHOWN ON THIS DRAWING
|
||||||
|
FOR REFERENCE ONLY.
|
||||||
|
|
||||||
|
4) SURFACE FINISH: ENIG
|
||||||
|
|
||||||
|
5) SOLDERMASK ON BOTH SIDES OF THE BOARD SHALL
|
||||||
|
BE LPI, COLOR GREEN.
|
||||||
|
|
||||||
|
6) SILK SCREEN LEGEND TO BE APPLIED PER LAYER
|
||||||
|
STACKUP USING WHITE NON-CONDUCTIVE EPOXY INK.
|
||||||
|
|
||||||
|
7) ALL VIAS ARE TENTED ON BOTH SIDES UNLESS
|
||||||
|
SOLDERMASK OPENED IN GERBER.
|
||||||
|
|
||||||
|
8) RESERVED
|
||||||
|
|
||||||
|
9) PCB MATERIAL REQUIREMENTS:
|
||||||
|
|
||||||
|
A. FLAMMABILITY RATING MUST MEET OR EXCEED
|
||||||
|
UL94V-0 REQUIREMENTS.
|
||||||
|
B. Tg 135 C OR EQUIVALENT.
|
||||||
|
|
||||||
|
10) DESIGN GEOMETRY MINIMUM FEATURE SIZES:
|
||||||
|
|
||||||
|
BOARD SIZE N/A × N/A mm
|
||||||
|
BOARD THICKNESS 1.647 mm
|
||||||
|
TRACE WIDTH N/A mm
|
||||||
|
TRACE TO TRACE 0.200 mm
|
||||||
|
MIN. HOLE (PTH) N/A mm
|
||||||
|
MIN. HOLE (NPTH) N/A mm
|
||||||
|
ANNULAR RING N/A mm
|
||||||
|
COPPER TO HOLE 0.250 mm
|
||||||
|
COPPER TO EDGE 0.500 mm
|
||||||
|
HOLE TO HOLE 0.250 mm
|
||||||
|
|
||||||
|
11) ALL DIMENSIONS ARE IN MILLIMETERS UNLESS OTHERWISE
|
||||||
|
SPECIFIED.
|
||||||
|
|
||||||
|
12) FOR REFERENCE ONLY THE STACKUP CORRESPONDS TO JLCPCB
|
||||||
|
STACKUP JLC04161H-7628.</textvar>
|
||||||
|
<textvar name="GIT_HASH">8afb0f1</textvar>
|
||||||
|
<textvar name="GIT_HASH_PCB">68b8070</textvar>
|
||||||
|
<textvar name="GIT_HASH_SCH">68b8070</textvar>
|
||||||
|
<textvar name="GIT_URL">https://git.asymworks.com/jkrauss/Test_7</textvar>
|
||||||
|
<textvar name="PROJECT_CODE">P98</textvar>
|
||||||
|
<textvar name="RELEASE_DATE">2026-03-10</textvar>
|
||||||
|
<textvar name="RELEASE_STATE">DRAFT</textvar>
|
||||||
|
<textvar name="REVISION">NO_TAG+ (Unreleased)</textvar>
|
||||||
|
<textvar name="SCALE">1:1</textvar>
|
||||||
|
<textvar name="SCHEMATIC_NOTES">Unless otherwise specified, components Values are in ohms, µF, and µH.</textvar>
|
||||||
|
<textvar name="SHEET_NAME_01">Cover Page</textvar>
|
||||||
|
<textvar name="SHEET_NAME_02">Block Diagram</textvar>
|
||||||
|
<textvar name="SHEET_NAME_03">Project Architecture</textvar>
|
||||||
|
<textvar name="SHEET_NAME_04">Circuit 1</textvar>
|
||||||
|
<textvar name="SHEET_NAME_05">Circuit 2</textvar>
|
||||||
|
<textvar name="SHEET_NAME_06">Circuit 3</textvar>
|
||||||
|
<textvar name="SHEET_NAME_07">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_08">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_09">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_10">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_11">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_12">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_13">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_14">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_15">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_16">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_17">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_18">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_19">......................................</textvar>
|
||||||
|
<textvar name="SHEET_NAME_20">......................................</textvar>
|
||||||
|
<textvar name="VARIANT"/>
|
||||||
|
<sheet number="1" name="/" tstamps="/">
|
||||||
|
<title_block>
|
||||||
|
<title>Title Page</title>
|
||||||
|
<company>Asymworks, LLC</company>
|
||||||
|
<rev>NO_TAG+ (Unreleased)</rev>
|
||||||
|
<date/>
|
||||||
|
<source>A98-1001.kicad_sch</source>
|
||||||
|
<comment number="1" value=""/>
|
||||||
|
<comment number="2" value=""/>
|
||||||
|
<comment number="3" value=""/>
|
||||||
|
<comment number="4" value=""/>
|
||||||
|
<comment number="5" value=""/>
|
||||||
|
<comment number="6" value=""/>
|
||||||
|
<comment number="7" value=""/>
|
||||||
|
<comment number="8" value=""/>
|
||||||
|
<comment number="9" value=""/>
|
||||||
|
</title_block>
|
||||||
|
</sheet>
|
||||||
|
<sheet number="2" name="/Block Diagram/" tstamps="/28ad8293-baaf-4ee1-8056-ad34096542a0/">
|
||||||
|
<title_block>
|
||||||
|
<title>Block Diagram</title>
|
||||||
|
<company>Asymworks, LLC</company>
|
||||||
|
<rev>NO_TAG+ (Unreleased)</rev>
|
||||||
|
<date/>
|
||||||
|
<source>Block_Diagram.kicad_sch</source>
|
||||||
|
<comment number="1" value=""/>
|
||||||
|
<comment number="2" value=""/>
|
||||||
|
<comment number="3" value=""/>
|
||||||
|
<comment number="4" value=""/>
|
||||||
|
<comment number="5" value=""/>
|
||||||
|
<comment number="6" value=""/>
|
||||||
|
<comment number="7" value=""/>
|
||||||
|
<comment number="8" value=""/>
|
||||||
|
<comment number="9" value=""/>
|
||||||
|
</title_block>
|
||||||
|
</sheet>
|
||||||
|
<sheet number="3" name="/Project Architecture/" tstamps="/f6afef58-d841-4ad6-baf9-746b0a35f011/">
|
||||||
|
<title_block>
|
||||||
|
<title>Project Architecture</title>
|
||||||
|
<company>Asymworks, LLC</company>
|
||||||
|
<rev>NO_TAG+ (Unreleased)</rev>
|
||||||
|
<date/>
|
||||||
|
<source>Architecture.kicad_sch</source>
|
||||||
|
<comment number="1" value=""/>
|
||||||
|
<comment number="2" value=""/>
|
||||||
|
<comment number="3" value=""/>
|
||||||
|
<comment number="4" value=""/>
|
||||||
|
<comment number="5" value=""/>
|
||||||
|
<comment number="6" value=""/>
|
||||||
|
<comment number="7" value=""/>
|
||||||
|
<comment number="8" value=""/>
|
||||||
|
<comment number="9" value=""/>
|
||||||
|
</title_block>
|
||||||
|
</sheet>
|
||||||
|
<sheet number="4" name="/Project Architecture/Circuit 1/" tstamps="/f6afef58-d841-4ad6-baf9-746b0a35f011/a5aa3c11-5084-4ea5-9da5-c9ff4a86f01f/">
|
||||||
|
<title_block>
|
||||||
|
<title>Circuit 1</title>
|
||||||
|
<company>Asymworks, LLC</company>
|
||||||
|
<rev>NO_TAG+ (Unreleased)</rev>
|
||||||
|
<date/>
|
||||||
|
<source>Circuit-1.kicad_sch</source>
|
||||||
|
<comment number="1" value=""/>
|
||||||
|
<comment number="2" value=""/>
|
||||||
|
<comment number="3" value=""/>
|
||||||
|
<comment number="4" value=""/>
|
||||||
|
<comment number="5" value=""/>
|
||||||
|
<comment number="6" value=""/>
|
||||||
|
<comment number="7" value=""/>
|
||||||
|
<comment number="8" value=""/>
|
||||||
|
<comment number="9" value=""/>
|
||||||
|
</title_block>
|
||||||
|
</sheet>
|
||||||
|
<sheet number="5" name="/Project Architecture/Circuit 2/" tstamps="/f6afef58-d841-4ad6-baf9-746b0a35f011/9da43fd7-7a0a-403c-bf2c-ba67cd8fa669/">
|
||||||
|
<title_block>
|
||||||
|
<title>Circuit 2</title>
|
||||||
|
<company>Asymworks, LLC</company>
|
||||||
|
<rev>NO_TAG+ (Unreleased)</rev>
|
||||||
|
<date/>
|
||||||
|
<source>Circuit-2.kicad_sch</source>
|
||||||
|
<comment number="1" value=""/>
|
||||||
|
<comment number="2" value=""/>
|
||||||
|
<comment number="3" value=""/>
|
||||||
|
<comment number="4" value=""/>
|
||||||
|
<comment number="5" value=""/>
|
||||||
|
<comment number="6" value=""/>
|
||||||
|
<comment number="7" value=""/>
|
||||||
|
<comment number="8" value=""/>
|
||||||
|
<comment number="9" value=""/>
|
||||||
|
</title_block>
|
||||||
|
</sheet>
|
||||||
|
<sheet number="6" name="/Project Architecture/Circuit 3/" tstamps="/f6afef58-d841-4ad6-baf9-746b0a35f011/6c8ce547-8e28-496a-9003-0e7dbfd93e8c/">
|
||||||
|
<title_block>
|
||||||
|
<title/>
|
||||||
|
<company>Asymworks, LLC</company>
|
||||||
|
<rev>NO_TAG+ (Unreleased)</rev>
|
||||||
|
<date/>
|
||||||
|
<source>Circuit-3.kicad_sch</source>
|
||||||
|
<comment number="1" value=""/>
|
||||||
|
<comment number="2" value=""/>
|
||||||
|
<comment number="3" value=""/>
|
||||||
|
<comment number="4" value=""/>
|
||||||
|
<comment number="5" value=""/>
|
||||||
|
<comment number="6" value=""/>
|
||||||
|
<comment number="7" value=""/>
|
||||||
|
<comment number="8" value=""/>
|
||||||
|
<comment number="9" value=""/>
|
||||||
|
</title_block>
|
||||||
|
</sheet>
|
||||||
|
</design>
|
||||||
|
<components/>
|
||||||
|
<libparts/>
|
||||||
|
<libraries/>
|
||||||
|
<nets/>
|
||||||
|
</export>
|
||||||
39
kibot/scripts/bootstrap.sh
Normal file → Executable file
39
kibot/scripts/bootstrap.sh
Normal file → Executable file
@@ -3,31 +3,48 @@
|
|||||||
# KiBot Template Bootstrapping Script
|
# KiBot Template Bootstrapping Script
|
||||||
# ============================================================================
|
# ============================================================================
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
# Create the Development Branch
|
# Create the Development Branch
|
||||||
git checkout -qb dev
|
git checkout -qb dev
|
||||||
echo "Created Development Branch"
|
echo "Created Development Branch"
|
||||||
|
|
||||||
# Add the Asymworks KiCad Library
|
# Add the Asymworks KiCad Library
|
||||||
git remote add -qf asymworks-kicad-lib https://git.asymworks.com/asymworks/kicad-library
|
git remote --no-verbose add -f asymworks-kicad-lib https://git.asymworks.com/asymworks/kicad-library >/dev/null
|
||||||
git subtree add -q --prefix lib/asymworks asymworks-kicad-lib main --squash -m "[bootstrap] Add subtree 'Asymworks/KiCad-Library' at 'lib/asymworks'"
|
git subtree -q add --prefix lib/asymworks asymworks-kicad-lib main --squash -m "[bootstrap] Add subtree 'Asymworks/KiCad-Library' at 'lib/asymworks'"
|
||||||
echo "Added Asymworks KiCad Library"
|
echo "Added Asymworks KiCad Library"
|
||||||
|
|
||||||
# Initialize the Project Metadata
|
# Initialize the Project Metadata
|
||||||
python kibot/scripts/metadata.py init
|
PYTHON=$(which python || echo "")
|
||||||
python kibot/scripts/metadata.py update Asymworks_Template.kicad_pro
|
if [ -z "$PYTHON" ] ; then
|
||||||
ASSY_NUMBER=$(python kibot/scripts/metadata.py print AssemblyNumber)
|
PYTHON=$(which python3 || echo "")
|
||||||
|
if [ -z "$PYTHON" ] ; then
|
||||||
|
echo "Python interpreter not found as 'python' or 'python3'" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Initializing Project Metadata"
|
||||||
|
echo "-----------------------------"
|
||||||
|
${PYTHON} kibot/scripts/metadata.py init
|
||||||
|
${PYTHON} kibot/scripts/metadata.py update Asymworks_Template.kicad_pro
|
||||||
|
ASSY_NUMBER=$(${PYTHON} kibot/scripts/metadata.py print AssemblyNumber)
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Initialized ${ASSY_NUMBER}"
|
||||||
|
|
||||||
# Rename the KiCad Project based on the directory name
|
# Rename the KiCad Project based on the directory name
|
||||||
git mv -q Asymworks_Template.kicad_dru "${ASSY_NUMBER}.kicad_dru"
|
git mv --no-verbose Asymworks_Template.kicad_dru "${ASSY_NUMBER}.kicad_dru"
|
||||||
git mv -q Asymworks_Template.kicad_pro "${ASSY_NUMBER}.kicad_pro"
|
git mv --no-verbose Asymworks_Template.kicad_pro "${ASSY_NUMBER}.kicad_pro"
|
||||||
git mv -q Asymworks_Template.kicad_sch "${ASSY_NUMBER}.kicad_sch"
|
git mv --no-verbose Asymworks_Template.kicad_sch "${ASSY_NUMBER}.kicad_sch"
|
||||||
git mv -q Asymworks_Template.kicad_pcb "${ASSY_NUMBER}.kicad_pcb"
|
git mv --no-verbose Asymworks_Template.kicad_pcb "${ASSY_NUMBER}.kicad_pcb"
|
||||||
echo "Renamed project to \"${ASSY_NUMBER}.kicad_pro\""
|
echo "Renamed project to \"${ASSY_NUMBER}.kicad_pro\""
|
||||||
|
|
||||||
# Push the Develpment Branch to Gitea
|
# Push the Develpment Branch to Gitea
|
||||||
git add -q project.json
|
git add --no-verbose project.json
|
||||||
git commit -aq -m 'Initialize Project'
|
git commit -aq -m 'Initialize Project'
|
||||||
git push -qu origin dev
|
git push --no-verbose -qu origin dev >/dev/null
|
||||||
echo "Initialized and Committed Project"
|
echo "Initialized and Committed Project"
|
||||||
|
|
||||||
# Bootstrap Complete
|
# Bootstrap Complete
|
||||||
|
|||||||
99
kibot/yaml/kibot_grp_bom.yaml
Normal file
99
kibot/yaml/kibot_grp_bom.yaml
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
# KiBot BOM Output Group
|
||||||
|
|
||||||
|
kibot:
|
||||||
|
version: 1
|
||||||
|
|
||||||
|
groups:
|
||||||
|
- name: bom
|
||||||
|
outputs:
|
||||||
|
- @NAME_CSV_BOM_OUTPUT@
|
||||||
|
- @NAME_HTML_BOM_OUTPUT@
|
||||||
|
- @NAME_HTML_IBOM_OUTPUT@
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
- name: @NAME_CSV_BOM_OUTPUT@
|
||||||
|
comment: Bill of Materials in CSV format
|
||||||
|
type: bom
|
||||||
|
category: '@DIR@'
|
||||||
|
dir: '@DIR@'
|
||||||
|
options:
|
||||||
|
format: CSV
|
||||||
|
csv:
|
||||||
|
hide_pcb_info: true
|
||||||
|
hide_stats_info: true
|
||||||
|
|
||||||
|
group_fields: ['@MPN_FIELD@', '@IPN_FIELD@', 'Value']
|
||||||
|
columns:
|
||||||
|
- "Row"
|
||||||
|
- "Quantity Per PCB"
|
||||||
|
- "References"
|
||||||
|
- "Value"
|
||||||
|
- "Datasheet"
|
||||||
|
- "Footprint"
|
||||||
|
- "Description"
|
||||||
|
- "@IPN_FIELD@"
|
||||||
|
- "@MFG_FIELD@"
|
||||||
|
- "@MPN_FIELD@"
|
||||||
|
- "LCSC"
|
||||||
|
|
||||||
|
- name: @NAME_HTML_BOM_OUTPUT@
|
||||||
|
comment: Bill of Materials in HTML format
|
||||||
|
type: bom
|
||||||
|
category: '@DIR@'
|
||||||
|
dir: '@DIR@'
|
||||||
|
options:
|
||||||
|
format: HTML
|
||||||
|
html:
|
||||||
|
title: 'Bill of Materials'
|
||||||
|
datasheet_as_link: "Datasheet"
|
||||||
|
lcsc_link: true
|
||||||
|
logo: false
|
||||||
|
style: modern-blue
|
||||||
|
|
||||||
|
group_fields: ['@MPN_FIELD@', '@IPN_FIELD@', 'Value']
|
||||||
|
columns:
|
||||||
|
- "Row"
|
||||||
|
- "Quantity Per PCB"
|
||||||
|
- "References"
|
||||||
|
- "Value"
|
||||||
|
- "Datasheet"
|
||||||
|
- "Footprint"
|
||||||
|
- "Description"
|
||||||
|
- "@IPN_FIELD@"
|
||||||
|
- "@MFG_FIELD@"
|
||||||
|
- "@MPN_FIELD@"
|
||||||
|
- "LCSC"
|
||||||
|
|
||||||
|
- name: @NAME_HTML_IBOM_OUTPUT@
|
||||||
|
comment: Interactive Bill of Materials in HTML Format
|
||||||
|
type: ibom
|
||||||
|
dir: '@DIR@'
|
||||||
|
category: '@DIR@'
|
||||||
|
options:
|
||||||
|
# extra_data_file: '%F.net'
|
||||||
|
dark_mode: true
|
||||||
|
show_fields: 'Value,Footprint,@IPN_FIELD@,@MPN_FIELD@'
|
||||||
|
group_fields: 'Value,@IPN_FIELD@,@MPN_FIELD@'
|
||||||
|
show_fabrication: true
|
||||||
|
highlight_pin1: "selected"
|
||||||
|
exclude_filter: '@EXCLUDE_FILTER@'
|
||||||
|
hide_excluded: true
|
||||||
|
forced_name: '@IBOM_TITLE@'
|
||||||
|
mark_when_checked: 'Placed'
|
||||||
|
|
||||||
|
...
|
||||||
|
definitions:
|
||||||
|
# Output Directory
|
||||||
|
DIR: +manufacturing/assembly
|
||||||
|
|
||||||
|
# Output Names
|
||||||
|
NAME_CSV_BOM_OUTPUT: csv_bom
|
||||||
|
NAME_HTML_BOM_OUTPUT: html_bom
|
||||||
|
NAME_HTML_IBOM_OUTPUT: html_bom_interactive
|
||||||
|
|
||||||
|
# BOM Configuration
|
||||||
|
IPN_FIELD: 'Asymworks IPN'
|
||||||
|
MFG_FIELD: 'Manufacturer PN'
|
||||||
|
MPN_FIELD: 'Manufacturer'
|
||||||
|
IBOM_TITLE: ''
|
||||||
|
EXCLUDE_FILTER: exclude_testpoints
|
||||||
55
kibot/yaml/kibot_grp_notes.yaml
Normal file
55
kibot/yaml/kibot_grp_notes.yaml
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
# KiBot Drawing Notes Output Group
|
||||||
|
|
||||||
|
kibot:
|
||||||
|
version: 1
|
||||||
|
|
||||||
|
groups:
|
||||||
|
- name: notes
|
||||||
|
outputs:
|
||||||
|
- @NAME_TXT_SCH_NOTES_OUTPUT@
|
||||||
|
- @NAME_TXT_FAB_NOTES_OUTPUT@
|
||||||
|
- @NAME_TXT_ASSY_NOTES_OUTPUT@
|
||||||
|
|
||||||
|
import:
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_txt_report.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_TXT_SCH_NOTES_OUTPUT@
|
||||||
|
COMMENT: Schematic notes in TXT format
|
||||||
|
DIR: @SCHEMATIC_DIR@
|
||||||
|
OUTPUT_ID: schematic_notes
|
||||||
|
TEMPLATE: @SCHEMATIC_NOTES_TEMPLATE@
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_txt_report.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_TXT_FAB_NOTES_OUTPUT@
|
||||||
|
COMMENT: Fabrication notes in TXT format
|
||||||
|
DIR: @FABRICATION_DIR@
|
||||||
|
OUTPUT_ID: fabrication_notes
|
||||||
|
TEMPLATE: @FABRICATION_NOTES_TEMPLATE@
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_txt_report.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_TXT_ASSY_NOTES_OUTPUT@
|
||||||
|
COMMENT: Assembly notes in TXT format
|
||||||
|
DIR: @ASSEMBLY_DIR@
|
||||||
|
OUTPUT_ID: assembly_notes
|
||||||
|
TEMPLATE: @ASSEMBLY_NOTES_TEMPLATE@
|
||||||
|
|
||||||
|
...
|
||||||
|
definitions:
|
||||||
|
# Directories
|
||||||
|
SCHEMATIC_DIR: schematic
|
||||||
|
FABRICATION_DIR: manufacturing/fabrication
|
||||||
|
ASSEMBLY_DIR: manufacturing/assembly
|
||||||
|
|
||||||
|
# Output Names
|
||||||
|
NAME_TXT_SCH_NOTES_OUTPUT: txt_schematic_notes
|
||||||
|
NAME_TXT_FAB_NOTES_OUTPUT: txt_fabrication_notes
|
||||||
|
NAME_TXT_ASSY_NOTES_OUTPUT: txt_assembly_notes
|
||||||
|
|
||||||
|
# Drawing Note Configuration
|
||||||
|
SCHEMATIC_NOTES_TEMPLATE: notes/schematic.txt
|
||||||
|
FABRICATION_NOTES_TEMPLATE: notes/fabrication.txt
|
||||||
|
ASSEMBLY_NOTES_TEMPLATE: notes/assembly.txt
|
||||||
|
|
||||||
144
kibot/yaml/kibot_grp_renders.yaml
Normal file
144
kibot/yaml/kibot_grp_renders.yaml
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
# KiBot Render Output Group
|
||||||
|
|
||||||
|
kibot:
|
||||||
|
version: 1
|
||||||
|
|
||||||
|
groups:
|
||||||
|
- name: renders
|
||||||
|
outputs:
|
||||||
|
- @NAME_PCBDRAW_2D_TOP_PCB_OUTPUT@
|
||||||
|
- @NAME_PCBDRAW_2D_BOT_PCB_OUTPUT@
|
||||||
|
- @NAME_BLENDER_3D_TOP_OUTPUT@
|
||||||
|
- @NAME_BLENDER_3D_BOT_OUTPUT@
|
||||||
|
- @NAME_BLENDER_3D_ANGLED_TOP_OUTPUT@
|
||||||
|
- @NAME_BLENDER_3D_ANGLED_BOT_OUTPUT@
|
||||||
|
|
||||||
|
import:
|
||||||
|
|
||||||
|
# PCB 2D Renders (Bare Board) ------------------------------------------
|
||||||
|
- file: outputs/kibot_out_pcbdraw.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_PCBDRAW_2D_TOP_PCB_OUTPUT@
|
||||||
|
COMMENT: PCB 2D Render (Top)
|
||||||
|
DIR: @DIR@
|
||||||
|
FORMAT: svg
|
||||||
|
BOTTOM: false
|
||||||
|
COMPONENTS: none
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_pcbdraw.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_PCBDRAW_2D_BOT_PCB_OUTPUT@
|
||||||
|
COMMENT: PCB 2D Render (Bottom)
|
||||||
|
DIR: @DIR@
|
||||||
|
FORMAT: svg
|
||||||
|
BOTTOM: true
|
||||||
|
COMPONENTS: none
|
||||||
|
|
||||||
|
# PCBA 3D Renders (Populated Board; Blender) -------------------------------
|
||||||
|
- file: outputs/kibot_out_blender.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_BLENDER_3D_TOP_OUTPUT@
|
||||||
|
COMMENT: High Quality 3D Render (Top)
|
||||||
|
DIR: @DIR@
|
||||||
|
VIEW: top
|
||||||
|
ROTATE_X: 0
|
||||||
|
ROTATE_Y: 0
|
||||||
|
ROTATE_Z: 0
|
||||||
|
SAMPLES: @BLENDER_SAMPLES@
|
||||||
|
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
||||||
|
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
||||||
|
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
||||||
|
DNF_FILTER: @BLENDER_DNF_FILTER@
|
||||||
|
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
||||||
|
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
||||||
|
DIFFUSE_LIGHT: 0.7
|
||||||
|
ACCENT_LIGHT: 0.1
|
||||||
|
SPOT_LIGHT: 0.1
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_blender.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_BLENDER_3D_BOT_OUTPUT@
|
||||||
|
COMMENT: High Quality 3D Render (Bottom)
|
||||||
|
DIR: @DIR@
|
||||||
|
VIEW: bottom
|
||||||
|
ROTATE_X: 0
|
||||||
|
ROTATE_Y: 0
|
||||||
|
ROTATE_Z: 0
|
||||||
|
SAMPLES: @BLENDER_SAMPLES@
|
||||||
|
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
||||||
|
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
||||||
|
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
||||||
|
DNF_FILTER: @BLENDER_DNF_FILTER@
|
||||||
|
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
||||||
|
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
||||||
|
DIFFUSE_LIGHT: 0.7
|
||||||
|
ACCENT_LIGHT: 0.1
|
||||||
|
SPOT_LIGHT: 0.1
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_blender.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_BLENDER_3D_ANGLED_TOP_OUTPUT@
|
||||||
|
COMMENT: High Quality 3D Render (Angled Top)
|
||||||
|
DIR: @DIR@
|
||||||
|
VIEW: top
|
||||||
|
ROTATE_X: @BLENDER_TOP_ROT_X@
|
||||||
|
ROTATE_Y: @BLENDER_TOP_ROT_Y@
|
||||||
|
ROTATE_Z: @BLENDER_TOP_ROT_Z@
|
||||||
|
SAMPLES: @BLENDER_SAMPLES@
|
||||||
|
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
||||||
|
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
||||||
|
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
||||||
|
DNF_FILTER: @BLENDER_DNF_FILTER@
|
||||||
|
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
||||||
|
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
||||||
|
DIFFUSE_LIGHT: 0.4
|
||||||
|
ACCENT_LIGHT: 0.1
|
||||||
|
SPOT_LIGHT: 2.0
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_blender.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_BLENDER_3D_ANGLED_BOT_OUTPUT@
|
||||||
|
COMMENT: High Quality 3D Render (Angled Bottom)
|
||||||
|
DIR: @DIR@
|
||||||
|
VIEW: bottom
|
||||||
|
ROTATE_X: @BLENDER_BOT_ROT_X@
|
||||||
|
ROTATE_Y: @BLENDER_BOT_ROT_Y@
|
||||||
|
ROTATE_Z: @BLENDER_BOT_ROT_Z@
|
||||||
|
SAMPLES: @BLENDER_SAMPLES@
|
||||||
|
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
||||||
|
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
||||||
|
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
||||||
|
DNF_FILTER: @BLENDER_DNF_FILTER@
|
||||||
|
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
||||||
|
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
||||||
|
DIFFUSE_LIGHT: 0.4
|
||||||
|
ACCENT_LIGHT: 0.1
|
||||||
|
SPOT_LIGHT: 2.0
|
||||||
|
|
||||||
|
...
|
||||||
|
definitions:
|
||||||
|
# Directories
|
||||||
|
DIR: +renders
|
||||||
|
|
||||||
|
# Output Names
|
||||||
|
NAME_PCBDRAW_2D_TOP_PCB_OUTPUT: pcbdraw_top
|
||||||
|
NAME_PCBDRAW_2D_BOT_PCB_OUTPUT: pcbdraw_bottom
|
||||||
|
NAME_BLENDER_3D_TOP_OUTPUT: blender_3d_top
|
||||||
|
NAME_BLENDER_3D_BOT_OUTPUT: blender_3d_bottom
|
||||||
|
NAME_BLENDER_3D_ANGLED_TOP_OUTPUT: blender_3d_angled_top
|
||||||
|
NAME_BLENDER_3D_ANGLED_BOT_OUTPUT: blender_3d_angled_bottom
|
||||||
|
|
||||||
|
# Blender Configuration
|
||||||
|
BLENDER_DNF_FILTER: _kibom_dnf_Config
|
||||||
|
BLENDER_SAMPLES: 2
|
||||||
|
BLENDER_TOP_ROT_X: 30
|
||||||
|
BLENDER_TOP_ROT_Y: 10
|
||||||
|
BLENDER_TOP_ROT_Z: 10
|
||||||
|
BLENDER_BOT_ROT_X: -30
|
||||||
|
BLENDER_BOT_ROT_Y: 10
|
||||||
|
BLENDER_BOT_ROT_Z: 10
|
||||||
|
BLENDER_RESOLUTION_X: 1500
|
||||||
|
BLENDER_RESOLUTION_Y: 1500
|
||||||
|
BLENDER_TEXTURE_DPI: 1031.0
|
||||||
|
BLENDER_DIFFUSE_HEIGHT: 10.0
|
||||||
|
BLENDER_DIFFUSE_RADIUS: 6.0
|
||||||
93
kibot/yaml/kibot_grp_tables.yaml
Normal file
93
kibot/yaml/kibot_grp_tables.yaml
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
# KiBot Drawing Tables Output Group
|
||||||
|
|
||||||
|
kibot:
|
||||||
|
version: 1
|
||||||
|
|
||||||
|
groups:
|
||||||
|
- name: tables
|
||||||
|
outputs:
|
||||||
|
- @NAME_CSV_IMPEDANCE_TABLE_OUTPUT@
|
||||||
|
- @NAME_CSV_COMP_COUNT_OUPUT@
|
||||||
|
- @NAME_CSV_DRILL_TABLE_OUTPUT@
|
||||||
|
- @NAME_CSV_TP_OUTPUT@
|
||||||
|
- @NAME_CSV_TP_TOP_OUTPUT@
|
||||||
|
- @NAME_CSV_TP_BOTTOM_OUTPUT@
|
||||||
|
|
||||||
|
import:
|
||||||
|
|
||||||
|
# Impedance and Component Count Reports
|
||||||
|
- file: outputs/kibot_out_csv_report.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_CSV_IMPEDANCE_TABLE_OUTPUT@
|
||||||
|
COMMENT: Impedance Table in CSV format
|
||||||
|
DIR: @FABRICATION_DIR@
|
||||||
|
OUTPUT_ID: impedance_table
|
||||||
|
TEMPLATE: @IMPEDANCE_TABLE_TEMPLATE@
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_csv_report.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_CSV_COMP_COUNT_OUPUT@
|
||||||
|
COMMENT: Component Report in CSV format
|
||||||
|
DIR: @ASSEMBLY_DIR@
|
||||||
|
OUTPUT_ID: components_count
|
||||||
|
TEMPLATE: total_components
|
||||||
|
|
||||||
|
# CSV Test Point Files
|
||||||
|
- file: outputs/kibot_out_csv_testpoints.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_CSV_TP_OUTPUT@
|
||||||
|
COMMENT: Testpoint report in CSV format
|
||||||
|
DIR: @TESTPOINTS_DIR@
|
||||||
|
EXCLUDE_FILTER: @FILT_TP_ONLY@
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_csv_testpoints_simple.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_CSV_TP_TOP_OUTPUT@
|
||||||
|
COMMENT: Top testpoint report in CSV format
|
||||||
|
DIR: @TESTPOINTS_DIR@
|
||||||
|
SUFFIX: -top
|
||||||
|
EXCLUDE_FILTER: @FILT_TP_TOP_ONLY@
|
||||||
|
|
||||||
|
- file: outputs/kibot_out_csv_testpoints_simple.yaml
|
||||||
|
definitions:
|
||||||
|
NAME: @NAME_CSV_TP_BOTTOM_OUTPUT@
|
||||||
|
COMMENT: Bottom testpoint report in CSV format
|
||||||
|
DIR: @TESTPOINTS_DIR@
|
||||||
|
SUFFIX: -bottom
|
||||||
|
EXCLUDE_FILTER: @FILT_TP_BOTTOM_ONLY@
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
- name: @NAME_CSV_DRILL_TABLE_OUTPUT@
|
||||||
|
comment: Drill Table in CSV format
|
||||||
|
type: excellon
|
||||||
|
category: '@DRILL_TABLE_DIR@'
|
||||||
|
dir: '@DRILL_TABLE_DIR@'
|
||||||
|
options:
|
||||||
|
generate_drill_files: false
|
||||||
|
table:
|
||||||
|
unify_pth_and_npth: '@DRILL_TABLE_UNIFY_PTH_NPTH@'
|
||||||
|
group_slots_and_round_holes: @DRILL_TABLE_GROUP_ROUND_SLOTS@
|
||||||
|
|
||||||
|
...
|
||||||
|
definitions:
|
||||||
|
# Directories
|
||||||
|
FABRICATION_DIR: manufacturing/fabrication
|
||||||
|
DRILL_TABLE_DIR: manufacturing/fabrication/drill-tables
|
||||||
|
ASSEMBLY_DIR: manufacturing/assembly
|
||||||
|
TESTPOINTS_DIR: test/testpoints
|
||||||
|
|
||||||
|
# Output Names
|
||||||
|
NAME_CSV_IMPEDANCE_TABLE_OUTPUT: csv_impedance_table
|
||||||
|
NAME_CSV_COMP_COUNT_OUPUT: csv_comp_count
|
||||||
|
NAME_CSV_DRILL_TABLE_OUTPUT: csv_drill_table
|
||||||
|
NAME_CSV_TP_OUTPUT: csv_testpoints
|
||||||
|
NAME_CSV_TP_TOP_OUTPUT: csv_testpoints_top
|
||||||
|
NAME_CSV_TP_BOTTOM_OUTPUT: csv_testpoints_bottom
|
||||||
|
|
||||||
|
# Table Configuration
|
||||||
|
IMPEDANCE_TABLE_TEMPLATE: notes/impedance-table.txt
|
||||||
|
DRILL_TABLE_UNIFY_PTH_NPTH: 'yes'
|
||||||
|
DRILL_TABLE_GROUP_ROUND_SLOTS: True
|
||||||
|
FILT_TP_ONLY: only_testpoints
|
||||||
|
FILT_TP_TOP_ONLY: only_testpoints_top
|
||||||
|
FILT_TP_BOTTOM_ONLY: only_testpoints_bottom
|
||||||
@@ -16,16 +16,11 @@ groups:
|
|||||||
# Pre-Process Group (generates Notes and Netlist for set_text_variables) ---
|
# Pre-Process Group (generates Notes and Netlist for set_text_variables) ---
|
||||||
- name: preprocess_group
|
- name: preprocess_group
|
||||||
outputs:
|
outputs:
|
||||||
- @NETLIST_OUTPUT@
|
- notes
|
||||||
- @TXT_SCH_NOTES_OUTPUT@
|
|
||||||
- @TXT_FAB_NOTES_OUTPUT@
|
|
||||||
- @TXT_ASSY_NOTES_OUTPUT@
|
|
||||||
- tables
|
|
||||||
|
|
||||||
# Draft Outputs Group (used in DRAFT state only) ---------------------------
|
# Draft Outputs Group (used in DRAFT state only) ---------------------------
|
||||||
- name: draft_group
|
- name: draft_group
|
||||||
outputs:
|
outputs:
|
||||||
- @NETLIST_OUTPUT@
|
|
||||||
- @TXT_SCH_NOTES_OUTPUT@
|
- @TXT_SCH_NOTES_OUTPUT@
|
||||||
- @PDF_SCHEMATIC_OUTPUT@
|
- @PDF_SCHEMATIC_OUTPUT@
|
||||||
- @CSV_BOM_OUTPUT@
|
- @CSV_BOM_OUTPUT@
|
||||||
@@ -42,21 +37,6 @@ groups:
|
|||||||
- panels
|
- panels
|
||||||
- assembly
|
- assembly
|
||||||
- @PDF_SCHEMATIC_OUTPUT@
|
- @PDF_SCHEMATIC_OUTPUT@
|
||||||
- @HTML_NAV_RES_OUTPUT@
|
|
||||||
|
|
||||||
# All Outputs Group, including KiRi (not enabled by default) ---------------
|
|
||||||
- name: all_group_kiri
|
|
||||||
outputs:
|
|
||||||
- bom
|
|
||||||
- renders
|
|
||||||
- models
|
|
||||||
- fab
|
|
||||||
- jlcpcb
|
|
||||||
- panels
|
|
||||||
- assembly
|
|
||||||
- @PDF_SCHEMATIC_OUTPUT@
|
|
||||||
- @HTML_KIRI_OUTPUT@
|
|
||||||
- @HTML_NAV_RES_OUTPUT@
|
|
||||||
|
|
||||||
# Panel Fabrication Outputs Group (not used in DRAFT state) ----------------
|
# Panel Fabrication Outputs Group (not used in DRAFT state) ----------------
|
||||||
- name: panel_fab_jlcpcb_group
|
- name: panel_fab_jlcpcb_group
|
||||||
@@ -64,31 +44,6 @@ groups:
|
|||||||
|
|
||||||
# Output Sub-Groups ========================================================
|
# Output Sub-Groups ========================================================
|
||||||
|
|
||||||
# Bill of Material Outputs -------------------------------------------------
|
|
||||||
- name: bom
|
|
||||||
outputs:
|
|
||||||
- @CSV_BOM_OUTPUT@
|
|
||||||
- @HTML_BOM_OUTPUT@
|
|
||||||
- @HTML_IBOM_OUTPUT@
|
|
||||||
|
|
||||||
# PCB Render Outputs -------------------------------------------------------
|
|
||||||
- name: renders
|
|
||||||
outputs:
|
|
||||||
- @PCBDRAW_2D_TOP_PCB_OUTPUT@
|
|
||||||
- @PCBDRAW_2D_BOT_PCB_OUTPUT@
|
|
||||||
- @BLENDER_3D_TOP@
|
|
||||||
- @BLENDER_3D_BOT@
|
|
||||||
- @BLENDER_3D_ANGLED_TOP@
|
|
||||||
- @BLENDER_3D_ANGLED_BOT@
|
|
||||||
|
|
||||||
# KiCad 3D Viewer Renders (render_3d) are currently disabled as they do
|
|
||||||
# not look very good in KiCad 9 and they cause a warning in the KiBot
|
|
||||||
# output.
|
|
||||||
# - @PNG_3D_VIEWER_TOP@
|
|
||||||
# - @PNG_3D_VIEWER_BOT@
|
|
||||||
# - @PNG_3D_VIEWER_ANGLED_TOP@
|
|
||||||
# - @PNG_3D_VIEWER_ANGLED_BOT@
|
|
||||||
|
|
||||||
# PCB 3d Model Outputs -----------------------------------------------------
|
# PCB 3d Model Outputs -----------------------------------------------------
|
||||||
- name: models
|
- name: models
|
||||||
outputs:
|
outputs:
|
||||||
@@ -98,6 +53,7 @@ groups:
|
|||||||
# Fabrication Outputs ------------------------------------------------------
|
# Fabrication Outputs ------------------------------------------------------
|
||||||
- name: fab
|
- name: fab
|
||||||
outputs:
|
outputs:
|
||||||
|
- tables
|
||||||
- @GERBER_OUTPUT@
|
- @GERBER_OUTPUT@
|
||||||
- @EXCELLON_DRILL_OUTPUT@
|
- @EXCELLON_DRILL_OUTPUT@
|
||||||
- @ODB_OUTPUT@
|
- @ODB_OUTPUT@
|
||||||
@@ -105,19 +61,6 @@ groups:
|
|||||||
- @PDF_FABRICATION_OUTPUT@
|
- @PDF_FABRICATION_OUTPUT@
|
||||||
- @ZIP_COMPRESS_FAB_OUTPUT@
|
- @ZIP_COMPRESS_FAB_OUTPUT@
|
||||||
|
|
||||||
- name: tables
|
|
||||||
outputs:
|
|
||||||
- @CSV_COMP_COUNT_OUPUT@
|
|
||||||
- @CSV_IMPEDANCE_TABLE_OUTPUT@
|
|
||||||
- @CSV_DRILL_TABLE_OUTPUT@
|
|
||||||
- testpoints
|
|
||||||
|
|
||||||
- name: testpoints
|
|
||||||
outputs:
|
|
||||||
- @CSV_TP_OUTPUT@
|
|
||||||
- @CSV_TP_TOP_OUTPUT@
|
|
||||||
- @CSV_TP_BOTTOM_OUTPUT@
|
|
||||||
|
|
||||||
# JLCPCB Fabrication and Assembly Outputs ----------------------------------
|
# JLCPCB Fabrication and Assembly Outputs ----------------------------------
|
||||||
- name: jlcpcb
|
- name: jlcpcb
|
||||||
outputs:
|
outputs:
|
||||||
@@ -150,73 +93,68 @@ import:
|
|||||||
|
|
||||||
# Filters ==================================================================
|
# Filters ==================================================================
|
||||||
|
|
||||||
- file: kibot_filt_field_rename.yaml
|
- file: filters/kibot_filt_field_rename.yaml
|
||||||
definitions:
|
definitions:
|
||||||
NAME: @FILT_FIELD_RENAME@
|
NAME: @FILT_FIELD_RENAME@
|
||||||
COMMENT: Rename fields
|
COMMENT: Rename fields
|
||||||
MPN_FIELD: @MPN_FIELD@
|
MPN_FIELD: @MPN_FIELD@
|
||||||
MAN_FIELD: @MAN_FIELD@
|
MAN_FIELD: @MAN_FIELD@
|
||||||
|
|
||||||
- file: kibot_filt_testpoints.yaml
|
- file: filters/kibot_filt_testpoints.yaml
|
||||||
definitions:
|
definitions:
|
||||||
NAME: @FILT_TP_ONLY@
|
NAME: @FILT_TP_ONLY@
|
||||||
COMMENT: Include only testpoints
|
COMMENT: Include only testpoints
|
||||||
|
|
||||||
- file: kibot_filt_exclude_testpoints.yaml
|
- file: filters/kibot_filt_exclude_testpoints.yaml
|
||||||
definitions:
|
definitions:
|
||||||
NAME: @FILT_TP_EXCLUDE@
|
NAME: @FILT_TP_EXCLUDE@
|
||||||
COMMENT: Exclude only testpoints
|
COMMENT: Exclude only testpoints
|
||||||
|
|
||||||
- file: kibot_filt_testpoints.yaml
|
- file: filters/kibot_filt_testpoints.yaml
|
||||||
definitions:
|
definitions:
|
||||||
NAME: @FILT_TP_TOP_ONLY@
|
NAME: @FILT_TP_TOP_ONLY@
|
||||||
COMMENT: Select only top testpoints
|
COMMENT: Select only top testpoints
|
||||||
EXCLUDE_BOTTOM: true
|
EXCLUDE_BOTTOM: true
|
||||||
EXCLUDE_REFS: "@TP_EXCLUDE_REFS@"
|
EXCLUDE_REFS: "@TP_EXCLUDE_REFS@"
|
||||||
|
|
||||||
- file: kibot_filt_testpoints.yaml
|
- file: filters/kibot_filt_testpoints.yaml
|
||||||
definitions:
|
definitions:
|
||||||
NAME: @FILT_TP_BOTTOM_ONLY@
|
NAME: @FILT_TP_BOTTOM_ONLY@
|
||||||
COMMENT: Select only bottom testpoints
|
COMMENT: Select only bottom testpoints
|
||||||
EXCLUDE_TOP: true
|
EXCLUDE_TOP: true
|
||||||
EXCLUDE_REFS: "@TP_EXCLUDE_REFS@"
|
EXCLUDE_REFS: "@TP_EXCLUDE_REFS@"
|
||||||
|
|
||||||
- file: kibot_filt_lcsc_parts.yaml
|
- file: filters/kibot_filt_lcsc_parts.yaml
|
||||||
definitions:
|
definitions:
|
||||||
NAME: @FILT_LCSC_PARTS@
|
NAME: @FILT_LCSC_PARTS@
|
||||||
COMMENT: Only parts with LCSC Part Number
|
COMMENT: Only parts with LCSC Part Number
|
||||||
|
|
||||||
# Preflights ===============================================================
|
# Preflights ===============================================================
|
||||||
- file: kibot_pre_set_text_variables.yaml
|
- file: preflights/kibot_pre_set_text_variables.yaml
|
||||||
definitions:
|
definitions:
|
||||||
PROJECT_CODE: @PROJECT_CODE@
|
|
||||||
ASSEMBLY_NUMBER: @ASSEMBLY_NUMBER@
|
|
||||||
ASSEMBLY_NAME: @ASSEMBLY_NAME@
|
|
||||||
COMPANY: @COMPANY@
|
|
||||||
DESIGNER: @DESIGNER@
|
|
||||||
SCRIPTS_DIR: @SCRIPTS_DIR@
|
SCRIPTS_DIR: @SCRIPTS_DIR@
|
||||||
FABRICATION_DIR: @FABRICATION_DIR@
|
FABRICATION_DIR: @FABRICATION_DIR@
|
||||||
ASSEMBLY_DIR: @ASSEMBLY_DIR@
|
ASSEMBLY_DIR: @ASSEMBLY_DIR@
|
||||||
|
|
||||||
# Generate ERC Report
|
# Generate ERC Report
|
||||||
- file: kibot_pre_erc_report.yaml
|
- file: preflights/kibot_pre_erc_report.yaml
|
||||||
definitions:
|
definitions:
|
||||||
DIR: @REPORT_DIR@
|
DIR: @REPORT_DIR@
|
||||||
|
|
||||||
# Generate DRC Report
|
# Generate DRC Report
|
||||||
- file: kibot_pre_drc_report.yaml
|
- file: preflights/kibot_pre_drc_report.yaml
|
||||||
definitions:
|
definitions:
|
||||||
CHECK_ZONE_FILLS: @CHECK_ZONE_FILLS@
|
CHECK_ZONE_FILLS: @CHECK_ZONE_FILLS@
|
||||||
DIR: @REPORT_DIR@
|
DIR: @REPORT_DIR@
|
||||||
|
|
||||||
# Draw stackup table in PCB. Needs gerber output
|
# Draw stackup table in PCB. Needs gerber output
|
||||||
- file: kibot_pre_draw_stackup.yaml
|
- file: preflights/kibot_pre_draw_stackup.yaml
|
||||||
definitions:
|
definitions:
|
||||||
GERBER_OUTPUT: @GERBER_OUTPUT@
|
GERBER_OUTPUT: @GERBER_OUTPUT@
|
||||||
NOTE: @STACKUP_TABLE_NOTE@
|
NOTE: @STACKUP_TABLE_NOTE@
|
||||||
|
|
||||||
# Include tables for PCB and Assembly Drawings
|
# Include tables for PCB and Assembly Drawings
|
||||||
- file: kibot_pre_include_table.yaml
|
- file: preflights/kibot_pre_include_table.yaml
|
||||||
definitions:
|
definitions:
|
||||||
NAME_TP_TOP: @CSV_TP_TOP_OUTPUT@
|
NAME_TP_TOP: @CSV_TP_TOP_OUTPUT@
|
||||||
NAME_TP_BOTTOM: @CSV_TP_BOTTOM_OUTPUT@
|
NAME_TP_BOTTOM: @CSV_TP_BOTTOM_OUTPUT@
|
||||||
@@ -224,13 +162,7 @@ import:
|
|||||||
NAME_CSV_DRILL_TABLE: @CSV_DRILL_TABLE_OUTPUT@
|
NAME_CSV_DRILL_TABLE: @CSV_DRILL_TABLE_OUTPUT@
|
||||||
NAME_IMPEDANCE_TABLE: @CSV_IMPEDANCE_TABLE_OUTPUT@
|
NAME_IMPEDANCE_TABLE: @CSV_IMPEDANCE_TABLE_OUTPUT@
|
||||||
|
|
||||||
# Generated Outputs ========================================================
|
# Individual Outputs =======================================================
|
||||||
|
|
||||||
# Schematic Netlist --------------------------------------------------------
|
|
||||||
- file: kibot_out_netlist.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @NETLIST_OUTPUT@
|
|
||||||
COMMENT: Schematic netlist in KiCad format
|
|
||||||
|
|
||||||
# Drawings in PDF format ---------------------------------------------------
|
# Drawings in PDF format ---------------------------------------------------
|
||||||
- file: kibot_out_pdf_schematic.yaml
|
- file: kibot_out_pdf_schematic.yaml
|
||||||
@@ -242,200 +174,6 @@ import:
|
|||||||
DEFAULT_FONT: 'Arial Narrow'
|
DEFAULT_FONT: 'Arial Narrow'
|
||||||
SHEET_WKS: @SHEET_WKS_SCH@
|
SHEET_WKS: @SHEET_WKS_SCH@
|
||||||
|
|
||||||
# Bills of Materials (BOMs) ------------------------------------------------
|
|
||||||
- file: kibot_out_csv_bom.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @CSV_BOM_OUTPUT@
|
|
||||||
COMMENT: Bill of Materials in CSV format
|
|
||||||
DIR: @ASSEMBLY_DIR@
|
|
||||||
IPN_FIELD: @IPN_FIELD@
|
|
||||||
MPN_FIELD: @MPN_FIELD@
|
|
||||||
MAN_FIELD: @MAN_FIELD@
|
|
||||||
|
|
||||||
- file: kibot_out_html_bom.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @HTML_BOM_OUTPUT@
|
|
||||||
COMMENT: Bill of Materials in HTML format
|
|
||||||
DIR: @ASSEMBLY_DIR@
|
|
||||||
IPN_FIELD: @IPN_FIELD@
|
|
||||||
MPN_FIELD: @MPN_FIELD@
|
|
||||||
MAN_FIELD: @MAN_FIELD@
|
|
||||||
|
|
||||||
- file: kibot_out_html_ibom.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @HTML_IBOM_OUTPUT@
|
|
||||||
COMMENT: Bill of Materials in HTML format
|
|
||||||
DIR: @ASSEMBLY_DIR@
|
|
||||||
IPN_FIELD: @IPN_FIELD@
|
|
||||||
MPN_FIELD: @MPN_FIELD@
|
|
||||||
MAN_FIELD: @MAN_FIELD@
|
|
||||||
|
|
||||||
# Generate Webpage with Diff's ---------------------------------------------
|
|
||||||
- file: kibot_out_html_kiri.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @HTML_KIRI_OUTPUT@
|
|
||||||
COMMENT: KiRI webpage
|
|
||||||
DIR: kiri
|
|
||||||
|
|
||||||
# Generate HTML Navigation of Outputs --------------------------------------
|
|
||||||
- file: kibot_out_navigate_results.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @HTML_NAV_RES_OUTPUT@
|
|
||||||
COMMENT: Results webpage in HTML format
|
|
||||||
DIR: html
|
|
||||||
TITLE: '@ASSEMBLY_NUMBER@ (@ASSEMBLY_NAME@)'
|
|
||||||
# LOGO: @LOGO@
|
|
||||||
# LOGO_URL: @GIT_URL@
|
|
||||||
|
|
||||||
# PCB 2D Renders (Bare Board) ------------------------------------------
|
|
||||||
- file: kibot_out_pcbdraw.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @PCBDRAW_2D_TOP_PCB_OUTPUT@
|
|
||||||
COMMENT: PCB 2D Render (Top)
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
FORMAT: svg
|
|
||||||
BOTTOM: false
|
|
||||||
COMPONENTS: none
|
|
||||||
|
|
||||||
- file: kibot_out_pcbdraw.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @PCBDRAW_2D_BOT_PCB_OUTPUT@
|
|
||||||
COMMENT: PCB 2D Render (Bottom)
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
FORMAT: svg
|
|
||||||
BOTTOM: true
|
|
||||||
COMPONENTS: none
|
|
||||||
|
|
||||||
# PCBA 3D Renders (Populated Board; KiCad Viewer) --------------------------
|
|
||||||
- file: kibot_out_png_3d_viewer.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @PNG_3D_VIEWER_TOP@
|
|
||||||
COMMENT: Top 3D viewer PCB render in PNG format
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
SUFFIX: top
|
|
||||||
VIEW: top
|
|
||||||
KEY_COLOR: '@KEY_COLOR@'
|
|
||||||
RAYTRACING: false
|
|
||||||
|
|
||||||
- file: kibot_out_png_3d_viewer.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @PNG_3D_VIEWER_BOT@
|
|
||||||
COMMENT: Bottom 3D viewer PCB render in PNG format
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
SUFFIX: bottom
|
|
||||||
VIEW: bottom
|
|
||||||
KEY_COLOR: '@KEY_COLOR@'
|
|
||||||
RAYTRACING: false
|
|
||||||
|
|
||||||
- file: kibot_out_png_3d_viewer.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @PNG_3D_VIEWER_ANGLED_TOP@
|
|
||||||
COMMENT: Top (angled) 3D viewer PCB render in PNG format
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
SUFFIX: angled_top
|
|
||||||
VIEW: top
|
|
||||||
ROTATE_X: @3D_VIEWER_ROT_X@
|
|
||||||
ROTATE_Y: @3D_VIEWER_ROT_Y@
|
|
||||||
ROTATE_Z: @3D_VIEWER_ROT_Z@
|
|
||||||
ZOOM: @3D_VIEWER_ZOOM@
|
|
||||||
KEY_COLOR: '@KEY_COLOR@'
|
|
||||||
RAYTRACING: false
|
|
||||||
|
|
||||||
- file: kibot_out_png_3d_viewer.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @PNG_3D_VIEWER_ANGLED_BOT@
|
|
||||||
COMMENT: Bottom (angled) 3D viewer PCB render in PNG format
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
SUFFIX: angled_bottom
|
|
||||||
VIEW: bottom
|
|
||||||
ROTATE_X: @3D_VIEWER_ROT_X@
|
|
||||||
ROTATE_Y: @3D_VIEWER_ROT_Y@
|
|
||||||
ROTATE_Z: -@3D_VIEWER_ROT_Z@
|
|
||||||
ZOOM: @3D_VIEWER_ZOOM@
|
|
||||||
KEY_COLOR: '@KEY_COLOR@'
|
|
||||||
RAYTRACING: false
|
|
||||||
|
|
||||||
# PCBA 3D Renders (Populated Board; Blender) -------------------------------
|
|
||||||
- file: kibot_out_blender.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @BLENDER_3D_TOP@
|
|
||||||
COMMENT: High Quality 3D Render (Top)
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
VIEW: top
|
|
||||||
ROTATE_X: 0
|
|
||||||
ROTATE_Y: 0
|
|
||||||
ROTATE_Z: 0
|
|
||||||
SAMPLES: @BLENDER_SAMPLES@
|
|
||||||
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
|
||||||
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
|
||||||
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
|
||||||
DNF_FILTER: @RENDER_DNF_FILTER@
|
|
||||||
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
|
||||||
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
|
||||||
DIFFUSE_LIGHT: 0.7
|
|
||||||
ACCENT_LIGHT: 0.1
|
|
||||||
SPOT_LIGHT: 0.1
|
|
||||||
|
|
||||||
- file: kibot_out_blender.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @BLENDER_3D_BOT@
|
|
||||||
COMMENT: High Quality 3D Render (Bottom)
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
VIEW: bottom
|
|
||||||
ROTATE_X: 0
|
|
||||||
ROTATE_Y: 0
|
|
||||||
ROTATE_Z: 0
|
|
||||||
SAMPLES: @BLENDER_SAMPLES@
|
|
||||||
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
|
||||||
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
|
||||||
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
|
||||||
DNF_FILTER: @RENDER_DNF_FILTER@
|
|
||||||
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
|
||||||
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
|
||||||
DIFFUSE_LIGHT: 0.7
|
|
||||||
ACCENT_LIGHT: 0.1
|
|
||||||
SPOT_LIGHT: 0.1
|
|
||||||
|
|
||||||
- file: kibot_out_blender.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @BLENDER_3D_ANGLED_TOP@
|
|
||||||
COMMENT: High Quality 3D Render (Angled Top)
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
VIEW: top
|
|
||||||
ROTATE_X: @BLENDER_ROT_X@
|
|
||||||
ROTATE_Y: @BLENDER_ROT_Y@
|
|
||||||
ROTATE_Z: @BLENDER_ROT_Z@
|
|
||||||
SAMPLES: @BLENDER_SAMPLES@
|
|
||||||
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
|
||||||
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
|
||||||
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
|
||||||
DNF_FILTER: @RENDER_DNF_FILTER@
|
|
||||||
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
|
||||||
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
|
||||||
DIFFUSE_LIGHT: 0.4
|
|
||||||
ACCENT_LIGHT: 0.1
|
|
||||||
SPOT_LIGHT: 2.0
|
|
||||||
|
|
||||||
- file: kibot_out_blender.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @BLENDER_3D_ANGLED_BOT@
|
|
||||||
COMMENT: High Quality 3D Render (Angled Bottom)
|
|
||||||
DIR: @RENDER_DIR@
|
|
||||||
VIEW: bottom
|
|
||||||
ROTATE_X: -@BLENDER_ROT_X@
|
|
||||||
ROTATE_Y: @BLENDER_ROT_Y@
|
|
||||||
ROTATE_Z: @BLENDER_ROT_Z@
|
|
||||||
SAMPLES: @BLENDER_SAMPLES@
|
|
||||||
RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
|
||||||
RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
|
||||||
TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
|
||||||
DNF_FILTER: @RENDER_DNF_FILTER@
|
|
||||||
DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
|
||||||
DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
|
||||||
DIFFUSE_LIGHT: 0.4
|
|
||||||
ACCENT_LIGHT: 0.1
|
|
||||||
SPOT_LIGHT: 2.0
|
|
||||||
|
|
||||||
# STEP File ----------------------------------------------------------------
|
# STEP File ----------------------------------------------------------------
|
||||||
- file: kibot_out_3d_model.yaml
|
- file: kibot_out_3d_model.yaml
|
||||||
definitions:
|
definitions:
|
||||||
@@ -493,15 +231,6 @@ import:
|
|||||||
PTH_NPTH: @GROUP_PTH_NPTH_DRL@
|
PTH_NPTH: @GROUP_PTH_NPTH_DRL@
|
||||||
MAP_FORMAT: pdf
|
MAP_FORMAT: pdf
|
||||||
|
|
||||||
# CSV Drill Table
|
|
||||||
- file: kibot_out_csv_drill_table.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @CSV_DRILL_TABLE_OUTPUT@
|
|
||||||
COMMENT: Drill Table in CSV format
|
|
||||||
DIR: @FAB_DRILL_TABLES_DIR@
|
|
||||||
PTH_NPTH: '@GROUP_PTH_NPTH@'
|
|
||||||
GROUP_ROUND_SLOTS: @GROUP_ROUND_SLOTS@
|
|
||||||
|
|
||||||
# CSV Component Placement File
|
# CSV Component Placement File
|
||||||
- file: kibot_out_csv_position.yaml
|
- file: kibot_out_csv_position.yaml
|
||||||
definitions:
|
definitions:
|
||||||
@@ -509,30 +238,6 @@ import:
|
|||||||
COMMENT: Position file in CSV format
|
COMMENT: Position file in CSV format
|
||||||
DIR: @ASSEMBLY_DIR@
|
DIR: @ASSEMBLY_DIR@
|
||||||
|
|
||||||
# CSV Test Point Files
|
|
||||||
- file: kibot_out_csv_testpoints.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @CSV_TP_OUTPUT@
|
|
||||||
COMMENT: Testpoint report in CSV format
|
|
||||||
DIR: @TESTPOINTS_DIR@
|
|
||||||
EXCLUDE_FILTER: @FILT_TP_ONLY@
|
|
||||||
|
|
||||||
- file: kibot_out_csv_testpoints_simple.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @CSV_TP_TOP_OUTPUT@
|
|
||||||
COMMENT: Top testpoint report in CSV format
|
|
||||||
DIR: @TESTPOINTS_DIR@
|
|
||||||
SUFFIX: -top
|
|
||||||
EXCLUDE_FILTER: @FILT_TP_TOP_ONLY@
|
|
||||||
|
|
||||||
- file: kibot_out_csv_testpoints_simple.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @CSV_TP_BOTTOM_OUTPUT@
|
|
||||||
COMMENT: Bottom testpoint report in CSV format
|
|
||||||
DIR: @TESTPOINTS_DIR@
|
|
||||||
SUFFIX: -bottom
|
|
||||||
EXCLUDE_FILTER: @FILT_TP_BOTTOM_ONLY@
|
|
||||||
|
|
||||||
# Fabrication and Assembly Drawings
|
# Fabrication and Assembly Drawings
|
||||||
- file: kibot_out_pdf_fabrication.yaml
|
- file: kibot_out_pdf_fabrication.yaml
|
||||||
definitions:
|
definitions:
|
||||||
@@ -612,46 +317,6 @@ import:
|
|||||||
DIR: @JLCPCB_ASSY_DIR@
|
DIR: @JLCPCB_ASSY_DIR@
|
||||||
EXCLUDE_FILTER: @FILT_LCSC_PARTS@
|
EXCLUDE_FILTER: @FILT_LCSC_PARTS@
|
||||||
|
|
||||||
# Notes and Reports --------------------------------------------------------
|
|
||||||
- file: kibot_out_csv_report.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @CSV_COMP_COUNT_OUPUT@
|
|
||||||
COMMENT: Component report (count) in CSV format
|
|
||||||
DIR: @ASSEMBLY_DIR@
|
|
||||||
OUTPUT_ID: components_count
|
|
||||||
TEMPLATE: total_components
|
|
||||||
|
|
||||||
- file: kibot_out_csv_report.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @CSV_IMPEDANCE_TABLE_OUTPUT@
|
|
||||||
COMMENT: Impedance table in CSV format
|
|
||||||
DIR: @FABRICATION_DIR@
|
|
||||||
OUTPUT_ID: impedance_table
|
|
||||||
TEMPLATE: @NOTES_DIR@/impedance_table.txt
|
|
||||||
|
|
||||||
- file: kibot_out_txt_report.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @TXT_SCH_NOTES_OUTPUT@
|
|
||||||
COMMENT: Schematic notes in TXT format
|
|
||||||
DIR: @SCHEMATIC_DIR@
|
|
||||||
OUTPUT_ID: schematic_notes
|
|
||||||
TEMPLATE: @NOTES_DIR@/schematic_notes.txt
|
|
||||||
|
|
||||||
- file: kibot_out_txt_report.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @TXT_FAB_NOTES_OUTPUT@
|
|
||||||
COMMENT: Fabrication notes in TXT format
|
|
||||||
DIR: @FABRICATION_DIR@
|
|
||||||
OUTPUT_ID: fabrication_notes
|
|
||||||
TEMPLATE: @NOTES_DIR@/fabrication_notes.txt
|
|
||||||
|
|
||||||
- file: kibot_out_txt_report.yaml
|
|
||||||
definitions:
|
|
||||||
NAME: @TXT_ASSY_NOTES_OUTPUT@
|
|
||||||
COMMENT: Assembly notes in TXT format
|
|
||||||
DIR: @ASSEMBLY_DIR@
|
|
||||||
OUTPUT_ID: assembly_notes
|
|
||||||
TEMPLATE: @NOTES_DIR@/assembly_notes.txt
|
|
||||||
|
|
||||||
# Panelization Outputs -----------------------------------------------------
|
# Panelization Outputs -----------------------------------------------------
|
||||||
- file: kibot_out_panelize.yaml
|
- file: kibot_out_panelize.yaml
|
||||||
@@ -661,27 +326,90 @@ import:
|
|||||||
CONFIG: '@PANEL_800_CONFIG@'
|
CONFIG: '@PANEL_800_CONFIG@'
|
||||||
TITLE: '@PANEL_800_TITLE@'
|
TITLE: '@PANEL_800_TITLE@'
|
||||||
|
|
||||||
|
# Output Groups ============================================================
|
||||||
|
|
||||||
|
# Bills of Materials (BOMs) ------------------------------------------------
|
||||||
|
- file: kibot_grp_bom.yaml
|
||||||
|
definitions:
|
||||||
|
DIR: @ASSEMBLY_DIR@
|
||||||
|
|
||||||
|
NAME_CSV_BOM_OUTPUT: @CSV_BOM_OUTPUT@
|
||||||
|
NAME_HTML_BOM_OUTPUT: @HTML_BOM_OUTPUT@
|
||||||
|
NAME_HTML_IBOM_OUTPUT: @HTML_IBOM_OUTPUT@
|
||||||
|
|
||||||
|
IPN_FIELD: @IPN_FIELD@
|
||||||
|
MPN_FIELD: @MPN_FIELD@
|
||||||
|
MAN_FIELD: @MAN_FIELD@
|
||||||
|
|
||||||
|
# Drawing Notes ------------------------------------------------------------
|
||||||
|
- file: kibot_grp_notes.yaml
|
||||||
|
definitions:
|
||||||
|
SCHEMATIC_DIR: @SCHEMATIC_DIR@
|
||||||
|
FABRICATION_DIR: @FABRICATION_DIR@
|
||||||
|
ASSEMBLY_DIR: @ASSEMBLY_DIR@
|
||||||
|
|
||||||
|
NAME_TXT_SCH_NOTES_OUTPUT: @TXT_SCH_NOTES_OUTPUT@
|
||||||
|
NAME_TXT_FAB_NOTES_OUTPUT: @TXT_FAB_NOTES_OUTPUT@
|
||||||
|
NAME_TXT_ASSY_NOTES_OUTPUT: @TXT_ASSY_NOTES_OUTPUT@
|
||||||
|
|
||||||
|
SCHEMATIC_NOTES_TEMPLATE: notes/schematic_notes.txt
|
||||||
|
FABRICATION_NOTES_TEMPLATE: notes/fabrication_notes.txt
|
||||||
|
ASSEMBLY_NOTES_TEMPLATE: notes/assembly_notes.txt
|
||||||
|
|
||||||
|
# Drawing Tables -----------------------------------------------------------
|
||||||
|
- file: kibot_grp_tables.yaml
|
||||||
|
definitions:
|
||||||
|
FABRICATION_DIR: @FABRICATION_DIR@
|
||||||
|
DRILL_TABLE_DIR: @DRILL_TABLE_DIR@
|
||||||
|
ASSEMBLY_DIR: @ASSEMBLY_DIR@
|
||||||
|
TESTPOINTS_DIR: @TESTPOINTS_DIR@
|
||||||
|
|
||||||
|
NAME_CSV_IMPEDANCE_TABLE_OUTPUT: @CSV_IMPEDANCE_TABLE_OUTPUT@
|
||||||
|
NAME_CSV_COMP_COUNT_OUPUT: @CSV_COMP_COUNT_OUPUT@
|
||||||
|
NAME_CSV_DRILL_TABLE_OUTPUT: @CSV_DRILL_TABLE_OUTPUT@
|
||||||
|
NAME_CSV_TP_OUTPUT: @CSV_TP_OUTPUT@
|
||||||
|
NAME_CSV_TP_TOP_OUTPUT: @CSV_TP_TOP_OUTPUT@
|
||||||
|
NAME_CSV_TP_BOTTOM_OUTPUT: @CSV_TP_BOTTOM_OUTPUT@
|
||||||
|
|
||||||
|
IMPEDANCE_TABLE_TEMPLATE: notes/impedance_table.txt
|
||||||
|
DRILL_TABLE_UNIFY_PTH_NPTH: '@GROUP_PTH_NPTH@'
|
||||||
|
DRILL_TABLE_GROUP_ROUND_SLOTS: @GROUP_ROUND_SLOTS@
|
||||||
|
FILT_TP_ONLY: @FILT_TP_ONLY@
|
||||||
|
FILT_TP_TOP_ONLY: @FILT_TP_TOP_ONLY@
|
||||||
|
FILT_TP_BOTTOM_ONLY: @FILT_TP_BOTTOM_ONLY@
|
||||||
|
|
||||||
|
# Renders ------------------------------------------------------------------
|
||||||
|
- file: kibot_grp_renders.yaml
|
||||||
|
definitions:
|
||||||
|
DIR: @RENDER_DIR@
|
||||||
|
|
||||||
|
NAME_PCBDRAW_2D_TOP_PCB_OUTPUT: @PCBDRAW_2D_TOP_PCB_OUTPUT@
|
||||||
|
NAME_PCBDRAW_2D_BOT_PCB_OUTPUT: @PCBDRAW_2D_BOT_PCB_OUTPUT@
|
||||||
|
NAME_BLENDER_3D_TOP_OUTPUT: @BLENDER_3D_TOP_OUTPUT@
|
||||||
|
NAME_BLENDER_3D_BOT_OUTPUT: @BLENDER_3D_BOT_OUTPUT@
|
||||||
|
NAME_BLENDER_3D_ANGLED_TOP_OUTPUT: @BLENDER_3D_ANGLED_TOP_OUTPUT@
|
||||||
|
NAME_BLENDER_3D_ANGLED_BOT_OUTPUT: @BLENDER_3D_ANGLED_BOT_OUTPUT@
|
||||||
|
|
||||||
|
BLENDER_DNF_FILTER: @BLENDER_DNF_FILTER@
|
||||||
|
BLENDER_SAMPLES: @BLENDER_SAMPLES@
|
||||||
|
BLENDER_TOP_ROT_X: @BLENDER_ROT_X@
|
||||||
|
BLENDER_TOP_ROT_Y: @BLENDER_ROT_Y@
|
||||||
|
BLENDER_TOP_ROT_Z: @BLENDER_ROT_Z@
|
||||||
|
BLENDER_BOT_ROT_X: -@BLENDER_ROT_X@
|
||||||
|
BLENDER_BOT_ROT_Y: @BLENDER_ROT_Y@
|
||||||
|
BLENDER_BOT_ROT_Z: @BLENDER_ROT_Z@
|
||||||
|
BLENDER_RESOLUTION_X: @BLENDER_RESOLUTION_X@
|
||||||
|
BLENDER_RESOLUTION_Y: @BLENDER_RESOLUTION_Y@
|
||||||
|
BLENDER_TEXTURE_DPI: @BLENDER_TEXTURE_DPI@
|
||||||
|
BLENDER_DIFFUSE_HEIGHT: @BLENDER_DIFFUSE_HEIGHT@
|
||||||
|
BLENDER_DIFFUSE_RADIUS: @BLENDER_DIFFUSE_RADIUS@
|
||||||
|
|
||||||
# ============================================================================
|
# ============================================================================
|
||||||
# Definitions
|
# Definitions
|
||||||
|
|
||||||
...
|
...
|
||||||
definitions:
|
definitions:
|
||||||
|
|
||||||
# Project Metadata =========================================================
|
|
||||||
PROJECT_CODE: P99
|
|
||||||
ASSEMBLY_NUMBER: A99-9000
|
|
||||||
ASSEMBLY_NAME: Assembly Name
|
|
||||||
GIT_URL: /jkrauss/Test_4
|
|
||||||
|
|
||||||
COMPANY: Asymworks, LLC
|
|
||||||
DESIGNER: JPK
|
|
||||||
|
|
||||||
DWG_NUMBER_SCH: S99-9000
|
|
||||||
DWG_TITLE_SCH: Schematic, Assembly Name
|
|
||||||
DWG_NUMBER_PCB: P99-9000
|
|
||||||
DWG_TITLE_PCB: PCB, Assembly Name
|
|
||||||
DWG_TITLE_ASSY: PCB Assembly, Assembly Name
|
|
||||||
|
|
||||||
# Panel Configurations -----------------------------------------------------
|
# Panel Configurations -----------------------------------------------------
|
||||||
PANEL_800_OUTPUT: panel_801
|
PANEL_800_OUTPUT: panel_801
|
||||||
PANEL_800_CONFIG: '@PANELS_DIR@/panel-800.json'
|
PANEL_800_CONFIG: '@PANELS_DIR@/panel-800.json'
|
||||||
@@ -701,7 +429,7 @@ definitions:
|
|||||||
# Drill Table and Drill Map Parameters =====================================
|
# Drill Table and Drill Map Parameters =====================================
|
||||||
|
|
||||||
GROUP_ROUND_SLOTS: true # whether or not to group round holes and slots
|
GROUP_ROUND_SLOTS: true # whether or not to group round holes and slots
|
||||||
GROUP_PTH_NPTH: 'no' # for drill tables (CSV, PCB Print)
|
GROUP_PTH_NPTH: 'yes' # for drill tables (CSV, PCB Print)
|
||||||
GROUP_PTH_NPTH_DRL: false # for .drl files
|
GROUP_PTH_NPTH_DRL: false # for .drl files
|
||||||
|
|
||||||
# Gerber Parameters ========================================================
|
# Gerber Parameters ========================================================
|
||||||
@@ -726,13 +454,7 @@ definitions:
|
|||||||
|
|
||||||
# 3D Render parameters =====================================================
|
# 3D Render parameters =====================================================
|
||||||
|
|
||||||
RENDER_DNF_FILTER: _kibom_dnf_Config
|
BLENDER_DNF_FILTER: _kibom_dnf_Config
|
||||||
|
|
||||||
3D_VIEWER_ROT_X: 2
|
|
||||||
3D_VIEWER_ROT_Y: -1
|
|
||||||
3D_VIEWER_ROT_Z: 1
|
|
||||||
3D_VIEWER_ZOOM: -1
|
|
||||||
KEY_COLOR: '#FF00FF' # Background color to remove. Use a color different from your PCB
|
|
||||||
|
|
||||||
BLENDER_SAMPLES: 20 # Overridden to 2 samples for WORKING state by CI Script
|
BLENDER_SAMPLES: 20 # Overridden to 2 samples for WORKING state by CI Script
|
||||||
BLENDER_ROT_X: 30
|
BLENDER_ROT_X: 30
|
||||||
@@ -758,7 +480,7 @@ definitions:
|
|||||||
ASSEMBLY_DIR: '@MANUFACTURING_DIR@/assembly'
|
ASSEMBLY_DIR: '@MANUFACTURING_DIR@/assembly'
|
||||||
FABRICATION_DIR: '@MANUFACTURING_DIR@/fab'
|
FABRICATION_DIR: '@MANUFACTURING_DIR@/fab'
|
||||||
GERBERS_DIR: '@FABRICATION_DIR@/gerbers'
|
GERBERS_DIR: '@FABRICATION_DIR@/gerbers'
|
||||||
FAB_DRILL_TABLES_DIR: '@FABRICATION_DIR@/drill-tables'
|
DRILL_TABLE_DIR: '@FABRICATION_DIR@/drill-tables'
|
||||||
TESTING_DIR: test
|
TESTING_DIR: test
|
||||||
TESTPOINTS_DIR: '@TESTING_DIR@/testpoints'
|
TESTPOINTS_DIR: '@TESTING_DIR@/testpoints'
|
||||||
RESOURCES_DIR: kibot
|
RESOURCES_DIR: kibot
|
||||||
@@ -829,15 +551,10 @@ definitions:
|
|||||||
PCBDRAW_2D_TOP_PCB_OUTPUT: pcbdraw_top
|
PCBDRAW_2D_TOP_PCB_OUTPUT: pcbdraw_top
|
||||||
PCBDRAW_2D_BOT_PCB_OUTPUT: pcbdraw_bottom
|
PCBDRAW_2D_BOT_PCB_OUTPUT: pcbdraw_bottom
|
||||||
|
|
||||||
PNG_3D_VIEWER_TOP: png_3d_viewer_top
|
BLENDER_3D_TOP_OUTPUT: blender_3d_top
|
||||||
PNG_3D_VIEWER_BOT: png_3d_viewer_bottom
|
BLENDER_3D_BOT_OUTPUT: blender_3d_bottom
|
||||||
PNG_3D_VIEWER_ANGLED_TOP: png_3d_viewer_angled_top
|
BLENDER_3D_ANGLED_TOP_OUTPUT: blender_3d_angled_top
|
||||||
PNG_3D_VIEWER_ANGLED_BOT: png_3d_viewer_angled_bottom
|
BLENDER_3D_ANGLED_BOT_OUTPUT: blender_3d_angled_bottom
|
||||||
|
|
||||||
BLENDER_3D_TOP: blender_3d_top
|
|
||||||
BLENDER_3D_BOT: blender_3d_bottom
|
|
||||||
BLENDER_3D_ANGLED_TOP: blender_3d_angled_top
|
|
||||||
BLENDER_3D_ANGLED_BOT: blender_3d_angled_bottom
|
|
||||||
|
|
||||||
TXT_SCH_NOTES_OUTPUT: txt_schematic_notes
|
TXT_SCH_NOTES_OUTPUT: txt_schematic_notes
|
||||||
TXT_FAB_NOTES_OUTPUT: txt_fabrication_notes
|
TXT_FAB_NOTES_OUTPUT: txt_fabrication_notes
|
||||||
|
|||||||
@@ -1,48 +0,0 @@
|
|||||||
# KiBot output for generating Bill of Materials in CSV format
|
|
||||||
# https://kibot.readthedocs.io/en/latest/configuration/outputs/bom.html
|
|
||||||
|
|
||||||
kibot:
|
|
||||||
version: 1
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
- name: @NAME@
|
|
||||||
comment: '@COMMENT@'
|
|
||||||
type: bom
|
|
||||||
category: '@DIR@'
|
|
||||||
dir: '@DIR@'
|
|
||||||
options:
|
|
||||||
format: CSV
|
|
||||||
csv:
|
|
||||||
hide_pcb_info: true
|
|
||||||
hide_stats_info: true
|
|
||||||
|
|
||||||
group_fields: ['@MPN_FIELD@', '@IPN_FIELD@', 'Value']
|
|
||||||
|
|
||||||
columns:
|
|
||||||
- "Row"
|
|
||||||
- "Quantity Per PCB"
|
|
||||||
- "References"
|
|
||||||
- "Value"
|
|
||||||
- "Datasheet"
|
|
||||||
- "Footprint"
|
|
||||||
- "Description"
|
|
||||||
- "@IPN_FIELD@"
|
|
||||||
- "@MAN_FIELD@"
|
|
||||||
- "@MPN_FIELD@"
|
|
||||||
- "LCSC"
|
|
||||||
# - "arrow#"
|
|
||||||
# - "digikey#"
|
|
||||||
# - "farnell#"
|
|
||||||
# - "mouser#"
|
|
||||||
# - "newark#"
|
|
||||||
# - "rs#"
|
|
||||||
# - "tme#"
|
|
||||||
|
|
||||||
...
|
|
||||||
definitions:
|
|
||||||
NAME: csv_bom
|
|
||||||
COMMENT: Bill of Materials in CSV format
|
|
||||||
DIR: mfg/assembly
|
|
||||||
IPN_FIELD: 'Asymworks IPN'
|
|
||||||
MPN_FIELD: 'Manufacturer PN'
|
|
||||||
MAN_FIELD: 'Manufacturer'
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
# KiBot output for generating Drill Tables
|
|
||||||
# https://kibot.readthedocs.io/en/latest/configuration/outputs/excellon.html
|
|
||||||
|
|
||||||
kibot:
|
|
||||||
version: 1
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
- name: @NAME@
|
|
||||||
comment: '@COMMENT@'
|
|
||||||
type: excellon
|
|
||||||
category: '@DIR@'
|
|
||||||
dir: '@DIR@'
|
|
||||||
options:
|
|
||||||
generate_drill_files: false
|
|
||||||
table:
|
|
||||||
unify_pth_and_npth: '@PTH_NPTH@'
|
|
||||||
group_slots_and_round_holes: @GROUP_ROUND_SLOTS@
|
|
||||||
|
|
||||||
...
|
|
||||||
definitions:
|
|
||||||
NAME: csv_drill_table
|
|
||||||
COMMENT: Drill Table in CSV format
|
|
||||||
DIR: mfg/fab/tables
|
|
||||||
PTH_NPTH: 'yes'
|
|
||||||
GROUP_ROUND_SLOTS: true
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
# KiBot output for generating Interactive HTML BoM
|
|
||||||
# https://kibot.readthedocs.io/en/latest/configuration/outputs/ibom.html
|
|
||||||
|
|
||||||
kibot:
|
|
||||||
version: 1
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
- name: @NAME@
|
|
||||||
comment: '@COMMENT@'
|
|
||||||
type: bom
|
|
||||||
category: '@DIR@'
|
|
||||||
dir: '@DIR@'
|
|
||||||
options:
|
|
||||||
format: HTML
|
|
||||||
html:
|
|
||||||
title: 'Bill of Materials'
|
|
||||||
datasheet_as_link: "Datasheet"
|
|
||||||
lcsc_link: true
|
|
||||||
logo: false
|
|
||||||
style: modern-blue
|
|
||||||
|
|
||||||
group_fields: ['@MPN_FIELD@', 'Value']
|
|
||||||
|
|
||||||
columns:
|
|
||||||
- "Row"
|
|
||||||
- "Quantity Per PCB"
|
|
||||||
- "References"
|
|
||||||
- "Value"
|
|
||||||
- "Datasheet"
|
|
||||||
- "Footprint"
|
|
||||||
- "Description"
|
|
||||||
- "@IPN_FIELD@"
|
|
||||||
- "@MAN_FIELD@"
|
|
||||||
- "@MPN_FIELD@"
|
|
||||||
- "LCSC"
|
|
||||||
# - "arrow#"
|
|
||||||
# - "digikey#"
|
|
||||||
# - "farnell#"
|
|
||||||
# - "mouser#"
|
|
||||||
# - "newark#"
|
|
||||||
# - "rs#"
|
|
||||||
# - "tme#"
|
|
||||||
|
|
||||||
...
|
|
||||||
definitions:
|
|
||||||
NAME: html_bom
|
|
||||||
COMMENT: BOM in HTML format
|
|
||||||
DIR: mfg/assembly
|
|
||||||
IPN_FIELD: 'Asymworks IPN'
|
|
||||||
MPN_FIELD: 'Manufacturer PN'
|
|
||||||
MAN_FIELD: 'Manufacturer'
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
# KiBot output for generating Interactive HTML BoM
|
|
||||||
# https://kibot.readthedocs.io/en/latest/configuration/outputs/ibom.html
|
|
||||||
|
|
||||||
# This output is currently somewhat buggy, and fails at odd times complaining
|
|
||||||
# about missing embedded Schematic WKS frame files.
|
|
||||||
|
|
||||||
kibot:
|
|
||||||
version: 1
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
- name: @NAME@
|
|
||||||
comment: '@COMMENT@'
|
|
||||||
type: ibom
|
|
||||||
dir: '@DIR@'
|
|
||||||
category: '@DIR@'
|
|
||||||
options:
|
|
||||||
# extra_data_file: '%F.net'
|
|
||||||
dark_mode: true
|
|
||||||
show_fields: 'Value,Footprint,@IPN_FIELD@,@MPN_FIELD@'
|
|
||||||
group_fields: 'Value,@IPN_FIELD@'
|
|
||||||
show_fabrication: true
|
|
||||||
highlight_pin1: "selected"
|
|
||||||
exclude_filter: '@EXCLUDE_FILTER@'
|
|
||||||
hide_excluded: true
|
|
||||||
forced_name: '@TITLE@'
|
|
||||||
mark_when_checked: 'Placed'
|
|
||||||
|
|
||||||
...
|
|
||||||
definitions:
|
|
||||||
NAME: html_bom_interactive
|
|
||||||
COMMENT: Interactive BOM in HTML format
|
|
||||||
DIR: mfg/assembly
|
|
||||||
EXCLUDE_FILTER: exclude_testpoints
|
|
||||||
TITLE: ""
|
|
||||||
IPN_FIELD: 'Asymworks IPN'
|
|
||||||
MPN_FIELD: 'Manufacturer PN'
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# KiBot output for generating netlist in KiCad format
|
|
||||||
# https://kibot.readthedocs.io/en/latest/configuration/outputs/netlist.html
|
|
||||||
|
|
||||||
kibot:
|
|
||||||
version: 1
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
- name: @NAME@
|
|
||||||
comment: '@COMMENT@'
|
|
||||||
type: netlist
|
|
||||||
options:
|
|
||||||
format: '@FORMAT@'
|
|
||||||
|
|
||||||
...
|
|
||||||
definitions:
|
|
||||||
NAME: netlist
|
|
||||||
FORMAT: classic
|
|
||||||
COMMENT: Schematic netlist in KiCad format
|
|
||||||
@@ -1,43 +0,0 @@
|
|||||||
# KiBot output for 3D Viewer renders in PNG format
|
|
||||||
# https://kibot.readthedocs.io/en/latest/configuration/outputs/render_3d.html
|
|
||||||
|
|
||||||
kibot:
|
|
||||||
version: 1
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
- name: @NAME@
|
|
||||||
comment: '@COMMENT@'
|
|
||||||
type: render_3d
|
|
||||||
category: '@DIR@'
|
|
||||||
dir: '@DIR@'
|
|
||||||
options:
|
|
||||||
output: '%f-@SUFFIX@%I%v.%x'
|
|
||||||
auto_crop: true
|
|
||||||
enable_crop_workaround: true
|
|
||||||
rotate_x: @ROTATE_X@
|
|
||||||
rotate_y: @ROTATE_Y@
|
|
||||||
rotate_z: @ROTATE_Z@
|
|
||||||
zoom: @ZOOM@
|
|
||||||
height: @HEIGHT@
|
|
||||||
width: @WIDTH@
|
|
||||||
view: '@VIEW@'
|
|
||||||
force_stackup_colors: true
|
|
||||||
orthographic: true
|
|
||||||
transparent_background: true
|
|
||||||
transparent_background_color: '@KEY_COLOR@'
|
|
||||||
transparent_background_fuzz: 40
|
|
||||||
|
|
||||||
...
|
|
||||||
definitions:
|
|
||||||
NAME: png_3d_viewer
|
|
||||||
COMMENT: 3D viewer PCB render in PNG format
|
|
||||||
DIR: renders
|
|
||||||
SUFFIX: ""
|
|
||||||
VIEW: top
|
|
||||||
ROTATE_X: 0
|
|
||||||
ROTATE_Y: 0
|
|
||||||
ROTATE_Z: 0
|
|
||||||
ZOOM: 0
|
|
||||||
HEIGHT: 2000
|
|
||||||
WIDTH: 2000
|
|
||||||
KEY_COLOR: '#FF00FF'
|
|
||||||
@@ -22,45 +22,21 @@ preflight:
|
|||||||
- variable: 'GIT_HASH'
|
- variable: 'GIT_HASH'
|
||||||
command: 'git log -1 --format="%h"'
|
command: 'git log -1 --format="%h"'
|
||||||
- variable: 'GIT_URL'
|
- variable: 'GIT_URL'
|
||||||
text: '@GIT_URL@'
|
command: 'git remote get-url origin | sed -e s"/\\.git$//g"'
|
||||||
|
|
||||||
# Metadata
|
# Metadata
|
||||||
- variable: 'PROJECT_CODE'
|
|
||||||
text: '@PROJECT_CODE@'
|
|
||||||
- variable: 'ASSEMBLY_NUMBER'
|
|
||||||
text: '@ASSEMBLY_NUMBER@'
|
|
||||||
- variable: 'ASSEMBLY_NAME'
|
|
||||||
text: '@ASSEMBLY_NAME@'
|
|
||||||
- variable: 'ASSEMBLY_SCALE'
|
|
||||||
text: '@ASSEMBLY_SCALING@'
|
|
||||||
- variable: 'DWG_NUMBER_PCB'
|
|
||||||
text: '@DWG_NUMBER_PCB@'
|
|
||||||
- variable: 'DWG_NUMBER_SCH'
|
|
||||||
text: '@DWG_NUMBER_SCH@'
|
|
||||||
- variable: 'DWG_TITLE_PCB'
|
|
||||||
text: '@DWG_TITLE_PCB@'
|
|
||||||
- variable: 'DWG_TITLE_SCH'
|
|
||||||
text: '@DWG_TITLE_SCH@'
|
|
||||||
- variable: 'DWG_TITLE_ASSY'
|
|
||||||
text: '@DWG_TITLE_ASSY@'
|
|
||||||
- variable: 'COMPANY'
|
|
||||||
text: '@COMPANY@'
|
|
||||||
- variable: 'DESIGNER'
|
|
||||||
text: '@DESIGNER@'
|
|
||||||
- variable: 'VARIANT'
|
- variable: 'VARIANT'
|
||||||
text: '%V'
|
text: '%V'
|
||||||
|
|
||||||
# Schematic notes
|
# Notes
|
||||||
- variable: 'SCHEMATIC_NOTES'
|
- variable: 'SCHEMATIC_NOTES'
|
||||||
expand_in_command: true
|
expand_in_command: true
|
||||||
command: '[ -f "@SCHEMATIC_DIR@/%f-schematic_notes%v.txt" ] && cat "@SCHEMATIC_DIR@/%f-schematic_notes%v.txt" || echo ""'
|
command: '[ -f "@SCHEMATIC_DIR@/%f-schematic_notes%v.txt" ] && cat "@SCHEMATIC_DIR@/%f-schematic_notes%v.txt" || echo ""'
|
||||||
|
|
||||||
# Fabrication notes
|
|
||||||
- variable: 'FABRICATION_NOTES'
|
- variable: 'FABRICATION_NOTES'
|
||||||
expand_in_command: true
|
expand_in_command: true
|
||||||
command: '[ -f "@FABRICATION_DIR@/%f-fabrication_notes%v.txt" ] && cat "@FABRICATION_DIR@/%f-fabrication_notes%v.txt" || echo ""'
|
command: '[ -f "@FABRICATION_DIR@/%f-fabrication_notes%v.txt" ] && cat "@FABRICATION_DIR@/%f-fabrication_notes%v.txt" || echo ""'
|
||||||
|
|
||||||
# Assembly notes
|
|
||||||
- variable: 'ASSEMBLY_NOTES'
|
- variable: 'ASSEMBLY_NOTES'
|
||||||
expand_in_command: true
|
expand_in_command: true
|
||||||
command: '[ -f "@ASSEMBLY_DIR@/%f-assembly_notes%v.txt" ] && cat "@ASSEMBLY_DIR@/%f-assembly_notes%v.txt" || echo ""'
|
command: '[ -f "@ASSEMBLY_DIR@/%f-assembly_notes%v.txt" ] && cat "@ASSEMBLY_DIR@/%f-assembly_notes%v.txt" || echo ""'
|
||||||
@@ -109,24 +85,13 @@ preflight:
|
|||||||
|
|
||||||
...
|
...
|
||||||
definitions:
|
definitions:
|
||||||
PROJECT_CODE: ''
|
|
||||||
ASSEMBLY_NUMBER: ''
|
|
||||||
ASSEMBLY_NAME: ''
|
|
||||||
ASSEMBLY_SCALING: ''
|
|
||||||
DWG_NUMBER_SCH: ''
|
|
||||||
DWG_TITLE_SCH: ''
|
|
||||||
DWG_NUMBER_PCB: ''
|
|
||||||
DWG_TITLE_PCB: ''
|
|
||||||
DWG_TITLE_ASSY: ''
|
|
||||||
COMPANY: ''
|
|
||||||
DESIGNER: ''
|
|
||||||
REVISION: ''
|
REVISION: ''
|
||||||
RELEASE_STATE: ''
|
RELEASE_STATE: ''
|
||||||
RELEASE_DATE: ''
|
RELEASE_DATE: ''
|
||||||
GIT_URL: ''
|
|
||||||
|
|
||||||
SHEET_NAME_VAR: SHEET_NAME_
|
SHEET_NAME_VAR: SHEET_NAME_
|
||||||
SCRIPTS_DIR: kibot/scripts
|
SCRIPTS_DIR: kibot/scripts
|
||||||
FABRICATION_DIR: mfg/fab
|
FABRICATION_DIR: mfg/fab
|
||||||
ASSEMBLY_DIR: mfg/assembly
|
ASSEMBLY_DIR: mfg/assembly
|
||||||
GET_SHEET_CMD: python3 @SCRIPTS_DIR@/get_sheet_title.py -f "${KIBOT_SCH_NAME%.kicad_sch}.xml" --dots-number 38 -p
|
GET_SHEET_CMD: python3 @SCRIPTS_DIR@/get_sheet_title.py -f "${KIBOT_SCH_NAME%.kicad_sch}.xml" --dots-number 38 -p
|
||||||
|
GET_GITURL_CMD: git remote get-url origin | sed -e s'/\.git$//g'
|
||||||
11
mfg/assembly/A98-1001-assembly_notes.txt
Normal file
11
mfg/assembly/A98-1001-assembly_notes.txt
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
ASSEMBLY NOTES (UNLESS OTHERWISE SPECIFIED)
|
||||||
|
|
||||||
|
1) DO NOT POPULATE COMPONENTS ARE MARKED WITH A RED CROSS
|
||||||
|
|
||||||
|
2) DO NOT POPULATE COMPONENTS ARE NOT PRESENT IN THE BOM
|
||||||
|
|
||||||
|
3) IF CONFLICTING INFORMATION IS FOUND BETWEEN THE ASSEMBLY
|
||||||
|
FILE AND BOM, BOM SHOULD BE USED AS THE MAIN SOURCE.
|
||||||
|
|
||||||
|
4) DOT IDENTIFIES PIN #1 LOCATION AND DEVICE ORIENTATION
|
||||||
|
WHEN VIEWED FROM THE TOP.
|
||||||
1
mfg/assembly/A98-1001-bom.csv
Normal file
1
mfg/assembly/A98-1001-bom.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Row,Quantity Per PCB,References,Value,Datasheet,Footprint,Description,Asymworks IPN,Manufacturer PN,Manufacturer PN,LCSC
|
||||||
|
242
mfg/assembly/A98-1001-bom.html
Normal file
242
mfg/assembly/A98-1001-bom.html
Normal file
@@ -0,0 +1,242 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Bill of Materials</title>
|
||||||
|
<style>
|
||||||
|
.cell-title { vertical-align: bottom; }
|
||||||
|
.cell-info { vertical-align: top; padding: 1em;}
|
||||||
|
.cell-extra-info { vertical-align: top; padding: 1em;}
|
||||||
|
.cell-stats { vertical-align: top; padding: 1em;}
|
||||||
|
.title { font-size:2.5em; font-weight: bold; }
|
||||||
|
.subtitle { font-size:1.5em; font-weight: bold; }
|
||||||
|
.h2 { font-size:1.5em; font-weight: bold; }
|
||||||
|
.td-empty0 { text-align: center; background-color: #F57676;}
|
||||||
|
.td-gen0 { text-align: center; background-color: #DCF5E4;}
|
||||||
|
.td-kicad0 { text-align: center; background-color: #F5DCA9;}
|
||||||
|
.td-user0 { text-align: center; background-color: #DCEFF5;}
|
||||||
|
.td-empty1 { text-align: center; background-color: #FF8080;}
|
||||||
|
.td-gen1 { text-align: center; background-color: #E6FFEE;}
|
||||||
|
.td-kicad1 { text-align: center; background-color: #FFE6B3;}
|
||||||
|
.td-user1 { text-align: center; background-color: #E6F9FF;}
|
||||||
|
.td-nocolor { text-align: center; }
|
||||||
|
.color-ref { margin: 25px 0; }
|
||||||
|
.color-ref th { text-align: left }
|
||||||
|
.color-ref td { padding: 5px 20px; }
|
||||||
|
.head-table { margin-bottom: 2em; }
|
||||||
|
.centered-checkmark { font-size: 30vw; text-align: center; color: green; }
|
||||||
|
.tg-sort-header::-moz-selection{background:0 0}
|
||||||
|
.tg-sort-header::selection{background:0 0}.tg-sort-header{cursor:pointer}
|
||||||
|
.tg-sort-header:after{content:'';float:right;border-width:0 5px 5px;border-style:solid;
|
||||||
|
border-color:#ffffff transparent;visibility:hidden;opacity:.6}
|
||||||
|
.tg-sort-header:hover:after{visibility:visible}
|
||||||
|
.tg-sort-asc:after,.tg-sort-asc:hover:after,.tg-sort-desc:after{visibility:visible;opacity:1}
|
||||||
|
.tg-sort-desc:after{border-bottom:none;border-width:5px 5px 0}
|
||||||
|
|
||||||
|
.content-table {
|
||||||
|
border-collapse:
|
||||||
|
collapse;
|
||||||
|
margin-top: 5px;
|
||||||
|
margin-bottom: 4em;
|
||||||
|
font-size: 0.9em;
|
||||||
|
font-family: sans-serif;
|
||||||
|
min-width: 400px;
|
||||||
|
border-radius: 5px 5px 0 0;
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.content-table thead tr { background-color: #0e4e8e; color: #ffffff; text-align: left; }
|
||||||
|
.content-table th, .content-table td { padding: 12px 15px; }
|
||||||
|
.content-table tbody tr { border-bottom: 1px solid #dddddd; }
|
||||||
|
.content-table tbody tr:nth-of-type(even) { background-color: #f3f3f3; }
|
||||||
|
.content-table tbody tr:last-of-type { border-bottom: 2px solid #0e4e8e; }
|
||||||
|
.content-table * tr:hover > td { background-color: @bgl@ !important }
|
||||||
|
|
||||||
|
.content-table {
|
||||||
|
border-collapse:
|
||||||
|
collapse;
|
||||||
|
margin-top: 5px;
|
||||||
|
margin-bottom: 4em;
|
||||||
|
font-size: 0.9em;
|
||||||
|
font-family: sans-serif;
|
||||||
|
min-width: 400px;
|
||||||
|
border-radius: 5px 5px 0 0;
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.content-table thead tr { background-color: @bg@; color: #ffffff; text-align: left; }
|
||||||
|
.content-table th, .content-table td { padding: 12px 15px; }
|
||||||
|
.content-table tbody tr { border-bottom: 1px solid #dddddd; }
|
||||||
|
.content-table tbody tr:nth-of-type(even) { background-color: #f3f3f3; }
|
||||||
|
.content-table tbody tr:last-of-type { border-bottom: 2px solid @bg@; }
|
||||||
|
.content-table * tr:hover > td { background-color: #3e7ebe !important }
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<table class="head-table">
|
||||||
|
<tr>
|
||||||
|
<td rowspan="2">
|
||||||
|
</td>
|
||||||
|
<td colspan="2" class="cell-title">
|
||||||
|
<div class="title">Bill of Materials</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cell-info">
|
||||||
|
<b>Schematic</b>: A98-1001<br>
|
||||||
|
<b>Variant</b>: default<br>
|
||||||
|
<b>Revision</b>: NO_TAG+ (Unreleased)<br>
|
||||||
|
<b>Date</b>: 2026-03-11_01-52-46<br>
|
||||||
|
<b>KiCad Version</b>: 9.0.7+1<br>
|
||||||
|
</td>
|
||||||
|
<td class="cell-stats">
|
||||||
|
<b>Component Groups</b>: 0<br>
|
||||||
|
<b>Component Count</b>: 0 (per PCB)<br>
|
||||||
|
|
||||||
|
<b>Fitted Components</b>: 0 (per PCB)<br>
|
||||||
|
<b>Number of PCBs</b>: 1<br>
|
||||||
|
<b>Total Components</b>: 0 (for 1 PCBs)<br>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<h2>Component Groups</h2>
|
||||||
|
<table class="content-table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="th-gen">Row</th>
|
||||||
|
<th class="th-gen">Quantity Per PCB</th>
|
||||||
|
<th class="th-kicad">References</th>
|
||||||
|
<th class="th-kicad">Value</th>
|
||||||
|
<th class="th-kicad">Datasheet</th>
|
||||||
|
<th class="th-kicad">Footprint</th>
|
||||||
|
<th class="th-user">Description</th>
|
||||||
|
<th class="th-user">Asymworks IPN</th>
|
||||||
|
<th class="th-user">Manufacturer PN</th>
|
||||||
|
<th class="th-user">Manufacturer PN</th>
|
||||||
|
<th class="th-user">LCSC</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<table class="color-ref">
|
||||||
|
<tr><th>Color reference for columns:</th></tr>
|
||||||
|
<tr><td class="td-kicad0">KiCad Fields (default)</td></tr>
|
||||||
|
<tr><td class="td-gen0">Generated Fields</td></tr>
|
||||||
|
<tr><td class="td-user0">User Fields</td></tr>
|
||||||
|
<tr><td class="td-empty0">Empty Fields</td></tr>
|
||||||
|
</table>
|
||||||
|
<script charset="utf-8">
|
||||||
|
var TGSort = window.TGSort || function(n) {
|
||||||
|
"use strict";
|
||||||
|
function r(n) { return n ? n.length : 0 }
|
||||||
|
function t(n, t, e, o = 0) { for (e = r(n); o < e; ++o) t(n[o], o) }
|
||||||
|
function e(n) { return n.split("").reverse().join("") }
|
||||||
|
function o(n) {
|
||||||
|
var e = n[0];
|
||||||
|
return t(n, function(n) {
|
||||||
|
for (; !n.startsWith(e);) e = e.substring(0, r(e) - 1)
|
||||||
|
}), r(e)
|
||||||
|
}
|
||||||
|
function u(n, r, e = []) {
|
||||||
|
return t(n, function(n) {
|
||||||
|
r(n) && e.push(n)
|
||||||
|
}), e
|
||||||
|
}
|
||||||
|
var a = parseFloat;
|
||||||
|
function i(n, r) {
|
||||||
|
return function(t) {
|
||||||
|
var e = "";
|
||||||
|
return t.replace(n, function(n, t, o) {
|
||||||
|
return e = t.replace(r, "") + "." + (o || "").substring(1)
|
||||||
|
}), a(e)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var s = i(/^(?:\s*)([+-]?(?:\d+)(?:,\d{3})*)(\.\d*)?$/g, /,/g),
|
||||||
|
c = i(/^(?:\s*)([+-]?(?:\d+)(?:\.\d{3})*)(,\d*)?$/g, /\./g);
|
||||||
|
function f(n) {
|
||||||
|
var t = a(n);
|
||||||
|
return !isNaN(t) && r("" + t) + 1 >= r(n) ? t : NaN
|
||||||
|
}
|
||||||
|
function d(n) {
|
||||||
|
var e = [],
|
||||||
|
o = n;
|
||||||
|
return t([f, s, c], function(u) {
|
||||||
|
var a = [],
|
||||||
|
i = [];
|
||||||
|
t(n, function(n, r) {
|
||||||
|
r = u(n), a.push(r), r || i.push(n)
|
||||||
|
}), r(i) < r(o) && (o = i, e = a)
|
||||||
|
}), r(u(o, function(n) {
|
||||||
|
return n == o[0]
|
||||||
|
})) == r(o) ? e : []
|
||||||
|
}
|
||||||
|
function v(n) {
|
||||||
|
if ("TABLE" == n.nodeName) {
|
||||||
|
for (var a = function(r) {
|
||||||
|
var e, o, u = [],
|
||||||
|
a = [];
|
||||||
|
return function n(r, e) {
|
||||||
|
e(r), t(r.childNodes, function(r) {
|
||||||
|
n(r, e)
|
||||||
|
})
|
||||||
|
}(n, function(n) {
|
||||||
|
"TR" == (o = n.nodeName) ? (e = [], u.push(e), a.push(n)) : "TD" != o && "TH" != o || e.push(n)
|
||||||
|
}), [u, a]
|
||||||
|
}(), i = a[0], s = a[1], c = r(i), f = c > 1 && r(i[0]) < r(i[1]) ? 1 : 0, v = f + 1, p = i[f], h = r(p), l = [], g = [], N = [], m = v; m < c; ++m) {
|
||||||
|
for (var T = 0; T < h; ++T) {
|
||||||
|
r(g) < h && g.push([]);
|
||||||
|
var C = i[m][T],
|
||||||
|
L = C.textContent || C.innerText || "";
|
||||||
|
g[T].push(L.trim())
|
||||||
|
}
|
||||||
|
N.push(m - v)
|
||||||
|
}
|
||||||
|
t(p, function(n, t) {
|
||||||
|
l[t] = 0;
|
||||||
|
var a = n.classList;
|
||||||
|
a.add("tg-sort-header"), n.addEventListener("click", function() {
|
||||||
|
var n = l[t];
|
||||||
|
! function() {
|
||||||
|
for (var n = 0; n < h; ++n) {
|
||||||
|
var r = p[n].classList;
|
||||||
|
r.remove("tg-sort-asc"), r.remove("tg-sort-desc"), l[n] = 0
|
||||||
|
}
|
||||||
|
}(), (n = 1 == n ? -1 : +!n) && a.add(n > 0 ? "tg-sort-asc" : "tg-sort-desc"), l[t] = n;
|
||||||
|
var i, f = g[t],
|
||||||
|
m = function(r, t) {
|
||||||
|
return n * f[r].localeCompare(f[t]) || n * (r - t)
|
||||||
|
},
|
||||||
|
T = function(n) {
|
||||||
|
var t = d(n);
|
||||||
|
if (!r(t)) {
|
||||||
|
var u = o(n),
|
||||||
|
a = o(n.map(e));
|
||||||
|
t = d(n.map(function(n) {
|
||||||
|
return n.substring(u, r(n) - a)
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
return t
|
||||||
|
}(f);
|
||||||
|
(r(T) || r(T = r(u(i = f.map(Date.parse), isNaN)) ? [] : i)) && (m = function(r, t) {
|
||||||
|
var e = T[r],
|
||||||
|
o = T[t],
|
||||||
|
u = isNaN(e),
|
||||||
|
a = isNaN(o);
|
||||||
|
return u && a ? 0 : u ? -n : a ? n : e > o ? n : e < o ? -n : n * (r - t)
|
||||||
|
});
|
||||||
|
var C, L = N.slice();
|
||||||
|
L.sort(m);
|
||||||
|
for (var E = v; E < c; ++E)(C = s[E].parentNode).removeChild(s[E]);
|
||||||
|
for (E = v; E < c; ++E) C.appendChild(s[v + L[E - v]])
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
n.addEventListener("DOMContentLoaded", function() {
|
||||||
|
for (var t = n.getElementsByClassName("content-table"), e = 0; e < r(t); ++e) try {
|
||||||
|
v(t[e])
|
||||||
|
} catch (n) {}
|
||||||
|
})
|
||||||
|
}(document)
|
||||||
|
</script>
|
||||||
|
</body></html>
|
||||||
4
mfg/assembly/A98-1001-components_count.csv
Normal file
4
mfg/assembly/A98-1001-components_count.csv
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
Type,Front Side,Back Side,Total
|
||||||
|
THT,0,0,0
|
||||||
|
SMD,0,0,0
|
||||||
|
Total,0,0,0
|
||||||
|
11
mfg/assembly/Asymworks_Template-assembly_notes.txt
Normal file
11
mfg/assembly/Asymworks_Template-assembly_notes.txt
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
ASSEMBLY NOTES (UNLESS OTHERWISE SPECIFIED)
|
||||||
|
|
||||||
|
1) DO NOT POPULATE COMPONENTS ARE MARKED WITH A RED CROSS
|
||||||
|
|
||||||
|
2) DO NOT POPULATE COMPONENTS ARE NOT PRESENT IN THE BOM
|
||||||
|
|
||||||
|
3) IF CONFLICTING INFORMATION IS FOUND BETWEEN THE ASSEMBLY
|
||||||
|
FILE AND BOM, BOM SHOULD BE USED AS THE MAIN SOURCE.
|
||||||
|
|
||||||
|
4) DOT IDENTIFIES PIN #1 LOCATION AND DEVICE ORIENTATION
|
||||||
|
WHEN VIEWED FROM THE TOP.
|
||||||
1
mfg/assembly/Asymworks_Template-bom.csv
Normal file
1
mfg/assembly/Asymworks_Template-bom.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Row,Quantity Per PCB,References,Value,Datasheet,Footprint,Description,Asymworks IPN,Manufacturer,Manufacturer PN,LCSC
|
||||||
|
242
mfg/assembly/Asymworks_Template-bom.html
Normal file
242
mfg/assembly/Asymworks_Template-bom.html
Normal file
@@ -0,0 +1,242 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Bill of Materials</title>
|
||||||
|
<style>
|
||||||
|
.cell-title { vertical-align: bottom; }
|
||||||
|
.cell-info { vertical-align: top; padding: 1em;}
|
||||||
|
.cell-extra-info { vertical-align: top; padding: 1em;}
|
||||||
|
.cell-stats { vertical-align: top; padding: 1em;}
|
||||||
|
.title { font-size:2.5em; font-weight: bold; }
|
||||||
|
.subtitle { font-size:1.5em; font-weight: bold; }
|
||||||
|
.h2 { font-size:1.5em; font-weight: bold; }
|
||||||
|
.td-empty0 { text-align: center; background-color: #F57676;}
|
||||||
|
.td-gen0 { text-align: center; background-color: #DCF5E4;}
|
||||||
|
.td-kicad0 { text-align: center; background-color: #F5DCA9;}
|
||||||
|
.td-user0 { text-align: center; background-color: #DCEFF5;}
|
||||||
|
.td-empty1 { text-align: center; background-color: #FF8080;}
|
||||||
|
.td-gen1 { text-align: center; background-color: #E6FFEE;}
|
||||||
|
.td-kicad1 { text-align: center; background-color: #FFE6B3;}
|
||||||
|
.td-user1 { text-align: center; background-color: #E6F9FF;}
|
||||||
|
.td-nocolor { text-align: center; }
|
||||||
|
.color-ref { margin: 25px 0; }
|
||||||
|
.color-ref th { text-align: left }
|
||||||
|
.color-ref td { padding: 5px 20px; }
|
||||||
|
.head-table { margin-bottom: 2em; }
|
||||||
|
.centered-checkmark { font-size: 30vw; text-align: center; color: green; }
|
||||||
|
.tg-sort-header::-moz-selection{background:0 0}
|
||||||
|
.tg-sort-header::selection{background:0 0}.tg-sort-header{cursor:pointer}
|
||||||
|
.tg-sort-header:after{content:'';float:right;border-width:0 5px 5px;border-style:solid;
|
||||||
|
border-color:#ffffff transparent;visibility:hidden;opacity:.6}
|
||||||
|
.tg-sort-header:hover:after{visibility:visible}
|
||||||
|
.tg-sort-asc:after,.tg-sort-asc:hover:after,.tg-sort-desc:after{visibility:visible;opacity:1}
|
||||||
|
.tg-sort-desc:after{border-bottom:none;border-width:5px 5px 0}
|
||||||
|
|
||||||
|
.content-table {
|
||||||
|
border-collapse:
|
||||||
|
collapse;
|
||||||
|
margin-top: 5px;
|
||||||
|
margin-bottom: 4em;
|
||||||
|
font-size: 0.9em;
|
||||||
|
font-family: sans-serif;
|
||||||
|
min-width: 400px;
|
||||||
|
border-radius: 5px 5px 0 0;
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.content-table thead tr { background-color: #0e4e8e; color: #ffffff; text-align: left; }
|
||||||
|
.content-table th, .content-table td { padding: 12px 15px; }
|
||||||
|
.content-table tbody tr { border-bottom: 1px solid #dddddd; }
|
||||||
|
.content-table tbody tr:nth-of-type(even) { background-color: #f3f3f3; }
|
||||||
|
.content-table tbody tr:last-of-type { border-bottom: 2px solid #0e4e8e; }
|
||||||
|
.content-table * tr:hover > td { background-color: @bgl@ !important }
|
||||||
|
|
||||||
|
.content-table {
|
||||||
|
border-collapse:
|
||||||
|
collapse;
|
||||||
|
margin-top: 5px;
|
||||||
|
margin-bottom: 4em;
|
||||||
|
font-size: 0.9em;
|
||||||
|
font-family: sans-serif;
|
||||||
|
min-width: 400px;
|
||||||
|
border-radius: 5px 5px 0 0;
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.content-table thead tr { background-color: @bg@; color: #ffffff; text-align: left; }
|
||||||
|
.content-table th, .content-table td { padding: 12px 15px; }
|
||||||
|
.content-table tbody tr { border-bottom: 1px solid #dddddd; }
|
||||||
|
.content-table tbody tr:nth-of-type(even) { background-color: #f3f3f3; }
|
||||||
|
.content-table tbody tr:last-of-type { border-bottom: 2px solid @bg@; }
|
||||||
|
.content-table * tr:hover > td { background-color: #3e7ebe !important }
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<table class="head-table">
|
||||||
|
<tr>
|
||||||
|
<td rowspan="2">
|
||||||
|
</td>
|
||||||
|
<td colspan="2" class="cell-title">
|
||||||
|
<div class="title">Bill of Materials</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="cell-info">
|
||||||
|
<b>Schematic</b>: Asymworks_Template<br>
|
||||||
|
<b>Variant</b>: default<br>
|
||||||
|
<b>Revision</b>: NO_TAG+ (Unreleased)<br>
|
||||||
|
<b>Date</b>: 2026-03-10_23-05-42<br>
|
||||||
|
<b>KiCad Version</b>: 9.0.7+1<br>
|
||||||
|
</td>
|
||||||
|
<td class="cell-stats">
|
||||||
|
<b>Component Groups</b>: 0<br>
|
||||||
|
<b>Component Count</b>: 0 (per PCB)<br>
|
||||||
|
|
||||||
|
<b>Fitted Components</b>: 0 (per PCB)<br>
|
||||||
|
<b>Number of PCBs</b>: 1<br>
|
||||||
|
<b>Total Components</b>: 0 (for 1 PCBs)<br>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<h2>Component Groups</h2>
|
||||||
|
<table class="content-table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="th-gen">Row</th>
|
||||||
|
<th class="th-gen">Quantity Per PCB</th>
|
||||||
|
<th class="th-kicad">References</th>
|
||||||
|
<th class="th-kicad">Value</th>
|
||||||
|
<th class="th-kicad">Datasheet</th>
|
||||||
|
<th class="th-kicad">Footprint</th>
|
||||||
|
<th class="th-user">Description</th>
|
||||||
|
<th class="th-user">Asymworks IPN</th>
|
||||||
|
<th class="th-user">Manufacturer</th>
|
||||||
|
<th class="th-user">Manufacturer PN</th>
|
||||||
|
<th class="th-user">LCSC</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<table class="color-ref">
|
||||||
|
<tr><th>Color reference for columns:</th></tr>
|
||||||
|
<tr><td class="td-kicad0">KiCad Fields (default)</td></tr>
|
||||||
|
<tr><td class="td-gen0">Generated Fields</td></tr>
|
||||||
|
<tr><td class="td-user0">User Fields</td></tr>
|
||||||
|
<tr><td class="td-empty0">Empty Fields</td></tr>
|
||||||
|
</table>
|
||||||
|
<script charset="utf-8">
|
||||||
|
var TGSort = window.TGSort || function(n) {
|
||||||
|
"use strict";
|
||||||
|
function r(n) { return n ? n.length : 0 }
|
||||||
|
function t(n, t, e, o = 0) { for (e = r(n); o < e; ++o) t(n[o], o) }
|
||||||
|
function e(n) { return n.split("").reverse().join("") }
|
||||||
|
function o(n) {
|
||||||
|
var e = n[0];
|
||||||
|
return t(n, function(n) {
|
||||||
|
for (; !n.startsWith(e);) e = e.substring(0, r(e) - 1)
|
||||||
|
}), r(e)
|
||||||
|
}
|
||||||
|
function u(n, r, e = []) {
|
||||||
|
return t(n, function(n) {
|
||||||
|
r(n) && e.push(n)
|
||||||
|
}), e
|
||||||
|
}
|
||||||
|
var a = parseFloat;
|
||||||
|
function i(n, r) {
|
||||||
|
return function(t) {
|
||||||
|
var e = "";
|
||||||
|
return t.replace(n, function(n, t, o) {
|
||||||
|
return e = t.replace(r, "") + "." + (o || "").substring(1)
|
||||||
|
}), a(e)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var s = i(/^(?:\s*)([+-]?(?:\d+)(?:,\d{3})*)(\.\d*)?$/g, /,/g),
|
||||||
|
c = i(/^(?:\s*)([+-]?(?:\d+)(?:\.\d{3})*)(,\d*)?$/g, /\./g);
|
||||||
|
function f(n) {
|
||||||
|
var t = a(n);
|
||||||
|
return !isNaN(t) && r("" + t) + 1 >= r(n) ? t : NaN
|
||||||
|
}
|
||||||
|
function d(n) {
|
||||||
|
var e = [],
|
||||||
|
o = n;
|
||||||
|
return t([f, s, c], function(u) {
|
||||||
|
var a = [],
|
||||||
|
i = [];
|
||||||
|
t(n, function(n, r) {
|
||||||
|
r = u(n), a.push(r), r || i.push(n)
|
||||||
|
}), r(i) < r(o) && (o = i, e = a)
|
||||||
|
}), r(u(o, function(n) {
|
||||||
|
return n == o[0]
|
||||||
|
})) == r(o) ? e : []
|
||||||
|
}
|
||||||
|
function v(n) {
|
||||||
|
if ("TABLE" == n.nodeName) {
|
||||||
|
for (var a = function(r) {
|
||||||
|
var e, o, u = [],
|
||||||
|
a = [];
|
||||||
|
return function n(r, e) {
|
||||||
|
e(r), t(r.childNodes, function(r) {
|
||||||
|
n(r, e)
|
||||||
|
})
|
||||||
|
}(n, function(n) {
|
||||||
|
"TR" == (o = n.nodeName) ? (e = [], u.push(e), a.push(n)) : "TD" != o && "TH" != o || e.push(n)
|
||||||
|
}), [u, a]
|
||||||
|
}(), i = a[0], s = a[1], c = r(i), f = c > 1 && r(i[0]) < r(i[1]) ? 1 : 0, v = f + 1, p = i[f], h = r(p), l = [], g = [], N = [], m = v; m < c; ++m) {
|
||||||
|
for (var T = 0; T < h; ++T) {
|
||||||
|
r(g) < h && g.push([]);
|
||||||
|
var C = i[m][T],
|
||||||
|
L = C.textContent || C.innerText || "";
|
||||||
|
g[T].push(L.trim())
|
||||||
|
}
|
||||||
|
N.push(m - v)
|
||||||
|
}
|
||||||
|
t(p, function(n, t) {
|
||||||
|
l[t] = 0;
|
||||||
|
var a = n.classList;
|
||||||
|
a.add("tg-sort-header"), n.addEventListener("click", function() {
|
||||||
|
var n = l[t];
|
||||||
|
! function() {
|
||||||
|
for (var n = 0; n < h; ++n) {
|
||||||
|
var r = p[n].classList;
|
||||||
|
r.remove("tg-sort-asc"), r.remove("tg-sort-desc"), l[n] = 0
|
||||||
|
}
|
||||||
|
}(), (n = 1 == n ? -1 : +!n) && a.add(n > 0 ? "tg-sort-asc" : "tg-sort-desc"), l[t] = n;
|
||||||
|
var i, f = g[t],
|
||||||
|
m = function(r, t) {
|
||||||
|
return n * f[r].localeCompare(f[t]) || n * (r - t)
|
||||||
|
},
|
||||||
|
T = function(n) {
|
||||||
|
var t = d(n);
|
||||||
|
if (!r(t)) {
|
||||||
|
var u = o(n),
|
||||||
|
a = o(n.map(e));
|
||||||
|
t = d(n.map(function(n) {
|
||||||
|
return n.substring(u, r(n) - a)
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
return t
|
||||||
|
}(f);
|
||||||
|
(r(T) || r(T = r(u(i = f.map(Date.parse), isNaN)) ? [] : i)) && (m = function(r, t) {
|
||||||
|
var e = T[r],
|
||||||
|
o = T[t],
|
||||||
|
u = isNaN(e),
|
||||||
|
a = isNaN(o);
|
||||||
|
return u && a ? 0 : u ? -n : a ? n : e > o ? n : e < o ? -n : n * (r - t)
|
||||||
|
});
|
||||||
|
var C, L = N.slice();
|
||||||
|
L.sort(m);
|
||||||
|
for (var E = v; E < c; ++E)(C = s[E].parentNode).removeChild(s[E]);
|
||||||
|
for (E = v; E < c; ++E) C.appendChild(s[v + L[E - v]])
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
n.addEventListener("DOMContentLoaded", function() {
|
||||||
|
for (var t = n.getElementsByClassName("content-table"), e = 0; e < r(t); ++e) try {
|
||||||
|
v(t[e])
|
||||||
|
} catch (n) {}
|
||||||
|
})
|
||||||
|
}(document)
|
||||||
|
</script>
|
||||||
|
</body></html>
|
||||||
4
mfg/assembly/Asymworks_Template-components_count.csv
Normal file
4
mfg/assembly/Asymworks_Template-components_count.csv
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
Type,Front Side,Back Side,Total
|
||||||
|
THT,0,0,0
|
||||||
|
SMD,0,0,0
|
||||||
|
Total,0,0,0
|
||||||
|
50
mfg/fab/A98-1001-fabrication_notes.txt
Normal file
50
mfg/fab/A98-1001-fabrication_notes.txt
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
FABRICATION NOTES (UNLESS OTHERWISE SPECIFIED)
|
||||||
|
|
||||||
|
1) FABRICATE PER IPC-6012A CLASS 2.
|
||||||
|
|
||||||
|
2) OUTLINE DEFINED IN SEPARATE GERBER FILE WITH
|
||||||
|
"Edge_Cuts.GBR" SUFFIX.
|
||||||
|
|
||||||
|
3) SEE SEPARATE DRILL FILES WITH ".DRL" SUFFIX
|
||||||
|
FOR HOLE LOCATIONS.
|
||||||
|
|
||||||
|
SELECTED HOLE LOCATIONS SHOWN ON THIS DRAWING
|
||||||
|
FOR REFERENCE ONLY.
|
||||||
|
|
||||||
|
4) SURFACE FINISH: ENIG
|
||||||
|
|
||||||
|
5) SOLDERMASK ON BOTH SIDES OF THE BOARD SHALL
|
||||||
|
BE LPI, COLOR GREEN.
|
||||||
|
|
||||||
|
6) SILK SCREEN LEGEND TO BE APPLIED PER LAYER
|
||||||
|
STACKUP USING WHITE NON-CONDUCTIVE EPOXY INK.
|
||||||
|
|
||||||
|
7) ALL VIAS ARE TENTED ON BOTH SIDES UNLESS
|
||||||
|
SOLDERMASK OPENED IN GERBER.
|
||||||
|
|
||||||
|
8) RESERVED
|
||||||
|
|
||||||
|
9) PCB MATERIAL REQUIREMENTS:
|
||||||
|
|
||||||
|
A. FLAMMABILITY RATING MUST MEET OR EXCEED
|
||||||
|
UL94V-0 REQUIREMENTS.
|
||||||
|
B. Tg 135 C OR EQUIVALENT.
|
||||||
|
|
||||||
|
10) DESIGN GEOMETRY MINIMUM FEATURE SIZES:
|
||||||
|
|
||||||
|
BOARD SIZE N/A × N/A mm
|
||||||
|
BOARD THICKNESS 1.647 mm
|
||||||
|
TRACE WIDTH N/A mm
|
||||||
|
TRACE TO TRACE 0.200 mm
|
||||||
|
MIN. HOLE (PTH) N/A mm
|
||||||
|
MIN. HOLE (NPTH) N/A mm
|
||||||
|
ANNULAR RING N/A mm
|
||||||
|
COPPER TO HOLE 0.250 mm
|
||||||
|
COPPER TO EDGE 0.500 mm
|
||||||
|
HOLE TO HOLE 0.250 mm
|
||||||
|
|
||||||
|
11) ALL DIMENSIONS ARE IN MILLIMETERS UNLESS OTHERWISE
|
||||||
|
SPECIFIED.
|
||||||
|
|
||||||
|
12) FOR REFERENCE ONLY THE STACKUP CORRESPONDS TO JLCPCB
|
||||||
|
STACKUP JLC04161H-7628.
|
||||||
4
mfg/fab/A98-1001-impedance_table.csv
Normal file
4
mfg/fab/A98-1001-impedance_table.csv
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
Layer,Ref1,Ref2,Type,Impedance,Width,Space,Tolerance
|
||||||
|
L1,AIR,L2,SE,50,0.349,-----,10%
|
||||||
|
L1,AIR,L2,DIFF,90,0.286,0.203,10%
|
||||||
|
L1,AIR,L2,DIFF,100,0.221,0.203,10%
|
||||||
|
50
mfg/fab/Asymworks_Template-fabrication_notes.txt
Normal file
50
mfg/fab/Asymworks_Template-fabrication_notes.txt
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
FABRICATION NOTES (UNLESS OTHERWISE SPECIFIED)
|
||||||
|
|
||||||
|
1) FABRICATE PER IPC-6012A CLASS 2.
|
||||||
|
|
||||||
|
2) OUTLINE DEFINED IN SEPARATE GERBER FILE WITH
|
||||||
|
"Edge_Cuts.GBR" SUFFIX.
|
||||||
|
|
||||||
|
3) SEE SEPARATE DRILL FILES WITH ".DRL" SUFFIX
|
||||||
|
FOR HOLE LOCATIONS.
|
||||||
|
|
||||||
|
SELECTED HOLE LOCATIONS SHOWN ON THIS DRAWING
|
||||||
|
FOR REFERENCE ONLY.
|
||||||
|
|
||||||
|
4) SURFACE FINISH: ENIG
|
||||||
|
|
||||||
|
5) SOLDERMASK ON BOTH SIDES OF THE BOARD SHALL
|
||||||
|
BE LPI, COLOR GREEN.
|
||||||
|
|
||||||
|
6) SILK SCREEN LEGEND TO BE APPLIED PER LAYER
|
||||||
|
STACKUP USING WHITE NON-CONDUCTIVE EPOXY INK.
|
||||||
|
|
||||||
|
7) ALL VIAS ARE TENTED ON BOTH SIDES UNLESS
|
||||||
|
SOLDERMASK OPENED IN GERBER.
|
||||||
|
|
||||||
|
8) RESERVED
|
||||||
|
|
||||||
|
9) PCB MATERIAL REQUIREMENTS:
|
||||||
|
|
||||||
|
A. FLAMMABILITY RATING MUST MEET OR EXCEED
|
||||||
|
UL94V-0 REQUIREMENTS.
|
||||||
|
B. Tg 135 C OR EQUIVALENT.
|
||||||
|
|
||||||
|
10) DESIGN GEOMETRY MINIMUM FEATURE SIZES:
|
||||||
|
|
||||||
|
BOARD SIZE N/A × N/A mm
|
||||||
|
BOARD THICKNESS 1.647 mm
|
||||||
|
TRACE WIDTH N/A mm
|
||||||
|
TRACE TO TRACE 0.200 mm
|
||||||
|
MIN. HOLE (PTH) N/A mm
|
||||||
|
MIN. HOLE (NPTH) N/A mm
|
||||||
|
ANNULAR RING N/A mm
|
||||||
|
COPPER TO HOLE 0.250 mm
|
||||||
|
COPPER TO EDGE 0.500 mm
|
||||||
|
HOLE TO HOLE 0.250 mm
|
||||||
|
|
||||||
|
11) ALL DIMENSIONS ARE IN MILLIMETERS UNLESS OTHERWISE
|
||||||
|
SPECIFIED.
|
||||||
|
|
||||||
|
12) FOR REFERENCE ONLY THE STACKUP CORRESPONDS TO JLCPCB
|
||||||
|
STACKUP JLC04161H-7628.
|
||||||
4
mfg/fab/Asymworks_Template-impedance_table.csv
Normal file
4
mfg/fab/Asymworks_Template-impedance_table.csv
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
Layer,Ref1,Ref2,Type,Impedance,Width,Space,Tolerance
|
||||||
|
L1,AIR,L2,SE,50,0.349,-----,10%
|
||||||
|
L1,AIR,L2,DIFF,90,0.286,0.203,10%
|
||||||
|
L1,AIR,L2,DIFF,100,0.221,0.203,10%
|
||||||
|
12
project.json
Normal file
12
project.json
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"AssemblyName": "nRF52840 Development Board",
|
||||||
|
"AssemblyNumber": "A98-1001",
|
||||||
|
"AssemblyTitle": "Assembly, nRF52840 Development Board",
|
||||||
|
"Company": "Asymworks, LLC",
|
||||||
|
"Designer": "JPK",
|
||||||
|
"FabNumber": "P98-1001",
|
||||||
|
"FabTitle": "PCB Fabrication, nRF52840 Development Board",
|
||||||
|
"ProjectNumber": "P98",
|
||||||
|
"SchematicNumber": "S98-1001",
|
||||||
|
"SchematicTitle": "Schematic, nRF52840 Development Board"
|
||||||
|
}
|
||||||
BIN
schematic/A98-1001-schematic.pdf
Normal file
BIN
schematic/A98-1001-schematic.pdf
Normal file
Binary file not shown.
1
schematic/A98-1001-schematic_notes.txt
Normal file
1
schematic/A98-1001-schematic_notes.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Unless otherwise specified, components Values are in ohms, µF, and µH.
|
||||||
BIN
schematic/Asymworks_Template-schematic.pdf
Normal file
BIN
schematic/Asymworks_Template-schematic.pdf
Normal file
Binary file not shown.
1
schematic/Asymworks_Template-schematic_notes.txt
Normal file
1
schematic/Asymworks_Template-schematic_notes.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Unless otherwise specified, components Values are in ohms, µF, and µH.
|
||||||
1
test/testpoints/A98-1001-testpoints-bottom.csv
Normal file
1
test/testpoints/A98-1001-testpoints-bottom.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Ref.,Net,X [mm],Y [mm]
|
||||||
|
1
test/testpoints/A98-1001-testpoints-top.csv
Normal file
1
test/testpoints/A98-1001-testpoints-top.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Ref.,Net,X [mm],Y [mm]
|
||||||
|
1
test/testpoints/A98-1001-testpoints.csv
Normal file
1
test/testpoints/A98-1001-testpoints.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Testpoint Ref.,Net,Net Class,X,Y,Side,Pad Type,Value,Footprint
|
||||||
|
1
test/testpoints/Asymworks_Template-testpoints-bottom.csv
Normal file
1
test/testpoints/Asymworks_Template-testpoints-bottom.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Ref.,Net,X [mm],Y [mm]
|
||||||
|
1
test/testpoints/Asymworks_Template-testpoints-top.csv
Normal file
1
test/testpoints/Asymworks_Template-testpoints-top.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Ref.,Net,X [mm],Y [mm]
|
||||||
|
1
test/testpoints/Asymworks_Template-testpoints.csv
Normal file
1
test/testpoints/Asymworks_Template-testpoints.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Testpoint Ref.,Net,Net Class,X,Y,Side,Pad Type,Value,Footprint
|
||||||
|
Reference in New Issue
Block a user