PCB function Pack And Move “dumb” or “smart”?

I think you misinterpreted my writing.
I am of course aware that the final footprint placement has very little correlation with the symbols in the schematic, but that was not what I meant.

What I meant was a two step process. First you select a section (for example an SMPS IC with all surrounding passives) on the schematic, group them in the PCB editor, possibly outside of Edge.Cuts. And if the relative positions are the same, you use this in the second step to grab individual footprints without first looking at the RefDes or using the highlight function. This does seem useful to save a bit of time, but I agree that it’s a small benefit.

yes and that packed gang can then be faced to face each other as well as possible, like mouth-to-mouth or hand-in-hand as much as possible as this logics must be possible to generate in the programming if the programmer is alert and interested in this, i.e interested in changes to the better why not just for the sake of it :slight_smile:

You can download the source code, take a crack at it . . . . just for the sake of it.

Reproduce schematic layout in PCB layout

ian-ross/kicad-plugins: Miscellaneous plugins for KiCad

good idea but bad enough I cant understand programming but some good ideas I have for clever happy programmers.

The trouble with using the schematic is that is it meant to be a clear guide to the function of the circuit, not the positioning. A common mistake by novices is to forget this.

as optimised as possible

The key element of any optimisation is defining the cost function in the first place. You can’t just say “I want it more optimised”, that’s completely open-ended. Or rather, you can, but there’s nothing further that can be done. It’s like saying “I want things to be better”. Don’t we all?

What is a “good” layout for this function is really hard to even define on the first place. Total ratsnest length is a quite naive metric with many modern boards, as if you have power/ground nets, much of that length will vanish once you drop your vias. Some other signals don’t care a jot about their length, for some it’s critical. And so on though the many many other constraints a PCB embodies - component sides, heights, weights, heatsinking, crosstalk/EMI, layer counts, via sizes, ability to sneak though rows of pads (DIPs: yes, QFNs: no), etc., etc.

I also don’t personally find the autoplace function useful, and it doesn’t seem (again, to me personally) to behave in a well-defined enough way that I feel able to reason about it as part of a wider workflow. Whereas P&M is well-defined - you know what will happen before you press the button, and the fairly orderly arrangement is easy to grab bits from. I suspect auto-place dates from when boards were more often a bunch of spidery traces directly connecting big THT parts on a 1/2 layer board rather than the modern multi-layer plane-centric style full of tiny SMD parts.

Coming up with useful, by which I mean not only is the result “good”, but the UI to get to it is also fluent, alternatives, however, is very hard, even for quite limited targeted sub-tools. I suspect it’s impossible to do it all at once universally. Perhaps the AI crowd surprise everyone, I suppose, but their results so far still look like a confused 90s auto-router, with fancier websites.

All that said, if you have a concrete idea for how the tool could be better, a clear description of how you think it could work in various practical scenarios, what scenarios aren’t covered, how the UI works (one tool, many separate tools, dialogs, wizards, etc) and so on, that actually makes it possible to think about it meaningfully. “Couldn’t it be better?” isn’t really that.

2 Likes

this seems so complicated so I see now the idea is seen as stupid but a stupid idea is also an idea and without ideas nothing can change.

without ideas nothing can change.

Perhaps, but just because any change requires an idea, doesn’t mean any idea can cause a change.

In many businesses, the “ideas people” (if unsure who they are, look for watches larger then their wrist diameter) dump half-baked vagueries onto the workforce, who then get paid to sacrifice a slice of their time on Earth to have and execute on their own ideas of how to produce actionable change from those showerthoughts. Then the ideas people get to take the credit on LinkedIn #innovation

In an open source project, there is very little space for “ideas people” because expecting others to donate such a lot effort on your behalf is unreasonable.

We all want KiCad to be “better”, but unless you want to actually put the legwork into defining detailed suggestions for improvements, you’ll have to live with whatever improvements are produced by people who do make the effort, on their schedules.

If you want a specific improvement you have these choices:

  • Hope someone happens to have the same idea and fleshes it out and executes on it themselves - this can happen sometimes for obvious pain points, but unlikely in this case, I suspect, at least in the short term
  • Define it really nicely and compellingly so that someone feels it’s worth their time to pick up the work of executing it
  • Do it all yourself (obviously requires defining it, even if only privately)
  • Pay someone to do some or all of the above work
3 Likes

very good explain thank you! kicad is good and kicad will be better! (without ideas from users not thinking before suggest).