Skip to content

Commit 1e3e3f6

Browse files
committed
Merge branch 'release/v1.0.0'
2 parents 3cdfdca + e96a870 commit 1e3e3f6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+119578
-31401
lines changed

.github/workflows/kibot.yml

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# SPDX-FileCopyrightText: 2022 nerdyscout <https://github.com/nerdyscout/>
2+
#
3+
# SPDX-License-Identifier: CC0-1.0
4+
5+
name: KiBot
6+
7+
on:
8+
push:
9+
paths:
10+
- "Kicad/*.kicad_sch"
11+
- "Kicad/*.kicad_pcb"
12+
- "Kicad/*.kicad_pro"
13+
- "**/*kibot.yml"
14+
pull_request:
15+
paths:
16+
- "Kicad/*.kicad_sch"
17+
- "Kicad/*.kicad_pcb"
18+
- "Kicad/*.kicad_pro"
19+
- "**/*kibot.yml"
20+
21+
env:
22+
schema: "Kicad/Neotron-Common-Hardware.kicad_sch"
23+
board: "Kicad/Neotron-Common-Hardware.kicad_pcb"
24+
dir: "Kicad/docs"
25+
26+
jobs:
27+
DRC:
28+
runs-on: ubuntu-latest
29+
container:
30+
image: setsoft/kicad_auto:ki6.0.7_Debian
31+
steps:
32+
- uses: actions/checkout@v3
33+
with:
34+
submodules: true
35+
- name: Run KiBot for DRC
36+
run: |
37+
# Skip run_erc, and only run run_drc as a pre-flight
38+
echo kibot -c Kicad/docs.kibot.yml -e ${{env.schema}} -b ${{env.board}} -d ${{env.dir}} -s run_erc -v -i
39+
echo "DRC skipped as this isn't a real project"
40+
ERC:
41+
runs-on: ubuntu-latest
42+
container:
43+
image: setsoft/kicad_auto:ki6.0.7_Debian
44+
steps:
45+
- uses: actions/checkout@v3
46+
with:
47+
submodules: true
48+
- name: Run KiBot for ERC
49+
run: |
50+
# Skip run_drc, and only run run_erc as a pre-flight
51+
kibot -c Kicad/docs.kibot.yml -e ${{env.schema}} -b ${{env.board}} -d ${{env.dir}} -s run_drc -v -i
52+
build:
53+
runs-on: ubuntu-latest
54+
needs: [ERC, DRC]
55+
container:
56+
image: setsoft/kicad_auto:ki6.0.7_Debian
57+
steps:
58+
- uses: actions/checkout@v3
59+
with:
60+
submodules: true
61+
- name: Get Branch Name
62+
if: github.event_name == 'push' && startswith(github.ref, 'refs/tags/')
63+
id: branch_name
64+
run: |
65+
echo ::set-output name=SOURCE_TAG::${GITHUB_REF#refs/tags/}
66+
- name: Run KiBot
67+
run: |
68+
# Skip both pre-flight checks as we've done them
69+
kibot -c Kicad/docs.kibot.yml -e ${{env.schema}} -b ${{env.board}} -d ${{env.dir}} -s run_erc,run_drc -v
70+
- name: Upload KiBot Output
71+
uses: actions/upload-artifact@v3
72+
if: ${{success()}}
73+
with:
74+
name: Build-Outputs
75+
if-no-files-found: error
76+
path: |
77+
${{env.dir}}/**
78+
!${{env.dir}}/**/*.ogv
79+
!${{env.dir}}/**/*.log
80+
!${{env.dir}}/**/*.ini
81+
- name: Create and Upload Release
82+
if: github.event_name == 'push' && startswith(github.ref, 'refs/tags/')
83+
id: create_release
84+
uses: ncipollo/release-action@v1
85+
with:
86+
artifacts: ${{env.dir}}/Neotron-Common-Hardware-*

.github/workflows/kicad-release.yml

Lines changed: 0 additions & 57 deletions
This file was deleted.

.github/workflows/kicad.yml

Lines changed: 0 additions & 41 deletions
This file was deleted.

.gitignore

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
*.000
66
*.bak
77
*.bck
8-
*.pro-bak
9-
*.kicad_pcb-bak
10-
*.sch-bak
8+
*.*-bak
119
*~
1210
_autosave-*
1311
*.tmp
14-
*-save.pro
15-
*-save.kicad_pcb
1612
fp-info-cache
13+
Kicad/Neotron-Common-Hardware-backups
14+
Kicad/*-cache.*
1715

1816
# Netlist files (exported from Eeschema)
1917
*.net

CHANGELOG.md

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,28 @@
22

33
## Unreleased Changes
44

5-
* None
5+
## v1.0.0
6+
7+
* Updated to KiCAD 6
8+
* Backported changes from Neotron Pico
9+
* Split microphone audio / bias
10+
* DNF components now not shown on iBOM
11+
* External LED drive is 5V 20mA
12+
* Two PSU control BJTs are now surface mount
13+
* Use 200mA Holtek HT7533-1 stand-by regulator
14+
* Added internal 12V input header
15+
* K7805-3AR3 control pin is protected with a zener (allows higher input voltages)
16+
* HDD LED is driven from I/O mux, not BMC
17+
* Replaced 12 MHz Crystal with JLCPCB basic part
18+
* Replaced SD Card with Amphenol part
19+
* Replaced decoupling with single 10uF
20+
* Added PC speaker output
21+
* Changed K7805-3AR3 to have ceramic output cap
22+
* Increased VGA DAC current
23+
* Replace 74HC245 with 74HC138, plus five LEDS for the now spare pins
24+
* Adds 6mm switches for power and reset
25+
* Added internal 5V/3.3V output header
26+
* Reverse polarity protection on the input
627

728
## v0.12.0
829

Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
# This KiBot script generates gerbers, drill, bom, and position files for submitting
2+
# two layer boards to JLCPCB.
3+
variants:
4+
- name: rotated
5+
comment: "Just a place holder for the rotation filter"
6+
type: kibom
7+
variant: rotated
8+
pre_transform: fix_rotation
9+
10+
filters:
11+
- name: only_jlc_parts
12+
comment: "Only parts with JLC code"
13+
type: generic
14+
include_only:
15+
- column: 'LCSC Part#'
16+
regex: '^C\d+'
17+
- name: fix_rotation
18+
comment: "Adjust rotation for JLC"
19+
type: rot_footprint
20+
negative_bottom: true
21+
# Rotation list from https://github.com/matthewlai/JLCKicadTools/blob/master/jlc_kicad_tools/cpl_rotations_db.csv
22+
rotations:
23+
- ["^R_Array_Convex_", 90]
24+
- ["^R_Array_Concave_", 90]
25+
- ["^SOT-223", 180]
26+
- ["^SOT-23", 180]
27+
- ["^SOT-89", 180]
28+
- ["^TSOT-23", 180]
29+
- ["^SOT-353", 180]
30+
- ["^SOT-363", 180]
31+
- ["^QFN-", 270]
32+
- ["^LQFP-", 270]
33+
- ["^TQFP-", 270]
34+
- ["^SOP-4_", 0]
35+
- ["^SOP-(?!18_)", 270]
36+
- ["^TSSOP-", 270]
37+
- ["^SSOP-", 270]
38+
- ["^DFN-", 270]
39+
- ["^SOIC-", 270]
40+
- ["^SOP-18_", 0]
41+
- ["^VSSOP-10_", 270]
42+
- ["^VSSOP-8_", 270]
43+
- ["^TSOP-6", 270]
44+
- ["^CP_EIA-", 180]
45+
- ["^CP_Elec_8x10.5", 180]
46+
- ["^CP_Elec_6.3x7.7", 180]
47+
- ["^CP_Elec_8x6.7", 180]
48+
- ["^CP_Elec_8x10", 180]
49+
- ["^CP_Elec_10x10", 180]
50+
- ["^(.*?_|V)?QFN-(16|20|24|28|40)(-|_|$)", 270]
51+
- ["^Bosch_LGA-8_2x2.5mm_P0.65mm_ClockwisePinNumbering", 90]
52+
- ["^PowerPAK_SO-8_Single", 270]
53+
- ["^HTSSOP-28-1EP_4.4x9.7mm*", 270]
54+
- ["^PUIAudio_SMT_0825_S_4_R*", 270]
55+
- ["^USB_C_Receptacle_HRO_TYPE-C-31-M-12*", 180]
56+
- ["ESP32-WROOM-32", 270]
57+
- ["^SOIC127P798X216-8N", -90]
58+
- ["^SW_DIP_SPSTx01_Slide_Copal_CHS-01B_W7.62mm_P1.27mm", -180]
59+
- ["^BatteryHolder_Keystone_1060_1x2032", -180]
60+
- ["^SO-14", -90]
61+
- ["^HTSSOP-", 270]
62+
- ["^USB_C_Receptacle_XKB_U262-16XN-4BVC11", 180]
63+
- ["^Relay_DPDT_Omron_G6K-2F-Y", 270]
64+
- ["^RP2040-QFN-56", 270]
65+
66+
outputs:
67+
- name: gerbers_jlcpcb.gbr
68+
comment: Gerbers - JLCPCB
69+
type: gerber
70+
dir: gerbers/jlcpcb
71+
options:
72+
dnf_filter: ''
73+
gerber_job_file: '%f-%r-%i.%x'
74+
output: '%f-%r-%i.%x'
75+
plot_footprint_values: true
76+
use_aux_axis_as_origin: true
77+
variant: ''
78+
exclude_edge_layer: true
79+
exclude_pads_from_silkscreen: true
80+
plot_sheet_reference: false
81+
plot_footprint_refs: true
82+
plot_footprint_values: false
83+
force_plot_invisible_refs_vals: false
84+
tent_vias: true
85+
use_protel_extensions: false
86+
create_gerber_job_file: false
87+
disable_aperture_macros: true
88+
gerber_precision: 4.6
89+
use_gerber_x2_attributes: false
90+
use_gerber_net_attributes: false
91+
line_width: 0.1
92+
subtract_mask_from_silk: true
93+
layers:
94+
- copper
95+
- F.SilkS
96+
- B.SilkS
97+
- F.Mask
98+
- B.Mask
99+
- Edge.Cuts
100+
101+
- name: JLCPCB_drill
102+
comment: Drill - JLCPCB
103+
type: excellon
104+
dir: gerbers/jlcpcb
105+
options:
106+
pth_and_npth_single_file: false
107+
pth_id: "PTH"
108+
npth_id: "NPTH"
109+
metric_units: false
110+
111+
- name: JLCPCB_cpl
112+
comment: "Pick and place - JLCPCB"
113+
type: position
114+
options:
115+
variant: rotated
116+
output: "%f-%r-%i.%x"
117+
format: CSV
118+
units: millimeters
119+
separate_files_for_front_and_back: true
120+
only_smd: true
121+
columns:
122+
- id: Ref
123+
name: Designator
124+
- Val
125+
- Package
126+
- id: PosX
127+
name: "Mid X"
128+
- id: PosY
129+
name: "Mid Y"
130+
- id: Rot
131+
name: Rotation
132+
- id: Side
133+
name: Layer
134+
135+
- name: JLCPCB_bom
136+
comment: "BOM - JLCPCB"
137+
type: bom
138+
options:
139+
output: "%f-%r-bom-jlcpcb.%x"
140+
exclude_filter: only_jlc_parts
141+
ref_separator: ","
142+
columns:
143+
- field: Value
144+
name: Comment
145+
- field: References
146+
name: Designator
147+
- Footprint
148+
- field: "LCSC Part#"
149+
name: "LCSC Part #"
150+
csv:
151+
hide_pcb_info: true
152+
hide_stats_info: true
153+
quote_all: true

0 commit comments

Comments
 (0)