Some library questions

Hello…
I’m new to KiCad and have some questions.
I don’t like to have any unverifyed part on my board. So using common library can be dangerous. So I want to make my own library and then I want to copy or create parts that I can verify. Then I need to select only my library (I cant find a way to select all /none) and make design out from that. Is that feasible way to do? (I assume that I manually need to copy symbol, footprint and 3dfile.)

Yes, it is totally feasible and what I do for a long time. In the past both footprints and schematics library were used directly, hence a change on the library reflected right after you had reopened your project. Than the new pcbnew format changed the way footprint works and you were safe on the layout part. It does not change without your confirmation.

Schematics symbols on the other hand remained the same for a long time and finally will be change with v6 (If you use nightlies, which is versioned as 5.99 you’ll see the same change.) Now the new file format, kicad_sch would not update any symbols without your confirmation.

Well, as a precaution I’ll be still using my own library and copy/paste new symbols and footprints into it. Also I add some new variables to my symbols which is unnecessary for public usage.

Ok at least that is feasible but need to find out problem as I got segmentation fault when I rename or delete symbol. will try nightly

There is (was? *) a bug which is occurred when you delete or change some locked items. Could you check that they are not locked at all?

Usually 5.1 branch is more stable compared to nightlies.

*: I’ve seen somewhere that it had been fixed, but not sure about that.

Thinking again, what I mentioned is about footprints on pcbnew, not libraries.

Which OS do you use and how do you install KiCad (from which source)?

About library. Some symbols are drawn so big that ocuppy sheet quite fast. So I like to remake them to better fit my goal. About footprint. For simple resistor there are so many footprints that is hard to find correct one. Funny thing is that in last 30 years I make some 1000+ designs and still I have used only 6 footprints for resistors used 99% of time. So If I have just 6 footprints instead over 50 there is less chance to select wrong one.

About bug. Using xubuntu 20.04 and kicad 5.1.8 I have crash. I create library in my home/test path so shouldn’t be permission problem. When try nightly there are no crash. Didn’t check 5.1.5 (supported by default without ppa)

As I don’t have any design yet on kicad and seems that library management and names in kicad6 is different I just wonder if it’s better to start wit 5.99 to learn and maybe make some small design or to wait v6 to be released.

p.s.
really don’t want to switch program often. Until now I do all my designs in TangoPCB and Eagle. But both are obsolete (well Eagle 4 I have is obsolete and I don’t want to pay monthly for new licence)

did check 5.1.5 and doesn’t crash.

About the personal library:

It is quite normal to use, but not trust, KiCad’s libraries, and have personal verified libraries.
For the library management itself there are plenty of tutorials.
https://forum.kicad.info/search?q=library%20management%20category%3A19

When you work with personal (& verified) libraries, you can also easily add fully specified symbols for resistors etc to them. Just add some identifier for the Footprint in the fully specified schematic symbol such as: R_0805, R_Axial_L6.3mm etc,

Resistor_SMD has over 60 Footprints, and Resistor_THT has over a hundred, which makes a total of close to 200 :slight_smile:

In KiCad, the schematic is normally the reference for synchronization. Making changes to footprints in Pcbnew, and porting them back to the schematic can be done in a limited way, but changing them in the schematic and then updating the PCB is usually easier.

In Eeschema you have a spreadsheet like overview to the library references of all schematic symbols in: Eeschema / Tools / Edit Symbol Library References, and you can also change the schematic symbol references there.

The references to the Footprints can be viewed, verified, edited with: Eeschema / Tools / Edit Symbol fields. Pcbnew caches copies of used footprints in the PCB file itself, so if you change footprint references in Eeschema, then make sure that you update the PCB with [F8] and the checkbox “Update footprints” is selected.

KiCad’s support for Eagle projects is quite good, and I assume you have your personal verified Eagle Libraries. If you’ve ported an Eagle project to KiCad, you can create a footprint library and save all footprints used on the PCB to it with: Pcbnew / File / Archive Footprints.

For schematic symbols from an Eagle project it is probably even simpler. Just importing an Eagle project into KiCad seems to create a library with the schematic symbols, and also adds it to the project as a project specific library. For the rest KiCad’s normal library management applies of course.

Then keep on nightly branch. Like you said, schematics and library management has been changed and we expect a stable version very soon. And now the nightlies are pretty stable.

I stay on nightlies for now even though I face some unfortunate bugs (still trying to figure out the source).

Comparing Eagle to KiCad, you’ll be really happy once you get used to KiCad. I just hate to visit Eagle every time I need for some customers.

