# /kicad/libraries/3dmodels

Custom 3D models for your KiCad project footprints.

## File Formats
- **STEP files (`.step`)**: Preferred for mechanical accuracy and CAD integration
- **VRML files (`.wrl`)**: Legacy format, still supported by KiCad 3D viewer
- **WRL files (`.wrl`)**: Alternative VRML extension

## Naming Convention
- Use descriptive names matching your footprints
- Examples:
  - `USB-C_Receptacle.step`
  - `STM32F4_LQFP64.step`
  - `Header_2x10_2.54mm.wrl`

## Model Guidelines
- **Scale**: Ensure models are in millimeters (KiCad's native unit)
- **Origin**: Position the model origin to match the footprint's origin
- **Orientation**: Align the model with the footprint's orientation
- **Detail Level**: Balance detail with file size for performance

## File Organization
```
3dmodels/
├── connectors/
│   ├── USB-C_Receptacle.step
│   ├── Header_2x10_2.54mm.step
│   └── Terminal_Block_3pin.step
├── mcu/
│   ├── STM32F4_LQFP64.step
│   └── ESP32_Module.step
├── sensors/
│   ├── BME280_LGA8.step
│   └── MPU6050_QFN24.step
└── passive/
    ├── Resistor_0603.step
    ├── Capacitor_0805.step
    └── LED_0603.step
```

## Associating Models with Footprints
1. Open footprint in KiCad Footprint Editor
2. Go to **Footprint Properties**
3. Click **3D Settings** tab
4. Add 3D model path (use relative paths)
5. Adjust offset, rotation, and scale if needed

## Model Sources
- **Manufacturer websites**: Often provide STEP models
- **Component distributors**: Digi-Key, Mouser, etc.
- **3D model libraries**: GrabCAD, 3D ContentCentral
- **KiCad official libraries**: For standard components
- **Custom modeling**: Create your own in CAD software

## Best Practices
- Use relative paths: `${KIPRJMOD}/kicad/libraries/3dmodels/`
- Keep file sizes reasonable (< 1MB per model when possible)
- Test models in KiCad 3D viewer before finalizing
- Document model sources and modifications
- Version control important custom models
