How do I connect local labels to global labels

Hi everyone,

I’m currently working on an FPGA Design and run into the following error.
The ERC gives an error, when a local label is connected to an global label.
Im using this, because I’m using several sheets for all the I/O Banks of the FPGA.
Can someone help me out?
I’m also don’t understand, why the Trigger Label is not throwing an error.

Consider using hierarchical labels: Schematic Editor | 7.0 | English | Documentation | KiCad

You have connected the local labels to the global labels correctly. That is not what the ERC message is about. The ERC messages are about those labels not being connected anywhere else in the schematic.

TRIGGER does not show an error, because it is used somewhere else in your schematic. Also note that some other labels also do not show the error:

  • NETZ2_OUT
  • NETZ3_OUT
  • NETZ4_OUT
  • NETZ15_OUT

Apart from this direct answer. I also (cautiously) agree with fox. Using hierarchical labels and buses is likely a much better solution.

1 Like

Do you mean instead of the local labels?
I like the design of showing which signals go to which sheet.

Can you share the project (zipped and attached here)?

The Problem is, that my Nets are connected to just an wire. I’m designing Transmission Lines with special impedance and characteristics. I kind of fixed the error with using just the label name for example NETZ1 instead of NETZ1_IN and NETZ1_OUT. So that there are not two different local labels on one Net. I also did this with the global labels.

But is for a design type like this a hierarchical label better?

Hierarchical labels are good if you want to connect signals between different sheets.

I made an example of a hierarchy with buses, and posted in:

Your graphical presentation of a transmission line does not mean anything to KiCad. I don’t have much experience in this area, but I think that creating a netclass for controlled impedance tracks is a much better option. In KiCad you can also assign a wire width and color based on netclass (In Schematic Editor / File / Schematic Setup / Project / Net Classes) and in the PCB editor you can then assign a special track width and clearance to this controlled impedance netclass.

I know that the graphical presentation is nothing that KiCad can use. But it is to understand, what Parameters the Transmission Line will get. I will use Net Classes for the Layout Part. Defining all the lines as bus is a bit confusing, because they are independent of each other.
I just want to make my Schematic more readable. Therefore the use of the Labels to show, to which page the signals go.

With hierarchical Labels I need to connect between the Sheetpages in my Overview. This will look like a mess, because there are a lot of connections.

I dont understand, why the transmission lines work with my “workaround” but other signals wont…

Thanks for the example. I used now the bus for my 7 Segment Display.
Problem is, that the erc throws an warning that the nets are not the same bus and are only graphically connected. Do I need to go with hierarchical busses or is there a different way?
Thanks a lot

Hi everyone,

I tested the whole weekend, and I still don’t understand, how this error works.
I created a test project file and the error ist still there:


Its confusing, that on different pcs the error is different. With my project open on an other pc the error with the global labels comes 16 times. When I open it with my laptop the error comes 14 times. Both systems are running on the same windows version and kicad version 7.0.8.
On my other pc I got the error removed by removing the wires and reconnect them again. But it won’t work on my Laptop. Does someone has an idea?

I’ll repeat eeliks request:

From your screenshot it appears your wires should be connected, but there is only a limited amount of information in screenshots.

Flat_Design Test.zip (23.8 KB)

This is the Test I did.

When I connect the Global label on Page 1 directly without a local label between, than the erc throws no error

It looks like a bug in KiCad. It would be nice if anyone else here can verify it too.

To verify, I created a new project with a root sheet and two hierarchical sub sheets. The sub sheets have identical schematic content, because I just copied & pasted it:

And ERC throws this at me:

ERC report (2023-10-31T10:20:04 CET, Encoding UTF8)

***** Sheet /

***** Sheet /asdf/
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(7000,00 mils, 1850,00 mils): Label 'aaa'
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(7000,00 mils, 2000,00 mils): Label 'bbb'
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(7150,00 mils, 2400,00 mils): Label 'bbb'
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(5900,00 mils, 2400,00 mils): Label 'aaa'
[global_label_dangling]: Global label not connected anywhere else in the schematic
    ; Severity: warning
    @(7500,00 mils, 1850,00 mils): Global Label 'aaa'
