Skip to content

piyushbag/awesome-pcb-workflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Awesome PCB Workflow Awesome

banner

Open-source tools for the complete PCB design workflow.
AI-assisted EDA Β· Schematic Capture Β· SPICE Simulation Β· Signal Integrity Β· Layout Automation Β· DFM Β· Fabrication CI/CD Β· Hardware Testing Agents

GitHub Stars GitHub Forks PRs Welcome License: CC0-1.0 Works with OrCAD Works with KiCad

banner

Contents


πŸ’‘ Why This Exists

Most "awesome" PCB lists stop at schematic capture. Real hardware engineering is a 12-stage pipeline, and broken toolchains in any stage kill productivity. This repo covers everything β€” from design intent to tested board β€” with open-source tools that plug into your existing OrCAD-based flow or replace proprietary stages entirely.

  • 🏭 Full pipeline coverage β€” requirements, schematic, simulation, layout, DFM, fabrication, test, and documentation.
  • πŸ”§ OrCAD-first integration notes β€” every tool documents how it connects to OrCAD Capture, PSpice, and Allegro.
  • πŸ€– AI-augmented β€” modern scripting and AI tools that eliminate repetitive manual design tasks.
  • πŸ“¦ Curated, not dumped β€” each entry is verified, actively maintained, with a one-line "why use it" note.
  • πŸ†“ 100% open source β€” no EDA vendor lock-in, no paywalls, no telemetry.

πŸš€ Quick Start

Get a complete open-source PCB environment running in under 5 minutes:

# 1. Install KiCad β€” the open EDA that reads/writes OrCAD netlists
brew install --cask kicad          # macOS
sudo apt install kicad             # Ubuntu/Debian
winget install KiCad.KiCad        # Windows

# 2. Install ngspice for SPICE simulation
brew install ngspice               # macOS
sudo apt install ngspice           # Ubuntu/Debian

# 3. Clone this repo for workflow scripts and templates
git clone https://github.com/piyushbag/awesome-pcb-workflow.git
cd awesome-pcb-workflow

# 4. Install Python toolchain helpers
pip install -r requirements.txt    # kibot, kibom, kicost, skidl, pymeasure

πŸ”₯ Featured This Month

Tool What it does Stage
🐍 faebryk Graph-based schematic design in Python β€” AI-assisted part selection and constraint solving. Schematic
⚑ SpiceSharp Spice# is a cross-platform electronic circuit simulator based on Berkeley Spice - the mother of commercial... Simulation
🏭 InvenTree Full inventory + BOM management system (self-hosted, API-driven). BOM
🏭 KiKit CLI panelization: mouse-bites, V-cuts, fiducials, automated tab placement from JSON config. Fabrication
πŸ“– KiBot PDF Export Auto-generate schematic PDFs and assembly drawings in CI. Testing

πŸ“¬ Watch this repo to get notified when new tools are added each month.


πŸ—Ί Workflow Map

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    PCB DESIGN WORKFLOW                          β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                                                 β”‚
β”‚  πŸ“‹ Requirements & Specification                                β”‚
β”‚       β”‚                                                         β”‚
β”‚       β–Ό                                                         β”‚
β”‚  πŸ“ Schematic Capture ──── πŸ“¦ Component Library                 β”‚
β”‚       β”‚                         β”‚                               β”‚
β”‚       β–Ό                         β–Ό                               β”‚
β”‚  ⚑ SPICE Simulation       πŸ’° BOM Management                     β”‚
β”‚       β”‚                                                         β”‚
β”‚       β–Ό                                                         β”‚
β”‚  πŸ“‘ Signal Integrity & EMC Analysis                             β”‚
β”‚       β”‚                                                         β”‚
β”‚       β–Ό                                                         β”‚
β”‚  πŸ–₯️  PCB Layout / EDA ──── 🧊 3D Visualization                  β”‚
β”‚       β”‚                                                         β”‚
β”‚       β–Ό                                                         β”‚
β”‚  βœ…  Design Rule Check (DRC) & DFM Analysis                     β”‚
β”‚       β”‚                                                         β”‚
β”‚       β–Ό                                                         β”‚
β”‚  🏭  Fabrication Prep ──── πŸ”© Panelization ──── πŸ‘οΈ Gerber QA    β”‚
β”‚       β”‚                                                         β”‚
β”‚       β–Ό                                                         β”‚
β”‚  πŸ§ͺ  Test & Verification ──── πŸ” Debug                          β”‚
β”‚       β”‚                                                         β”‚
β”‚       β–Ό                                                         β”‚
β”‚  πŸ“š  Documentation ──── 🌐 Version Control ──── πŸš€ Release      β”‚
β”‚                                                                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“‚ Tools by Stage

