Releases: yaqwsx/KiKit
v1.7.1 release
v1.7.0 release
New features
- KiCAD 9 support
- A preset for JLC PCB V-cuts was added
- V-Cuts validation was added (f972993).
- this feature warns the user if V-cuts cuts through the original PCB body
- Add the option to name the manufacturing files after the project in JLC PCB assembly (f418066)
Bug fixes
- Fix KiKit crashing on closed polygons in the substrate (e19408a)
- Fix 3D printed stencil for KiCAD 8 (a8d1c05)
- Add a missing DRC exclusion (571be59)
- Fix edge detection in files with renamed layers: (309b937)
- Fix JLCPCB bottom component orientation (8c980f3) and update the gerber settings (5de2b13)
- The GUI was optimized (03edf1f)
How to update
- upgrade KiKit backend (see https://yaqwsx.github.io/KiKit/latest/installation/upgrading/)
- upgrade the symbols and footprint library via PCM
- there is no need to update the PCM plugin
v1.6.0 release
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
- upgrade KiKit backend (see https://yaqwsx.github.io/KiKit/latest/installation/upgrading/)
- upgrade the symbols and footprint library via PCM
v1.5.1 release
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
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
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
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 thepost
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
optionmillradiusouter
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.
- there is a new
- 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 addedvbonefirst
andhbonefirst
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
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
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
This release fixes packaging problem (see details). There are no new features. If you managed to install KiKit, there is no need to update.