General question about Kicad software development

I have mentioned previously that (at least my small group at) my employer uses “Classic” Express PCB for its preliminary breadboard designs. This software is sunsetting soon, and there has been some discussion as to what to use next.

“Official” company designs use Mentor. One colleague mentioned that maybe we should just move to that, while another said that that would probably be overkill. What I know is that installing Mentor remotely using the company’s license is very difficult and requires hours of time. I have tried and failed; I gather that often happens. I guess this is one “take” on the word “overkill.” I have never actually used Mentor.

I do have a bit of experience with Cadence and gosh; there was no way to get a new component into the database on a same-day basis. I don’t think I could ever make my own custom footprint (such as my MSOP-8 “bigfoot”:

image
using Cadence or Mentor with an employer.

Moving to KiCad for our small group breadboards is another option. But…a philosophical question: As we continue to add features and capability, at what point does KiCad cease to be the quick and flexible tool that we all love (or at least like) to use, and start to become the “overkill” too big to use massive thing represented by Mentor or Cadence?

I make a crude comparison: ExpressPCB is very basic; compare it to a canoe or a rowboat. Cadence (and probably Mentor) is like an ocean going cruise ship which is far too big and complicated for most individuals to do something quickly and individually. I like to think of KiCad as being more like a bass boat
image

Which one person can operate with enough capability but not overwhelming size and complexity.

BTW the only boat I ever owned was a canoe…

3 Likes

From my experience of writing code in open source and commercial software projects, probably never.

Open source projects usually have several advantages; developers who know the product intimately, a very limited supply of developers, a very conservative “development plan”.

The way commercial projects get bloated is through an ambitious checklist of features supplied by marketing, a bunch of developers with not much knowledge or interest in the product; a tight timescale where it is important to “get something shipping”.

3 Likes

Maybe the future evolution of KiCad doesn’t matter. You can always stick to whatever version you’re using if KiCad starts going off the rails.

3 Likes

KiCad being GPL licensed effectively means it can’t really “go off the rails”. The worst that can happen is the project devs will slowly dwindle in numbers and at some point it can stop active development. Even then usually for a project this size there is enough interest to keep it on life support for a very long time and provide patches/builds for newer OS versions.

And currently by all metrics KiCad is nowhere near the sunset stage, number of devs is going up, rate of added features is going up, community is as healthy as ever.

5 Likes

You forgot the main offender - taking over third party companies to gain customer base and kludging their product in sort of.
The result is a confusing ECAD suite that tries to be PCB, 3D CAD, ERP, simulator and electromagnetic field solver.
In the real world these are different jobs done by different people

Thank you all for the insights on this. I have observed the idea of “bloatware” in which software gets changed (even without net improvement) just to change it and somehow earn subscription renewal. I could never see the advantage of the Microsoft Office “Ribbon” over the previous menus. Mainly the ribbon menu hogs more space at the top of the monitor, and offers no improvement in functionality.

But I am very much a hardware engineer and not a software one. I did install Linux Mint in order to run KiCad on an XP vintage laptop, and decided it was not for me. I am more or less stuck on Windows for for butter or wurst. (better or worse). This means that I have migrated to Windows 11. So I ask

Is that really true? If I wanted to run KiCad 4.X under Windows 11 for some reason, would I be able to do so? I see other issues with sticking with Windows XP for example.

1 Like

So…more an attitude of what the software needs (or could really benefit from) and less one of “what can we sell”?

I have some understanding of what happens when IC designers design power conversion ICs but have never built a power converter. The input and output seems to get treated as a bunch of equations, but some of the other real world considerations (noise and inductive spikes) get ignored.

I can imagine a parallel if the software is developed by coders who have no firm rooting in pcb design. And, why would a software coder have pcb layout experience? Obviously the combination is very desirable, but I am less sure how that happens.

With Windows 11, couldn’t you run inside Docker or something? Or hire a dev to do a one-time recompile of the source for your OS? (Although I’m not sure what you’d do if you’re way back on XP.)

The real answer might be that KiCad isn’t going to do a step-change in behavior. It will evolve slowly enough that your team will evolve with it. You may never notice if it has become too complicated. It will just seem natural to you.

As my mother said when she was dying: “I spent too much time worrying about shit that never happened.”

There used to be some trousers which were marketed in USA under that name but I am unfamiliar with anything else.

That sounds helpful for those of us who are already using it. But there are also (hopefully) new engineers trying to learn it from scratch.

That’s a good point, but if they’re entering your group it seems there would be an existing community of knowledgeable people to get them started.

Looking at this the from another perspective, what tool would you select to replace ExpressPCB instead of KiCad? Are there any viable alternatives? (I’m assuming Mentor doesn’t fill the bill.)

Docker is similar to a virtual machine. You can run an application in a containerized environment within your OS. I’ve used it to simultaneously run KiCad 5, 6, and 7 distributions on my PC without having them trample on each other.

Why not? To me this is like asking “why would a carpenter have painting experience?” – why wouldn’t someone have multiple skill sets, especially if those skill sets are very overlapping in terms of where they are used in industry? It is very common in certain parts of the industry for a single engineer to be responsible for electronics design, software development, and sometimes even mechanical design.

5 Likes

Software and EE are overlapping more and more all the time.

I’ve read the phrase, ‘It’s a poor worker that blames his tools’ was originated in metal working forges, where, the worker literally made their own tools. So, recursive?

Look at where the plugins and scripts for Kicad are coming from. Not random software developers. I’d have to think large EE firms have coders on staff now days? Your average coder is solving someone else’s problem usually. I haven’t actually used Kicad in a few years, but, I’m still here because it still is of interest to me.

To be honest, I have no idea. I am not out there shopping but KiCad certainly is the “devil that I know” and like well enough.

To be dishonest, I would probably resort to chisels and stone tablets. :expressionless:

One thing…even if cars were “open source” we would probably have a transition from ICE (Internal combustion engines) to electric. Not a “gradual change” by any means.

Hmm. I would bet that most software engineers at Megahard or Bookface or Giggle have never laid out a pcb. It is possible that most pcb layout designers have done programming but I also have my doubts. I think there is a big overlap between pcb layout and electronic technicians. Of course, I got my EE degree in 1974 when most electronic devices did not include a processor. That and a background in power supplies does affect my perspective.

Having said that, I wish I had a clue as to how to control the output of a DAC so as to adjust a power supply. I am using up-down Digipots instead.

To me, the best example of a plugin is an AC/DC power supply. I am being intentionally obtuse here, but I don’t think I have knowingly tried to use any KiCad plugins.

Indeed! Even when I do not have work I need to do, I cannot seem to get myself away from noodling with this stuff! It is a “labor of love”…

Only when you are forced to use the new features to get a result.

eg.1. A short time ago a new member was asking questions because he wished to create a script, for his own use, to automatically create “neckdowns” for his track laying.
This requires a bit of effort to create, may be quite time consuming, and is an added complication and side-track when creating a PCB.
A neck-down can also be created with the use of a hotkey.

eg.2. There is the ERC. This feature may help some, but it is not a requirement to 100% pass ERC to move on to PCB creation.

When Kicad decides to eliminate alternative methods and insist on: eg. script writing or 100% passes to continue; then there is a problem.

Sounds reasonable; thanks.

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.