aboutsummaryrefslogtreecommitdiff
path: root/demo/thirdparty/unlockoslo-alpha-3/ee.ninja
diff options
context:
space:
mode:
Diffstat (limited to 'demo/thirdparty/unlockoslo-alpha-3/ee.ninja')
-rw-r--r--demo/thirdparty/unlockoslo-alpha-3/ee.ninja109
1 files changed, 109 insertions, 0 deletions
diff --git a/demo/thirdparty/unlockoslo-alpha-3/ee.ninja b/demo/thirdparty/unlockoslo-alpha-3/ee.ninja
new file mode 100644
index 0000000..e330e0d
--- /dev/null
+++ b/demo/thirdparty/unlockoslo-alpha-3/ee.ninja
@@ -0,0 +1,109 @@
+ee = ../../../env/bin/python3 -m ee
+report_dir = ee/reports
+sch = ../../../thirdparty/unlockoslo/hardware/alpha-3/alpha.sch
+sch_files = ../../../thirdparty/unlockoslo/hardware/alpha-3/alpha.sch
+pcb = ../../../thirdparty/unlockoslo/hardware/alpha-3/alpha.kicad_pcb
+
+rule kicad-gerber
+ description = kicad-gerber
+ command = $ee kicad-gerber $
+ --output-dir $gerber_dir $
+ --pcb $pcb
+# mkdir -p $(
+# (cd $(GERBER_DIR); zip tmp.zip $(foreach GBR,$(GERBERS),$(notdir $(GBR))))
+# mv $(GERBER_DIR)/tmp.zip $@
+
+rule kicad-make-bom
+ description = kicad-make-bom $out
+ command = $ee kicad-make-bom --sch $sch --out $out
+
+rule pn-part-search-list
+ description = pn-part-search-list supplier: $supplier
+ command = $ee pn-part-search-list --in $in --out $out --supplier $supplier
+
+rule part-apply-function
+ command = $ee part-apply-function --execution $execution --in $in --out $out $functions $arguments
+
+rule part-find-requirements
+ description = part-find-requirements
+ command = $ee part-find-requirements --in $in --out $out
+
+rule part-validate-parts
+ command = $ee part-validate-parts --in $in --out $out
+
+rule digikey-search-parts
+ description = digikey-search-parts
+ command = $ee digikey-search-parts --in $in --out $out
+
+rule element14-search-parts
+ description = element14-search-parts
+ command = $ee element14-search-parts --in $in --out $out
+
+rule create-bom
+ description = create-bom
+ command = $ee create-bom --schematic $schematic --part-db $part_dbs --out $out $strategy
+
+rule split-parts-by-supplier
+ description = split-parts-by-supplier
+ command = $ee split-parts-by-supplier --parts $order $part_dbs --out-dir $out_dir
+
+rule import-parts-yaml
+ description = import-parts-yaml $in
+ command = $ee import-parts-yaml --in $in --out $out
+
+rule drawio-decompress
+ command = $ee drawio-decompress --in $in --out $out
+
+rule drawio-to-parts
+ command = $ee drawio-to-parts --in $in --out $out $args
+
+rule part-from-excel
+ command = $ee part-from-excel --in $in --out $out --sheet "$sheet"
+
+
+build gerbers: phony prod/gerber.zip
+build prod/gerber.zip: kicad-gerber $pcb
+ gerber_dir = prod
+
+build ee/kicad-sch.xml: kicad-make-bom $sch
+build ee/sch.xml: part-apply-function ee/kicad-sch.xml
+ execution = kicad
+ functions = --function ee.kicad.functions.default
+ arguments =
+
+build $report_dir/part-validate-parts.rst: part-validate-parts ee/sch.xml
+
+build ee/requirements.xml: part-find-requirements ee/sch.xml
+
+
+# Supplier digikey
+build ee/digikey/pn-part-search-list.xml: pn-part-search-list ee/sch.xml
+ supplier = digikey
+
+build ee/digikey/downloaded.xml | ee/digikey/downloaded.rst: digikey-search-parts ee/digikey/pn-part-search-list.xml
+
+build ee/digikey/parts.xml: part-apply-function ee/digikey/downloaded.xml
+ execution = digikey
+ functions = --function ee.digikey.functions.default
+
+build ee/bom.xml | $report_dir/bom.rst: create-bom ee/sch.xml ee/digikey/parts.xml
+ schematic = ee/sch.xml
+ part_dbs = ee/digikey/parts.xml
+
+build ee/orders/index.xml: split-parts-by-supplier ee/bom.xml ee/digikey/parts.xml
+ order = ee/bom.xml
+ part_dbs = --part-db ee/digikey/parts.xml
+ out_dir = ee/orders
+
+default ee/orders/index.xml
+
+rule seeed-download-opl
+ description = seeed-download-opl $opl
+ command = $ee seeed-download-opl --out $out --opl $opl
+
+build seeed-download-opls: phony ee/seeed/opl/SEEED.xml ee/seeed/opl/HQCHIP.xml
+build ee/seeed/opl/SEEED.xml: seeed-download-opl
+ opl = SEEED
+
+build ee/seeed/opl/HQCHIP.xml: seeed-download-opl
+ opl = HQCHIP