πŸ“‹ Requirements & Specification

Capture and manage design requirements before a single wire is drawn.

Tool Description License
πŸ“ Doorstop Git-native requirements management β€” trace requirements to schematic notes and design properties. MIT
πŸ—‚οΈ Obsidian Free-form engineering notebook: decisions, constraints, block diagrams, links. Free
πŸ“Š draw.io / diagrams.net Open-source block diagram and architecture drawing tool. Apache-2.0
πŸ“‹ OSHW Checklist Open hardware compliance and requirements checklist from OSHWA. β€”
πŸ—οΈ Mermaid Markdown-based diagram-as-code for system architecture in docs. MIT

πŸ“ Schematic Capture

Draw, annotate, and export schematics. Every tool documents its OrCAD interoperability.

Tool Description OrCAD Integration License
🟦 KiCad Industry-leading open EDA β€” schematic + PCB in one suite. 50k+ community symbols. Import OrCAD .dsn via netlist converter. GPL-3.0
🟩 LibrePCB Modern, clean EDA with strict library management and real-time ERC. Netlist import via KiCad bridge. GPL-3.0
⚑ SKiDL Describe schematics in pure Python β€” generate netlists programmatically, version-controllable. Export to OrCAD-compatible .net. MIT
πŸ”Ά atopile Code-driven schematic design with type safety, reuse, and auto part selection. Exports to KiCad / Gerber. MIT
🟫 gEDA/gschem Veteran open-source EDA with deep Scheme scripting and netlist flexibility. Netlist export compatible. GPL-2.0
🌐 Horizon EDA Constraint-based EDA with real-time DRC, pooled parts library. β€” GPL-3.0
🐍 faebryk Graph-based schematic design in Python β€” AI-assisted part selection and constraint solving. Netlist export. MIT
πŸ–₯ PcbDraw Convert your KiCAD board into a nicely looking 2D drawing suitable for pinout diagrams. β€” MIT
🟦 kicanvas The KiCAD web viewer. β€” NOASSERTION
⚑ CircuitPro Circuit Pro β€” a Mac-native PCB design tool. Free for personal and commercial use. β€” NOASSERTION

OrCAD Users: See our full guide β†’ docs/orcad-to-kicad.md


πŸ“¦ Component Libraries & BOM Management

Keep component data clean, costs low, and inventory tracked.

Component Libraries

Tool Description License
πŸ“š KiCad Official Libraries 50,000+ verified symbols and footprints, community-maintained. CC-BY-SA-4.0
πŸ” Component Search Engine Free EDA models for 35M+ parts β€” OrCAD, KiCad, Altium formats. Free
⚑ SnapEDA Industry-standard free component library with verified footprints. Free
πŸ“¦ Ultra Librarian 13M+ free CAD models for all major EDA tools including OrCAD. Free
πŸ—„οΈ KiCad Library Convention Standards guide for building clean, standardized libraries. β€”
πŸ”¬ Octopart Multi-distributor component search with parametric filtering. Free

BOM Management & Costing

