Sub Device required PIDs
At the plug-fest Bob presented an interesting point: Do Sub Devices need to implement the minimum required PIDs list?
My common sense answer was yes, but review of the document suggests this is not a given. The root device must support the 'required pids'. Sub Devices must all support the same set of pids which can differ from the root. However 9.2.3 is open to interpretation. The problem is caused by the phrase 'which additional messages...'. The word additional implies 'in addition to the minimum required pid list' but could also be read to mean 'in addition to the SUPPORTED_PARAMETERS pid. So there are two possibilities: a) Sub devices shall at minimum implement the required pid list along with SUPPORTED_PARAMETERS. b) Sub devices shall at minimum implement the SUPPORTED_PARAMETERS pid. |
Yes it is not clear,
My opinion is since section 9.2.3 second paragraph states that SUPPORTED_PARAMETERS list can be different from that of the root device, a sub device only supports what it reports in response to a get SUPPORTED_PARAMETERS message. The required discovery PIDs would also not make much sense for a sub device. Paul |
It was never expected that the minimum supported PID's list applied to sub-devices. In fact if you look at the list of PID's in the minimum supported list most of them don't make any sense in the context of a dimmer rack implementing sub-devices which was the straw man model we most used.
It was intended that all the PID's implemented by Sub-Devices be reported using the SUPPORTED_PARAMETERS message. I agree that the text could be a bit clearer on this. |
So the answer is that SUPPORTED_PARAMETERS is the only pid mandated for a sub-device.
|
Quote:
|
Great - works for me.
|
I've posted my thoughts on Sub-Devices before in this thread:
http://rdmprotocol.org/forums/showpo...24&postcount=6 Here's what I wrote: Quote:
|
Thanks Eric. I'd agree on DEVICE_INFO - not much point having a sub-device where you can't get start and foot!
|
On other factor that's come up in newer discussions is that Sub-Devices should list all of their PIDs in SUPPORTED_PARAMETERS, even PIDs like DEVICE_INFO that are mandatory and not listed in SUPPORTED_PARAMETERS for root devices.
The gray area is whether sub-devices should include SUPPORTED_PARAMETERS in the list returned by GET SUPPORTED_PARAMETERS. My opinion is *no* since SUPPORTED_PARAMETERS is explicitly required by section 9.2.3. |
Quote:
|
Scott, you and I are talking about something different.
On the root device, the standard says that the list of PIDs returned by GET SUPPORTED_PARAMETERS does not include the mandatory PIDs. For example, the list returned by the root device should not include SOFTWARE_VERSION_LABEL since SOFTWARE_VERSION_LABEL is required. This, a controller would normally not expect to see SOFTWARE_VERSION_LABEL in the list of supported parameters. But, the same rule does not apply to sub-devices. When you send a GET SUPPORTED_PARAMETERS to a sub-device, the list of PIDs should include SOFTWARE_VERSION_LABEL. Thus, when getting the PID list from a sub-device, a controller can expect to see PIDs included in the list that would never be returned by a properly implemented root device. |
Eric,
Agreed! |
Eric, I also agree although I have ensured our implementation is tolerant of responders including or excluding mandated pids, root or sub-device.
|
All times are GMT -6. The time now is 03:31 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.