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:

      1. Build symbol and footprint library for all required electrical element
      1. Sketch schematic design
    • .sch file
      1. Place elements in required position
    • .dsn file
      1. Import dsn file into FreeRouting and do auto-routing
    • .ses file
      1. Import ses file back to KiCAD and export as dxf file
    • .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 from dsn

  • 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

      1. 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.

      1. 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

      1. 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:

    1. Stroke every line, auto-router shows nothing, no error
    1. Stroke every line, but has a larger boundary. auto-router shows nothing, error: cannot start a route inside of keepout area or boundary outlines
    1. Stroke every line but make the boundary outlines not closed, and draw a larger outline. Auto-router shows nothing, no error
    1. 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.

Next Post Previous Post