Possible to make a bus vector of bus groups?

I’d like to be able to have vector busses of bus groups. An example would be to group multiple I2C busses as follows: I2C[1..4]{SDA SCL}. Another use case is if I have a number of interrupt and control signals from a chip that I have multiple instances of in the design.

When I do this I get a “Invalid signal name: Signal name contains ‘{’ and ‘}’ but is not a valid bus name” error".
image

I’m assuming this is just not supported with busses, but it wasn’t completely clear from the docs if that is the case or not.

Have you taken a look at this kicad documentation related to buses?

I have read the docs. I mentioned in my original post that the docs don’t make it clear if this is/isn’t support one way or the other.

Do you need something like that? It should be work

MCU sheet

image

Communications sheet

Communications1 sheet

Don’t forget to define the bus alias and members

Thanks for the reply. I don’t think that’s what I’m getting at. In your proposed case there is still just a single I2C instance (one SDA, one SCL), just named differently in the different sub-sheets. I’m considering the case where I want a vector of those grouped busses (multiple SDAs, and multiple SCLs).

The image below should illustrate things better (this is contrived but makes the point). In this case consider you have 4 independent I2C busses coming out of the MCU, and you want to vectir those into a bus for moving around a hierarchical design. You also want to group the I2C signals (SDA, SCL) for ease of use too. I’m pretty sure KiCad just doesn’t support this as when you try to label a bus I2C[1..4]{SDA SCL} you get the error I mention above (I had to put a text field in the picture below as a label doesn’t work).

What I’m most curious about is if in the underlying code this is just choking on the validation of the bus label name, or if the bus code really doesn’t support this. I’m not familiar enough with the KiCad code to check myself, and am hoping a dev could weigh in on this.

I am aware that you can have vectors within a grouped bus as described in the docs (i.e. I2C{SDA[1..4] SCL[1..4]}, but I find that pretty cumbersome to use and a bit confusing from a documentation/readability point of view in this type of use case. For this case, I’d rather fall back on individual I2C busses at that point.

Another approach that would work and be nice would be putting busses inside busses, but this has already been discussed and is not supported.

Okay, I understand and at this point I am also stuck.
Hopefully someone more skilled user will be able to clarify this.