Need some helps with hierarchial busses

I am playing around with busses. I had some succes earlier but that with enumerated labels (vector bus). Now I decided to use words (group bus).

I have this I2C bus going to three schematic sheets. I attached a label: I2C{SDA SCL}

The hierarchial labels of the three sheets is the same.
In every sheet, I used local labels to distinct SDA and SCL

The problem. I ain’t got no airwires between the components. So… what’d I do wrong?

I was reading the manual for a change. And I really thought I was doing it correctly :confused:

afbeelding
(I am aware that the lettres ‘I2C’ can be left out)

Regards :coffee:

Bas

Looks ok at a first glance (== I could not find a obvious error in the first 30seconds).
So my usual advice: attach the archived project, which enables a deeper investigation.

my next steps would be:

  • You could look for yourself with the highlight-function and try to follow the connections. Maybe you detect the place where the connection ends. (I suspect at the “unfold from bus”-places in the subsheets).
  • To follow the connection it could also be useful to unfold 2 dummy-nets (SDA/SCL) on the top root sheet. Just to check that the connectivity and the bus in principle is working.
1 Like

If you right click on the bus and use Unfold from bus, then you probably get a name like I2C.SDA instead of just the SDA labels you have used.

About a year ago (so in KiCad V6) I also made a test project to experiment with buses. I’ve attached it here, so you can experiment a bit with it too if you like. I have noticed that I do not use buses often enough to really know the details of how they work. I am for example not sure whether (or how far) nested buses are supported. Things like that can also change with the KiCad version, as KiCad is being improved and extended quite rapidly in all kinds of area’s.

Edit: I updated the experiment with some text notes to point out some highlights:
2023-09-25_asdf_hierarchical.zip (28.3 KB)

1 Like

Yep that was it. I changed the labels and now I have airwires.

afbeelding

Because this is me by far too much texts in the schematics. I removed “I2C” entirely.

This

Also works.

Silly question perhaps. But happens to be there a way to let the texts between the {} appear under eachother? The manual dictates a space should be used and not something like a newline or something :see_no_evil:

Thnx for the assist again, folks :wink: :tumbler_glass:

Bas

Again, have a look at my example. It has got a lot of weird details in it.

Take for example this part of the BBUUSS bus (I also have a normal bus and a Truck_ bus :slight_smile: )

The bus members of that bus are defined in the aliases in: Schematic Editor / File / Schematic Setup / Project / Bus Alias Definitions

Another thing that may make my example worth studying is that it uses nested buses {BBUUSS} is also a member of the Music bus, and it uses two identical hierarchical sheets (each with a connector) but on the PCB there are cross links with different bus names.

1 Like

I am looking @ it now. This crashes my brain a little :rofl: I must still learn about aliases. Not yet sure what their purpose is.

That is understandable.
I tried quite hard to put as many weird thing in the bus connectivity as I could manage while at the same time keeping the schematic and PCB simple. To recoup the details I would have to (re-) study it myself too.

The use of aliases is (from what I understand) just to clean up the schematic. You don’t have to put all the member names on the bus itself, and if you add names to the alias list, they are available anywhere the bus is used.

1 Like

I see. Makes sense when thinking about it. So instead of having {SDA SCL} everywhere I can make an alias named I2C… gonna try that out now!

That works too. I had to go to schematic setup in which I could creates aliases. Than I had to replace {SDA SCL} by {I2C} at all places.

During my google search I came across this one on this forum :rofl:

I am curious about a small detail. In that thread back in '22. It seems it was possible to open up the menu from under tools. Has that been removed or can you configure this somehow?

Regards,

Bas

Has that been removed

Yes, the bus alias definition was moved from the separate “tools” into the schematic setup section.

Moved is something else then REmoved.
When something is removed, it has to be moved least twice.

NVM. I wrongly named an alias

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.