missing connection with multi-part components in different hierarchical sheets

Bug #1846803 reported by Eberhard Seibel
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Unknown

Bug Description

First, attached is the reference project test.zip.
Kicad shows a strange behavior when creating the connections (netlist) between eeschema and pcbnew. In the identical hierarchical drawings "LED" on sheet T2.sch is in each case a part of a multi-part IC (here 74AUC2G00).
Now the netlist visible in pcbnew:
In pcbnew only part B is connected. As an example, sheet Led0 and sheet5D88809D show the two related parts of U2. Port "P0" associated with sheet "LED0" is connected to part B of U2 used in sheet "sheet5D88809D" instead of part A to "Led0". The output of U2B is again connected to the component R3 from "Led 0". The connection "P3" has disappeared.
This behavior seems to be related to splitting a multi-part IC into multiple designs. (As a counterexample, see the wiring of U6 in sheet T2.)

Application: KiCad
Version: (5.99.0-189-gc3175b45a), release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.61.1 OpenSSL/1.1.1 (WinSSL) zlib/1.2.11 brotli/1.0.6 libidn2/2.0.5 libpsl/0.21.0 (+libidn2/2.1.1) nghttp2/1.34.0
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
    Build date: Oct 2 2019 21:03:53
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.68.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.61.1
    Compiler: GCC 8.2.0 with C++ ABI 1013

Build settings:
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

PS. Windows nightly build from Oct 3 2019 doesn't work.

Tags: eeschema
Revision history for this message
Eberhard Seibel (cantor53) wrote :
Revision history for this message
Eberhard Seibel (cantor53) wrote :

In the first approach, I thought the behavior described above was stable.
The assignment of the connections changes according to rules that are not transparent.
In another test (see Test2.zip) I changed connection "P2" in the wiring of U6 in T2.sch to "P3": Now only the parts A in the sheets LED are wired.

Revision history for this message
Wayne Stambaugh (stambaughw) wrote :

I tested the project in test.zip and there is definitely an issue with the master branch. When I run the ERC, I get two errors that label P[7..0] is not connected so I'm guessing that is the problem. I'm not sure why this is failing as it works fine on 5.1.4.

@Jon, please take a look at this when you get a chance. It appears there is something broken here.

@Eberhard, I noticed that some of the symbols in your schematic are not on the 50 mil grid. I highly recommend that you keep all symbols on a 50 mil grid or you will end up with connection issues.

Changed in kicad:
status: New → Triaged
importance: Undecided → Medium
milestone: none → 6.0.0-rc1
Revision history for this message
Eberhard Seibel (cantor53) wrote :

The message in ERC is annoying but of no importance to the connection. These connections are all present in the circuit board, if the parts of the multipart component are not connected in several sheets LED.sch. (See Test3.zip).
If the gates of 74AUC2G00 are inserted in the circuit LED.sch, then the error occurs that only one of the gates is connected. (ERC will provide the same messages in both cases.)
The connection is missing in the circuit board only if the parts of a component are distributed in different sheets. (see Test4.zip)

Revision history for this message
Eberhard Seibel (cantor53) wrote :
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/3758

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

Other bug subscribers

Remote bug watches

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