top | item 36320292

(no title)

lbayes | 2 years ago

For folks who are considering Kicad, but not sure if it will be useful at a professional level...

We professionally design, engineer and manufacture accessible technology for disabled veterans and we are also developing robotic systems for industrial automation.

We have a half-dozen active projects running on Kicad and have been using it for almost 4 years now.

As with anything, there have been occasional frustrations with updates but overall, the tool consistently gets better over time.

The main decision to select Kicad was based on the plain text representation of project state which enables (1) improved workflows with Git, (2) scriptable bulk edits (3) simpler, sharable extensions / plugins and (4) easier continuous integration for build artifacts.

discuss

order

TaylorAlexander|2 years ago

I learned PCB design on Eagle, switched to Kicad about 5 years ago, and in the last three years have really been doing a LOT of PCB design with Kicad. I love it so much!

Here's a dense four layer brushless motor control board I designed recently, which can be viewed online in the amazing Kicanvas viewer:

https://kicanvas.org/?github=https://github.com/Twisted-Fiel...

sircastor|2 years ago

This is me too. My first projects were in Eagle, primarily because it was the de facto standard for EDA for hobbyists for a while. KiCAD used to be awful and very challenging.

In the last several years, it’s really improved and I enjoy using it. If you haven’t picked it up in a while, give it a shot.

neltnerb|2 years ago

wow, kicanvas looks great for sharing designs, is the idea that you use github for versioning your kicad folder (probably better than my current lazy dropbox option) and then you can just share the designs with people?

that is a cool website.

can you share designs privately with team members? it looks great for collaborating if it's got authentication.

lsllc|2 years ago

Ditto (in that I learned Eagle and switched to KiCad a few years ago). KiCad is great! Way better than Eagle.

lbayes|2 years ago

Nice to see you Taylor!

I'm really enjoying watching the progress on your motor controller!

vaporary|2 years ago

Love everyone.

<3

jacquesm|2 years ago

What a nice piece of work!

jjoonathan|2 years ago

Agreed, although I'd say KiCad was pretty rough 4 years ago but it got good in 2021 with version 6. It used to be good enough for a saint, but now it's good enough for a whiny picky person such as myself.

wingmanjd|2 years ago

> It used to be good enough for a saint, but now it's good enough for a whiny picky person such as myself.

I really like your description of patience in software. I think I'll borrow this for future things I want others to try.

neltnerb|2 years ago

I saw the writing on the wall for EagleCAD once they stopped releasing any kind of bug fixes despite charging subscription fees and started ignoring the forums other than triaging the complaints. It was clear they were going to do this and break EagleCAD to force people to use Fusion 360.

I don't use Windows, I don't want to, I've used Fusion 360 and it was slow as heck, didn't have constraint based solving that worked, was written in some awful system that made it require an internet connection, and they want me to use an EagleCAD-themed editor that they've hacked in?

I switched to using KiCAD for all new projects a year ago. It was a little bit of a learning curve. I started with designing a flexible heater PCB, which was good for a learning project because it had so few components. Now I'm making PCBs with four layers, inner ground and power planes, custom design rules, using fancy add-ons, taking full advantage of the HTML BOM plugin when teaching grad students how to solder, and I can be 100% sure that even if it gets worse I can still get the old version to work (probably).

Even the part library is more coherent and higher quality (!) than the EagleCAD one. I literally refused to use the built in EagleCAD libraries because the quality was so variable, sometimes it's fine, sometimes I ruin an entire PCB because their version of SO-8 had a weird width. KiCAD is way better, it's closer to OrCAD and lets me make the schematic, assign the footprints, and if I don't like a footprint I can just edit it on the fly for that document or to just save a new version of the footprint forever.

I've even got it set up to use Dropbox to share designs between computers (no issues) and that includes downloading STP 3D models and adding them to my footprints.

