We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
MRMCD2024 Designing PCBs with Python: faebryk
Learn how faebryk, an open-source Python library, revolutionizes PCB design by enabling code-based layouts with automated validation, version control, and modular abstractions.
-
Faebryk is an open-source Python library for PCB design that allows creating board layouts through code rather than traditional GUI tools
-
Key benefits include:
- Version control integration with Git
- Automated component selection and validation
- Electric rules checking
- Ability to create reusable modules and abstractions
- Integration with existing Python ecosystem and libraries
- Collaborative development capabilities
-
The library supports:
- Footprint definitions
- Netlist generation
- Interface definitions (power, USB, Ethernet, etc.)
- Parameter systems for components
- Unit handling and tolerance specifications
-
Workflow involves:
- Starting with abstract design
- Gradually refining and adding details
- Generating output files for manufacturing
- Optional export to KiCAD for manual finishing
-
Advanced features:
- Component database integration
- Automated checks for voltage mismatches
- Support for hierarchical designs
- Math calculations and assertions
- Visual schematic generation
-
The project is:
- Merging with EtoPile for broader capabilities
- Focused on being beginner-friendly
- Actively developing automated routing features
- Building a component server for curated parts
- Growing an open-source ecosystem
-
Current limitations:
- Documentation is still developing
- Auto-routing is not fully implemented
- Some manual steps may still be required
- Integration with existing PCB tools needs improvement