I don’t know if this is the correct place to leave my comments. I have been using KiCad V5 since it was released. During the last weeks I stumbled over a few inconveniences, which seem to end into more serious problems than I first thought.
Since the Pcbnew part of the Software has to be updated manually, Pcbnew does not realize if the Schematic has been changed. The problem occured, when I changed a Schematic and then did the routing in Pcbnew. After that I saved the layout but forgot to save the Schematic. Due to being in a hurry I shut down the Computer via a terminal window and did not get any Info that there is a Problem with an unsaved Schematic file. After the computer was restarted, I accidentally realized, that the Schematic is not the actual one. I would like to have a highlighted Info about the inconsistency between Schematic and layout. Best would be, if the Layout/Schematic would be updated automatically, without any action by the user.
The only place to insert Design Rules is the Pcbnew part of KiCad. But normally - that means I normally work that way - one draws the Schematic and routes the layout afterwards. If there is a reason to fill in special rules for some Signals, you only find really cryptic names for the signals. I would prefer a possibility to configure the Design Rules in the Schematic also. This would give us the choice to mark a signal with, for example, the right mouse toggle switch and assign it to the list which contains the rules wanted.
There is a highlight function that highlights a chosen signal in the Schematic or the Layout. If a signal is highlighted in the Layout it is also highlighted in the Schematic. But that does not work from the beginning on. That means: If you want to highlight a Signal chosen in the Schematic it won’t be highlighted in the layout until you have done the process beginning with the layout. From than on it works fine.
Info about the Version used:
Application: kicad
Version: 5.0.2-bee76a0~70~ubuntu16.04.1, release build
Libraries:
wxWidgets 3.0.2
libcurl/7.47.0 OpenSSL/1.0.2g zlib/1.2.8 libidn/1.32 librtmp/2.3
Platform: Linux 4.4.0-140-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
wxWidgets: 3.0.2 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
Boost: 1.58.0
OpenCASCADE Community Edition: 6.8.0
Curl: 7.47.0
Compiler: GCC 5.4.0 with C++ ABI 1009
Build settings:
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=OFF
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_WXPYTHON=OFF
KICAD_SCRIPTING_ACTION_MENU=ON
BUILD_GITHUB_PLUGIN=ON
KICAD_USE_OCE=ON
KICAD_USE_OCC=OFF
KICAD_SPICE=ON
At most this could be an option. I don’t think most of the user would like if they couldn’t control schematic->layout updates.
How does your Linux distro behave, do you get info about any application when you do that? If yes, but KiCad doesn’t give it, it’s time to file a bug report.
I use Labels of course. But not for all and everything. I do not rename every Signal in a Schematic. Most of the time it is easier just to draw the signals. It is much more comfortable just to click on the signal and choose a group out of the design rules.
Concerning the the behaviour of updates:
I know that the programmers don’t like what I have to say now. But I did use Eagle for many years. I found that KiCad has many features which are much better solved than Eagle did. But some things were really more user friendly. As soon as I make changes in the Schematic they are also done in the Layout. I add a new part in Schematic it appears in the layout. If I delete something it disappears at the same time in the layout. If I make any action that has an influence on the board that could not be solved automatically, I get a big highlighted warning. That does not mean, that I can not go on as wanted, but it gives a clear info that something might go wrong. And that happens exactly at the same time when the problem occurs. I can not see the point where I could lose control. In the opposite it gives me more and easy control over the whole process.
On the other hand I can not see any reason not to update the board directly. If you draw a schematic you normally will layout the board as well. For which reason does the board update require user action in between? And if you just want to produce a schematic just don’t care about the layout. But I am convinced that the annotation forward and backward between schematic and layout is a must.
I want to make clear that I like KiCad very much and I know that it is not Eagle. No Problem. I do not want to compare them. Meantime I got used to it. But if we can avoid problems, it should be done. If we can avoid mistakes that easy, we should do it.
I do not blame KiCad for my mistake. It was my mistake for sure! I could have known it better. If I had shut it down like normal, the Problem would not have occurred. But when I restarted KiCad I did not get any warning to give me a hint that something is going wrong.
This difference is simply something you will need to get used to. I do not feel either approach is inherently better. There are arguments made for both. (I personally do not like it if something changes without my direct command. There are many situations especially when reworking something where you might not want an automatic update.)
A nice feature of kicad is that you can choose different settings on update. With these you can avoid a lot of problems you might get with the default settings. (an automatic update can not give you these options)
however. I don’t want to argue about that. Differently to other people I know, that I’m not perfect. I’m absolutely sure that everybody makes mistakes.
I don’t need to have the same function as Eagle has. But I would like to get a hind if something is possibly going wrong. It is a lot of useless work if you have made some changes in a schematic and suddenly, because of a stupid mistake, the layout shows a different thing than the schematic does. You have to do the same changes again - if you remember all of them.
As mentioned before: I don’t blame KiCad for my mistake, but I would prefer to get a hint. The schematic which is wrong now, is really uncomplicated and I realized the problem at the first view. But it could have been a really complicated one and I had restarted the schematic, worked on it, transferred all to the layout and in worst case I would never realize that something is going wrong. The PCB would not work and I would have to spend a lot of time and money in useless searches for mistakes which could easily have been avoided…
But maybe you know another way to avoid these Problems. I’d like to follow any suggestion except of being flawless…
Regarding your “did not save before forcefully rebooting problem”:
You might be lucky and there is a backup of the schematic inside the project folder.
You can also turn on auto saving inside the preferences menu to avoid similar problems in the future.
And the ERC/DRC are your friends. Never ever send a board out without running both of these. (Do not ignore errors reported by them. Fix the errors properly.)
To be honest i have the habit of saving every few seconds while working (In every software. I think my most used shortcut is crtl+s even way before crtl+c/v)
I also use git in the background and make a commit after very small changes. (allows me to roll back to any point.)
Not exactly: the highlight tool must be selected in both eeschema and pcbnew, no matter which one is selected in first place.
I fully agree.
I think you don’t. From my point of view you are telling your opinion in a very polite way.
You’d like Kicad to have a feature you are used to. I’m used to tinker with the schematic and send the changes to the layout only when I’m done (or when I think I’m done).
The “update PCB from schematic” function has avoided the need of generating a new netlist in eeschema and importing that netlist from pcbnew.
By the way i requested an additional check for DRC that tests if the pcb and schematic are in sync: https://bugs.launchpad.net/kicad/+bug/1809293 (I however fear this is too late for 5.1 as i think we are already in feature freeze or near it.)
Thank you for all your comments. I’m really willing to get used to KiCad and I will try out another way of work-flow.
By the way, I do have the automatic save function activated. But maybe the time hasn’t come to update (I think it makes sense to reduce from 10 min to 5 min). In fact there is no backup.
I’m really don’t want to bother you with my ideas, but would it be a possibility to connect the save function of schematic and Pcbnew? If you hit save (or CTR+s) in one of both that both are saved than?
Yes, I know that and saw a file like that before, but unluckily not in this one. I think the 10 min were not over when I got that stupid idea to shutdown via the console. Normally I never do it this way. But it is no big deal. Only a few lines and change some parts. But it could have been worse.
I have just tried it. Now I have a new “saved project” and everything is in there. So that works. And the time to the next save is reduced to 5 min. But I will try to get used to manual save actions in between.
BTW, this forum is run and used by KiCad users, not developers. Bug reports and wishes have to go to the bug report system, developers read that. It’s good to discuss about possible features here. There’s nothing wrong with your wishes as long as you know how to use KiCad properly. Sometimes it’s difficult to understand what people actually do or what they want by just reading their descriptions, that’s why my comments weren’t necessarily to the point.