Happy Christmas, KiCad 6.0 is here!

I have fixed up that plugin a touch this week, so might be working now. Please open an issue on the github repo if you can’t get it working.
Speaking of KiBuzzard I’ve just got it included in the KiCad Plugin/Content Manager, so you can install it directly.

I’ve been on nightly so long that libraries have already been on the new system. v6 will work with all your existing libraries. I think the main issue is when you want to add a new symbol to a library, then you’ll need to “update it”, which is just a matter of saving it. But at this point the library now wont work with v5.

2 Likes

Saw it as I ordered several plugins from the highly convenient plugin manager, so fingers crossed! Not tried it yet but there are definitely projects I will be porting to 6.0 just to relabel them if it works :grin:.

Oh, no! :astonished: Copying items by just hovering and pressing C was one of the best time-saving UI features of KiCad. Not that I don’t want select-and-copy also, but I don’t see why they couldn’t co-exist, as they have for a long time :frowning:

2 Likes

Fear not, hover actions still work. Ctrl-D will duplicate the item without selecting it, and you should be able to set the shortcut to C if you prefer.

4 Likes

This is a part which I think may take a little bit of time and thought. I don’t think I will maintain two sets though, all new/updated designs will use V6 parts etc (with updates if needed). Two particular thoughts have come to mind from my initial use;

  • There is migration for schematic library parts, but not for footprints - footprints haven’t changed format as such but they have changed. New fields are added, such as ‘tstamp’, few minor things moved, but this only happens when a footprint is opened and saved. Can this be safely left to happen as footprint are edited? Probably for many years this will mean my internal library will have some parts “updated” and some part not. How will these interact when shared between multiple designs?
  • Should you invest the time to make your own internal library an addable library with the new plugin module? Currently I have a separate Git repo and then include that as a Git sub-module in each design.
1 Like

One of the new things I love so far about KiCad 6.0.1 (please upgrade if you haven’t from 6.0) is the ability to control the hierarchy page numbers. I used to have to hand-edit my schematic files in a text editor to get annotation numbering to look logical before and it would often still get messed up after an edit. Now you can change the page number when you edit the properties of a hierarchical sheet and produce OCD-salving page numbering like this:

4 Likes

Ha, and I only just figured out recently how to re-order hierachical sheets in v5 - delete the sheet symbol, then un-do the deletion and it reappears at the bottom of the list :slight_smile:

1 Like

Also, there is now Ctrl-C on hover, where it copies the element and selects it (or highlights it) to indicate something has happened, then if you hit Ctrl-V it appears under your mouse and you can move it until you click somewhere to paste it there.

I guess we have more options now.

Yes! So many little things like this that have fixed slightly irritating limitations. It feels a lot more grown up now. The page numbering is in v6.0.0 though, I think v6.0.1 is just bug fixes.

One of my other favourites is keepout areas now allowed in footprints. Really useful for Antenna keepouts.

I was about to say “but unfortunately it won’t yet let you do circular keepouts which are needed for bottom component wavesoldering keepouts around TH pins”. Though I just found that combining with another new feature - create keepout from selection - you can actually do that now too (though it’s a polygon with loads of points rather than a native circle).

2 Likes

Alas, not the case. As far as I can tell, C cannot be made to copy without a modifier as it did in v5. So far I’m really hating what’s been done to the schematic editor in v6. Instead of fixing stuff that’s needed fixing forever (like dialogs where escape and enter don’t work, for instance) they chose to take all the things that annoyed me about PCBNew in v5 and put them into the schematic editor. There is SO much more keyboarding now - constantly having to contort my hand to hit the cmd key to duplicate stuff, constantly having to hit M for move instead of just grabbing stuff and moving it as you could in v5, constantly having to hit escape to de-select, and constantly having to undo when I forget that things don’t automatically deselect after having been moved, as they did in v5. A complete buzz kill and drag on productivity.

The new icons are drab, indistinct, and less informative. V5’s “disk save” icon at the upper left was great - you could always verify with a quick glance whether you have unsaved changes or not. The new icon is a floppy disk :astonished: and gives no indication of saved status.

Hopefully the layout editor will have some actual improvements, I do need the new DRC for high-voltage work but may well end up staying with v5 for everything else.

What platform are you on? C, V, and D are working as copy, paste, and duplicate for me (with no modifier). Also, you should in theory be able to import your hotkeys from 5.1. Preferences->Hotkeys->Import Hotkeys. I think 5.1’s hotkeys are at ‘/home/mike/.config/kicad/Eeschema.hotkeys’ for me. This should have paths for other OSs KiCad | 6.0 | English | Documentation | KiCad.

Mouse drag should be settable in preferences:

No idea about the save icon. The title bar of any unsaved schematic/PCB will start with a * if it’s unsaved though.

Please file bugs for any dialogs that aren’t working with the Enter/Escape key. If you click, Help->Report Bug in whatever tool you’re using, it will automatically take you to the bug report page and fill in all the annoying version info required.

2 Likes

I was setting the hot key for the Schematic Editor; when I set Duplicate to “c” in the “Common” section it works, yay.

Thanks for the tip about unsaved status, I still prefer the green arrow of V5.

Thanks also for the tip about bug reporting - I ran into a really nasty one that caused an immediate app quit when moving sheet boxes around that I will try to find time to report. Basically I had two sheets, call them A and B. B was originally to the right of A and there were connections between their hierarchical pins. Then I decided B should go to the left of A. I deleted the connections between them and moved B over to the left. Thereafter, creation of any new sheet between A and B, or moving another sheet between A and B, caused an immediate app quit. I solved the problem by deleting B and re-creating it. MacOS Mojave, which is officially unsupported.

