View Single Post
Old October 7th, 2009   #6
Task Group Member
Join Date: Aug 2008
Posts: 376

> This leads me to the next question: Do all subdevices
> also have to support the minimum mandatory PIDs?

There's no mandate that sub-devices have to support all of the other required PIDs. Per section 9.2.3, the only PID that a sub-device must support is SUPPORTED_PARAMETERS. In fact, the discovery PIDs are explicity root-only, thus are can't be mandatory for the sub-devices.

PIDs like DEVICE_INFO and IDENTIFY_DEVICE might be valuable in many cases, and it can't hurt to support SOFTWARE_VERSION_LABEL. If the sub-devices have separate software, report that version number for SOFTWARE_VERSION_LABEL, or just report the same version as the root.

As I've said before, I think DEVICE_INFO is effectively required (even though it's not stated in the standard) since there is some information in DEVICE_INFO that isn't available anywhere else. (Such as sensor count and the DMX Footprint for a device that doesn't support personalities.)

> Unless of course there is still a completely different way
> of doing all this without sub-devices?
> Could the root have DMX_PERSONALITY settings for all
> the channels and modes as well?

There are several ways you could do it.
You could have several dozen different personalities for the root device, each with a different combination of modes. If you have 6 outputs in your device, you could have a personalities for "6 dimmers", "5 dimmers+1 switch", "4 dimmers+2 switches", "3 dimmers+1 switch+2 off" and so on. But there is a maximum of 255 personalities, soif you have more than 4 outputs there are not enough personalities to allow every possible permutation.

There's always manufacturer specific PIDs, but these will be even less compatible than the "unusual configuration".

In my opinion, personalities and sub-devices are the right way to handle it.

Are you sure you can't support patching on the sub-device level? I've seen one dimmer that does a great job of handling per-sub-device patching using four 7-segment displays and 4 buttons for the front panel UI.

> I am worried when you mentioned that some controllers
> will not handle this. I can just see the support calls
> srteaming in

What we're discussing is a corner case that the controller should be able to handle. But, it's not very helpful to tell someone that their controller is the problem when they're calling you for support.
ericthegeek is offline   Reply With Quote