Wish: Eeschema: Hidden net labels
Description
When working with confusing circuits, or when building a board in steps (small chunks of schematic, then F8, some routing, then more chunks of schematic, F8 again, etc..), i often use local net labels, not to connect two things on the same page without a wire, but just to put a Name to the nets so that i can see what's what during the routing, and/or to be able to use NetClass or Fill Zone.
Legit Label usage, connects two or more things without a wire:
Labels only used to Name the net:
I wish there was an alternative visual mode for the local net labels, where they become less visible and perhaps smaller, with the option to show/hide them (similar to hidden pins), and which would NOT be plotted in the schematic.pdf
(or at least not by default).
Why:
- Some (local) nets are important, it's necesairy that their label is shown in the
.pdf
, thus i reserve enough space for those labels to look good. - Some (local) nets are less important, i don't need the label in the
.pdf
, but i still want to have a Name for them, i would prefer this to NOT take too much extra space or clutter the schematic display. - Other (local) nets are not important, no need to Names/labels on them
The problems:
Right now in KiCad v5, i just put net labels for both cases.
Places where this happens is for example:
- Switching regulators sub-circuit in a Hierarchical sheet, i use local net labels to put names on Feedback/Compensation/Dividers/HighSide/LowSide nets and other such nets which require more caution, and these often need a NetClass and/or a Fill Zone. Using normal net labels for all of these makes the circuit big. Many of these labels could be made "invisible".
- Audio sub-circuits with OpAmps and passive components, i use local net labels on most nets because NetClasses, and because Feedback signals are typically more sensitive so i want to see their names during routing.
Unfortunately, using normal net labels for everything makes the schematic more crowded-looking when i have labels on the "less important" nets.
NOTE: Those are labels on nets intended to only put a (stable and meaningful) Name, they do not connect multiple wires/pins together, thus i could remove them, but i won't because without a Name, these nets will get auto-generated names (like Net-(D41-Pad2)
), and those are a problem whenever you re-annotate the schematic, since D41
might become D39
then, and any NetClass or Fill Zone associations get lost.
Invisible net labels
Here's what i suggest:
- A way to make "less-visible" Net Labels
- normal labels are black, this one could be gray (tho this is gonna be subject to the theme/colors, so maybe it can be the same color as hidden pins on symbols)
- maybe the
Text Size
should be smaller (half size, so 0.635mm), since inside Eeschema, you can normally zoom in-out no problem, while zooming in a.pdf
viewer is less fun and this label isn't supposed to be shown in the.pdf
at all. - Same behavior as normal Net Labels (puts a name on a net, local to the sheet).
- An Eeschema option to toggle the visibility of these "invisible" Net Labels (similar to the option for hidden pins), default should be "visible" (with their gray-ish color)
- These "invisible" labels (or labels with this "invisible" property enabled) shall not be plotted to the
.pdf
.
Perhaps this could be added as a mode/property to the normal net label, thus a checkbox in the Label Properties dialog "Visible".
Example image (Hidden labels shown):
Steps to reproduce
- None, this is a wish
KiCad Version
Application: Eeschema
Version: 5.1.12+dfsg1-1, release build
Libraries:
wxWidgets 3.0.5
libcurl/7.74.0 OpenSSL/1.1.1k zlib/1.2.11 brotli/1.0.9 libidn2/2.3.0 libpsl/0.21.0 (+libidn2/2.3.0) libssh2/1.9.0 nghttp2/1.43.0 librtmp/2.3
Platform: Linux 5.10.0-9-amd64 x86_64, 64 bit, Little endian, wxGTK
Build Info:
wxWidgets: 3.0.5 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.74.0
OpenCASCADE Technology: 7.5.0
Curl: 7.72.0
Compiler: GCC 10.2.1 with C++ ABI 1014
Build settings:
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=ON
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_PYTHON3=ON
KICAD_SCRIPTING_WXPYTHON=ON
KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON
KICAD_SCRIPTING_ACTION_MENU=ON
BUILD_GITHUB_PLUGIN=ON
KICAD_USE_OCE=OFF
KICAD_USE_OCC=ON
KICAD_SPICE=ON