Seriously irritated with KiCAD's library editor! - Page 1
Forum section: electronics / general

author: MarkS
author_rank: Unknown
timestamp: February 01, 2012, 05:50:53 pm
content: So, I need to create an oscillator device. No problem I think. I could do this in Eagle in a matter of minutes. HA!First off, I create the symbol in EESchema. No problem. Now comes the idiocy! I cannot open the (SEPARATE!) footprint editor here.To do that, I must open PCBNew.No problem, right? So I do so. However, I cannot link the library symbol to the footprint because the schematic symbol isn't imported to PCBNew because it DOESN'T HAVE A FOOTPRINT! There is no way to link a footprint with a symbol that I can find in either editor. The footprint editor allows you to associate nets with pads, BUT THIS REQUIRES THE SCHEMATIC SYMBOL! What. The. Hell?!I've read their reasoning for not integrating the library editors, but that is a load of bull! I should be able to create the schematic symbol in the library editor and then create any AND ALL associated footprints at the same time! Why, in the name of God, should I have to open the PCB editor to create a footprint? This method is all but useless. There is no way someone could look at this software as a viable alternative to any piece of commercial software. I've noticed too many time when the work flow is completely stopped due to poor interface design. Forget about productivity.I have always wanted to create my own Schematic/PCB software. This is really making me take that thought VERY seriously. I am a self-taught computer programmer and I can do better!

author: Unknown
author_rank: Unknown
timestamp: February 01, 2012, 06:30:13 pm
content: Calm and well-reasoned questions will usually get better responses.Quote from: MarkS on February 01, 2012, 05:50:53 pmIs this a software or a documentation issue? Are you comparing the amount of work after you've done it dozens of times to the amount of work it takes when you're doing it for the first time?Quote from: MarkS on February 01, 2012, 05:50:53 pmThe disconnect between schematic symbol and footprint can be annoying. I believe you can use the footprint filter of a schematic symbol to help you select the correct footprint while inserting the symbol in the schematic. This is just string based, so no need to create the footprint before doing this. No need to run cvpcb either. .equ files are another way to associate footprints with schematic symbols. In the module editor (which is part of PCBnew, since designing footprints is similar to PCB design), you can just assign the pad numbers corresponding to the schematic.Netnames will be assigned based on the schematic symbol via the netlist when you place it on the PCB. You tell the module editor where you want pin 20 to be. You tell the schematic symbol editor that pin 20 is VCC, so eeSchema will label the net connected to pin 20 VCC. Same with hidden power pins, they're just not shown in the schematic editor. When you import the netlist from eeSchema to PCBnew, it will also label this net VCC. After creating the footprint, you put it in a library and make sure cvpcb can find it. Won't take much longer than a few minutes once you get the hang of it.Quote from: MarkS on February 01, 2012, 05:50:53 pmJoining either the gEDA or Kicad project might actually produce something useful, as opposed to yet another half-baked tool. Both projects don't seem to suffer from too much man power.

author: MarkS
author_rank: Unknown
timestamp: February 01, 2012, 06:48:28 pm
content: It seems like I've stepped on your toes or something? Have time invested in this program? Your whole reply is rather odd.Quote from: alm on February 01, 2012, 06:30:13 pmUm... I'm talking about KiCAD.I didn't post this to start an argument/fight with die hard KiCAD fans. I am venting my frustration and displeasure with what should be a simple and streamlined process.Let me put it another way. Are there times when someone will want to create a schematic without a PCB? Of course. However, when I open a PCB creation program, I expect that the schematic I create is going to be translated to a PCB. Now, it is true that the footprint of a part has nothing to do with the schematic. However, the two are linked by the very nature of the program as a whole. Even if I can accept a segmented library editor, which I really cannot, the separate pieces must be linked tightly at a low level. In other words, the footprint editor must be able to link to a .lib file from the schematic for association. In its current form, that is not possible. You must create a separate schematic symbol and footprint and then link them via a completely different program. This makes no sense due to the fact that if the schematic symbol has an associated PCB footprint, it will always be linked to this footprint. Don't mention filtering. Not all parts have standard footprints, especially SMD parts. Filtering is fundamentally unnecessary. Throwing in the fact that a part may have multiple footprints (DIP, TSSOP, SOP, etc.) is a red herring. I should be able to choose the correct footprint in the PCB editor from a list of associated footprints for the device.The whole library editor system in KiCAD is broken. It is a poor design. It is cumbersome and non-intuitive. The reasons for the choice are irrelevant. It is not usable in its current form.

author: Unknown
author_rank: Unknown
timestamp: February 01, 2012, 08:45:41 pm
content: Quote from: MarkS on February 01, 2012, 06:48:28 pmI just your last response more productive than shouting and ranting. As far as I know, there no Kicad (or gEDA) developers active on this forum. And no, I'm not involved in any way.Quote from: MarkS on February 01, 2012, 06:48:28 pmOops, my bad. I used both for a while during the same time period, so I confused PCB/PCBnew and gschem/eeschema. Reply corrected.

author: Unknown
author_rank: Unknown
timestamp: February 01, 2012, 08:55:45 pm
content: I guess their motivation was that there's a many to many relation between footprints and schematic symbols. A resistor can have lots of footprints, and a 0805 chip package can contain resistors, capacitors, inductors, and more. The filtering system is quite limited. The lack of linking is especially annoying for something like micro controllers where different packages will have a different number of I/O and power pins.You don't really need a separate program to link them, cvpcb is just a convenient way to edit the footprint attribute. If you add the footprint attribute in eeSchema some other way, cvpcb will pick it up. .equ files are also processed by cvpcb for its auto assign feature. This allows you to tell cvpcb that 10k resistors are always 0805.

