Importing a drawing into KiCAD is easy for simple mechanical design, but additional requirements of drawings are needed if the design is complicated. This blog is showing attempts I have tried to fix the issue.
-
pipeline confirmed:
-
- Build symbol and footprint library for all required electrical element
-
- Sketch schematic design
.schfile-
- Place elements in required position
.dsnfile-
- Import
dsnfile intoFreeRoutingand do auto-routing
- Import
.sesfile-
- Import
sesfile back toKiCADand export asdxffile
- Import
.dxffile
-
-
Step 3
-

-
Step 4
-

-
Solved Error
unable to find segment with an endpoint -
DSNfile can only be exported for continuous closure outlines -

-
Drawings like this drawing for paper cut is not acceptable for
dsnfile. -
Change it either to close shape or remove it when import to KiCAD
-
-
Issue:
FreeRoutingis not reading edge cut layer fromdsn -
Issue found:
- KiCAD cannot take single line cut. Closed shape needed.
-
Cut lines causing issues are marked in red.
-

-
3 potential ways to solve the issue on KiCAD with internal cut
-
Assume the position of each internal cut line is known
-
- Make the internal cut a closed shape (original cut with thickness)
-
Pro: Easy to import routed circuit back to Dxf cutter file
-
Con: Hard to cut itself a closed shape.
-
- Make internal cut outlines a block on a certain layer and treats it as an obstacle in auto-router
-
Pro: Easy to generate a block as an obstacle in drawing
-
Con: Hard to import routed circuit back to Dxf cutter file
-
- Put internal cut on a different layer in KiCAD that can be read as an obstacle in auto-router
-
The best solution for now if the auto-router will be able to read a single cut line, but cannot be edge.cut layer for sure, otherwise, board outlines cannot be found by KiCAD.
-
Fail to import drawings to 'keepout' layer since KiCAD does not have 'keepout' layer, and drawings cannot be imported on to 'wiring' layer.
-
Inkscape:- Object stroke to path can make everything looks like a bounding box
-
Attempts:
-
- Stroke every line, auto-router shows nothing, no error
-

-

-
- Stroke every line, but has a larger boundary. auto-router shows nothing, error: cannot start a route inside of keepout area or boundary outlines
-

-

-
- Stroke every line but make the boundary outlines not closed, and draw a larger outline. Auto-router shows nothing, no error
-

-

-
- Stroke only outline but make the boundary outlines not closed, and draw a larger outline. Auto-router shows properly. (no way to do it from script)
-

-

-

-
Last attempt
-
Fill and Stroke (Shift + Ctrl + F)
-
Stroke to Path
-
Union
-
Break Apart
-
Remove each outer layer (manually)
-
Export
-

-

-

-
Consider success when export for auto-routing manually. Huge challenge expected when doing it from script.