Refine repository structure for KiCad 9 optimization

- Add dedicated /kicad/ directory with organized subdirectories for libraries, schematics, gerbers, plots, and backups
- Create comprehensive KiCad 9 library structure (symbols, footprints, 3D models)
- Add manufacturing-ready directories for production files (gerbers, drill, pick-and-place)
- Update all README files with KiCad-specific documentation and workflows
- Add KiCad-optimized .gitignore file for proper version control
- Create KICAD-PROJECT-TEMPLATE.md comprehensive usage guide
- Add hardware assembly documentation and BOM management
- Include detailed manufacturing file generation instructions
- Add docs structure with design-notes and user-manual directories
- Provide complete workflow from design to manufacturing with quality checklists
This commit is contained in:
2025-08-03 16:27:46 +07:00
parent dabbd358f8
commit 046f66f6eb
21 changed files with 1703 additions and 68 deletions

View File

@@ -1,3 +1,63 @@
# /manufacturing
Production and assembly files.
Production-ready files for PCB fabrication and assembly.
## Purpose
This directory contains final, production-ready files for manufacturing your KiCad project:
- Final Gerber files for PCB fabrication
- Drill files for hole drilling
- Pick and place files for automated assembly
- Assembly instructions for production
## Directory Structure
- `gerbers/` - Final Gerber files for PCB fabrication
- `drill/` - Drill files and hole specifications
- `pick-and-place/` - Pick and place files for automated assembly
- `assembly/` - Production assembly instructions and documentation
## Manufacturing Workflow
1. **Design Complete**: Finalize your KiCad design
2. **Generate Files**: Create production files from KiCad
3. **Review**: Verify all files using Gerber viewers
4. **Package**: Prepare files for manufacturer submission
5. **Submit**: Send to PCB fabricator and/or assembler
## File Generation from KiCad
### Gerber Files
1. Open PCB (`.kicad_pcb`)
2. **File → Fabrication Outputs → Gerbers**
3. Select all required layers
4. Set output to `manufacturing/gerbers/`
5. Generate files
### Drill Files
1. In Gerber plot dialog, click **Generate Drill Files**
2. Set output to `manufacturing/drill/`
3. Configure drill file format
4. Generate files
### Pick and Place
1. **File → Fabrication Outputs → Component Placement**
2. Set output to `manufacturing/pick-and-place/`
3. Configure format (CSV recommended)
4. Generate files
## Quality Assurance
- Review all files with Gerber viewer
- Verify drill file completeness
- Check pick and place coordinates
- Validate BOM against placement files
- Test with manufacturer's online tools
## Manufacturer Submission
- Package all files in organized ZIP
- Include clear documentation
- Specify PCB specifications (thickness, color, finish)
- Provide assembly requirements
- Include contact information for questions
## Version Control
- Tag releases with manufacturing file sets
- Include version numbers in file names
- Document any changes from previous versions
- Maintain traceability to design files

View File

@@ -0,0 +1,99 @@
# /manufacturing/drill
Drill files and hole specifications for PCB fabrication.
## Purpose
This directory contains drill files that specify the location, size, and type of all holes in your PCB. These files are essential for PCB manufacturing and must be included with your Gerber files.
## File Types
- **`.drl`**: Excellon drill files (standard format)
- **`.xln`**: Alternative Excellon format
- **`.txt`**: Drill report with hole sizes and counts
- **`.pdf`**: Drill drawing for visual reference
## Standard Drill Files
```
drill/
├── ProjectName.drl # Main drill file (PTH + NPTH)
├── ProjectName-PTH.drl # Plated through holes only
├── ProjectName-NPTH.drl # Non-plated through holes only
├── ProjectName-drill_report.txt # Drill sizes and quantities
└── ProjectName-drill_map.pdf # Visual drill map
```
## Generating Drill Files from KiCad
1. Open PCB (`.kicad_pcb`)
2. **File → Fabrication Outputs → Gerbers**
3. Click **Generate Drill Files**
4. Configure settings:
- **Output directory**: `manufacturing/drill/`
- **Drill file format**: Excellon
- **Drill units**: Millimeters (preferred)
- **Zeros format**: Suppress leading zeros
- **Drill origin**: Absolute coordinates
5. Generate files
## Drill File Settings
### Recommended Settings
- **Format**: Excellon
- **Units**: Millimeters
- **Coordinate format**: 3.3 (mm) or 2.4 (inches)
- **Zero suppression**: Leading zeros suppressed
- **Drill origin**: Absolute (0,0 at board origin)
### File Options
- **PTH and NPTH in single file**: Most common
- **Separate PTH/NPTH files**: Some manufacturers prefer
- **Generate drill report**: Always recommended
- **Generate drill map**: Helpful for verification
## Drill Sizes and Types
### Common Drill Sizes
- **0.2mm - 0.3mm**: Vias and small component holes
- **0.6mm - 0.8mm**: Standard component leads
- **1.0mm - 1.2mm**: Larger component holes
- **2.0mm+**: Mounting holes and connectors
### Hole Types
- **PTH (Plated Through Holes)**: Electrical connections
- **NPTH (Non-Plated Through Holes)**: Mounting holes, mechanical
- **Via holes**: Layer-to-layer connections
- **Component holes**: Through-hole component mounting
## Quality Control
- [ ] All holes present in drill file
- [ ] Drill sizes match component requirements
- [ ] PTH/NPTH classification correct
- [ ] Drill report shows reasonable hole counts
- [ ] No duplicate or overlapping holes
- [ ] Drill sizes within manufacturer capabilities
## Manufacturer Specifications
Check with your PCB manufacturer for:
- **Minimum drill size**: Typically 0.15mm - 0.2mm
- **Maximum drill size**: Usually 6mm+
- **Drill tolerance**: Typically ±0.05mm
- **Aspect ratio limits**: Depth vs. diameter ratio
- **Via specifications**: Minimum via size and annular ring
## Common Issues
- **Missing holes**: Check component footprints
- **Wrong drill sizes**: Verify component specifications
- **Incorrect hole types**: PTH vs NPTH classification
- **Overlapping holes**: Check component placement
- **Out of tolerance**: Verify manufacturer capabilities
## Drill Report Contents
The drill report typically includes:
- Total hole count by size
- PTH vs NPTH breakdown
- Drill tool assignments
- Coordinate listings
- File generation settings
## Integration with Gerbers
Drill files must be coordinated with Gerber files:
- Same coordinate system and origin
- Matching hole locations with pads
- Consistent units (mm or inches)
- Same board outline reference