author: calin
author_rank: Regular Contributor
timestamp: February 02, 2012, 06:45:23 am
content: Is not that bad ... I agree it may not be as straight forward and a bit dumb but you can do this. No need for a schematic, no need to link.Start pcbnew , in the tollbar is an icon (4'th on the left with a chip & pen on it) that says Module Editor. Click on that and you can create a footprint. Obviously you will need to save it in a library etc. etc.But you get the idea. Initially I was also puzzled completely and I said is just dumb .. but is acceptable

author: Rerouter
author_rank: Super Contributor
timestamp: February 05, 2012, 11:01:54 am
content: just another chiming in that it doesnt make much sense at first, but if you play around, you can get the hang of the editors in under half an hour,

author: MarkS
author_rank: Unknown
timestamp: February 05, 2012, 06:55:03 pm
content: Quote from: Rerouter on February 05, 2012, 11:01:54 amI'm sorry, but I have to disagree. I spent several hours on this and still cannot get it. My biggest problem isn't that the fact that there are three separate applications that are used for device design. My biggest problem is that there are three separate and totally unintegrated applications for device design.A lot of confusion would disappear if the part placement tool in the schematic editor allowed for footprint assignment within the schematic editor. Basically, place the part on the schematic, right click on the part, click "edit part" and then choose from a list of (filtered) footprints. If, in this case, the footprint doesn't exist, allow for the option of opening the footprint editor to create the footprint. This may seem time consuming at first, but it is far faster than adding dozens or hundreds of parts in the schematic editor and then having to assign the footprints one at a time at a later point. It is better integrated in this instance.After giving it more thought, I can definitely see why footprints are not tied to parts, and this is OK, but the implementation used in KiCAD is simply hard to use, cumbersome, confusing and broken. It can be done better.Quote from: alm on February 01, 2012, 06:30:13 pmI'm going to do this for the fun of it. I wont make it open source unless I can get it past the "half-baked" point!The problem with jumping in on a project is that it takes a great deal of time to learn the code. I cannot just set up a subversion account and start coding.Quote from: alm on February 01, 2012, 08:45:41 pmProblem is that I don't know where to find them. They lack a forum.

author: Unknown
author_rank: Unknown
timestamp: February 05, 2012, 07:26:08 pm
content: Quote from: MarkS on February 05, 2012, 06:55:03 pmThe former shouldn't be too hard to implement, I'd imagine (not being familiar with the Kicad code). You can already enter the footprint by hand, the only thing missing is a list of the possible footprints like in Cvpcb. Creating a footprint straight from the schematic editor may be less straightforward, since the module editor is part of PCBnew and can even store modules within the PCB file.Quote from: MarkS on February 05, 2012, 06:55:03 pmThey do have a mailing list (Yahoo! group). Not sure about the amount of developer participation, but likely more than on this forum.

author: Simon
author_rank: Unknown
timestamp: February 06, 2012, 08:00:40 am
content: I'm on the developer email list just for interest sake. There has not been too much activity recently on development and there was a bit of an argument about how code and edits were implemented as someone was trying to make edits without approval and use coding formats that were nit agreed on. From what i gather they have resolved this and are moving forward with further improvements. If you are interested in this why not join them, or at least join the mailing list so that you can offer a few opinions and advice to them.

author: amspire
author_rank: Super Contributor
timestamp: February 06, 2012, 09:43:03 am
content: There is a forum that has posts from some of the key KiCad developers like Dick Hollenbeck, Jean-Pierre Charras and Wayne Stambaugh. It looks like this forum is a compilation of the mailing list posts.http://develissimo.com/forum/15/Last post is a few days ago, but it usually has posts daily. It is reasonably active.As far as the development, there hasn't been new features lately, but there a regular daily commits. Lots of bug fixes, cleaning up the code. Lately they have been working on developing the Stable Release, so it makes sense that they are not adding new features right now.One of the important major tasks right now increasing the internal resolution. They are going from 0.0001" (0.00245mm) resolution to 1 nM resolution. That is an increase in resolution of over a million times.Angles are going from 0.1 degrees resolution to DOUBLE floating point resolution.The high resolution mode will limit the board size to 2000 mm x 2000 mm. Hope that is big enough for everyone.The switch to the higher resolution is a compiler switch and so I am not sure yet if they have switched. One of the issues is that files designed with the new resolution cannot be opened in lower resolution compiles of KiCad, so they may be holding off the switch in the official builds.They will also be changing the Netlist format - not sure why.Richard.

author: amspire
author_rank: Super Contributor
timestamp: February 06, 2012, 12:57:18 pm
content: It looks like the documentation in the latest KiCad release has been updated and it is now very good.I particularly like the "Getting Started in KiCad". It is only 29 pages long but it covers a lot.It talks about how a KiCad part is in two files (.lib and .mod) rather then the one library file, and pages 26 and 27 describe making a new footprint.For anyone who wants to have a look at KiCad, here is a direct link to the Getting Started pdf:Edit: dead link. Try the link in my next post.

author: djsb
author_rank: Super Contributor
timestamp: February 06, 2012, 04:28:18 pm
content: The link says410-GoneWhatever that means.

author: amspire
author_rank: Super Contributor
timestamp: February 06, 2012, 05:06:43 pm
content: I will try again:http://disk.jabbim.cz/bach@jabber.cz/kicad/Getting_Started_in_KiCad.pdf

author: EEVblog
author_rank: Unknown
timestamp: March 06, 2012, 03:49:55 am
content: Quote from: amspire on February 06, 2012, 09:43:03 amA proper BBS style forum might help a lot I suspect.They are of course welcome to use this forum if they like.Dave.