Skip to content

Releases: yaqwsx/KiKit

v1.6.0 release

18 Jul 21:43
7077ed3
Compare
Choose a tag to compare

New features

  • In case of error, KiKit tries to build the panel and places error annotation into a board with the suffix .failed.kicad_pcb. In that way, the user can easily spot where and which error happens (d1bbcdf)
  • The GUI used to be pretty limited in features it supports, e.g., you couldn't set page size due to limitations in KiCAD API. This wasn't very clear for many users. The user must now specify an output file in the GUI where the panel is saved. The PcbNew window is just used for the panel preview (8aca5bf).
  • There are new parameters you can customize for V-cuts such as text position, size, etc. (a0c1e44, 2e25a3d)

Bug fixes

  • the KiKit library symbols have now proper attributes (599be77)
  • layer selection in GUI was fixed on Windows (551e670)
  • compatibility with KiCAD 8.0.4 on Windows was ensured.
  • text on bottom layer not being mirrored on Windows was fixed (0de661c)
  • outdated dependencies were updated (e0c312a, eac56af)
  • accommodate for some numerical instabilities (69bcf0b, 28409eb, acbd021, a7873c2)
  • error reporting was improved (3636a3e, 32187ad)

How to update

v1.5.1 release

16 Mar 07:00
7a3ae34
Compare
Choose a tag to compare

This release contains no new features, just bug fixes, and improves compatibility with KiCAD 8.

  • if KiCAD didn't create kicad_dru file for a board, KiKit crashed. This is fixed (3cb3720)
  • we fixed arc welder, thus the option --post 'reconstructarcs: true' now works correctly (18b590e)
  • KiKit no longer crashes when the resulting copperfill is empty (28689df)
  • DRC rule footprint_type_mismatch is not correctly handled (96a9646)
  • References are now correctly oriented in v8 (495e55c)
  • KiKit GUI is now compatible with v8 (077c8ab)
  • When running on v8, the pcbnewTransition module should no longer break compatibility with other plugins (21c74e1)
  • the odd-even column placement was fixed (thanks @errno) (49363ea)
  • overall documentation improvements (b4188f2, 7a3ae34)

How to upgrade

Simply update the Python package. There is no need to update the PCM package.

v1.5.0 release

26 Feb 10:26
14f74e8
Compare
Choose a tag to compare

This release ships mainly with KiCAD 8 support, bug fixes, and a couple of new features. Note that this release drops support for KiCAD v6.

New features

  • KiCAD 8 support
  • Shapely 2 support to support new Linux distributions (3427a8d)
  • project variables in text fields (1a7bcae, d7b2198)
  • new internal organization of panel features that uncouples panel from features. It should improve plugin support and make the code more extendable.
    • the copper fill was already migrated to this new interface
  • hex copper fill (c3a8dd0)
    • splitting the copper fill into small islands to prevent panel warping during reflow
  • you can specify layers by their number, not only by name (b0c1db8)
  • OpenPnP fab command was added (db18615)
  • Most error messages now give hints to the user about what might be the root cause

Bug fixes

  • the partition line generator was fixed when there was no space between boards (102e4cd)
  • the naming of text justification parameters was fixed (4fcea6a)
  • added support for missing DRC exclusions (78d3d0c)
  • added support for comments in custom DRC (c651182)
  • fab command didn't work when references included numbers (dd6f505)
  • tooling holes and fiducials have proper attributes now (8a54976, 74be0db)
  • layer names are properly inherited (41f62d4)
  • do not populate attribute is now properly handled (bb87462)
  • do not generate zero-length segments (eafe49d)

How to upgrade

Simply update the Python package. There is no need to update the PCM package. Note that if you are using the official Linux debian packages, you have to use the testing repository at the moment, as the initial release missed scripting support.

Final remarks

I would like to thank all my GitHub Sponsors for their financial support. I would also like to thank all contributors who submitted a PR and everyone who tested KiKit and provided me with steps to reproduce.

