docs: Update README and CHANGELOG with wiring implementation

Documentation Updates:
- README: Updated Schematic Design section from 6 to 9 tools
- Added "Wiring & Connections" subsection highlighting new capabilities
- Documented automatic pin discovery with rotation support
- Listed smart routing options (direct, orthogonal)
- Added net label management features
- CHANGELOG: Added Phase 1 wiring system entry with complete feature list

New Features Documented:
- add_schematic_connection with auto pin discovery
- add_schematic_net_label with orientation control
- WireManager and PinLocator implementation
- S-expression precision and format compliance

Part of Issue #26 schematic wiring implementation

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
KiCAD MCP Bot
2026-01-10 10:39:07 -05:00
parent 16703e28f9
commit d396ccd61f
2 changed files with 61 additions and 9 deletions

View File

@@ -4,6 +4,44 @@ All notable changes to the KiCAD MCP Server project are documented here.
## [2.1.0-alpha] - 2026-01-10
### Phase 1: Intelligent Schematic Wiring System
**Major Features:**
- ✅ Automatic pin location discovery with rotation support
- ✅ Smart wire routing (direct, orthogonal horizontal/vertical)
- ✅ Net label management (local, global, hierarchical)
- ✅ S-expression-based wire creation
- ✅ Professional right-angle routing
**New Components:**
- `python/commands/wire_manager.py` - S-expression wire creation engine
- `python/commands/pin_locator.py` - Intelligent pin discovery with rotation
- Updated `python/commands/connection_schematic.py` - High-level connection API
- `docs/SCHEMATIC_WIRING_PLAN.md` - Implementation roadmap
**MCP Tools Enhanced:**
- `add_schematic_wire` - Create wires with stroke customization
- `add_schematic_connection` - Auto-connect pins with routing options (NEW!)
- `add_schematic_net_label` - Add labels with type and orientation control (NEW!)
- `connect_to_net` - Connect pins to named nets (ENHANCED)
**Technical Implementation:**
- Rotation transformation matrix for pin coordinates
- S-expression injection for guaranteed format compliance
- Pin definition caching for performance
- Orthogonal path generation for professional schematics
**Testing:**
- End-to-end integration test: 100% passing
- MCP handler integration test: 100% passing
- Pin discovery with rotation: Verified working
- KiCad-skip verification: All wires/labels correctly formed
**Addresses:**
- Issue #26 - Schematic workflow wiring functionality
---
### Phase 2: JLCPCB Integration Complete
**Major Features:**

View File

@@ -204,22 +204,36 @@ The server provides 64 tools organized into functional categories. With the new
- `export_3d` - Generate 3D models (STEP/VRML)
- `export_bom` - Produce bill of materials
### Schematic Design (6 tools)
**Now fully functional with DYNAMIC SYMBOL LOADING!** (Fixed in v2.1.0 - see Issue #26)
### Schematic Design (9 tools)
**Now fully functional with DYNAMIC SYMBOL LOADING + INTELLIGENT WIRING!** (Fixed in v2.1.0 - see Issue #26)
**Component Placement:**
- `create_schematic` - Initialize new schematic from template
- `load_schematic` - Open existing schematic
- `add_schematic_component` - Place symbols with automatic dynamic loading from KiCad libraries
- `add_schematic_wire` - Connect component pins
- `list_schematic_libraries` - List symbol libraries
- `export_schematic_pdf` - Export schematic PDF
**Major Enhancement:** Now supports **ALL ~10,000 KiCad symbols** through dynamic loading! Specify any `library` and `type` (e.g., `"library": "MCU_ST_STM32F1", "type": "STM32F103C8Tx"`) and the system automatically:
- Searches KiCad symbol libraries
- Injects symbol definition into your schematic
- Creates cloneable template instance
- Places component seamlessly
**Wiring & Connections:** ⭐ NEW in v2.1.0!
- `add_schematic_wire` - Create wires between points with customizable stroke
- `add_schematic_connection` - **Auto-connect pins with intelligent routing** (direct, orthogonal)
- `add_schematic_net_label` - Add net labels (VCC, GND, signals) with orientation control
- `connect_to_net` - Connect component pins to named nets
Fallback to 13 static templates (R, C, L, LED, etc.) when dynamic loading unavailable.
**Major Enhancements:**
1. **Dynamic Symbol Loading** - Access to **ALL ~10,000 KiCad symbols**! Specify any `library` and `type` (e.g., `"library": "MCU_ST_STM32F1", "type": "STM32F103C8Tx"`) and the system automatically:
- Searches KiCad symbol libraries
- Injects symbol definition into your schematic
- Creates cloneable template instance
- Places component seamlessly
- Fallback to 13 static templates (R, C, L, LED, etc.) when needed
2. **Intelligent Wiring System** - Professional schematic wiring with automation:
- **Automatic pin discovery** - rotation-aware (0°, 90°, 180°, 270°)
- **Smart routing** - direct lines or orthogonal (right-angle) paths
- **Net label management** - local, global, and hierarchical labels
- **S-expression precision** - guaranteed KiCad format compliance
### UI Management (2 tools)
- `check_kicad_ui` - Check if KiCAD is running