I know it's going to take me a while longer to be nearly as adept as I was at EagleCAD, and I'm going to miss that autorouter (the KiCAD one is very good for what it is, but it's a hard problem). There's a lot of keyboard shortcuts that you internalize after 20 years of using a program.

But it will be worth it, and frankly already is worth it. I've had to make like four custom footprints because the default library is just so well organized that I can actually find the one or maybe two versions of WSON-10 or whatever instead of having to guess which library has the version that matches my mechanical drawing.

mindentropy|2 years ago

How do you go about doing the mechanical drawing for a footprint not found in the library? I tried to design a simple SD card board as a learning project. I gave up when the part that I selected was difficult to draw. I was not sure whether I was missing some information or is it my inexperience. My persistence on learning and eventual failure left me with the bad taste.

PS: The part I selected seemed to be a generic brand and did not get any info to clarify the dimensions.

rta5|2 years ago

KiCad continues to improve, and that plain text file thing is a killer feature. Also in the new version they added the capability to have library databases for components which is a massive step towards professional libraries.

If they could bring in better signal integrity tools and Altiums outjobs, it would be a no brainer to use KiCad for hobbyist to small business applications.

15155|2 years ago

KiCad is sorely lacking facilities for analyzing trace impedance and power plane capacity - very simple features and all of the building parts (mainly the board stackup information) are already there.

I've wanted to add this stuff (and hopefully push upstream), but haven't been able to find the time.

These are basically table stakes in every commercial offering.

amelius|2 years ago

Yes but these are not showstoppers. You can do a lot with scripting in Python (and e.g. Shapely for geometrical processing) and you can even find other user's scripts online. Of course, it would be nice if e.g. computing the length of a trace was as simple as a mouse click (perhaps it is in the newest version), but this is certainly no reason for many to switch to a closed, expensive, commercial tool.

_fizz_buzz_|2 years ago

We switched from Altium to kicad and it was a good decision. However, we weren’t really successful to port projects from Altium to kicad. So, we still need a Altiun license. I am sure there are features in Altium that kicad is missing, but for our application - power electronics- we haven’t missed anything so far.

neltnerb|2 years ago

Did you use Altium BOM tools? I found them to be incredible, does KiCAD have something similar to handle BOM generation via something like octopart? I miss that, it made my BOMs so much more trustworthy.

junon|2 years ago

This. Kicad is not perfect, but it gets the job done and is great for Git.

Perhaps now, Kicad devs can get even more support to make it better.

classified|2 years ago

> the plain text representation of project state

If it would weigh anything, this alone would be worth its weight in gold.

datpiff|2 years ago

Such a pain-point with Altium

Roark66|2 years ago

How's Kicad's autoroute these days? For anyone who says "no Pro uses autoroute" I can say electronics is a hobby for me and when I'm designing a PCB I like to autoroute first, see all the issues, then go back, move my components, autoroute again, once I arrive at optimal placement I do maybe 10% of traces manually (these are the ones autorouter does weird stuff with) then I let autoroute deal with remaining 90% of repetitive stuff. Finally I just tweak few things here and there. I think I tried kicad few years ago and I was back to altium very quickly. For typical hobby use one can't really afford altium so kicad is the only way to go, but if you can have it I'd choose altium every time.

adql|2 years ago

[1] There are options, but honestly I never seen the point for small boards. There just seem to be rarely the case where setup and fiddling with settings is all that faster than just routing few dozen traces.

I guess if I wanted to route something like big keyboard with a bunch of leds, but overall routing PCB is just such small overall part of the project that I just play some podcast in the background and play the PCB puzzle/sudoku challenge.

But then I like going back and forth and even changing schematic a bit to make routing nicer.

- [1] https://hackaday.com/2023/04/14/kicad-autorouting-made-easy/

brusselssprouts|2 years ago

There is now basic autoroute capability that works on a selection of traces. There is still no whole-board autoroute, and although in theory you could just select all items in the board and hit autoroute, it is not functionally designed to work this way.

mysterydip|2 years ago

Have you had to handle conversions at all? I have a project stuck in Altium I'd rather not pay to continue developing.

genmud|2 years ago

No, but as a former altium user who was burned by altium, if you aren't working on a team with multiple users, it is well worth the pain to get rid of altium. There are some muscle memory things you might have frustrations with the first few weeks, but it has been smooth sailing after the transition period.

My only complaint with KiCad is their library/BOM management is a bit clunky, but the fact you can automate things so much easier vs altium more than makes up for it.

neltnerb|2 years ago

I've at this point needed to convert projects between Eagle, KiCAD, OrCAD, and a few others.

I've seen Altium do decent at open EagleCAD. I've seen KiCAD do much better at opening EagleCAD. I assume KiCAD and EagleCAD work decently well with one another's file formats due to both being text based and documented.

That said, no matter how much someone paid for the software being converted from or to, I've yet to see a project that wasn't better served by starting from scratch and reproducing the design. Each tool just has a somewhat different paradigm (or default grid spacing or whatever) and like... EagleCAD symbols imported into Altium work they just suck. For example.

I've been dealing with this mess for a while. My colleague has decades worth of PCB designs trapped in OrCAD pre-cadence. I've been pushing him to EagleCAD, and have been pushing myself towards KiCAD for over a year. Now I'm telling him "hey, it's closer to orcad" and "the HTML BOM will make your life way easier training grad students" and "the package library is way more reliable" and these are legitimate honest-to-god features that are convincing to an experienced designer.

You see enough proprietary tools like this get the death knell and you learn to recognize the signs I guess. This one was pretty obvious and thankfully y'all have three years to download KiCAD ASAP, use it for every single project from here on out, gradually transition legacy documents in every CAD system to KiCAD. For once in my life I'll have some well-grounded confidence that my designs are safe and highly likely to still be usable in ten years when I badly need to debug them and create a new board revision.

_fizz_buzz_|2 years ago

Honestly, we had a bit trouble converting Altium projects to KiCad and kind of gave up on it. Probably also depends on complexity of the board and maybe we just need to invest more time into it. But for now we have to maintain a Altium license for older boards. All the new stuff we build in KiCad.

rcxdude|2 years ago

Yeah, I see no reason to use Eagle over KiCAD, and KiCAD is rapidly catching up on a pretty stagnant Altium, so for many users KiCAD is better choice there, even with money no object.

lemper|2 years ago

for me, it is a bit funny. i started using kicad because phil hagelberg created his keyboard using scheme to generate a kicad_pcb file. then one night, i am too tired to type on keyboard, i decided to put the components directly on kicad using mouse. now when i need (or want) to create a pcb, i just open kicad.

barbazoo|2 years ago

Does anyone know of a good tutorial to get started with Kicad?

I'm planning on making some very simple circuits, nothing fancy.

genmud|2 years ago

It isn't too terrible to just play with it.

You have a schema capture tool (eeschema) and a board design (pcbnew). Start a new project, then start doing your circuit design in eeschema. I personally always disable move on zoom and install the solarized dark plugin, since it looks quite nice.

  - Click and hold Middle mouse to move around the schematic / board view.
  - P - places a power symbol (gnd / v+)
  - A - add component
  - E - edits parameters
  - X - rotates on x axis
  - Y - rotates on y axis 
  - M - move stuff
There are a ton of symbols installed by default, I recommend just browsing to see what kind of organization there is.

Ccecil|2 years ago

The "contextual electronics" tutorials on youtube are good to begin with. They are with older versions but most of the technique is unchanged for the most part.

Basics are still there.

There are some good books out there too such as "Kicad like a pro" which come recommended by people I trust.

#kicad @liberachat IRC is still active too as well as other channels.

Gordonjcp|2 years ago

Find some existing project similar to yours that has a PCB and a circuit diagram. I tend to recommend that synth DIY folks look at something like yusynth.net, and Yves Usson's designs. It doesn't have to be done in Kicad and indeed it might be better if it's not.

Redraw the circuit in Kicad, then redraw the PCB. See how close you can get to the original.

That way you're climbing the "learn how to use Kicad" learning curve, without having to climb the "learn how to lay out a PCB and circuit diagram" learning curve :-)

junon|2 years ago

Just play with it.

My workflow (I'm a hobbyist, take what I say with a grain of salt):

- Installed "library loader" which Supports kicad

- Sign up for componentsearchengine.com

- Find parts I need on mouser.com/mouser.de (I'm in Germany) and look them up on component search engine, download the cad files; library loader picks them up automatically

- Use them in the schematic view, get your schematic finished FIRST

- Then "Update PCB from schematic". This imports all of the individual footprints and stuff you need to wire together.

- From here, should be like most other CADs; wire up your rats nest, do your ground fills ("Fill area" tool on the right), etc.

- Export Gerbers and drills after googling "jlcpcb export kicad 6" (they don't have a 7 guide yet but doesn't matter) just to double check the settings, then upload to jlc and they arrive about a week and a half later.

- In the schematic view, go to tools and then Generate BOM. It takes some finagling but you can usually massage the CSV it generates to upload to Mouser's shopping cart page to get an exact amount of parts you need, including the ability to specify multiples. Note that usually upping the amount of small components results in more for less overall cost (yes, really) so play with the quantities. Resistors can be purchased for a few bucks at the 500 to 1000 quantity, and are usually cheaper to do that than to order 5 or 10. Anyway, then you order your parts.

The "use footprints from other people" thing is contentious, I know. Most serious engineers make their own footprints. I don't have the time, personally, since unless I'm missing something it requires freecad for me to get the measurements right, and kicad doesn't have the required constraint solving tools to allow me to make sure I've got all of it right, so the workflow is CRAZY inefficient (lots of importing drawings from freecad, manually creating pads, then using multi-select and align tools to get them where they need to be...).

Kicad with a constraint solver like freecad's would be a ridiculously huge improvement IMO, but hopefully this is enough to get someone tinkering. Kicad devs if you're reading... pleeeeease. I know it's a lot of work.

elihu|2 years ago

There are a lot of good tutorials on Youtube. I don't know of any particular one that's better than the rest.

I haven't moved to Kicad 7 yet, I don't know how many tutorials have been updated to the latest version.