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
.sch
file-
- Place elements in required position
.dsn
file-
- Import
dsn
file intoFreeRouting
and do auto-routing
- Import
.ses
file-
- Import
ses
file back toKiCAD
and export asdxf
file
- Import
.dxf
file
-
-
Step 3
-
Step 4
-
-
Solved Error
unable to find segment with an endpoint
-
DSN
file can only be exported for continuous closure outlines -
Drawings like this drawing for paper cut is not acceptable for
dsn
file. -
Change it either to close shape or remove it when import to KiCAD
-
-
Issue:
FreeRouting
is 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.