Morgan Allen's KiConnect Lets FreeCAD Work with KiCad Projects
Initial release brings board designs from KiCad into FreeCAD — but Allen has plans for full bidirectional synchronization.
Morgan Allen has released the first public version of a tool that aims to bridge the worlds of FreeCAD and KiCad — by allowing circuit board designs made in KiCad 9 to be imported into FreeCAD.
"KiConnect uses the KiCAD 9 API [Application Programming Interface] to import boards, copper layers, and footprints into FreeCAD and eventually [will include] bidirectional control," Allen explains of the tool. "A ton of feature[s] already being worked on or to be ported from test macros. It had come up quite a bit at the [Open Toolchain Foundation] hackathon ~2 years ago, which kicked off some of my early attempts, thankfully now I understand WB design much better and have a great development workflow down."
In its first public release, the tool allows users to import boards, add vias, footprint pads, and footprint 3D models, and while the bidirectional support is still a work-in-progress will automatically reload the board outline if changed in KiCad. "Tracks can be loaded and drawn as simple LineSegment but more work is needed to draw properly 'widthed', and particularly while trying to eliminate overlapping lines," Allen says of the current functionality.
Additionally planned features include support for text and graphical elements, multi-board support, panelization of board designs, and true bidirectional support — synchronizing all changes from KiCad to FreeCAD and vice-versa.
The initial release is available in Allen's GitHub repository under the reciprocal GNU Less General Public License 3; a future release will be packaged as a "proper FreeCAD add-on," he writes.