v1.4.0 release

16 Sep 06:02
05a481c
Compare
Choose a tag to compare

New features

  • the show/hide references dialog now allows the application of the effects only on selected items (3a418b0)
  • tabs can be created for discontinuous substrates (072bb84
  • we now fully support custom DRC rules (f3ec40f)
    • this also means that
  • holes and fiducials have unique references, so they can be used on the PnP machine for alignment as they can be part of the POS export (d6b7294, cfe7fa1)
  • export for Neoden YY1 was added (63301c2)

Bug fixes

  • Fixed KICAD 7 compatibility:
  • Fixed invalid links to documentation
  • Fixed improper dependency specification (14bc406)
  • We enforce UTF-8 encoding when manually parsing files as Windows assumes Win1250 by default (e94d1cf, 58ef313)

How to upgrade

Simply update the Python package. There is no need to update the PCM package.

Final remarks

I would like to thank all my GitHub Sponsors and NLnet for their financial support. I would also like to thank all contributors who submitted a PR and everyone who tested KiKit and provided me with steps to reproduce.

If you like KiKit and would like to help it improve, consider supporting me via GitHub Sponsors.

v1.3.0 release

26 Feb 18:58
bf34348
Compare
Choose a tag to compare

This release brings:

  • compatibility with KiCAD 7,
  • new documentation pages,
  • several new features and
  • bug fixes.

Compatibility with KiCAD 7

New major release of KiCAD 7 was published. This release brought many incompatibilities, but all should be resolved, and KiKit is compatible with both, KiCAD 6 and KiCAD 7.

The new "In BOM" and"Do not place" options in KiCAD schematics are now supported for the fab command.

Getting everything right for v7 took a little longer than anticipated, and we didn't manage to meet this release with the release of KiCAD.

New documentation pages

We used to keep documentation in Markdown files in the repository. We now provide a documentation build as an interactive webpage available at https://yaqwsx.github.io/KiKit/. This documentation is also available for various released versions, so there should be no confusion between stable release and upstream documentation in the future. New system will also allow us to style the documentation better (e.g., checkout the new Examples section). There's definitely still a lot to improve, but the first step has been made.

New features

  • we now support asymetrical frame chamfers. Therefore, you are no longer limited to 45°, but you can choose any angle you want.
  • we also added a new option, dimensions, to the post section that will render dimensions objects showing the overall size of the panel.
  • there were multiple feature requests for supporting filleting of tabs natively without milling simulation. This was implemented as two options:
    • there is a new post option millradiusouter which simulates the milling only on the outside edges of PCB and leaves any internal features intact.
    • there is a new option, fillet for tabs that will add natural chamfering without milling simulation. However, the feature is relatively slow and can increase panel building times by 20–50 %. There are plans for speeding this up, but it will require a complete rewrite of the geometrical part of KiKit.
  • fiducials can now be propagated to stencil, so they are visible for alignment.
  • the corner patches in full-width tabs are now optional, which allows the usage of full-width tabs with rounded corners.
  • the corner tabs used to point into the middle of PCB. This created distorted tabs on narrow PCBs. We now always place the corner tabs at 45°.
  • when using boneskip parameter to skip backbones we now added vbonefirst and hbonefirst parameters to specify the offset of skipping (e.g., start at even or odd backbone).
  • the graphical interface of show/hide references was reworked. We now also allow for hiding/showing any text items that contain value of reference.
  • we added deduplication of mouse bite cuts. When two cuts should be laid one over, duplicate holes are no longer produced.
  • a time variables (e.g., hours, minutes, day, month) were added to the text options.

Bugs

  • big with Windows encoding was fixed
  • a incompatibility with Interactive HTML BOM was fixed
  • V-cuts keepouts are only placed on actually used copper layers
  • macOS installation script was fixed
  • bug in the placement of non-orthogonal tabs was fixed
  • a fall-through of argument in the fab command was fix

Misc

  • we now provide two flavors of the Docker image: one for v6 and one for v7
  • the Docker image now features KiKit as entry point, which allows for simple wrapping of the docker container for issuing commands (see documentation)

How to upgrade

Simply update the Python package. There is no need to update the PCM package.

Final remarks

I would like to thank all my GitHub Sponsors and NLnet for their financial support. I would also like to thank all contributors who submitted a PR and everyone who tested KiKit and provided me with steps to reproduce.

If you like KiKit and you would like to help it improve, consider supporting me via GitHub Sponsors.

v1.2.0 release

04 Jan 13:53
1497fb6
Compare
Choose a tag to compare

This release brings several bug fixes and small improvements in functionality.

Bugfixes:

  • not all layers were considered when using all in the layer selector
  • user layers were added to the layer selector
  • V-cut copper clearance wasn't applied to internal layers
  • GUI sections are now properly shown/hidden after importing JSON configuration

New features:

  • you can now specify fillet radius for tabs. Therefore, you can achieve a rounded board-tab interface without milling simulation.
  • panel can now be positioned via a percentage of the page width. Therefore, you can, e.g., specify 50% to place the panel in the middle of the page.
  • with regards to the previous change, the separate command now behaves in agreement with its docstring, i.e., it places the separated board in the middle of the page.

v1.1.2 release

13 Nov 09:18
933cbf9
Compare
Choose a tag to compare

This release brings several bugfixes:

  • KiKit no longer crashes on projects without an absolute path
  • formatting string {time24} was fixed
  • several documentation strings were made more accurate
  • a bug in arc reconstruction was fixed
  • component placement files never output more than two decimal places as more places are not accepted by most fab houses
  • we removed dependency on zip executable (so all commands now work well on Windows)
  • KiKit can correctly handle schematic sub-sheets that used to be top-level sheets.

With these bugfixes the following options were added:

  • --debug flag for the fab command
  • we added an option to disable arc reconstruction in a separate command.

All users are encouraged to upgrade.

v1.1.1 release

25 Sep 16:42
85818b6
Compare
Choose a tag to compare

This release fixes packaging problem (see details). There are no new features. If you managed to install KiKit, there is no need to update.

v1.1.0 release

23 Sep 05:42
c5cd5a3
Compare
Choose a tag to compare

This release brings a large number of new features and several bug fixes. Since the feature list is quite long, we discuss them in depth in a related blog post.

This is also the first version that drops KiCAD 5 support, as most of the new features require KiCAD 6. If you use KiCAD 5 you can continue to use v1.0.5.

Overview of the new features

  • KiKit CLI now supports plugins that allow you to tweak the process (e.g., specify a custom layout)
  • DRC exclusions and net classes are now properly handled
  • Improved copper fill and zones handling
  • Sheet placement and origin specification
  • Cutouts in full tabs
  • Text improvements
  • Footprint correction patterns for assembly (automatic rotation)
  • User-specified annotations
  • GUI improvements
    • option to load and save a preset
    • platform-aware commands
  • Skippable backbones
  • You can specify minimal panel size
  • macOS & Flatpak support

Full Changelog: v1.0.5...v1.1.0

How to upgrade

There is no need to update the PCM plugin, updating the python package is sufficient.

Acknowledgments

Having all these new features & bug fixes wouldn’t be possible without the support of my Github Sponsors. Your support allows me to allocate more time to maintain my open-source projects. I really appreciate your trust in me.

I would also like to thank all of you who hired me to fix a bug in KiKit, implement a feature or build a custom workflow for you. When I started KiKit two years ago, I didn’t imagine what could be accomplished using KiKit.

v1.0.5 release

08 Apr 06:48
4606dfd
Compare
Choose a tag to compare

This is only a small release that fixes problems with a broken dialog when no KiKit backend is found in the GUI plugin. This affects only the new users, if you already use KiKit, there is no need to update at the moment.