mirror of
https://github.com/jhbruhn/butns.git
synced 2025-07-02 01:18:50 +00:00
Add CI for kicad
This commit is contained in:
parent
fe255aa6e3
commit
cf636b3183
6 changed files with 45359 additions and 2 deletions
25
.github/workflows/build.yml
vendored
25
.github/workflows/build.yml
vendored
|
@ -78,4 +78,27 @@ jobs:
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: firmware
|
name: firmware
|
||||||
path: firmware/.pio/build/pico/firmware.uf2
|
path: firmware/.pio/build/pico/firmware.uf2
|
||||||
|
|
||||||
|
build-pcb:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: INTI-CMNB/KiBot@v2_k8
|
||||||
|
with:
|
||||||
|
# Required - kibot config file
|
||||||
|
config: hardware/board/jlcpcb.kibot.yaml
|
||||||
|
# optional - prefix to output defined in config
|
||||||
|
dir: hardware/board/output
|
||||||
|
# optional - schematic file
|
||||||
|
schema: 'hardware/board/butns.kicad_sch'
|
||||||
|
# optional - PCB design file
|
||||||
|
board: 'hardware/board/butns.kicad_pcb'
|
||||||
|
- name: upload results
|
||||||
|
if: ${{ always() }}
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: board
|
||||||
|
path: |
|
||||||
|
hardware/board/output/*.csv
|
||||||
|
hardware/board/output/JLCPCB/*.zip
|
8
.github/workflows/release.yml
vendored
8
.github/workflows/release.yml
vendored
|
@ -27,10 +27,16 @@ jobs:
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: buttons
|
name: buttons
|
||||||
|
- name: Download board artifact
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
name: board
|
||||||
- name: Release
|
- name: Release
|
||||||
uses: softprops/action-gh-release@v2
|
uses: softprops/action-gh-release@v2
|
||||||
if: startsWith(github.ref, 'refs/tags/')
|
if: startsWith(github.ref, 'refs/tags/')
|
||||||
with:
|
with:
|
||||||
files: |
|
files: |
|
||||||
*.uf2
|
*.uf2
|
||||||
*.stl
|
*.stl
|
||||||
|
*.csv
|
||||||
|
*.zip
|
File diff suppressed because it is too large
Load diff
42815
hardware/board/butns-frontend.kicad_sch_old
Normal file
42815
hardware/board/butns-frontend.kicad_sch_old
Normal file
File diff suppressed because it is too large
Load diff
89
hardware/board/butns.kicad_sch_old
Normal file
89
hardware/board/butns.kicad_sch_old
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
(kicad_sch
|
||||||
|
(version 20231120)
|
||||||
|
(generator "eeschema")
|
||||||
|
(generator_version "8.0")
|
||||||
|
(uuid "1c3520c0-bca7-4d12-8c9b-3ac18c44338d")
|
||||||
|
(paper "A4")
|
||||||
|
(lib_symbols)
|
||||||
|
(sheet
|
||||||
|
(at 128.27 74.93)
|
||||||
|
(size 24.13 10.16)
|
||||||
|
(fields_autoplaced yes)
|
||||||
|
(stroke
|
||||||
|
(width 0.1524)
|
||||||
|
(type solid)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(color 0 0 0 0.0000)
|
||||||
|
)
|
||||||
|
(uuid "b0295986-856b-4508-9cd9-aff1aa86ee33")
|
||||||
|
(property "Sheetname" "Frontend"
|
||||||
|
(at 128.27 74.2184 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Sheetfile" "butns-frontend.kicad_sch"
|
||||||
|
(at 128.27 85.6746 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left top)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(instances
|
||||||
|
(project "butns"
|
||||||
|
(path "/1c3520c0-bca7-4d12-8c9b-3ac18c44338d"
|
||||||
|
(page "2")
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(sheet
|
||||||
|
(at 177.8 77.47)
|
||||||
|
(size 26.67 10.16)
|
||||||
|
(fields_autoplaced yes)
|
||||||
|
(stroke
|
||||||
|
(width 0.1524)
|
||||||
|
(type solid)
|
||||||
|
)
|
||||||
|
(fill
|
||||||
|
(color 0 0 0 0.0000)
|
||||||
|
)
|
||||||
|
(uuid "d5941714-0239-4676-93bd-9d828e2adbdd")
|
||||||
|
(property "Sheetname" "Backend"
|
||||||
|
(at 177.8 76.7584 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left bottom)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(property "Sheetfile" "butns-backend.kicad_sch"
|
||||||
|
(at 177.8 88.2146 0)
|
||||||
|
(effects
|
||||||
|
(font
|
||||||
|
(size 1.27 1.27)
|
||||||
|
)
|
||||||
|
(justify left top)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(instances
|
||||||
|
(project "butns"
|
||||||
|
(path "/1c3520c0-bca7-4d12-8c9b-3ac18c44338d"
|
||||||
|
(page "3")
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(sheet_instances
|
||||||
|
(path "/"
|
||||||
|
(page "1")
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
120
hardware/board/jlcpcb.kibot.yaml
Normal file
120
hardware/board/jlcpcb.kibot.yaml
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
kibot:
|
||||||
|
version: 1
|
||||||
|
|
||||||
|
filters:
|
||||||
|
- name: only_jlc_parts
|
||||||
|
comment: 'Only parts with JLC (LCSC) code'
|
||||||
|
type: generic
|
||||||
|
include_only:
|
||||||
|
- column: 'LCSC#'
|
||||||
|
regex: '^C\d+'
|
||||||
|
|
||||||
|
variants:
|
||||||
|
- name: rotated
|
||||||
|
comment: 'Just a place holder for the rotation filter'
|
||||||
|
type: kibom
|
||||||
|
variant: rotated
|
||||||
|
pre_transform: _rot_footprint
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
- name: JLCPCB_gerbers
|
||||||
|
comment: Gerbers compatible with JLCPCB
|
||||||
|
type: gerber
|
||||||
|
dir: JLCPCB
|
||||||
|
options: &gerber_options
|
||||||
|
exclude_edge_layer: true
|
||||||
|
exclude_pads_from_silkscreen: true
|
||||||
|
plot_sheet_reference: false
|
||||||
|
plot_footprint_refs: true
|
||||||
|
plot_footprint_values: false
|
||||||
|
force_plot_invisible_refs_vals: false
|
||||||
|
tent_vias: true
|
||||||
|
use_protel_extensions: false
|
||||||
|
create_gerber_job_file: false
|
||||||
|
disable_aperture_macros: true
|
||||||
|
gerber_precision: 4.6
|
||||||
|
use_gerber_x2_attributes: false
|
||||||
|
use_gerber_net_attributes: false
|
||||||
|
line_width: 0.1
|
||||||
|
subtract_mask_from_silk: true
|
||||||
|
layers:
|
||||||
|
# Note: a more generic approach is to use 'copper' but then the filenames
|
||||||
|
# are slightly different.
|
||||||
|
- F.Cu
|
||||||
|
- B.Cu
|
||||||
|
- In1.Cu
|
||||||
|
- In2.Cu
|
||||||
|
- In3.Cu
|
||||||
|
- In4.Cu
|
||||||
|
- In5.Cu
|
||||||
|
- In6.Cu
|
||||||
|
- F.SilkS
|
||||||
|
- B.SilkS
|
||||||
|
- F.Mask
|
||||||
|
- B.Mask
|
||||||
|
- Edge.Cuts
|
||||||
|
|
||||||
|
- name: JLCPCB_drill
|
||||||
|
comment: Drill files compatible with JLCPCB
|
||||||
|
type: excellon
|
||||||
|
dir: JLCPCB
|
||||||
|
options:
|
||||||
|
pth_and_npth_single_file: false
|
||||||
|
pth_id: '-PTH'
|
||||||
|
npth_id: '-NPTH'
|
||||||
|
metric_units: false
|
||||||
|
output: "%f%i.%x"
|
||||||
|
|
||||||
|
- name: JLCPCB
|
||||||
|
comment: ZIP file for JLCPCB
|
||||||
|
type: compress
|
||||||
|
dir: JLCPCB
|
||||||
|
options:
|
||||||
|
files:
|
||||||
|
- from_output: JLCPCB_gerbers
|
||||||
|
dest: /
|
||||||
|
- from_output: JLCPCB_drill
|
||||||
|
dest: /
|
||||||
|
- name: 'JLCPCB_position'
|
||||||
|
comment: "Pick and place file, JLCPCB style"
|
||||||
|
type: position
|
||||||
|
options:
|
||||||
|
variant: rotated
|
||||||
|
output: '%f_cpl_jlc.%x'
|
||||||
|
format: CSV
|
||||||
|
units: millimeters
|
||||||
|
separate_files_for_front_and_back: false
|
||||||
|
only_smd: true
|
||||||
|
columns:
|
||||||
|
- id: Ref
|
||||||
|
name: Designator
|
||||||
|
- Val
|
||||||
|
- Package
|
||||||
|
- id: PosX
|
||||||
|
name: "Mid X"
|
||||||
|
- id: PosY
|
||||||
|
name: "Mid Y"
|
||||||
|
- id: Rot
|
||||||
|
name: Rotation
|
||||||
|
- id: Side
|
||||||
|
name: Layer
|
||||||
|
|
||||||
|
- name: 'JLCPCB_bom'
|
||||||
|
comment: "BoM for JLCPCB"
|
||||||
|
type: bom
|
||||||
|
options:
|
||||||
|
output: '%f_%i_jlc.%x'
|
||||||
|
#exclude_filter: 'only_jlc_parts'
|
||||||
|
ref_separator: ','
|
||||||
|
columns:
|
||||||
|
- field: Value
|
||||||
|
name: Comment
|
||||||
|
- field: References
|
||||||
|
name: Designator
|
||||||
|
- Footprint
|
||||||
|
- field: 'LCSC'
|
||||||
|
name: 'LCSC Part #'
|
||||||
|
csv:
|
||||||
|
hide_pcb_info: true
|
||||||
|
hide_stats_info: true
|
||||||
|
quote_all: true
|
Loading…
Reference in a new issue