Quote:
Originally Posted by sblair
I just Queue the PID itself. Then when the controller asks I just send whatever the current value is for that PID.
In a limited device, you could use a single BIT to denote the PID. Thus with a single BYTE you could support queueing for up to 8 messages!
|
Also true but how would that work for the same PID across 12/24 subdevices?
Example: The operating mode of the device is changed. This can change:
1: The preheat value
2: The DMX personality,
3: The output limit
Of each subdevice / channel.
That results in a total of up to 24*3 + 1 = 73 queued messages and lots of them with with the same PID.
So to make that work, I suppose it will need some sort of processing engine that will just manage the message queue and it will need to sort out sub-devices as well as pids and strictly speaking also the values.
It also needs to keep track of how many messages remain as well as the LAST_MESSAGE. :D
If the operating mode is changed a few times in successtion, buffer full and lost messages / no way for controller to see the changes will result right?
It makes the Enttech Controllers "Refresh" And "Get" / "Set" buttons look very
atractive.
Regards
Bernt