View File

@@ -0,0 +1,87 @@
# /manufacturing/gerbers
Final production Gerber files for PCB fabrication.
## Purpose
This directory contains the final, production-ready Gerber files that will be sent to your PCB manufacturer. These files define all the copper layers, solder mask, silkscreen, and board outline.
## File Types
- **`.gbr`**: Gerber files for each PCB layer
- **`.gbrjob`**: Gerber job file (KiCad 6+) with layer stack information
- **`.zip`**: Packaged files ready for manufacturer submission
## Standard Gerber Files
```
gerbers/
├── ProjectName-F_Cu.gbr # Front copper layer
├── ProjectName-B_Cu.gbr # Back copper layer
├── ProjectName-In1_Cu.gbr # Inner layer 1 (4+ layer boards)
├── ProjectName-In2_Cu.gbr # Inner layer 2 (4+ layer boards)
├── ProjectName-F_SilkS.gbr # Front silkscreen
├── ProjectName-B_SilkS.gbr # Back silkscreen
├── ProjectName-F_Mask.gbr # Front solder mask
├── ProjectName-B_Mask.gbr # Back solder mask
├── ProjectName-F_Paste.gbr # Front solder paste (SMT)
├── ProjectName-B_Paste.gbr # Back solder paste (SMT)
├── ProjectName-Edge_Cuts.gbr # Board outline/edge cuts
├── ProjectName-job.gbrjob # Gerber job file
└── ProjectName-Gerbers-v1.0.zip # Packaged for submission
```
## Generating Production Gerbers
1. Open your final PCB design (`.kicad_pcb`)
2. **File → Fabrication Outputs → Gerbers**
3. Configure settings:
- **Output directory**: `manufacturing/gerbers/`
- **Plot format**: Gerber
- **Include layers**: All copper, mask, silk, paste, edge cuts
- **Options**: Check "Use Protel filename extensions" if required
4. Click **Plot**
5. Click **Generate Drill Files** (saves to `/manufacturing/drill/`)
## Quality Control Checklist
- [ ] All required layers present
- [ ] Board outline properly defined
- [ ] No missing copper connections
- [ ] Silkscreen doesn't overlap pads
- [ ] Solder mask openings correct
- [ ] Component references visible and readable
- [ ] Drill holes align with pads
- [ ] File sizes reasonable (not empty or corrupted)
## Manufacturer Requirements
Different manufacturers may require specific settings:
- **File format**: RS-274X (standard)
- **Units**: Millimeters (preferred) or inches
- **Zero suppression**: Leading zeros suppressed
- **Coordinate format**: 3.6 (mm) or 2.5 (inches)
- **Aperture format**: Embedded apertures (standard)
## Pre-submission Verification
1. **Gerber Viewer**: Use KiCad Gerber Viewer or online tools
2. **Layer Stack**: Verify correct layer order
3. **Drill Alignment**: Check drill holes align with pads
4. **Dimensions**: Verify board size and hole sizes
5. **Manufacturer Check**: Use manufacturer's online Gerber viewer
## Common Issues to Avoid
- Missing edge cuts layer
- Incorrect drill file format
- Silkscreen over pads
- Missing solder mask openings
- Incorrect layer naming
- Empty or corrupted files
## Packaging for Submission
Create a ZIP file containing:
- All Gerber files (`.gbr`)
- Gerber job file (`.gbrjob`)
- Drill files (from `/manufacturing/drill/`)
- README with specifications
- BOM (from `/hardware/bom/`)
## File Naming Convention
Use consistent naming that matches your project:
- `ProjectName-LayerName.gbr`
- `ProjectName-v1.0-Gerbers.zip`
- Include version numbers for tracking