Tool Description OrCAD Integration License
πŸ“Š KiBOM Configurable BOM export from KiCad schematics to CSV, HTML, Excel. β€” MIT
πŸ’° KiCost Real-time pricing from Mouser, Digi-Key, Arrow, LCSC. Works with OrCAD netlists. MIT
πŸ“‹ InteractiveHtmlBom Interactive BOM with visual component highlighting on PCB image. OrCAD BOM CSV β†’ ibom. MIT
🏭 InvenTree Full inventory + BOM management system (self-hosted, API-driven). REST API integration. MIT
πŸ“¦ Partkeepr Open-source parts management with stock tracking and datasheets. CSV import. AGPL-3.0
🌐 Kitspace BOM Builder Web-based BOM building with multi-distributor price lookup. β€” AGPL-3.0

⚑ SPICE & Circuit Simulation

Simulate before you spin a board. Catch topology mistakes for free.

Tool Description Best For License
πŸ”¬ ngspice The open-source SPICE standard β€” transient, AC, DC, noise, Monte Carlo. All-purpose circuit simulation. BSD
πŸ“ Qucs-S Qt GUI for ngspice/Xyce with RF S-parameter and harmonic balance support. RF circuits with GUI. GPL-2.0
🐍 PySpice Python API to ngspice β€” scriptable parametric and sweep simulation. Design space exploration. GPL-3.0
⚑ Xyce High-performance parallel SPICE by Sandia National Labs. Large mixed-signal circuits. GPL-3.0
🌐 Qucs Circuit simulator with S-parameters, Verilog-A, and harmonic balance. RF/microwave, S-param. GPL-2.0
πŸ“Š SchemDraw Draw and annotate schematics in Python, pair with PySpice. Quick topology docs. MIT
⚑ ahkab a SPICE-like electronic circuit simulator written in Python. Circuit simulation. GPL-2.0
⚑ SpiceSharp Spice# is a cross-platform electronic circuit simulator based on Berkeley Spice - the mother of commercial... Circuit simulation. MIT
⚑ EEcircuit A browser-based SPICE circuit simulator. Circuit simulation. MIT

OrCAD PSpice Users: .cir netlists from PSpice are directly compatible with ngspice. See our migration guide β†’ docs/pspice-to-ngspice.md


πŸ“‘ Signal Integrity & EMC Analysis

Catch SI/EMC problems before fab β€” boards are expensive, simulation is free.

Tool Description License
🌊 openEMS Open-source 3D EM field simulator using FDTD β€” free alternative to HFSS/CST. GPL-3.0
πŸ“‘ atlc Arbitrary transmission line calculator β€” 2D cross-section impedance from geometry. GPL-2.0
🐍 scikit-rf Python RF/microwave analysis: S-params, network analysis, de-embedding, calibration. BSD
πŸ”§ Saturn PCB Toolkit Free Windows app: impedance, via current, trace width, differential pair calculators. Freeware
🌐 MMTL Multiconductor transmission-line solver for complex trace geometries. GPL-2.0
πŸ“Š KiCad Impedance Calculator Built-in PCB trace and via impedance calculator inside KiCad. GPL-3.0
πŸ”¬ Sonnet Lite Free tier of Sonnet EM planar 3D EM simulator. Freeware
⚑ AppCAD Free RF design and impedance tool from Broadcom/Avago. Freeware
πŸ“‘ RuView Ο€ RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence... MIT
πŸ”§ rtl_433 Program to decode radio transmissions from devices on the ISM bands (and other frequencies). GPL-2.0
πŸ“‘ FISSURE The RF and reverse engineering framework for everyone. Follow and β˜… to show your support! GPL-3.0
πŸ“‘ Artemis Radio Signals Recognition Manual. GPL-3.0

πŸ–₯ PCB Layout & EDA

Place, route, and verify your board geometry.

Tool Description OrCAD Integration License
🟦 KiCad pcbnew World-class open PCB layout with interactive router, DRC, and 3D view. Import via IPC-2581 or KiCad netlist. GPL-3.0
🌐 Horizon EDA layout Real-time DRC, constraint-driven routing, pooled library. β€” GPL-3.0
🐍 pcbnew Python API Full PCB manipulation and automation via Python scripting inside KiCad. β€” GPL-3.0
πŸ“ LibrePCB layout Beginner-friendly with strict design rule enforcement, clean UI. β€” GPL-3.0
🎨 FreeRouting Java-based autorouter that plugs into KiCad and accepts DSN files. DSN netlist import. GPL-3.0
🟩 TopoR Lite Topological autorouter with topology-preserving rerouting (free lite). Netlist import. Freeware

