8
\$\begingroup\$

I have a schematic where I'm using hierarchical sheets. I'll have five same sheets and I'd like a way to make one and somehow just copy it for the other four sheets.

Any ideas how to do that? I can't find any obvious way to do so.

UPDATE: Just to be clear: I'd like to copy not just the sheet symbol but the whole sheet and all components in it.

\$\endgroup\$
7
\$\begingroup\$

If you have many same schematic blocks you want to reuse, you can use hierarchical sheet like this: (Kicad-4.0.2-stable MacOSX)

  1. Create a hierarchical sheet with sheet name A_1 , file name A.sch
  2. Place your components and wires into this hierarchical sheet.
  3. Add a new hierarchical sheet with sheet name A_x (x is 1, 2, 3), file name A.sch ( only if the file name is the same, but different sheet name will work)
  4. Done.
\$\endgroup\$
  • \$\begingroup\$ This is the best answer. It is similar to AndrejaKo's answer but the instructions are more explicit. When using this KiCad (4.0+) will actually confirm that you want to create a new hierarchical sheet using an existing .sch file. \$\endgroup\$ – Anton Sep 16 '16 at 15:53
  • \$\begingroup\$ The answer to this question (electronics.stackexchange.com/questions/187156/…) provides a graphical view of the same answer. \$\endgroup\$ – Anton Sep 16 '16 at 16:01
4
\$\begingroup\$

This is an old question I know, but it's what I found when searching for a solution to this problem, so I think it's a good place to put the solution for fellow searchers:

  1. Drag a box around around the sheet you want to duplicate, using the left mouse button.
  2. Release the left mouse button and press the right to see a menu of things you can do. Select "Save Block".
  3. Then click on the little clipboard (paste) icon which will be somewhere around the edge of your schematic editing area (it's near the top left for me).
  4. Select where the new block will go.

This will paste a copy of your block, but it will refer to a new sheet based on the same filename as the original. If you annotate parts you'll see that the parts in the different sheets have different labels, even though they are sourced from the same schematic file.

\$\endgroup\$
  • \$\begingroup\$ Was this the case with the old 4200-something build of 2013 and has since been fixed? (Why on Earth go two years between releases anyways.) \$\endgroup\$ – rdtsc Dec 9 '15 at 6:01
  • \$\begingroup\$ I don't know. :-) I'm a complete newbie on KiCad, using the version 4.0 release from November 2015. All I can say is that using the above solution works really well. I edit the base schematic for a sheet, and all the instances change too. \$\endgroup\$ – Ray H. Dec 10 '15 at 2:33
2
\$\begingroup\$

Create your hierarchical sheet. Then, press "Space". It will look like it is in the image below, but you can move it anyways with "M" key, or right clicking and then clicking "Move Sheet".

enter image description here

I do not remember if this is the default hot-key for "Repeat Last Item" or if I have changed it before. To check this, go to Preferences>Hotkeys>List Current Hotkeys.

\$\endgroup\$
  • 1
    \$\begingroup\$ In my default settings, space sets dx and dy to zero. I know that I can use Insert to repeat the last component I placed and that works for hierarchial sheets (and provides results same as you described), but I can't (or can't find a way to) do that with existing sheet. Maybe I was unclear, but I want to make copies of a populated sheet together with all components in it. \$\endgroup\$ – AndrejaKo May 30 '12 at 17:07
  • \$\begingroup\$ Ah, there is no more solution than you did in your answer, I'm afraid. \$\endgroup\$ – abdullah kahraman May 31 '12 at 7:02
0
\$\begingroup\$

KiCAD when making hierarchical sheets creates a new .sch file for each sheet. One way solve the problem is to make several sheets and then copy the original sheet's .sch file and have the copies replace the .sch files of other sheets. This way, when entered, each of the copies will look like original sheet.

\$\endgroup\$
  • \$\begingroup\$ Do note that I am still looking for a more elegant solution to this problem. \$\endgroup\$ – AndrejaKo May 30 '12 at 17:37
  • \$\begingroup\$ I believe this answer is outdated. You don't need to make any copies of a .sch file. If you have created a hierarchical sheet that you would like to re-use, simply create a new hierarchical sheet with a different "Sheet name" but enter the same .sch file as the one you'd like to re-use. KiCad (4.0+) will even confirm that this is your intention. \$\endgroup\$ – Anton Sep 16 '16 at 15:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.