Hierarchical sheets tracing

The plugin works only on a KiCad project. This means that you have to have layout file and schematics file and both of them have to have the same name.

You need to select the source hierarchy level. Then you’l be able to choose which destination sheets you want the layout to replicate to.

1 Like

thanks, it almost works! after i prompted tracks and text, the other chips replicated layout and text, but not replicated tracks.

what else i can missed now?

(and i had tried put marks on all points, but the same result)

after that, i had moved CP4 R3 and the appropriate footprints in other chips moved synchronized.

But tracks doesn’t not replicated yet.

by the way, are there difference, which sheet was edited and tracked first - the first original hierarchic sheet or 15th hierarchic sheet?

may be i need 2 find the really first created sheet, and the tracks don’t copy because of this sheet not the original?

af

There is a bug in 5.99 which prevents the track to show in the canvas after the plugin has been run. You’ll have to close the pcbnew and open it again for tracks to show up


for replicating tracks it need to remove all points, except replicate tracks, and take in mind, that must not move any chips after pcb was updated, the tracks are replicated to the original places, where chips was.
So the chips with K19 was moved left toward the original chips, while the replicated tracks for him was in it’s original place - right side of the connector and MCU footprints.

they replicated symbols layout in the other chips, but the tracks are slightly distorted and shifted,

so that their editing may be will took longer time, than to draw routes from fresh. but i saw the tutorial where tracks was placed precisely. Just they showed how the 5.11 works with this plugin.

I’m not exactly sure what I’m looking at in your latest screenshot, but I do see R20 in the top left corner, with a long ratsnest line going to a single track segment on the right half of the screenshot.

Also, in the upper left corner I see CP16, CP17, VD12, VD13. “R20” don’t fit in that row, are you sure it’s the right resistor?

Did you use the **First free after sheet number x100" method during annotation? I assume it does not matter much for the script, but it makes it easier for mere humans.

image

It may also help to experiment with simpler examples until you’ve got a bit more experience with the Replicate Layout plugin. For example, make a copy of this project, and then delete most of the sheets in that copy and work with just a handful of pages to be replicated.

don’t worry about resistor number, please. It has been layed in properly layout.
i concerned on chips replication track and layout now, not annotation.
better can you suggest me, why tracks replicated not so clear, and what me to do?

(if u r interesting - the lines goes from R… to the right, just want to connect with gND, so when it will be routed gnd bus over all the board, this line will be removed.)

I can not add much.
I can see that some circuit has been replicated, and that the Replicate layout plugin does “something”. But from a static screenshot there is no telling whether you’ve bumped into a bug, or are using the script in the wrong way.

Maybe it helps a bit if you post a screenshot of the schematic part to be replicated. That gives us a better Idea of what sort of circuit it is.

I only used the Replicate Layout plugin once, and it was just for some experiments and to see what it was and how it worked. It worked fine for me, but that was some time ago. Maybe KiCad V5.1.5. Last time I tried to run the plugin, it was gone, and I did not investigate whether it was some directory issue, or whether I may have uninstalled the script. For those kind of things I’m patiently waiting for the plugin manager in KiCad-nightly V5.99. Just let KiCad handle it with a few mouse clicks from me.

When I used the Replicate Layout plugin, I followed the instructions from the PDF that Dave Thomas made:

1 Like

From the tracks I’d think that you’ve run the plugin once and because of the pcbnew bug, you didn’t see the tracks. Then you moved the footprints and ran the plugin again. Then you saved the layout, closed it and opened it again.

I’d recommend deleting the tracks and running the plugin again (just once)

1 Like

it’s not works,
i had removed tracks and had got the new msg now


there aren’t any tracks exept on the first chips
then i once more full closed project, and reopen Kicad, and have get the msg

Whoa, you’ve encountered totally new bug. From the pictures, I assume the bug is internal to the wxpython. Did you update KiCad between running the plugin successfully?

MY version is yesterday installed.

Application: KiCad (64-bit)

Version: (5.99.0-12218-g749d2d5987), release build

Libraries:
wxWidgets 3.1.5
libcurl/7.78.0-DEV Schannel zlib/1.2.11

Platform: Windows 10 (build 19043), 64-bit edition, 64 bit, Little endian, wxMSW

Build Info:
Date: Sep 6 2021 20:59:40
wxWidgets: 3.1.5 (wchar_t,wx containers)
Boost: 1.76.0
OCC: 7.5.0
Curl: 7.78.0-DEV
ngspice: 35
Compiler: Visual C++ 1929 without C++ ABI

