Schematic/PCB packages in particular seem to take immense pride in paying absolutely no attention whatsoever to the UI standards of the platforms they run on.

And I'm very thankful that they don't - if they did they would be too cumbersome to use.

Specifically I'm talking about how the standard UI model of MS Windows works this way: Select object, then select operation. Whereas in CAD this works better as it scales to multiple objects more simply: Select operation, then select object

Schematic/PCB packages in particular seem to take immense pride in paying absolutely no attention whatsoever to the UI standards of the platforms they run on.

And I'm very thankful that they don't - if they did they would be too cumbersome to use.

Specifically I'm talking about how the standard UI model of MS Windows works this way: Select object, then select operation. Whereas in CAD this works better as it scales to multiple objects more simply: Select operation, then select object

Have you ever tried the PCB Elegance schematic editor? It works with the standard Windows model (noun-verb) and it's not cumbersome to use at all. One can select many objects and modify them all in a single action. One can copy and paste bits of schematic between different windows (as expected of any Windows software). It never bothers the user with a 'clarify selection' pop-up.

Whatever the reason for Kicad's UI quirkiness, it's not because it's necessary.

Schematic/PCB packages in particular seem to take immense pride in paying absolutely no attention whatsoever to the UI standards of the platforms they run on.

And I'm very thankful that they don't - if they did they would be too cumbersome to use.

Specifically I'm talking about how the standard UI model of MS Windows works this way: Select object, then select operation. Whereas in CAD this works better as it scales to multiple objects more simply: Select operation, then select object

Have you ever tried the PCB Elegance schematic editor? It works with the standard Windows model (noun-verb) and it's not cumbersome to use at all. One can select many objects and modify them all in a single action. One can copy and paste bits of schematic between different windows (as expected of any Windows software). It never bothers the user with a 'clarify selection' pop-up.

Whatever the reason for Kicad's UI quirkiness, it's not because it's necessary.

Haven't used it, but if it works in the standard way it would require holding the Control key down while clicking on everything you want to change. Then chose the operation to perform.One mistake and you lose all of your selections and have to start again. Personally I find that cumbersome compared to the non-standard methods used by e.g. Eagle and KiCad.

The general quirkiness of KiCad I am not arguing about, that is something different IMO. e.g. Lack of copy/paste is just a missing feature.

The clarify selection is an interesting one. In 'standard' Windows packages it can be difficult or impossible to select an object which is behind another object or which is overlapping. That is just KiCad's solution to that particular problem. Maybe PCB Elegance has a better solution to selecting objects which are close together/overlapping.

The general quirkiness of KiCad I am not arguing about, that is something different IMO. e.g. Lack of copy/paste is just a missing feature.

Pebkac?? There is a copy/paste, in Schematic and in PCB and in sch lib editor and probably in the footprint editor too, it's been there for years.

by copy/paste, I think we all think of something like : open two documents, select one item in a document, do copy, and paste it in the other document. it's been in our computer live for decades, but not in cad softwares and not in kicad.but yes there is some obscure mechanism with clic, and "C" to copy, or "M" to move, or right clic for a bloc, well, not what a simple text editor can do. but hey it's free so we cannot complain, just grab your C compiler and make kicad better !

by copy/paste, I think we all think of something like : open two documents, select one item in a document, do copy, and paste it in the other document. it's been in our computer live for decades, but not in cad softwares and not in kicad.

No I was thinking of making multiple copies of one section of a schematic or layout. Documents? It's not a word processor. If you want to copy stuff from another project, I think you just add the relevant file to your project and then you can copy out of it.Also because it is text based you can just copy the appropriate text if you open both in a text editor. You can use a difference tool to find the appropriate entries.I've done it both ways, definitely exists not simple but not a major issue. I accept it would be useful if you could paste across application boundaries so I will look forward to the day.

FWIW I keep commonly used building blocks that I like to reuse in their own sheet with easy to remember names. conn.sch contains routinely used external connections, prog.sch has programming headers, UI.sch includes connections and support circuitry for commonly used displays with I2C pullups etc, and power.sch has various power regulators.

If you copy them to the folder of your new project and create a sheet using one of those names, KiCad says it's found a file with that name and do I want to use it...boom. Delete what you don't need, and you're away.

No where near as clean and neat as copy and paste between projects I grant you, but you can only have one KiCad project open concurrently so that may be more than just a trivial function to add or we'd have it already.

FWIW I keep commonly used building blocks that I like to reuse in their own sheet with easy to remember names. conn.sch contains routinely used external connections, prog.sch has programming headers, UI.sch includes connections and support circuitry for commonly used displays with I2C pullups etc, and power.sch has various power regulators.

If you copy them to the folder of your new project and create a sheet using one of those names, KiCad says it's found a file with that name and do I want to use it...boom. Delete what you don't need, and you're away.

No where near as clean and neat as copy and paste between projects I grant you, but you can only have one KiCad project open concurrently so that may be more than just a trivial function to add or we'd have it already.

by copy/paste, I think we all think of something like : open two documents, select one item in a document, do copy, and paste it in the other document. it's been in our computer live for decades, but not in cad softwares and not in kicad.

No I was thinking of making multiple copies of one section of a schematic or layout. Documents? It's not a word processor. If you want to copy stuff from another project, I think you just add the relevant file to your project and then you can copy out of it.Also because it is text based you can just copy the appropriate text if you open both in a text editor. You can use a difference tool to find the appropriate entries.I've done it both ways, definitely exists not simple but not a major issue. I accept it would be useful if you could paste across application boundaries so I will look forward to the day.

Haven't used it, but if it works in the standard way it would require holding the Control key down while clicking on everything you want to change. Then chose the operation to perform.One mistake and you lose all of your selections and have to start again. Personally I find that cumbersome compared to the non-standard methods used by e.g. Eagle and KiCad.

In PCB Elegance, to modify a single object it is one more mouse click, but to operate on multiple objects it's far less work for the user. Selections are rectangular and every object the rectangle touches is selected. Selection is appending if the shift key is held down.

When multiple object of a different type are selected at once, the context menu contain two menus: Select only and Unselect. Inside each is a list of all different object types. For example, if I wanted to delete all the wires in a particular area of the schematic I would select the area and then go to Select only -> Wires from the context menu. Now only the wires are selected and I just press the delete key.

The clarify selection is an interesting one. In 'standard' Windows packages it can be difficult or impossible to select an object which is behind another object or which is overlapping. That is just KiCad's solution to that particular problem. Maybe PCB Elegance has a better solution to selecting objects which are close together/overlapping.

When the shift key is held and an already selected item is selected again, it gets deselected. This way it's easy to unselect one of two objects close together (especially if zoomed in). If you accidentally place two of the same components on top of each other, the selection tool can't differentiate between the two. In this case you just use the 'Select components by list' feature which will show a dialog containing the list of all components in the sheet. This can controls the selection also so you deselect one of the components here and then move the other away.

The general quirkiness of KiCad I am not arguing about, that is something different IMO. e.g. Lack of copy/paste is just a missing feature.

Pebkac?? There is a copy/paste, in Schematic and in PCB and in sch lib editor and probably in the footprint editor too, it's been there for years.

by copy/paste, I think we all think of something like : open two documents, select one item in a document, do copy, and paste it in the other document. it's been in our computer live for decades, but not in cad softwares and not in kicad.but yes there is some obscure mechanism with clic, and "C" to copy, or "M" to move, or right clic for a bloc, well, not what a simple text editor can do. but hey it's free so we cannot complain, just grab your C compiler and make kicad better !

Yes, it's copy/paste between sheets that's the problem. I've never heard of another schematic entry program that cannot do it. Off the top of my head, I can think of four other open source schematic entry softwares for Windows: BSch3V, PCB Elegance, Qucs, Tinycad. All of them can copy paste between sheets of different instances of the program!

If I was to rate all the schematic entry software for Windows that I've used by user friendliness, I would put BSch3V and PCB Elegance tied in first place. After that, I would put a list of commercial packages I've used over the years, then Kicad towards the bottom, tied with LT Spice. Maybe the board layout side of Kicad is shit hot and redeems the poor schematic entry... I don't know, I haven't used it in earnest. I sincerely hope it's the case.

There is a limited copy and paste in KiCad (within a project), but confusingly it doesn't follow normal conventions. To copy from a different project, you have to open the schematic sheet in the project you want to copy _to_. So there are ways, but it is clunky.

This a recognized issue, but the lack of a general copy/paste goes back to bad decisions in the early days of KiCad (it was originally a DOS program), which is that the internal data format can not be serialized to the clip board. Work is ongoing to create new formats, but doing that and keeping back compatibility takes time. Arguably it is better to add new, useful features, than perfecting existing features that already mostly work, but people's priorities are all different, so it's impossible to please everyone.

KiCad is definitely improving, albeit slowly, and there are some devs pushing to improve the UX, so I see a positive future. Given that the project is mostly created by volunteers, it's really pretty good.

Whereas in CAD this works better as it scales to multiple objects more simply: Select operation, then select object

You must have never used a standard vector-based image editing program in Windows/OSX/pre-OSX/Linux/et. al. Rubberband select or shift/control select to select multiple objects and then perform action. You're selecting the objects you want to edit and then telling the program what to do with them. This is an industry (graphics design) standard.

Understand that we're talking semantics; both do the same function. It is the difference between saying, "I want to change the scale of these objects," and, "To these objects I want to change the scale." The latter is more obtuse grammatically, but in the context of a GUI, it makes more sense than the former. The reason lies in contextual menus. It doesn't make sense to give the user the option to scale something that doesn't exist (isn't selected). While proper GUI design dictates that the option must always be present in the menu, it must be grayed out unless it can be performed at the time the menu is displayed.

However, modern day CAD and EDA programs are based on the structure of ancient (pre-GUI) programs from way back when GUIs didn't exist and workstations were the size of a recliner. GUIs came about and the CAD industry slowly and grudgingly came around to them, but stubbornly refused to change the interface to a more friendly design seen in all other GUI-based vector drawing programs. This is the reason for the black background, for example. It wasn't until the Apple Lisa and Macintosh (1982/83) that inverted video became standard. Modern EDA programs allow the background to be changed, but it still defaults to black.

We're using a slightly prettier version of 1970/1980's workstation CAD/EDA programs. It's like putting lipstick on a pig.

Whereas in CAD this works better as it scales to multiple objects more simply: Select operation, then select object

You must have never used a standard vector-based image editing program in Windows/OSX/pre-OSX/Linux/et. al. Rubberband select or shift/control select to select multiple objects and then perform action. You're selecting the objects you want to edit and then telling the program what to do with them. This is an industry (graphics design) standard.

Of course I have used standard packages. I simply don't like that way of selecting objects. I like packages where I don't need to do the Shift/Ctrl selection dance.

I know how it works, I just think it sucks and that the other way works better.

Specifically I'm talking about how the standard UI model of MS Windows works this way: Select object, then select operation. Whereas in CAD this works better as it scales to multiple objects more simply: Select operation, then select object

I guess this is extremely subjective and your idea of 'what is better'.For me it's much much much worse. Because it mains that you always need to go for that action OR you will need to switch your action.Besides, it also means that you keep on hitting short-key all the freaking time.Also the focus on your objects are jumping all over the place and it's even worse if you decided to do a different action instead.You're just using your keyboard the whole time like you're almost typing.

It drives me insane

The point I really don't understand, why is there simply not a setting, where people can choose this?It's open source anyway, absolutely not that hard to implement something like this.

Logged

"If you can't explain it simply (or at all), you don't understand it well enough." A. Einstein

Overall I quite like it, once you get your mind wrapped around the Netlist to push from one to the other....Overall, I'll be staying here, because I like open source... It's a great package

Good work. I like it too.

Sure it has some quirks. It's a large, powerful, complex piece of software that's maintained for the fun of it by about 5 people. That's amazing!

boffin, if you subscribe to the dev mailing list you'll see most of the issues that annoy people are also considered issues by the dev team. Usually they are actively being worked on, or postponed until behind the scenes enhancements that allow more advanced behaviours are completed.

But don't go there looking for support. There is a very active and helpful users mailing list too. Some of the development team hang out with the users there; you can get some great support, but also, your opinion about upcoming changes actually counts.

In a thread like this the nay sayers always need to tell the OP what an idiot he is for choosing X or doing Y. It bugs me. Bloody X-o-phobes. Why do they even care what you use?

Stick with KiCad for a while, mate, it's learning time well spent. It's a very capable bit of gear.

Logged

I'd rather a Google clue, link, or some theory than "do this" (generally)

Specifically I'm talking about how the standard UI model of MS Windows works this way: Select object, then select operation. Whereas in CAD this works better as it scales to multiple objects more simply: Select operation, then select object

I guess this is extremely subjective and your idea of 'what is better'.

Probably right. But just because a method is 'Industry Standard' doesn't mean it is the best approach either.

You're just using your keyboard the whole time like you're almost typing.

It drives me insane

It is my utopia using the keyboard all of the time like typing. One of the annoyances of KiCad for me is having to use the mouse so much for things which I could use the keyboard for. And I don't mean the 'MS Windows way' of keyboard use - that is not pleasant or efficient for me.

It is my utopia using the keyboard all of the time like typing. One of the annoyances of KiCad for me is having to use the mouse so much for things which I could use the keyboard for. And I don't mean the 'MS Windows way' of keyboard use - that is not pleasant or efficient for me.

I guess everyone has his own utopia

I only don't follow this.You have to draw lines and place the components with a mouse anyway.The same thing goes for 90% of every other software program.So I always end up binding loads of shortcut keys to my mouse (X-Mouse Button Control is EXTREMELY nice for that).Why not than use a mouse only interface? (or as close as possible)

In fact, the only time I use my keyboard, is to type messages (on forums ), fill in measures or formulas.

Logged

"If you can't explain it simply (or at all), you don't understand it well enough." A. Einstein

Let's say I have finshed the schematic and I want to start with the pcb layout.

On the monitor on the left there's the schematic and on the monitor on the right there's the (board) layout.

The layout consists of an empty rectangle (the pcb) and aside there are 500 components that needs to be placed.

Let's say I have zoomed into a part of the pcb where I am laying out some components connected to eachother in the schematic.Let's say I want to take R233 from the heap and place it onto the board area where I'm actually zoomed into.

I just type: "move r233" and that component is imediately attached to the mouse cursor and I can place it immediately withoutthe need to:

1.) zoom out2.) pan to the area where all the not yet placed components are3.) zoom in and try to find R233 between all the others4.) grab it /select it5.) zoom out6.) pan7.) zoom in8.) place it

Repeat this for all the other components...

So, using the keyboard, you save a lot of time and you avoid rsi.And you don't need to repeat typing the whole command again for the next resistor.Just hit the up-arrow, backspace and enter"4" to grab R234...

I often draw lines and place components using the keyboard, it's far more precise. When drawing a footprint I'll normally place the lines I need haphazardly using the mouse and then edit the position and start/end points of each line with the keyboard so they're all placed precisely where I want them and line up exactly. A mouse is great for exploring an unfamiliar program and quickly selecting an object but it's tedious and imprecise to do the fine detailed work with a mouse.

It is my utopia using the keyboard all of the time like typing. One of the annoyances of KiCad for me is having to use the mouse so much for things which I could use the keyboard for. And I don't mean the 'MS Windows way' of keyboard use - that is not pleasant or efficient for me.

I guess everyone has his own utopia

Why not than use a mouse only interface? (or as close as possible)

As per Karels post, because a good keyboard interface can be very fast and accurate (once it is learned).

It is my utopia using the keyboard all of the time like typing. One of the annoyances of KiCad for me is having to use the mouse so much for things which I could use the keyboard for. And I don't mean the 'MS Windows way' of keyboard use - that is not pleasant or efficient for me.

I guess everyone has his own utopia

Why not than use a mouse only interface? (or as close as possible)

As per Karels post, because a good keyboard interface can be very fast and accurate (once it is learned).

Yes, but the point is, that this is for everyone different (that's why I said everyone has a different utopia)

Most professional CAD and 3D programs I know of, are all mouse by default and keyboard shortcuts can be programed in such a way that in the end you can do most things by keyboard if that's your fancy.Most companies I worked with most people just use the mouse with some basic shortcut-keys.(another annoying part about KiCad is that they don't use default shortcut key combinations)The whole point of this, is that it can be programmed to anyone's like.That is what is missing right now.

Don't see how accuracy should be an argument.If you want to be accurate, just use absolute values filled in.

I don't get the whole 'fast' and 'efficient' issue anyway.On a decent board design that will maybe safe you 5% at MOST from the total hours spent.If people think that's the way to safe time and money, they have a lot to learn......

Logged

"If you can't explain it simply (or at all), you don't understand it well enough." A. Einstein