Eeschema page numbering

Bug #1826515 reported by David Pearce
96
This bug affects 20 people
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Unknown

Bug Description

Wishlist feature
It would be nice to be able to control schematic page or sheet numbering.
See this forum thread
https://forum.kicad.info/t/how-to-order-page-number-of-hierarchical-sheets/16576

Tags: eeschema
Revision history for this message
Rene Poeschl (poeschlr) wrote :

This is kind of related to the general wish for better flat design support. This means it is at least related to https://bugs.launchpad.net/kicad/+bug/1688717

Revision history for this message
Michael Kavanagh (michaelkavanagh) wrote :

I've set as a duplicate as I don't think there's much value in investing in a half-baked solution, especially with the new file format coming up in v6.

There are workarounds for this, see http://docs.kicad-pcb.org/5.1.2/en/eeschema/eeschema.html#flat-hierarchy

Revision history for this message
Rene Poeschl (poeschlr) wrote :

I am not sure you understand what is asked here. Your workaround is for how to make a flat hierarchy in general not how to control which sheet gets which page number. The bug you attached this to does not even ask for a way to control the page number at all. (It asks for a way to have multiple pages inside the hierarchy focused not on flat design but on very complex hierarchical designs.)

Revision history for this message
David Pearce (halzia) wrote :

I agree that this is not a duplicate.

Revision history for this message
Peter Gregson (pgregson1) wrote :

I believe that the duplicate status is wrong because the bug to which it is attached relates to flat design. This bug relates to controlling the sheet order in hierarchical design. This is important for the following reasons:

1. All good designs must be documented. That means that the reading order tends to be mostly linear, and good documentation always "paints the big picture" before delving into the details. So the overview must come first, then the detail with respect to each of the functions. That requires ordering the sheets so as to make reading the manual easier.

2. One of the reasons for a hierarchical design is to put in one place multiple instances of the same circuit (I have 11 such instances) so that reading is easier. That requires controlling sheet order.

3. In my design with the 11 instances, I have 2 temperature-sensor channels, 5 pressure-sensor channels and 4 reagent-monitoring channels. It makes send to order the sheets for these so that similar sensors are in sequence in the schematic, on the PCB and on the front panel. That requires the ability to control sheet order.

tags: added: eeschema
Changed in kicad:
importance: Undecided → Wishlist
status: New → Triaged
Revision history for this message
Squee22 (squee22) wrote :

I also think we need this. I had a sheet re-number itself on me (no clue why so it's hard to write a bug report for that), but now it's screwed up all my #XX component annotations. This has required me to either change all my annotations or manually annotate.

If I could simply change the number back to what it's supposed to be, that would easily have fixed this and eliminated a lot of busy work.

Revision history for this message
nvmd (nvmd) wrote :

This has also affected me multiple times. The inability to alter page numbers means a complex schematic that has a logical progression from pages 1 to 2 and so on may end up not only numbered (and printing) in scrambled order, but also that in the midst of a change to the annotations KiCad may suddenly renumber all of the pages. This means any documentation which matches the schematic and references the page Id numbers needs to be rewritten as well.

Just recently I had a 25-page schematic entirely renumber itself when I needed to add a single IC and two resistors to it. Id: 8/25 became Id: 25/25, all the other sheets shifted down one number, and since I couldn't change it on the schematic it meant I needed to edit every instance of page numbering in my documentation. The alternative would be to re-annotate 1,000+ components, for which half had been manually numbered due to paired components. It seems extreme that for something as basic as changing a page number those were the two solutions.

Revision history for this message
nvmd (nvmd) wrote :

I'll add that for those seeking a solution the following has worked for me. However messing with the files in this way is not something people should be trying without making a careful backup first and understanding text editing.

1.) Backup your project safely.
2.) Open the project's parent .sch file with a text/code editor like NotePad++
3.) Locate instances of sections starting with $Sheet and ending with $EndSheet (usually towards the bottom). The order in which these sections appear is the order in which KiCad presents/prints the pages of the schematic. You can recognize the individual pages by the appearance of hierarchical pin names.
4.) Cut/paste these sections from $Sheet to $EndSheet and rearrange them into your preferred order. Be very careful doing so, you don't want to make any errors here.
5.) Check your schematic to make sure the order is now correct and that no errors have appeared as a result.

After that the schematic should present, number, and print the pages in the order you arranged. However I wouldn't label this approach as safe for the average user, and certainly requires care and preparation to avoid the possible disasters of a mangled .sch file.

Revision history for this message
Romain (romain145) wrote :

Thanks for the workaround nvmd. That really helped!!

Revision history for this message
KiCad Janitor (kicad-janitor) wrote :

KiCad bug tracker has moved to Gitlab. This report is now available here: https://gitlab.com/kicad/code/kicad/-/issues/2394

Changed in kicad:
status: Triaged → Expired
Changed in kicad:
importance: Wishlist → Unknown
status: Expired → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.