Errors and Sub Device All Call
Recently OLA has been working on adding more soft RDM responders for developers to play around with. One of the recent ones is a dimmer with sub devices.
We've run into an issue with the SUB_DEVICE_ALL_CALL and when/how/or at all to report errors. The perfect example is with a SET DMX_START_ADDRESS. Where the root device doesn't have an start address. In our current implementation we only send back the response from the root device. Which right now looks like a NACK_UNKNOWN_PID, but each sub device gets the message and changes the start address of all sub devices even though it comes back as a nack. Simon and I discussed it a bit and there are arguments to make SUB_DEVICE_ALL_CALL only affect sub devices and not the root device or all devices including the sub device. Thoughts? How is the forum approaching this? |
My interpretation has been that SUB_DEVICE_ALL_CALL should only effect Sub-Devices and not change the root at all.
In the case where someone sends a broadcast request to SUB_DEVICE_ALL_CALL, only responders that have sub-devices should act on the request. How the respond gets a bit dicey when you have a mixed collection of sub-devices. Lets say you send a SET DMX_START_ADDRESS to a responder that has 2 sub-devices, but only one of the sub-devices supports the DMX_START_ADDRESS PID. Both "NACK Unknown PID" and "ACK" would be appropriate. |
I agree with Eric here (sub-devices only), although I don't think the standard calls this out.
It does however say: "All sub-devices shall report an identical list for SUPPORTED_PARAMETERS. This list may be different than that of the Root device." So you shouldn't see "NACK Unknown PID" but you may trigger other NACK conditions. |
All times are GMT -6. The time now is 12:50 AM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.