I think everything is working as intended. Both Width and Rotation are affected by changes in the number of input channels. Better to think of them as “0% - 100%” instead of “1 - 16”.
By default, it’s like Width is 100% and Rotation is 0%; it tries to pass through “all channels”, starting from channel 1:
50% / 5v width will always give you “half of the connected channels”, whether there are two inputs channels or 256:
If you’ve got more than 16 input channels, you’ll start seeing 16 output channels before 10v. Whatever % of your input channels comes out to “16 channels” is the point where the output becomes “full”.
So here, 32 channels going in, Width is “50%”, so we’re getting half of them, which is 16, at 5v:
If I just stick a bunch more inputs in, now there’s a total of 96 channels, and it only takes 1.6v, about 16%, to get 16 output channels:
If I try to set the Width higher, it “tries” to output more than 16 channels, but you only get 16 on the port.
I did it this way because I felt the usefulness of Append was so you if you want “half the channels”, that’s what you get, even if the number of input channels change, because Append’s power is that it doesn’t care about adding/removing channels or even gaps between the inputs. It just picks everything up and sticks it all in one big bucket.
However, there is actually unused space for an “Alt Mode” on Append, like all the other modules have. Would it be helpful to add an alt-mode where 0v Width = 1 channel and 10v width = 16 channels, no matter how many channels are actually connected? Or is there some other specific behavior which would be better?