1 Like

There is a security advisory attached to the 6.0.2 release (four days old as-at time of posting), relating to gerber and excellon files (not KiCad files AFAICT). I believe this affects all versions of 5.x too, so if you want to keep using 5.x and open gerbers from other sources you may want to seek a patched version. I haven’t upgraded to 6.0.2 but will do this morning, as there are sure to be other improvements incorporated.

Does anyone know a good way to be notified when KiCad stable versions are released, other than regularly visiting the website? I was hoping to subscribe, rather than poll for this kind of info.

I have been tearing my hair out with custom footprint pad creation in 6.0.x. For anyone seeking to do the same, you will find the workflow different to 5.x and earlier.

Initially, I searched for “custom footprint creation kicad 6” which turned up almost nothing of relevance to version 6. I saw in the release notes that there was a WYSIWIG footprint editor now. With no further documentation hints or guides out there, I assumed that any copper overlapping with the anchor pad would be considered on the same net (WYSIWIG, after all). Hooray for being able to draw filled circles, polygons and rectangles in V6 in COPPER!

However, I just got to DRC and have 1300 errors due to copper clearance. It clearly wasn’t as WYSIWIG as I thought! :grin:

So, back to the search engine. Only hint I found was https://www.reddit.com/r/KiCad/comments/rrgvn6/v6_creating_pad_from_the_selected_shape/ which didn’t flag in my initial search because I was focussed on footprint, not pad :roll_eyes:.

What worked for me:

  • Open the footprint editor and place your anchor footprint. If you want to draw your other shapes now, go ahead.
  • Right click on the anchor footprint and select Edit pad as graphic shapes or hotkey Ctrl+E. You should now see non-copper layers fade to improve the contrast of the copper/pad, and an information bar across the top of the window pane saying “Pad Edit mode. Press Ctrl+E again to exit”.
  • If you haven’t yet drawn your arbitrary pad shapes, do so now. I haven’t tested if it is layer sensitive - I stuck to F.Cu and B.Cu copper layers because we can draw anything in those layers now that we want and don’t need to mess around in User.Drawings etc.
  • Select all the shapes in the pad, as well as the anchor (using the shift key and mouse).
  • Either hotkey Ctrl+E or select Finish Pad Edit from the mouse right-click context menu, ensuring you don’t deselect any of the shapes as you do so.
  • You should now have the arbitrary shapes included in the custom pad. You can confirm this by pressing hotkey E or menu/edit on the pad, and the pad will be rendered in isolation (so not showing any proximal copper if it isn’t part of the pad definition. You can also go to the Custom Shape Primitives tab along the top (to the right of General and Clearance Overrides and Settings) and you should see all the additional shapes listed.

Hope this helps you save some frustration. Feel free to copy/edit/paste into any other forums/locations you may think will benefit from the list above.

1 Like

Another method you can use is to add “net tie” to the ‘keywords’ of a footprint. This tells KiCAD to ignore DRCs generated internal to the footprint (but still works to other footprints). This does remove some protections so could lead to shorts if you’re not careful, but if you know you already trust the footprint and want to stop the errors then this is a good solution in some situations - e.g. was recommended to me by one of the lead developers through https://www.kipro-pcb.com/ for MIFA PCB Antenna footprints.

1 Like

Two things. Don’t forget to update to 6.0.5, for bug fixes etc.

The other one is more emotional. I just

  1. Lost several hours of work
  2. Overwrote an old project

I will briefly explain to help prevent you making the same mistake. I wanted to make a new project, based on an old one. I used “import schematic sheet content” in a new project schematic to import the root hierarchical sheet from the old project. Tada, all the subordinate sheets come too. Edit the sheets etc etc.

A few hours later, save, exit, open another project. Come back to the new project and all the sheets are empty. Project backups don’t contain any schematic files apart from the root and the new ones I added. Turns out all the edits I was making to the imported subordinate schematic sheets were happening on the original project, despite them appearing in my folder tree for the new project after the initial import (but disappeared on reopening).

Please be very careful about hierarchical import until a) fixed or b) we found out what special brand of stupidity I was carrying out earlier.

Issue posted on Gitlab!


UPDATE 2022-Jun-29
I had a response on Gitlab, prompting me to make a test project to see if I could reproduce the previous-project-destroying effect. I could and the minimal test project and steps to reproduce are in the issue comments now.

So, WARNING - DO NOT USE “Insert Schematic Sheet Content” IN V6 UNTIL THEY CONFIRM AN UPDATE HAS FIXED IT. I will obviously be tracking this as importing hierarchical sheets is one of the main ways I make my designs modular and save a great deal of time and missing things out by starting from scratch each time I want a lithium cell charger and protection etc.

Good (bad!) find! That sucks. Will be upgrading to v6.0.5 soon too.

Obligatory - put everything in version control and then you can’t lose data like this.

1 Like

You found it!

I think I can restore from the normal KiCad 6 backups system. But you are totally right that telling the computer when to save state and why that state is relevant is a much better way. Client projects are version controlled - just not the internal board I was cribbing schematic content from!

Update: KiCad devs are actively discussing this and making decisions about the expected / desired future behaviour of “Insert Schematic Sheet Content”. If you have an opinion on changing it to make new copies that are independent of the source schematics or keeping it so that all dependent projects are affected by changes to a single schematic file, please let them know: Insert schematic sheet content seems to lose my content for hierarchical insertion and overwrites the referenced project schematic contents instead of editing the new one (#11823) · Issues · KiCad / KiCad Source Code / kicad · GitLab