3D Visualization & Mechanical Co-Design

Tool Description License
🧊 KiCad 3D Viewer Real-time 3D PCB viewer with STEP, VRML, and IDF export. GPL-3.0
πŸ”© FreeCAD KiCad StepUp Bi-directional mechanical/PCB co-design β€” changes sync both ways. LGPL-2.0
πŸ“ OpenSCAD Parametric enclosure design from PCB dimensions via script. GPL-2.0
🌐 Diode.io Browser-based 3D PCB viewer for sharing designs with stakeholders. Free

🏭 Fabrication & Gerber Tooling

Generate, verify, and send fab-ready files.

Tool Description License
πŸ“‹ KiBot CI/CD automation: Gerbers, drill, BOM, PDF docs, 3D models β€” one YAML config. GPL-3.0
πŸ‘οΈ Gerbv The open-source Gerber/Excellon viewer β€” battle-tested and reliable. GPL-2.0
🌐 Tracespace Web-based Gerber viewer with layer compositing and drill visualization. MIT
🐍 pcb-tools Python library for reading, writing, and transforming Gerber files. MIT
🐍 pygerber Modern Python Gerber renderer with DFM checking. MIT
πŸ“¦ jlcpcb-tools KiCad plugin: one-click JLCPCB order with LCSC BOM generation. MIT
πŸ” OpenBoardView View .brd / .bvr board files for repair and reverse engineering. MIT
πŸ“Š GerberTools Gerber file manipulation, panelization, and merging utility. MIT

πŸ”© DFM & Panelization

Make your board manufacturable at scale.

Tool Description License
🏭 KiKit CLI panelization: mouse-bites, V-cuts, fiducials, automated tab placement from JSON config. MIT
πŸ“ DFMNow Free DFM analysis for Gerber files β€” checks clearances, annular rings, min trace. Freeware
🌐 JLCPCB DFM Checker Web-based DFM checker targeting JLCPCB design rules. Free
🐍 gerber-panelizer Script-driven Gerber panelization with configurable spacing. MIT
πŸ”§ PCB Shopper Compare Gerber specs across 30+ PCB manufacturers β€” price and lead time. Free

πŸ§ͺ Testing & Verification

Verify the board works before it goes to production.

Automated Test Frameworks

Tool Description License
🐍 PyMeasure Python instrument control: Keysight, Tektronix, R&S, Stanford Research, Fluke. MIT
πŸ”¬ OpenTAP Industrial test automation platform β€” write test steps in C# or Python plugins. MPL-2.0
πŸ“‘ sigrok / PulseView Open-source logic analyzer frontend: 100+ protocol decoders, scope integration. GPL-3.0
πŸ”Œ OpenOCD Open On-Chip Debugger β€” JTAG/SWD for firmware-level test on hardware. GPL-2.0
🐍 cocotb Python-based HDL co-simulation for FPGA/ASIC co-verification. BSD
πŸ§ͺ labgrid Lab automation framework: coordinate power, serial, JTAG across a test farm. LGPL-2.1

Boundary Scan & JTAG

Tool Description License
πŸ” UrJTAG Universal JTAG boundary scan β€” supports 1000+ device BSDL files. GPL-2.0
πŸ”¬ pyBSL Python boundary scan library for board-level testing. MIT

πŸ€– AI & Automation

Let code do the repetitive design work.

