A planar coil is a coil that is made from flat traces in some printing process like PCB or IC manufacturing, instead of
being wound from wire. A few weeks ago, I needed one such planar coil that
Project State
Currently, circular coils are special cased. Their layouts are directly generated, without the use of polygon
offsetting. Windings are efficiently approximated using circular arcs. The circular coil layout code is solid, and
contains decent (albeit not infallible) parameter sanity checks. Its main limitation is that sometimes, clearances can
be violated a bit.
The arbitrary shape code path is less stable, and produces faulty output in some cases. The most common error is
crossing traces near the first vertex of the polygon when the polygon has highly convex or concave parts. I'm still
improving this code path, but as long as you check the output, any errors it produces should be easy to fix by hand.
If you would like to contribute, I'd welcome any ideas on the arbitrary shape code path. I think there is no single
optimal solution here, and a generic algorithm that can be adjusted to favor for instance shape accuracy versus winding
smoothness would be nice.
All project links are listed on `https://jaseg.de/projects/kicoil/`__. You can check out the code on my git at
`https://git.jaseg.de/kicoil.git`__. Issues are tracked on codeberg at `https://codeberg.org/jaseg/kicoil`__. The kicad
addon can be installed from the KiCad plugin manager, and you can install the standalone kicoil python package from
PyPI.