Importing from Eagle doesn’t work. I think I have to old version. (way before autodesk bought eagle).

Last hour I test 5.99 didn’t crash. (in 5.1.8 I quickly find 2 point where crash/hangup) So will probably stay on 5.99.

Compared to Eagle the KiCad is monster. And have pretty step learning curve. Based on few hours I tested it at least I really like interactive router. I miss that years. (to just suggest where trace should go and warn me if it’s to close)

I have another question but don’t know if I should open new thread as is not really library releated. The question is about how to proper store revisions? (I make board and fabricate and after that meke some change to design) If I understand manual correctly then I need to make different dir for each version. And If my project have multiple pcb’s I need to have each in separate folder. I that still true?

Is it possible to toggle Active checkbuton in manage simbol/footprint library for all items selected?

I know very little of Eagle. Apparently it used a binary format and a text based format at some time. The rosco_m68k project I mentioned earlier has readable text, so I assume you have the binary format.

Maybe you can get some newer Eagle version, and then save it in the text format before importing a project in KiCad.

I am working that way. I use only my symbols (smaller than standard) at schematic and only my footprints. But (till now) I decided to not copy 3D models, as 3D of my PCB is not very important for me (I have never seen my PCBs in 3D before I started to use KiCad). What next - I have never seen the KiCad stage of assigning footprints to symbols. My symbols in library have footprints assigned and I never change it (it is my rule - making me sure that any symbol (from my library) I use I will get the right footprint at PCB - need not to check anything. I also don’t change the resistor/capacitor values at schematic. To change 1k to 1k2 I delete one resistor and insert the other - that way I’m sure I have valid part (it is more important for capacitors - when you change 4u7 to 22u you need bigger footprint - deciding it at schematic level can in my opinion be a source of bugs, but when I just replace one element with another the right footprint comes with it automatically.
In Protel I had elements like 1k (meaning 0603) and 1k_4 meaning 0402. In KiCad (as I ca’t use Univers Condensed font) I decided to have shorter names for 0402 so I have done two symbol libraries for resistors - the library called R for 0603 and library called R1 for 1mm resistors (0402). That way at schematic both resistors have exactly the same name - you don’t see at schematic what is the size of element but I can live with it.
In KiCad V5 library management is different than in V4 and I didn’t copy any symbols from KiCad library with V5 (I have done it when V4 was current). Not sure how to do it with V5. To copy footprint from KiCad library I just copy that footprint file into my library using file manager (footprints are files, libraries are directories). I have heard that in V6 symbols will be organised the same way as footprints - will be files in directories - but I have never installed 5.99.
If you are planning to slowly move to KiCad skipping V5 and going at once to nightlies is probably the right way of doing it.
If you will have questions people here certainly will answer them. Me not, until I will switch to V6, but now I can’t move to V6.

I’m not sure if manuals are close to be accurate even for V5.
Before using KiCad (it was 4.0.7 those time) I have read manuals to find later that they are not actual.
Later I have done a spreadsheet containing all tools, hotkeys and menu positions from Symbol Editor, Schematic, Footprint Editor and PcbNew with short my descriptions for each It took me lot of time and practically later I didn’t looked there, but it was not a lost work as doing it I have learned a lot about KiCad.

And to your question. With 5.1.8 it is still true. With V6 (5.99) I don’t know.
After generating production files I don’t modify anything in my projects. When I need to make a new revision I copy it into new directory, rename from ***_A to ***_B and star to modify.

All stuff is in binary. I can open file in eagle6 demo but can’t save. So automatic transfer seems not possible at all. But I think I can build my footprints (or copy/inspect/edit) as in reality there are not so much different packages used.

It wasn’t implemented that way although it wasn’t clear from the beginning. Each library is still one file. I think the reason is that they are conceptually different than footprints. Symbols can have derived symbols and that would be difficult with one symbol per file.

1 Like

That’s to much even for me. Here I like Eagle approach that every symbol can have more preselected footprints (can have even different pinouts) Seems that I will miss that feature here…

No you won’t, because KiCad is more flexible. You can attach any footprint to a symbol which is already in the schematic. You can create a library where you have to attach a footprint to each added symbol explicitly. Or you can create an atomic library where each component is fully defined, even so that each manufacturer or distributor or in-house part number has its own symbol. Or anything in between.

Attaching any footprint is not good idea… For example I have symbol for microprocessor and that can be in plcc44 or tqfp48. So how in the world I can do right connection? In eagle that was easy but can’t find the way in KiCad.

1 Like

Right now I’m confused what the differnce is in betwen generic symbol, Fuly specified symbol, atomic symbol, atomic library… !!!