I decided to (finally!) make the switch from Protel99SE to Kicad, and I have to say I’m very impressed with this software. It’s working quite well so far, and the learning curve hasn’t been too bad.
I jumped right in to a redesign I’ve been wanting to get back to, a fairly complex project spanning ~8 sheets and a few hundred parts.
During the initial part of this work, I came up with a few questions about features and usability. Maybe the perspective of someone new to Kicad but experienced in PCB design would be helpful.
3d preview - when I am trying to match a footprint to a 3d model, the alignment is difficult to do accurately by eye. It would be wonderful if there was a way to “align this pin to that hole” feature, or “align this plane to that plane”. I understand that can be difficult from a CAD perspective. Doing it by eye is possible, but there seems to be some distortion - maybe perspective? This is most apparent when looking at an array of pins aligned to holes. If there’s perspective, it should be turned off.
Sometimes I hide a value of a footprint from the silkscreen layer, and instead of it being invisible, it turns gray. Why is that? It no longer shows on the board, but it’s there on pcbnew.
I set my default reference size for text and whatnot (usually smaller, my boards are dense), but when adding new footprints to the layout, they appear in their original size. I can change them after of course, but it’s tedious. There must be a way for the default reference sizes to be honored when adding new parts?
In a multi-sheet project, I like to assign designator numbers per sheet. I see this is supported, with the annotation option “First Free Number after sheet number x100”. But how to I assign the sheet number to my sheet? I’ve been using “Use first free number after [ ]” which is fine, but it would be nice if the value was retained as part of the sheet data.
These are all just little quibbles, overall it’s working really well for me. I am not much of a C++ developer, so I can’t help the project directly with programming, but I hope these usability comments are useful.