Generate PCB assembly files

Generate assembly files for JLCPCB - BOM and CPL. Using existing LCSC part numbers (which may not be in the JLC part library), and positions/rotations are completely unverified, and of course many of the components are simply not available in any form in the JLC part library (e.g. TMC6300). Fixes #23.

Also changed LCD backlight resistor from 22 ohm to 20 ohm and added some additional part numbers for reference.
This commit is contained in:
Scott Bezek 2022-04-04 21:33:55 -07:00
parent 5c2a10428a
commit 836227d4f6
4 changed files with 11 additions and 5 deletions

View File

@ -21,7 +21,7 @@ jobs:
- name: Export JLCPCB fabrication files [view_base]
run: |
./electronics/scripts/export_jlcpcb.py --release-prefix releases/view_base/ electronics/view_base/view_base.kicad_pcb
./electronics/scripts/export_jlcpcb.py --release-prefix releases/view_base/ --assembly-schematic electronics/view_base/view_base.sch electronics/view_base/view_base.kicad_pcb
cp -r electronics/build/view_base-jlc electronics/build/outputs
- name: Export PCB overview PDF [view_base]

View File

@ -88,6 +88,10 @@ Latest auto-generated (untested and likely broken!) artifacts⚠:
[Gerbers](https://smartknob-artifacts.s3.us-west-1.amazonaws.com/master/electronics/view_base-jlc/gerbers.zip)
[BOM (for JLCPCB assembly](https://smartknob-artifacts.s3.us-west-1.amazonaws.com/master/electronics/view_base-jlc/bom.csv) (warning: completely untested!)
[CPL (for JLCPCB assembly)](https://smartknob-artifacts.s3.us-west-1.amazonaws.com/master/electronics/view_base-jlc/pos.csv) (warning: completely untested!)
⚠️ For tested/stable/recommended artifacts, use a [release](https://github.com/scottbez1/smartknob/releases) instead.
#### Screen PCB

View File

@ -65,7 +65,7 @@ if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('pcb')
parser.add_argument('--assembly-schematic')
parser.add_argument('--alt-fields', nargs='+')
parser.add_argument('--alt-fields', nargs='+', default=[])
parser.add_argument('--release-prefix', type=str, required=True, help='Tag prefix to check if this is a tagged/versioned release. E.g. "releases/" for tags like "releases/v1.0"')
args = parser.parse_args()
export_jlcpcb(args.pcb, args.assembly_schematic, args.alt_fields, args.release_prefix)

View File

@ -158,6 +158,7 @@ F 2 "Resistor_SMD:R_0603_1608Metric" H 3750 3550 50 0001 C CNN
F 3 "~" H 3750 3550 50 0001 C CNN
F 4 "RMCF0603JT1M00CT-ND" H 3750 3550 50 0001 C CNN "Digikey"
F 5 "652-CR0603FX-1004ELF" H 3750 3550 50 0001 C CNN "Mouser"
F 6 "C105578" H 3750 3550 50 0001 C CNN "LCSC"
1 3750 3550
1 0 0 -1
$EndComp
@ -236,11 +237,12 @@ L Device:R_Small R2
U 1 1 6209F498
P 5000 3250
F 0 "R2" H 5059 3296 50 0000 L CNN
F 1 "22R" H 5059 3205 50 0000 L CNN
F 1 "20R" H 5059 3205 50 0000 L CNN
F 2 "Resistor_SMD:R_0603_1608Metric" H 5000 3250 50 0001 C CNN
F 3 "~" H 5000 3250 50 0001 C CNN
F 4 "RMCF0603JT22R0CT-ND" H 5000 3250 50 0001 C CNN "Digikey"
F 5 "652-CR0603FX-22R0ELF" H 5000 3250 50 0001 C CNN "Mouser"
F 4 "RMCF0603JT20R0CT-ND" H 5000 3250 50 0001 C CNN "Digikey"
F 5 "652-CR0603FX-20R0ELF" H 5000 3250 50 0001 C CNN "Mouser"
F 6 "C125758" H 5000 3250 50 0001 C CNN "LCSC"
1 5000 3250
1 0 0 -1
$EndComp