← Back to team overview

kicad-developers team mailing list archive

Re: Feedback on 5.1


On Mar 12, 2019, at 10:21 AM, Ruth Ivimey-Cook <ruth@xxxxxxxxxx> wrote:

> Schema: taking part of a diagram and making that into a subsheet seems to involve setting up the new sheet, Cutting components, entering the sheet, then pasting. Could that be one action: Make new sheet with selection?
This would be brilliant.

> Schema: is there an official way to create a subsheet which is used multiple times by a parent for the purposes of duplicating component groups? 
> I tried setting up a sheet with such a group (by editing the .sch file), setting a global connector on it and using that connector to link to the parent sheet and it works, sort of; when syncing the shema to pcb I got complaints that I had multiple references to one sheet, but ignoring that did not seem to have negative consequences. What didn't work was that any local label in the subsheet was not local to that sheet instance but considered shared with its sibling instances, which then messed up pcbnew's ratsnest calculations.
> I don't report this as a bug because to get to this state I had to manually edit the schema file... but it would be nice to be supported properly.
Creating multiple instances of a subsheet has been possible for quite a long time. Here’s what you need to do.

On a sheet where you want to create some instances of a subsheet, choose “Place Hierarchical Sheet” from the “Place” menu. Give the sheet a useful filename, perhaps channel.sch. Also give it a useful Sheet Name, such as ChannelA. This sheet name is basically a reference designator for the subsheet.

Enter the subsheet (double-click on it). Edit as you like. Make sure to add hierarchical labels to nets that need to connect to things outside of the sheet. Remember all power symbols create global nets.

Back on the instantiating sheet, make sure to Import the Sheet Pins for your subsheet. Then create another hierarchical sheet. Give it the same file name as before, say channel.sch. Give it a different Sheet Name, perhaps ChannelB. When you click OK, you’ll get a message box asking for confirmation: 

“channel.sch” already exists. Link “channelB” to this file? 

Click Yes. Import the sheet pins. Wire things up as you wish.

Alternatively, you can group-select the subsheet and duplicate it, then change the Sheet Name.

After all of that, annotate the schematic. When you do this each of the parts in the subsheet — which all have the same schematic — will have different reference designators. This is what you need to ensure that everything is unique.

And when you create the netlist for layout, the nets in each (otherwise identical) subsheet will have unique net names, too.	

> Pcb: I love that we have align and distribute centre/top/left etc. However I would like that to be possible for pcb tasks as well (e.g. align centre all selected ICs, optionally dragging connections).
Already there, but not for the connections. Select the parts to align. Right-click, look for the “Align/Distribute” menu entry, mouse in the direction of the arrow, choose how you want to align.

> Pcb: I am still unsure that the windowing model Kicad uses is the right one. The app doesn't behave as separate apps, one for schema, one for pcb etc, but neither is it really behaving seamlessly. I think the best would be that each of the current "apps" - schema, etc - becomes a "task window" within the overall kicad app to a greater degree than is the case now.
On the Mac, when you choose to open schematics or layout (or library editors), you’ll get a new tab under the Kicad window. The menu bar and title bar will reflect the application which has focus. If you don’t like the tabs or if you want to see both schematic and layout at the same time, drag one of the tabs away from the tab bar and you’ll get that application in its own window. So when you can see both schematic and layout at the same time, you’ll see that when you select a part in one it’ll be highlighted/selected in the other.