I upgraded to 5.1.7-1 and the documentation seems to predate this by a few years so I am asking this again as the process may be out there. It has been at least 5 years since this was first requested:
“Is there a way to save groups of PCB components so that they may be moved, copied etc. I continue to have large amounts of interlacing after compacting my designs and the failure rate is pretty high doing this by hand–not much different than the old “pen and pencil” method.”
Eelik–regarding your video–Unfortunately the top of the right-click menu gets chopped, but looking at my PCB editor this would be the item marked “locking” which does not have grouping. I vaguely recall this video now-I think it is part of a “special” release? I am uneasy about applying these–I am a bit surprised that the grouping did not make the present rev—it is very fundamental and I am glad it is being pursued.
What you are describing is a “selection”.
This “selection” is a very temporary thing, and as soon as you “unselect” the selection, or try to make a new selection the old selection falls apart in separate entities.
The new “Group” in KiCad V5.99 is a much more permanent thing.
You can create multiple groups.
These groups also get saved (in the PCB file?), so they persist even after exit and restart of KiCad.
These groups also have some editing capabilities. You can remove items from a group (which still leaves them on the PCB)
A group can be “ungrouped”, which just removes the “group” part, so they turn into individual parts again. (Sort of “explode”)
Groups can also be nested. If you have nested groups, then you can “enter” a group, and then manipulate the sub groups into the top level groups separately.
Just to shed further illumination on this topic- the design of a good CAD (IMHO) is in its ability to prevent redundant work. In particular hand renaming 100 pins or reconnecting them after a small incremental move should not have to happen. And reuse of common assemblies of parts either in the same design or another one should be doable. Very similar to drafting CADs like Solidworks.
So in the case I stated above, I had to move 10 similar parts around like a puzzle until I got the best fit. Reselecting each of their 15 consituant parts over and over again would take hours and is very risky. Once you start to get a good fit, the parts “interlace” and you cannot select them with a window. (It takes forever to get a board remade these days and they are just too small to patch in many cases!) So we want to be able to “group parts within the PCB design”.
And further, I don’t want to re-design common things like a switcher supply each time I need it-- I want to copy if from another design, keeping its schematic and PCB indentifiers so I don’t have to retype in all the ? marks. This would entail “saving groups in a holding file”. Again very common in a CAD program.
Just curious how useful this “grouping” would be for you. You did not mention this in you last post.
KiCad has grown quite a lot in the time I’ve been using it (maybe 5 years?) and the speed of development is accelerating over the last few years. A few weeks ago I installed V5.99 mainly for getting to know it’s new features and for finding and reporting bugs, and Lots of things have been added or improved in V5.99 (soon to become V6). A nice overview of the changes are in the thread below, which has accumulated over 300 posts in a year and a half.
But still. there are quite some things that would sound logical but are still missing. Support for circular tracks for example is just now slowly getting some support, while you would expect it to be standard. There is an open request for teardrops which has been in the bug tracker for 12 years.
There are some scripts for teardrops, but as of yet none have been directly integrated into KiCad.
The “grouping” looks like it’s already a useful feature, an in the long run I sort of expect it to be used to integrate sub projects such as your “power supply” example in other projects. Sub assemblies and multi PCB projects are not yet part of KiCad. Same for panelisation. There are some scripts for it, but no (real) integrated support in KiCad itself.
As an open source project, development is probably a lot more chaotic then for a commercial project. I have no close ties with “the developers” and have no insight into the priorities. (There is a roadmap)
If you want to look into time saving features, then have a look of the 60+ “side projects” around KiCad on:
Thanks Paul. To answer your question, I would put “grouping” and “move with tracks” as the two sole most important features that KiCAD is missing at this point. They exist with other layout software and as I mention both, while different, revolve around saving the user a large amount of work which is the sole point of a CAD.
Regarding the “group move” it is part of a larger system that allows templating of work.
It spills over into the schematics–,For example when I copy a cluster of a Schematic, most of the time I want to preserve. optionally, the reference values so that I can adjust them. If they all reduce to “question marks” I can end up with unrelated numbering schemes for similar groups. (Having the auto-numbering on the other hand is still useful as an option). We don’t know the inner code of the software but I would bet this is not to far from what is already there.
Regardless, in almost any design that I do, I usually start with several designs from many others. I would like to copy selected parts (cut paste is best!)-- both the schematics and PCBs onto ONE page and then parse them as needed. (If the values get replaced with “??” they lose their connection and relation. It is some hand work to adjust them but worth the effort here).
Then I want to be able to move those elements about independently. Today I had to fit a board into a 1.5" enclosure. It took hours to go 2-sided and move about and compact the parts aggregates as it is so easy to not select or select to much of the parts. Then on another PCB yesterday I was trying to move about 12 seven element switching circuits with interleaving. It took forever and I finally just spaced them equally but not very efficiently.
While talking about reducing work I will mention another major need–move with tracks. I had to move a 100 pin PIC today–only about 1mm to the left. All of the tracks of course became disconnected and it took me-probably-20 minutes to reconnect them all. In ExpressPCB for example the tracks move with the part. In many, many cases this is fine. In those where it is not you just re-adjust them ( I am not asking to recalculate the routing here!)
So I will certainly look at the newest release when I get a chance-your comment was very helpful. I realize that KiCAD is open source and perhaps a bit chaotic-but they did a darned good job and I want to stick with it. Paid software can be worse by the way–get into a row with Fusion 360! Takes forever!
Really appreciated your feedback
Fritz on a snowy night on Cape Cod
Dragging Footprints with connections is also being implemented in KiCad V5.99. A small demo as appetizer:
For some of the other issues you mention have also been fixed already in the nightlies and for others there are (at least partial) workarounds.
This has been addressed with a “Paste Special” command, and it makes it also easy to move a part of a schematic to another hierarchical sheet.
Cut & Paste also works between different instances of Eeschema.
It does not yet work in Pcbnew. The current workaround (also for V5.1) is to open Pcbnew in “standalone” mode (which is directly from your OS, without KiCad’s project manager in between). In standalone mode you can load multiple PCB’s onto a single sheet. This is sometimes also used for making panels manually.
Re-doing a layout to make it more dense is indeed a time consuming job, but the “drag with connections” should help here…
This looks like a job for the “replicate layout” script. (search around for that). With this script you put a design on a hierarchical sheet, then make multiple links to that sheet (as many as you need). Then you do the layout for one, and the script does all the others for you. It works quite good.
A long time ago I bought “UltiBoard” twice. First a DOS version, later a windows version. I got about 15 CD’s with updates for the windows version. (From before Internet happened) Each version introduced more new bugs then it solved and I really felt like a beta tester. Eventually I just stuck with a version that worked “reasonably” and I knew how to work around the bugs, and I even did not even try to install newer versions anymore.
Another EDA program I bought was EdWin. That program did not remove connections from the netlist if you deleted a wire in the schematic. That was 150 guilders down the drain right there. Yuck.
The business model of “autodesk” is not compatible with my brain. Let’s leave it at that.
I have gone a long way with KiCAD but I really need to sit down and look at the nightlines etc. I still believe that for our small lab KiCAD makes a lot of sense.
I am not adverse to paying reasonable amounts for good well supported software but Autodesk and others have gone beyond what I consider acceptable for a small lab, business or even for a larger one. So I have favored open-source over the years and it is surprising how well they hold up against paying software with little support and not much else to offer.