Tool Description License
⚑ atopile Code-first hardware design β€” generate schematics from typed, reusable modules. MIT
🐍 SKiDL Describe PCB schematics in Python β€” parametric, versionable, testable in CI. MIT
πŸ€– KiBot CI/CD pipeline for PCB: fab outputs, docs, and checks on every Git push. GPL-3.0
🧠 faebryk Graph-based PCB design framework with AI-assisted part selection. MIT
🐍 KiCad Python Scripting Full pcbnew Python API β€” automate placement, routing, and export. GPL-3.0
πŸ”¬ spade Hardware description language for PCB-level digital design. EUPL-1.2
🌐 JITX Design-intent language for PCB automation (free tier available). Proprietary (free tier)
🐍 gdsfactory Python-driven photonic / mixed PCB chip layout with automated DRC. MIT
πŸ”§ pcbflow Python scripting layer over KiCad pcbnew for programmatic board generation. MIT

πŸ“š Documentation & Collaboration

Document designs so every engineer on the team can understand them.

Tool Description License
🌐 Kitspace Git for hardware β€” public PCB project hosting with 3D preview and BOM pricing. AGPL-3.0
πŸ“¦ Aisler Shareable PCB project pages with fabrication integration. Free
πŸ“– KiBot PDF Export Auto-generate schematic PDFs and assembly drawings in CI. GPL-3.0
🏷️ IPC-2581 Open fab data format replacing Gerber/ODB++ β€” KiCad exports natively. Standard
πŸ“ Git for Hardware Git workflow for PCB: what to commit, binary handling, CI integration. β€”

πŸŽ“ Learning Resources

Standards & Reference

Resource Description
πŸ“ IPC Standards IPC-2221 (design), IPC-7711 (rework), IPC-A-610 (acceptance criteria) β€” free previews.
πŸ“‘ Henry Ott EMC Tech Tips Free EMC design reference from the author of the industry bible.
πŸ”¬ Eric Bogatin SI Resources Free signal integrity resources, webinars, and rule-of-thumb guides.

Courses & Community

Resource Description
πŸŽ“ Phil's Lab (YouTube) Best free KiCad + hardware engineering YouTube channel β€” end-to-end board builds.
🏫 Contextual Electronics Project-based PCB design courses from beginner to advanced.
πŸ’¬ r/PrintedCircuitBoard Design reviews, community Q&A, and tool recommendations.
🌐 EEVblog Forum Veteran electronics engineering community β€” SI, EMC, test, production.
πŸ“– Hackaday.io Open hardware project hosting with community feedback.

πŸ”Œ OrCAD Integration Cheatsheet

Quick reference for plugging OrCAD into the open-source ecosystem:

OrCAD Capture  ──(netlist .net export)──▢  KiCad pcbnew / SKiDL / KiBOM
OrCAD PSpice   ──(.cir netlist)─────────▢  ngspice / PySpice / Xyce
OrCAD Allegro  ──(IPC-2581 export)──────▢  KiKit panelization / KiBot CI / FreeCAD
OrCAD BOM      ──(CSV export)───────────▢  KiCost / InvenTree / InteractiveHtmlBom
OrCAD 3D       ──(STEP export)──────────▢  FreeCAD / OpenSCAD
OrCAD Tool Open-Source Equivalent Migration Guide
OrCAD Capture KiCad Eeschema / SKiDL docs/orcad-to-kicad.md
OrCAD PSpice ngspice / PySpice docs/pspice-to-ngspice.md
OrCAD Allegro KiCad pcbnew docs/orcad-integration/
OrCAD BOM KiCost + InteractiveHtmlBom docs/orcad-integration/

Full integration guides β†’ docs/orcad-integration/


⭐ Star History

Star History Chart

Star the repo to get notified when new tools are added, and to help other engineers find this resource.


banner

Built with ❀️ for hardware engineers, by hardware engineers.

⭐ Star Β Β·Β  🍴 Fork Β Β·Β  πŸ› Report an Issue Β Β·Β  πŸ“¬ Submit a Tool

About

Open-source tools for the complete PCB design workflow: AI-assisted EDA, schematic capture, SPICE simulation, signal integrity, layout automation, DFM & fabrication CI/CD, hardware testing agents. OrCAD & KiCad compatible.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages