How can I open the symbol editor twice, to make viewing and copying/pasting between symbols easier?

This is a continuation of this closed thread.

Per the original poster:

I would like to create a schematic symbol by copying from a one or more symbols that have the elements that I need for the new symbol. In the KiCad symbol editor, this is a bit awkward, as I can not have multiple symbols open side by side, as I can’t open the symbol editor twice.

Is there a workaround for this?

One answer given is:

Is already possible in current nightly so will be possible in v6.

So I would guess it’s present in the current release as well. But how does one do this, exactly?

Although five years old, the answer there is just as relevant today.

As Paul wrote:

  • Create a new symbol in the Symbol Editor.
  • Use copy/paste or save as to place as many symbols from the Kicad libraries that you want, into this new symbol. Libraries and their symbols are on the LHS of the symbol editor.
  • Add the parts you want, delete the rest, save, and you have a new symbol.

Oh, I interpreted the “is already possible” statement as, “It’s already possible to have two symbol editors open side by side.” So that’s not the case any more? (Or never was?)

The copy/paste workaround does work for some things, such as the graphic design of the symbol, but I don’t see how to, e.g., compare the pin definitions of two symbols side by side.

Is there a way to run the symbol editor from the command line? Perhaps I could just run several instances there.

Command line doesn’t help (unless you are using some *nix distribution where a terminal window may be more convenient than a desktop environment start menu), but it’s possible to open several KiCad instances – just open a new KiCad or Schematic Editor instance, on Windows it happens from the Start menu. In this case standalone Schematic Editor seems to be enough. There you can open the symbol editor.

1 Like

Place the two symbols side by side along with the one you are constructing, then delete them when you have finished. This is a lot easier than opening two different Symbol Editors.

Two Symbol Editors can be opened simultaneously, but you will need to open two different projects to accomplish this, and you will be stuck with the library column in the middle of the screen.

1 Like

Sorry. I’m clearly being really stupid here, but if I’m seeing just the symbols side by side, how do I compare the pin types (input, output, tri-state, etc.)?

Create a name for a new symbol.
Scroll through the libraries to find the symbol you require.
cut & paste into your new symbol in your personal library.
Repeat for every other symbol you want as a reference, but place it along side the other symbols.
Use these as a reference for your new design.

I placed three symbols on the one editor page, see below.

You can have multiple instances of KiCad open at the same time, and each instance can have an open Symbol editor.

1 Like

As indeed I am. :-)

Ah, this is it. Running eeschema alone wasn’t enough, since the symbol is in a library local to that project, but running eeschema on the .kicad_sch in question (so that it picks up the project-local library) does produce a second instance which will have its own symbol editor instance when I edit a symbol.

Ah, so the pin types do seem to be shown in the diagram, too; I don’t know why I didn’t notice this before. (Though it’s not visible in your image; I just see blue blobs next to each pin. It was clear when I brought it up in mine with the text at a readable size.)

But anyway, the solution of running eeschema twice, as mentioned by others, seems easier because I can bring up anything side-by-side for comparison, including stuff in dialogue boxes:

And that side-by-side of the two pin tables also seems easier (to me, anyway) to analyse than having them merged into one, the way your technique does:

That said, I can see how your approach might be useful for certain situations, too, so I’ll keep it in mind.

To be honest, I’ve never tried this before your question. I’ve always had a Data sheet open with the Symbol Editor.

I usually have another footprint in the Footprint Editor when making a new footprint as a reference to remind me of the various layers and line widths of the graphics, so my footprints are consistent with Kicad Library footprints.

Oh, I’ve got a data sheet open, too. But your mention of footprints reminds me of yet another thing where it’s convenient to have two symbol editors open: selecting footprints from the existing ones. The parts I’m generally working with already have footprints (e.g., DIP-24W) available and it’s handy to steal the footprint filters from the reference symbol as well.

(The reason I need to create new symbols at all is just that KiCad doesn’t have symbols for a lot of the vintage parts I use, such as 2364 mask ROMs, and I’m trying to make the symbols match as closely as possible the style for the few vintage parts it does have, such as 2764 EEPROMs.)

Ha!
And I spend a lot of time redrawing Kicad library symbols to help with the readability of my schematic.

Ah well, to each their own. :slightly_smiling_face:

I have not used KiCad since more than half year. Defining new symbol I always started from Save-As (never did it from scratch). I have never had the need to see a reference symbol open next to a new one being created. I was also never been interested in footprint filters but I believe they are copied while Save-As-ing symbol (but can’t check it at the moment).
Your way of copying everything from reference symbol being opened next to new one seems for me very ineffective approach.

  1. I’m not copying everything. Far from it.

  2. How would you know it’s ineffective if you’ve never tried creating a symbol from scratch?

  3. Are you quite sure that the situations you were dealing with apply to me, where I’m not looking to make slight tweaks to another symbol but looking for examples of how to do particular things when designing a symbol?

When I look at what you suggest, which involves things like a manually comparing the reference’s pin definitions with the datasheet and manually editing to match the datasheet definitions for the new part, your approach sounds much more difficult to me. I find typing in a fresh set of pin definitions from the datasheet much faster and less error-prone.

I also prefer to know exactly what’s in the symbol definition I’m making, rather than having people come to me and ask, “Why did you add X?” only to have to reply, “I didn’t even know it was in the symbol definition I ‘wrote.’”

But thank you for your opinion.

That seems extremely sensible to me! But if I’m going to put a definition in a library for re-use elsewhere, I think it’s best to match the existing definitions for generally similar parts so at least you’re starting from a familiar place for your modifications when it goes into another schematic.

Regardless that you often rotate them later, it would seem silly to have half your library’s diode definitions with the anode at the left and half at the right.

I don’t know. It is why I have written that it only “seems for me”.

I am using only my libraries (symbol and footprints) so when I do Save-As (one of my old symbols) I’m not getting in it anything I don’t know about it.
Only first few symbols in KiCad V4 I have done using as source symbols from KiCad library.

In my library I have only one diode symbol containing a diode picture. All other diodes were aliases (in KiCad V4,V5) and now are derived from. It gives me 100% certainty of having all diodes pointing to the same direction.
Of course Zener diodes have to have their own (but also one for all) picture.

I’d say the best approach depends a lot on the situation. In your case, keeping the smbols of different memory IC’s look uniform is a very sensible approach.

But for things like microcontrollers and FPGA’s it’s quite different. KiCad’s default libraries have the pins of these ordered in port numbering order, and roughly equal amounts on left and right to keep the symbol small. But when I use such symbols in my projects, I often sort the pins in a different order, depending on the actual project. Putting inputs left and outputs right. putting all the pins that control an SPI interface close together etc. As a result, the symbol for each project becomes unique. I usually create a project specific library and put all the project specific symbols in it. On itself, just storing them in the schematic works, but then KiCad starts nagging about differences between the used and the library symbols (this can also be turned off if you like).