SKiDL: a Python-based schematic design language


#21

It’s still ongoing. I’ve built a few boards with it. You can see more here.


#22

Together with KiPart, SKiDL is definitely my favourite KiCad companion, well done indeed xesscorp :slight_smile:

One killer feature for me (if not already in the works/thinking) would be panelizing of gerbers as a last step of the whole SKiDL workflow/api. I’m currently using a SVG/Inkscape hack to panelize my boards when baking them at home:

$ cat crop_svg.sh
#!/bin/sh

inkscape -g -f `pwd`/kicad-plot-SVG-F.Cu.svg --verb=FitCanvasToDrawing --verb=FileSave --verb=FileClose --verb=FileQuit

Combined with a simple HTML file in dire need for Jinja2/templatization:

$ cat panelize.html
<html><head></head><body>
  <object type="image/svg+xml" data="kicad-plot-SVG-F.Cu.svg"></object>
  <br/>
  <object type="image/svg+xml" data="psone_grafitti-F.Cu.svg"></object>
</body></html>

I have little clue how easily hackable gerbers are to achieve the same goal (panelize), but since the topic has been brought before on kicad forums I thought it might be a nice wish, combined with proper/automated management of mouse bites between boards, it can really be a huge time saver for both users and fabs, IMHO.


#23

I’m glad that KiPart and SKiDL are helping you out!

As for panelizing, that’s an area I haven’t tried to automate. I just use the PCBNEW ‘add board’ feature to combine several PCBs. I have a mousebite component that I place around each board outline when I create them. The component has two versions of footprints, one being a mousebite with several drills and the other just being a straight piece of PCB edge. Then I just change the footprint at each location where a mousebite is or is not needed.