View File

@@ -0,0 +1,119 @@
# /manufacturing/pick-and-place
Pick and place files for automated PCB assembly.
## Purpose
This directory contains pick and place files that specify the exact position, rotation, and side of each component for automated assembly machines. These files are essential for SMT (Surface Mount Technology) assembly.
## File Types
- **`.csv`**: Component placement data (most common)
- **`.txt`**: Alternative text format
- **`.pos`**: Position file format
- **`.cpl`**: Component placement list
## Standard Pick and Place Files
```
pick-and-place/
├── ProjectName-all-pos.csv # All components (top + bottom)
├── ProjectName-top-pos.csv # Top side components only
├── ProjectName-bottom-pos.csv # Bottom side components only
├── ProjectName-centroid.csv # Component centroids
└── assembly-notes.txt # Special assembly instructions
```
## Generating Pick and Place Files from KiCad
1. Open PCB (`.kicad_pcb`)
2. **File → Fabrication Outputs → Component Placement (.pos)**
3. Configure settings:
- **Output directory**: `manufacturing/pick-and-place/`
- **File format**: CSV
- **Units**: Millimeters
- **Files**: Separate files for top and bottom
- **Include**: Only SMD components (exclude through-hole)
4. Generate files
## File Format and Contents
### Standard CSV Format
```csv
Ref,Val,Package,PosX,PosY,Rot,Side
C1,100nF,C_0603_1608Metric,25.4,15.24,0,top
R1,10k,R_0603_1608Metric,30.48,15.24,90,top
U1,STM32F401,LQFP-64_10x10mm_P0.5mm,50.8,25.4,0,top
```
### Column Descriptions
- **Ref**: Component reference designator (C1, R1, U1, etc.)
- **Val**: Component value (100nF, 10k, STM32F401, etc.)
- **Package**: Footprint/package name
- **PosX/PosY**: X,Y coordinates in mm (board origin)
- **Rot**: Rotation angle in degrees (0-360)
- **Side**: Component side (top/bottom)
## Coordinate System
- **Origin**: Typically bottom-left corner of PCB
- **Units**: Millimeters (preferred) or inches
- **X-axis**: Left to right (positive direction)
- **Y-axis**: Bottom to top (positive direction)
- **Rotation**: 0° = component oriented as designed
## Component Rotation Standards
### Standard Orientations
- **0°**: Component as placed in footprint
- **90°**: Rotated 90° counterclockwise
- **180°**: Rotated 180°
- **270°**: Rotated 270° counterclockwise (or -90°)
### Common Component Orientations
- **Resistors/Capacitors**: Usually 0° or 90°
- **ICs**: Pin 1 indicator position matters
- **Connectors**: Orientation critical for mating
- **Polarized components**: Polarity marking alignment
## Assembly Machine Requirements
Different assembly machines may require:
- **Coordinate format**: Decimal places and units
- **Rotation format**: 0-360° vs ±180°
- **Origin location**: Corner vs center of board
- **File format**: CSV, text, or proprietary formats
- **Component data**: Additional fields like height, type
## Quality Control Checklist
- [ ] All SMD components included
- [ ] Through-hole components excluded (unless specified)
- [ ] Coordinates within board boundaries
- [ ] Rotation values reasonable (0-360°)
- [ ] Component values match BOM
- [ ] Package names match footprints
- [ ] Top/bottom side assignment correct
- [ ] No duplicate reference designators
## Assembly Notes
Document special requirements:
- **Component orientation**: Critical alignments
- **Assembly sequence**: Order of placement
- **Special handling**: ESD sensitive components
- **Rework access**: Components that may need replacement
- **Test points**: Accessible after assembly
- **Fiducials**: Reference points for machine alignment
## Fiducial Markers
Include fiducial information for machine alignment:
- **Global fiducials**: Board-level alignment (minimum 3)
- **Local fiducials**: Fine-pitch component alignment
- **Fiducial coordinates**: Precise X,Y positions
- **Fiducial size**: Typically 1mm diameter
## Integration with Other Files
Pick and place files work with:
- **BOM**: Component specifications and quantities
- **Gerbers**: PCB layer information
- **Assembly drawings**: Visual component placement
- **Paste stencil**: Solder paste application
## Manufacturer Communication
Provide to your assembly house:
- Pick and place files
- Component orientation requirements
- Special assembly instructions
- Acceptable component substitutions
- Quality requirements and testing