Functional Request

Hi all,
I have been using KiCAD since 2019. As I’m a former EAGLE user I find KiCAD to be a very well thought out software. But I think, that it would be an interesting idea to adopt some very comfortable featrures:
Forward/back annotation: If I delete a symbol from the schematic editor, it dissapears from the PCB, but not the already build tracks. This causes very unpleasant problems like remaining track fregments. The “cleamup tracks” or “cleanup graphics” function does not solve this problem. Therefore you have to review every track manually. You can easily overlook parts of those track fragments and one has to do “F8”/“update pcb from schematic” to show the changes on the pcb. It would be nice if the “F8” function could be replaced by function that deletes/updates the pcb automatically as soon as one adds a symbol to the schematic that is already linked to a package. If a symbol is deleted in schematic it should be deleted on the pcb including all tracks of that package. I do not fell it to be an argument that one don’t wants KiCAD to do things one doesn’t want, because there ist a “undo” function available. I feel it to be more dangerous if there are unwanted fregments remaining on the pcb.

Find function: I kow that there is a find finction already, but the package is only highlighted and the cursor remains at the “search” window… It would be easier if it would automatically stick on the cursor.

Highlight: The “highlight net” function works on the schematic side only. Sometimes it is needed to find out where a track or ratsnest belongs to. Therefore it would be comfortable to have this function on the PCBnew side too.

Sending/saving files: KiCAD generates many files while developing a schematic/pcb. If one wants to copy or send the files to somebody else or another path, it is very complicated to send the correct files. I would prefer, if the project had a “.sch" and “a .pcb" file that contain all data needed. If one wants to send his/her work, one has to send just these two files. If you want to use schematics or pcbs in another project, you can easily rename ".sch” or the ".pcb”, choose or build a new path and the whole project would be tranferred and renamed.

Trough all the years I never managed to use differnt library pathes. There is a “Configure Paths” tool, but this obviously allows only one path for Libraries and packages, even if one defines several pathes. If one defines new symbols/packages, they seem to be overwritten with updates of the KiCAD version. I do not feel it to be a solution if one has to save “project libs” to every project because those are linked to “their” projects.

Sometimes it is time consumig and uncomfortable to link a package to a symbol, regardless if it is a new part or a part from the libraries. If one creates a new part, it is essential to take care about the name of the pins. If one creates a e.g. Transistor and he wants to link it to a TO-220 package, he has to know if the name of the pins of the package uses capital letters or not. For parts like transistors or ICs it might be common sense how that is to be done, but there are different parts like connectors where this is done differently. I would feel it to be more user friendly if one could build a symbol and than choose a package from a library and than a tool would open up like an excel-sheet that shows two rows (Pinname of the symbol, pinnumber of the choosen package). Than one has to choose a pinname from the list and a pinnumber (mouse klick) and both are shown in one line on the list.
BTW: A few years ago EAGLE/Autodesk developed a lovely symbol/package linking tool. Therefore one has to mark the symbol from the datasheet (*.pdf) and import it to a library. Than one could link the package as described above. Very easy and fast.

I’ll comment on just this one. Just the .kicad_sch and .kicad_pcb are not sufficient. you need the project file (.kicad_pro), and any project specific libraries for a start. There is a File > Archive function which serves for backing up and transferring the project. People also use it on this forum to generate a zip file of their project.

It’s described here. You can see that it’s quite comprehensive.

2 Likes

Actually I’ll comment on this one too. The documentation on library configuration you need to read is:

The paths configuration in the section before this one is mainly for editing the path variables for the standard libraries distributed with the programs, which should not be modified anyway. You can in fact have lots of your own libraries even in locations that are not in any of the paths specified by the variables.

@DL1EBN

Please state your kicad version and OS. Find at Help > About Kicad > top LH corner copy and paste directly into thread.

“Highlight Net” works both ways in my Kicad 8.0.3.

I used eagle for years and when I deleted a part I HATED that eagle deleted all the attached tracks. Absolutely frickin’ hated that. RIP eagle. I LOVE that kicad does not do that.

Let’s say I have an opamp layout all done, but I need to change to a lower-noise part. I don’t want it to remove a single track. I want to change the part in the schematic, set the ref-des the same, then go to the pcb and UPDATE-BY_REF_DES. I might need a rotation, but all my work is still there.

What is really nice in kicad is that I can set two identical ref-des numbers and it does not complain (at placement time), so I can add the new part, change its ref-des to the same one I am about to delete, delete the old one, and move the new one into position. Then the important thing is to update pcb by ref-des and not uuid.

It is even more important when using a database, since everything is a single part. Before using a database I could just change an “0603-resistor” value and it was pretty easy. With my database every resistor is unique and changing the value mean to follow the above procedure, but that is the price to pay for such power.

Even this can be avoided you don’t delete but use Change Symbol. It changes the symbol in-place, keeping the fields (e.g. footprint) you choose. The UUID is kept so there’s no need to use “by refdes” update.

