Bus Alias Members Corruption

I have a project that uses a number of bus aliases. When creating a new bus alias, the bus members of the previous last alias on the list get overwritten with the bus members from the first alias on the list. For example, before adding a new alias, the first alias on the list is BBC_Control, and the members are as follows.

The last alias is SCSI_DB_TM, and the bus members are as follows:

If I then add a new alias, the members from SCSI_DB_TM (the previous last alias on the list) get overwritten with the members from BBC_Control (the first alias on the list):

The bus members of all other aliases are unaffected, including BBC_Control (the first alias). This behaviour is consistent as additional alias are added.

I have to manually correct this every time I create a new alias.

This was on release version 8.0.8, but I’ve just upgraded to release version 9.0.0, and it’s doing the same.

Anyone else come across this issue?

Wait I’ve also come across that and convinced myself I must have made a mistake. If you can demonstrate a reproducible case, definitely report a bug with Help > Report a Bug (and post the link here).

Ah. When trying to make this reproducible, I’ve discovered it only seems to happen if you’ve got two (or possibly more) sheets, and have buses on both sheets.

Edit: Yes, this is a ‘two sheet’ issue. With a new project:

  • Create a bus alias (Sheet1_BusA).
  • Add members to this bus (eg BusA_0 through 7)
  • Create a second bus alias (Sheet1_BusB)
  • Add members to this bus (eg BusB_0 through 7)
  • Create a third bus alias (Sheet1_BusC)
  • Add members to this bus (eg BusC_0 through 7)
  • All good so far
  • Create a hierarchical sheet and enter that sheet
  • Create a bus alias (Sheet2_BusD).
  • Now go back and look at bus alias Sheet1_BusC
  • The bus members have been copied over from Sheet1_BusA

I know there are easier ways to create a bus with members BusX_0…7. I’ve just used those net names for simplicity in this test.

Reported as a bug: Bus Alias members get overwritten when using hierarchical sheets (#20040) · Issues · KiCad / KiCad Source Code / kicad · GitLab

1 Like