Initialize Project
All checks were successful
KiBot CI / test (push) Successful in 30s

This commit is contained in:
2026-03-10 16:27:38 -07:00
parent 7517d49113
commit 68b80701e9
6 changed files with 55 additions and 28 deletions

View File

@@ -649,26 +649,24 @@
]
],
"text_variables": {
"ASSEMBLY_NAME": "Assembly Name",
"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_NUMBER": "A99-9000",
"ASSEMBLY_SCALE": "1",
"ASSEMBLY_NAME": "nRF52840 Development Board",
"ASSEMBLY_NUMBER": "A98-1001",
"ASSEMBLY_SCALE": "",
"COMPANY": "Asymworks, LLC",
"DESIGNER": "JPK",
"DWG_NUMBER_PCB": "P99-9000",
"DWG_NUMBER_SCH": "S99-9000",
"DWG_TITLE_ASSY": "PCB Assembly, Assembly Name",
"DWG_TITLE_PCB": "PCB, Assembly Name",
"DWG_TITLE_SCH": "Schematic, Assembly Name",
"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": "862bd3b",
"GIT_HASH_PCB": "862bd3b",
"GIT_HASH_SCH": "862bd3b",
"GIT_URL": "/jkrauss/Test_4",
"PROJECT_CODE": "P99",
"RELEASE_DATE": "2026-03-10",
"RELEASE_STATE": "DRAFT",
"REVISION": "NO_TAG+ (Unreleased)",
"DWG_NUMBER_PCB": "P98-1001",
"DWG_NUMBER_SCH": "S98-1001",
"DWG_TITLE_ASSY": "Assembly, nRF52840 Development Board",
"DWG_TITLE_PCB": "PCB Fabrication, nRF52840 Development Board",
"DWG_TITLE_SCH": "Schematic, nRF52840 Development Board",
"GIT_HASH": "",
"GIT_HASH_PCB": "",
"GIT_HASH_SCH": "",
"GIT_URL": "",
"PROJECT_CODE": "P98",
"RELEASE_DATE": "",
"RELEASE_STATE": "",
"REVISION": "${REVISION}",
"SCALE": "1:1",
"SCHEMATIC_NOTES": "Unless otherwise specified, components Values are in ohms, \u00b5F, and \u00b5H.",
"SHEET_NAME_01": "Cover Page",

37
kibot/scripts/bootstrap.sh Normal file → Executable file
View File

@@ -3,29 +3,46 @@
# KiBot Template Bootstrapping Script
# ============================================================================
set -euo pipefail
# Create the Development Branch
git checkout -qb dev
echo "Created Development Branch"
# Add the Asymworks KiCad Library
git remote add -qf asymworks-kicad-lib https://git.asymworks.com/asymworks/kicad-library
git subtree add -q --prefix lib/asymworks asymworks-kicad-lib main --squash -m "[bootstrap] Add subtree 'Asymworks/KiCad-Library' at 'lib/asymworks'"
git remote --no-verbose add -f asymworks-kicad-lib https://git.asymworks.com/asymworks/kicad-library >/dev/null 2>&1
# 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"
# Initialize the Project Metadata
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)
PYTHON=$(which python || echo "")
if [ -z "$PYTHON" ] ; then
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
git mv -q Asymworks_Template.kicad_dru "${ASSY_NUMBER}.kicad_dru"
git mv -q Asymworks_Template.kicad_pro "${ASSY_NUMBER}.kicad_pro"
git mv -q 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_dru "${ASSY_NUMBER}.kicad_dru"
git mv --no-verbose Asymworks_Template.kicad_pro "${ASSY_NUMBER}.kicad_pro"
git mv --no-verbose Asymworks_Template.kicad_sch "${ASSY_NUMBER}.kicad_sch"
git mv --no-verbose Asymworks_Template.kicad_pcb "${ASSY_NUMBER}.kicad_pcb"
echo "Renamed project to \"${ASSY_NUMBER}.kicad_pro\""
# Push the Develpment Branch to Gitea
git add -q project.json
git add --no-verbose project.json
git commit -aq -m 'Initialize Project'
git push -qu origin dev
echo "Initialized and Committed Project"

12
project.json Normal file
View 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"
}