47 files ·
28.8 MB at d0c43aa Download ZIP
.gitignore 724 B
fp-lib-table 287 B
sym-lib-table 294 B
"Docs
BMI160\357\274\2101.png" 450 KB
Docs
BMI160-Gyroscope-Accelerometer-Pinout.jpg 39.2 KB
pinout-v2.png 127 KB
Imports
Gimbal_Components.kicad_sym 14.8 KB
Imports/3D
3x4x2 tact button.step 112 KB
3x4x2mm_Tact_Sw.stp 559 KB
ESP32-S3-WROOM-1U.STEP 4.3 MB
OLED_0.91_128x32.stp 820 KB
Imports/easyeda2kicad
easyeda2kicad.kicad_sym 24.3 KB
oled.kicad_sym 1.7 KB
Imports/easyeda2kicad/easyeda2kicad.3dshapes
CONN-SMD_8P-P1.25_WAFER-GH1.25-8PLB.wrl 256 KB
CONN-TH_S8B-ZR-LF-SN.step 1.5 MB
CONN-TH_S8B-ZR-LF-SN.wrl 179 KB
SOT-23-5_L2.9-W1.6-H1.1-LS2.8-P0.95.wrl 372 KB
SOT-23-6_L2.9-W1.6-H1.5-LS2.8-P0.95.wrl 442 KB
SW-TH_4P-L4.5-W4.5-P3.00-LS4.8.wrl 95.0 KB
SW-TH_SS-12D11G5R.step 425 KB
SW-TH_SS-12D11G5R.wrl 41.5 KB
USB-C_SMD-TYPE-C-31-M-12.wrl 450 KB
Imports/easyeda2kicad/easyeda2kicad.pretty
CONN-SMD_8P-P1.25_WAFER-GH1.25-8PLB.kicad_mod 2.6 KB
CONN-TH_S8B-ZR-LF-SN.kicad_mod 2.8 KB
SOT-23-5_L3.0-W1.7-P0.95-LS2.8-BR.kicad_mod 1.8 KB
SOT-23-6_L2.9-W1.6-P0.95-LS2.8-BL.kicad_mod 1.5 KB
SW-SMD_4P-L3.4-W3.3-P2.00-LS4.0-TL.kicad_mod 1.5 KB
SW-TH_4P-L4.5-W4.5-P3.00-LS4.8.kicad_mod 1.8 KB
SW-TH_SS-12D11G5R.kicad_mod 3.4 KB
USB-C_SMD-TYPE-C-31-M-12.kicad_mod 3.2 KB
Imports/easyeda2kicad/oled.3dshapes
OLED-TH_L38.0-W12.0_HS91L02W2C01.wrl 107 KB
Imports/easyeda2kicad/oled.pretty
OLED-TH_L38.0-W12.0_HS91L02W2C01.kicad_mod 1.5 KB
Imports/gimbal_components.pretty
2-6S BEC.kicad_mod 3.5 KB
6S_BEC.kicad_mod 3.5 KB
BMI160_Breakout_Board.kicad_mod 6.8 KB
nRF52840_ProMicro.kicad_mod 16.1 KB
(version 1) # Custom Design Rules (DRC) for KiCAD 7.0 (Stored in '<project>.kicad_dru' file). # # Matching JLCPCB capabilities: https://jlcpcb.com/capabilities/pcb-capabilities # # KiCad documentation: https://docs.kicad.org/master/id/pcbnew/pcbnew_advanced.html#custom_design_rules # # Inspiration # - https://gist.github.com/darkxst/f713268e5469645425eed40115fb8b49 (with comments) # - https://gist.github.com/denniskupec/e163d13b0a64c2044bd259f64659485e (with comments) # TODO new rule: NPTH pads. # Inner diameter of pad should be 0.4-0.5 mm larger than NPTH drill diameter. # JLCPCB: "We make NPTH via dry sealing film process, if customer would like a NPTH but around with pad/copper, our engineer will dig out around pad/copper about 0.2mm-0.25mm, otherwise the metal potion will be flowed into the hole and it becomes a PTH. (there will be no copper dig out optimization for single board)." # TODO: new rule for plated slots: min diameter/width 0.5mm # JLCPCB: "The minimum plated slot width is 0.5mm, which is drawn with a pad." # TODO new rule: non-plated slots: min diameter/width 1.0mm # JLCPCB: "The minimum Non-Plated Slot Width is 1.0mm, please draw the slot outline in the mechanical layer(GML or GKO)"" (rule "Track width, outer layer (1oz copper)" (layer outer) (condition "A.Type == 'track'") (constraint track_width (min 0.127mm)) ) (rule "Track spacing, outer layer (1oz copper)" (layer outer) (condition "A.Type == 'track' && B.Type == A.Type") (constraint clearance (min 0.127mm)) ) (rule "Track width, inner layer" (layer inner) (condition "A.Type == 'track'") (constraint track_width (min 0.09mm)) ) (rule "Track spacing, inner layer" (layer inner) (condition "A.Type == 'track' && B.Type == A.Type") (constraint clearance (min 0.09mm)) ) (rule "Silkscreen text" (layer "?.Silkscreen") (condition "A.Type == 'Text' || A.Type == 'Text Box'") (constraint text_thickness (min 0.15mm)) (constraint text_height (min 1mm)) ) (rule "Pad to Silkscreen" (layer outer) (condition "A.Type == 'pad' && B.Layer == '?.Silkscreen'") (constraint silk_clearance (min 0.15mm)) ) (rule "Edge (routed) to track clearance" (condition "A.Type == 'track'") (constraint edge_clearance (min 0.3mm)) ) #(rule "Edge (v-cut) to track clearance" # (condition "A.Type == 'track'") # (constraint edge_clearance (min 0.4mm)) #) # JLCPCB restrictions ambiguous: # Illustration: 0.2 mm, 1&2 layer: 0.3 mm, multilayer: "(0.15mm more costly)" # This rule handles diameter minimum and maximum for ALL holes. # Other specialized rules handle restrictions (e.g. Via, PTH, NPTH) (rule "Hole diameter" (constraint hole_size (min 0.2mm) (max 6.3mm)) ) (rule "Hole (NPTH) diameter" (layer outer) (condition "!A.isPlated()") (constraint hole_size (min 0.5mm)) ) # TODO: Hole to board edge ≥ 1 mm. Min. board size 10 × 10 mm (rule "Hole (castellated) diameter" (layer outer) (condition "A.Type == 'pad' && A.Fabrication_Property == 'Castellated pad'") (constraint hole_size (min 0.6mm)) ) # JLCPCB: "Via diameter should be 0.1mm(0.15mm preferred) larger than Via hole size" (illustration shows diameters for both dimensions) # JLCPCB: PTH: "The annular ring size will be enlarged to 0.15mm in production." (rule "Annular ring width (via and PTH)" (layer outer) (condition "A.isPlated()") (constraint annular_width (min 0.075mm)) ) (rule "Clearance: hole to hole (perimeter), different nets" (layer outer) (condition "A.Net != B.Net") (constraint hole_to_hole (min 0.5mm)) ) (rule "Clearance: hole to hole (perimeter), same net" (layer outer) (condition "A.Net == B.Net") (constraint hole_to_hole (min 0.254mm)) ) (rule "Clearance: track to NPTH hole (perimeter)" # (condition "A.Pad_Type == 'NPTH, mechanical' && B.Type == 'track' && A.Net != B.Net") (condition "!A.isPlated() && B.Type == 'track' && A.Net != B.Net") (constraint hole_clearance (min 0.254mm)) ) (rule "Clearance: track to PTH hole perimeter" (condition "A.isPlated() && B.Type == 'track' && A.Net != B.Net") (constraint hole_clearance (min 0.33mm)) ) # TODO: try combining with rule "Clearance: PTH to track, different nets" (rule "Clearance: track to pad" (condition "A.Type == 'pad' && B.Type == 'track' && A.Net != B.Net") (constraint clearance (min 0.2mm)) ) (rule "Clearance: pad/via to pad/via" (layer outer) # (condition "(A.Type == 'Pad' || A.Type == 'Via') && (B.Type == 'Pad' || B.Type == 'Via') && A.Net != B.Net") (condition "A.isPlated() && B.isPlated() && A.Net != B.Net") (constraint clearance (min 0.127mm)) )