You can vote for Toggle to enable auto-synchronization (schematic <-> PCB) (#4469) · Issues · KiCad / KiCad Source Code / kicad · GitLab (by giving a thumb up). If that will ever be implemented, it’s time to think about autocleaning tracks etc.

I don’t know why. Maybe you don’t understand how the library system works. We would need a detailed explanation of the situation, the exact steps what you do, what you expect to happen and what actually happens.

Ahh, that is interesting – I will try that. thx.

Yes I know what is needed. That’s the reason for my proposal. And it is a proposal only because I found that the status quo is a bit cumbersome.

Excuse me that I forgot to list my config.
KiCAD V 8.03
OS: OpenSuSe Leap 15.5 (lastest released version)
Well, I’m not a native english speaker. Therefore I did not describe the Problem with the Libs clearly enough. So here is another trial:
I know how to use the “configure paths” tool. I hope that I untersatnd that. Special circumstances over here forced to install KiCAD 8.x with “Flatpak”. The standard installtaion from the OpenSuSe repository didn’t work (BTW for the first time). It was missing libs that are not available by the standard repositories. Due to the fact that I’m not that deep inside the LINUX system I decided to install KiCAD via Flatpak. This caused a completely new installation. But back to my request.
To make the request clear, I think I know how to define another path for Libs and all the other paths. But in my installation I can define another path (all Libs I normally use are on a NAS-Drive) but it is ignored. I wanted to define my NAS-Libs additionally to the standard path. That is accepted (which means there is no error message) but ingnored. I still have access to the standard libs only. Regardless what I define. Therefore I wanted to add a second path for the libs, assuming that KiCAD would show many libs twice, but also the former built libs too. But possibly I did not understand the function correctly. I’m not free from mistakes.

Yes, I understand what you mean. Your arguments sound logical. On th other hand, if you delete a symbol in the schematic and update the pcb, you loose the package there, which is right, but if you than have a complex pcb layout, it causes a lot of work to dlete the useless tracks. I found that to be dangerous. Maybe a toggle switch to activate/deactivate this function would help in both opinions. If not, I can live with it, and to be honest I got used to it. But I had “blind fragments” twice on my boards. It did not cause problems but the signals are not longer part of the schematic. While seeking for errors it causes irritation when you find signal tracks that are not in the schematic.

Yes, I can see how left-over track fragments could be a problem. There are sometimes little track segments that were covered by a pad and not noticeable until the pad is gone. Is DRC finding the fragments? Kicad DRC could be easier to use. I change the drc-error color to green or something other that red as it is difficult to see red arrows with a red top layer.

One thing I do miss from eagle is that the drc errors had little vector lines to show you where they are on the board. That way you could arrow-down the drc list and quickly see where the issues were flagged. In kicad I generally zoom in and scan around the board clicking on the drc arrows to see what they are.

One thing I find handy is that you can delete an entire track – select a segment, press U to extend to the rest of the track, then delete.

Flatpak installs require additional configuration to handle directories that are non-standard. I use a native install so I don’t have such issues. Maybe if you start a separate topic with sufficient details of your flatpak problems, someone else can advise you on the additional configuration needed.

And it’s not Configure Paths command that you need to learn, it’s the Manage Symbol/Footprint Libraries commands that I pointed out in the documentation.

Blockquote Actually I’ll comment on this one too. The documentation on library configuration you need to read is:

docs.kicad.org

KiCad | 8.0 | English | Documentation | KiCad

How to use the KiCad Project Manager

The paths configuration in the section before this one is mainly for editing the path variables for the standard libraries distributed with the programs, which should not be modified anyway. You can in fact have lots of your own libraries even in locations that are not in any of the paths specified by the variables.

@retiredfeline: Yes, I know about this function, but it didn’t work. All pathes were ignored all the time. But know I found out, that the pathes from the original installation cause the problem. After I deleted the standard pathes all addidionally defined pathes were accepted. I did not find any info about that.

Blockquote

@jmk: Well it did’t work. But know, after a lot of trials ifound out how it works. One need to mark the complete track on the board. Than the symbol gets active and after a click on that symbol the dedicated signal is highlighted on the schematic.
This leads to another proposal: Is there any good reason that KiCad shows only the part of a track that is actually clicked? Wouldn’t it be more comfortable if the whole track would be highlighted instead of different extra key-actions? The whole track has the same name. Shouldn’t it be highlighted completely? I think this helps people like me, who do not work with KiCAD every day, to make KiCAD more self-explaining.

Maybe someone wants to edit a track segment. eg. break, delete, change width, move, drag, etc?

Not extra; hover mouse and press “back tick” key. Remove highlight net with one more press “back tick”. Back tick toggles net highlight.

some hints about highlight track (in the pcb editor):

  • first don’t confuse selecting something and highlighting. Simple LMB-mouse click selects a track segment and enables exactly that selected track segment for modification
  • highlighting something is only a optical thing, and for highlighting you should use:
    • either the hotkey for that command (you probably have to change the hotkey, the official doesn’t works on some/many international keyboards)
    • use CTRL+click on any pad/track. for this you have to:
      • enable tracks + pads in the selection filter (bottom right corner)
      • enable global option Preferences–>pcb editor->editing options–>Left click mouse commands–>CTRL-key actions

Cross-selection between schematic ↔ pcb works only for symbols ↔ footprints (and for pads<–>pins), not for tracks.
For tracks ↔ net only cross highlighting will work.
The cross-selection/cross highlighting must be enabled in global preferences for both editors (schematic editor and pcb editor).

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