Topic: Third Party (Crestron/AMX) Control Updates.
Here is a unique way for Crestron/AMX/(Insert your favorite controller here) to update many controls quickly and easily.
Start by bringing the controls that you would like to be updated together in a block, or to a separate page, and place these to the left. To keep this simple, limit this to just ten controls for now. Add a Master Wire Node in Control Properties to these controls.
Now bring in a Generic Control with â€œStringâ€ as the type of control (since this is a string, values donâ€™t matter). Copy out the Generic String control as far to the right as you can. Open the Stringâ€™s Device properties and add a Slave wire node and a Control Alias.
Now, for the middle part, bring in a â€œString Multiplexerâ€ (found towards the bottom of the Control Folder) with 10 as the Input count. Wire the left side of the String MUX to the actual controls, and the right side to the Generic String control.
Now Emulate (donâ€™t forget to bring in a NioNode), and see the magic.
If everything has been done correctly, the values of the connected Controls will be outputted to the String Control in the order the controls are connected to the Multiplexer. You can go to the Device Properties of the String and change the font size and the control size so the string can be more easily read.
Now, when the Crestron does a Page Turn on the TouchPanel, during the actual page turn, it can do a ControlGet of the Generic Controlâ€™s Alias, parse, and fill in the blanks of the TouchPanel before the page turn is done. With this process, and how fast it works, it is much easier for Nion and Controller to remain in sync.
This could also be used to eliminate the need for RATC2 ChangeGroupSchedule command. Because AMX/Crestron can poll (do a ControlGet) a single Control Alias, parse and fill in the blank with the response far better than they can receive an â€œuncalledâ€ packet and figure out what next to do, the chances of overwhelming the AMX/Crestronâ€™s buffers would be far less.
Creating a balance of â€œhow many controls to a single string/how often can the AMX or Crestron poll/how many Telnet sessions are requiredâ€ will need to be done to make sure the AMX/Crestron doesnâ€™t get overwhelmed. If you should think the Nion is becoming overworked, you can look at the new System Status page (introduced with release 1.2.6) to monitor the CPU load. More than likely, it will be the third party controller that is giving up.
Here is another tidbit, the Multiplexer/De-multiplexer were created to increase the amount of controls the Project Linkers can share. You can only link a total of 256 controls between two projects. But if you use a Multiplexer to MUX many controls to a single â€œRead or Peerâ€ node, and then connect a De-Multiplexer to the â€œWrite or Peerâ€ node at the other end, you can then link far more controls. You could (at least theoretically) connect 64 controls to 256 MUX units that are connected to the Project Linkers. But sharing 16,384 controls between Projects is pretty excessive. I would NEVER expect that to work.