Build settings:
KICAD_USE_OCC=ON
KICAD_SPICE=ON

I haven’t tried the plugin lately so I can’t say if it works for other use cases or not. @anton, is the project confidential or could you share it? Or could you create a test project with which the plugin gives these errors or bugs?

i think that it depends not of my project.
But there are problem, the update pcb function had placed some chips super positioned, so after replication they are replicated synchronized,

so very difficult to separate two or 3 chips, without distortion after they are replikated.

can u suggest me, how to define distance in array between chips ?

i had superpositioned from 2 to 4 chips (on screenshot is 4 chips together)


and 2 of them are replicated at the left upper corner (as u can see , the sample is on the previous shot clear seen, ) and 2 other aren’t - one is СP99-CP101 at the upper right corner AND 2 other where CP97-CP102 at the bottom

so, they even not replicated, (i had supposed, that because of their coordinates is too close, the plugin cant to process it as separate chips, so it had interrupted the workflow.)
there are 25 sheets/chips, while they arranged in 15 knots


the total issue - that for my project and 5.99 version the plugin is definitely work, the traking replicated as text too!
but there is the problem - how to ask pcb update don’t super positioned different chips together?

what reasons the arrange depends from?

and the error message is after file pcb was saved and new attempt to launch plug-in

the superposition problem was because of i had placed the board shape , without it, all the chips has arranged by the field without super position


then i had arrange chips number 1, and after plugin was applying, i had got same error message, as described above (assertion errror), make it few times, used different footprints highlited with the same error.
Even after Kicad was closed and reopen.
then i had make reboot system, and after that plugin was applyed without error, and layout has been replikated.
Just it same has made without tracks and , which is more important, turn it to 270 degrees.
I had PCB relaunched, and tracks was appeared.
the bugs was 1. almost all designators was placed legs up (on 180 degree)
2.the frame in forward silk layer didn’t replikated at all, and designators of each chips same overheaded.
And need to spend much time to turn it back manually.
resumed - while i had spend time to study this plugin for 4 days, i supposed, that any people would made these chips routing manually in 1 day, but may be this experience can be used somebody as manual.

The position of the replicated sections is controlled manually. Before you start the plugin, you have to select one footprint (e.g. relay in your case) from the source layout. The replicated layouts will be positioned around the same footprint in the destination sheets. So in your case, you need to think about how and where you want to place the relays, and you need to place them before running the plugin.

I do have a plugin to help with linear, circular and matrix placement, but it hasn’t be ported to 5.99. Until then you can use KiCad’s alignment tools to help you with this.

As for the bug when running the plugin for a second time, I’ll have to look it up

My suggestion is that as i can’t last time to launch plugin from the first attempt, i tryed to highlight the various footprints in chips, and in time, when it hasn’t error message and launched, the anchor footprint was reversed while routing was made.

so i make the new experiment.

as last replication has not full satisfyed result, i had create the new project and create original chips by the new strict rules. It mean, that i need to make minimum changes, even not edit font properties in text annotations.

1.the anchor footprints must be not reversed and not moved.
2.may be plugin is difficult to process so much points momentarily, so start from 2 replications, then see, how much replications momentarily blow it out.
3.not to decrease font, as i had do it before.

after start i has the new one error message, but this time i don’t changed anchor FP, and just continued to reboot system until plugin has started error free. About 5th times reboot it has started, and i had removed from the list 22 of 24 chips, so it has replicated chips 2 and 3 only, and they aren’t legs up now, not turned to 270 degree, they are has same position as the original chips.


after that i repeat this action with 4 and 5 chips, then 6,7, 8,9 chips, then 10,11,12,13,14 chips, 15-20 chips, and for seven chips don;t have the rest chips. At the end was all 24 chips in properly position and properly annotated.! So i had checked that at least 6 chips didn’t overload the program, (but may be it’s rule not actual, may be it 's depends of one of other 2 rules, i hadn’t checked it full.)

27|690x321

hope this 3 rules can help to somebody before the bug will be catch.

one more thing - does it possible to insert to plugin grouping operation in a future? I had grouping all 24 channels by 90 seconds manually, when they was arranged properly, as last time.

But in cases before, where chips are super positioned, it would be very helpful to separate 5 chips, which are replicated , but they are impossible to separate in such a case.

and in any case, for multichannel i think that everybody had grouped chips before final arranging. So, it’ll be useful in any case.

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