[global_label_dangling]: Global label not connected anywhere else in the schematic
    ; Severity: warning
    @(7500,00 mils, 2000,00 mils): Global Label 'bbb'

***** Sheet /Untitled Sheet/
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(5000,00 mils, 3500,00 mils): Label 'aaa'
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(6100,00 mils, 3100,00 mils): Label 'bbb'
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(6250,00 mils, 3500,00 mils): Label 'bbb'
[global_label_dangling]: Global label not connected anywhere else in the schematic
    ; Severity: warning
    @(6600,00 mils, 3100,00 mils): Global Label 'bbb'
[label_dangling]: Label not connected to anything
    ; Severity: error
    @(6100,00 mils, 2950,00 mils): Label 'aaa'
[global_label_dangling]: Global label not connected anywhere else in the schematic
    ; Severity: warning
    @(6600,00 mils, 2950,00 mils): Global Label 'aaa'

 ** ERC messages: 12  Errors 8  Warnings 4

2023-10-31T10:22_asdf_labels.zip (6.0 KB)

In addition, when the resistor with labels part is duplicated on each sheet, ten there are no ERC violations.

My KiCad version:

Application: KiCad x86_64 on x86_64

Version: 7.0.8-7.0.8~ubuntu20.04.1, release build

Libraries:
	wxWidgets 3.2.2
	FreeType 2.10.1
	HarfBuzz 6.0.0
	FontConfig 2.13.1
	libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3

Platform: Linux Mint 20.3, 64 bit, Little endian, wxGTK, xfce, x11

Build Info:
	Date: Sep 30 2023 13:54:09
	wxWidgets: 3.2.1 (wchar_t,wx containers) GTK+ 3.24
	Boost: 1.71.0
	OCC: 7.5.2
	Curl: 7.88.1
	ngspice: 38
	Compiler: GCC 9.4.0 with C++ ABI 1013

Build settings:
	KICAD_SPICE=ON

I tested your Project and I get a different error, but duplicating the resistor also fixed the problems from the erc.



yes, i can confirm.

Application: KiCad x86_64 on x86_64

Version: 7.0.8-7.0.8~ubuntu23.04.1, release build

Libraries:
	wxWidgets 3.2.2
	FreeType 2.12.1
	HarfBuzz 6.0.0
	FontConfig 2.14.1
	libcurl/7.88.1 OpenSSL/3.0.8 zlib/1.2.13 brotli/1.0.9 zstd/1.5.4 libidn2/2.3.3 libpsl/0.21.2 (+libidn2/2.3.3) libssh/0.10.4/openssl/zlib nghttp2/1.52.0 librtmp/2.3

Platform: Ubuntu 23.04, 64 bit, Little endian, wxGTK, mate, x11

Build Info:
	Date: Sep 30 2023 13:54:00
	wxWidgets: 3.2.2 (wchar_t,wx containers) GTK+ 3.24
	Boost: 1.74.0
	OCC: 7.6.3
	Curl: 7.88.1
	ngspice: 38
	Compiler: GCC 12.3.0 with C++ ABI 1017

Build settings:
	KICAD_SPICE=ON

You declare that your intention is to ask everyone for help but you restrict readers set only to those who can understand your ERC messages. For me they saying absolutely nothing. As I can’t Ctrl+C, Ctrl+V error messages from your screen shot to have them translated I skip whole this thread.
Today, reading ‘hi everyone’ I supposed that you have changed your policy, but few second later I sow that not so I don’t read the rest of thread.
I think that changing language is made as simple as possibly (you need not to look through Preferences dialog boxes to find it but it has its own menu item) just to help to use KiCad forum.
So next time take a few seconds to change the language or don’t write ‘hi everyone’ because it is misleading.

I created a gitlab issue for this bug.

Edit: I reported it at 11:36u, and Seth closed it with “Fix committed” at 20:26u the same day. So I’ll guess I’ll mark it as the solution / solved :slight_smile:

@Marcole, can you keep an eye on this and test this further when it is fully released? This will probably be in KiCad V7.0.10 next month.

2 Likes

Hi Piotr,
I really dont understand what you want me to say.
Is it that my ERC Messages are in German? Or is the everyone your problem?
Maybe you can explain it to me, so I wont make that mistake again.