Overview
14
NX-Series Controllers - WebConsole & Programming Guide
Enova DGX Digital Media Switchers
NOTE: Refer to the Products > Digital Media Switchers page at www.amx.com for details and variations available for these products.
Massio
™
ControlPads
NOTE: Refer to the Products > ControlPads page at www.amx.com for details and variations available for these products.
About This Document
This document describes using the on-board WebConsole, as well as NetLinx send commands and terminal communications to
configure the NX controllers:
Each major section of the WebConsole is described in a separate section of this document. Refer to:
the On-Board WebConsole User Interface section on page 34,
the WebConsole - Network Options section on page 46,
the WebConsole - Security Options section on page 41,
the WebConsole - System Options section on page 57, and
the WebConsole - Switching Options section on page 67.)
The Initial Configuration and Firmware Upgrade section on page 5 describes upgrading the firmware on NX controllers.
The NetLinx Programming section on page 82 lists and defines the NetLinx send commands that are supported by the NX
controllers.
The Terminal (Program Port/Telnet) Commands section on page 104 describes the commands and options available via a
Telnet terminal session with the NX controller.
Differences in DEFINE_PROGRAM Program Execution
Due to differences in the underlying architecture of the X-Series masters, changing variables in the DEFINE_PROGRAM section of
code can negatively impact program performance. It has always been considered poor programming practice to change a variable
within the DEFINE_PROGRAM section of code. If you have legacy NetLinx code that does change a variable in this section it’s very
likely that timing differences will cause your code to run slower and appear less responsive on an NX-Series controller and can have
other adverse effects on platform reliability in the area of connectivity and data throughput.
The DEFINE_PROGRAM section of NetLinx code contains the code known as mainline. Mainline is the section of the program that is
executed on a periodic basis by the NetLinx Master Controller. Under normal operation, the DEFINE_PROGRAM section executes at
least once every half second. Various system activities can cause the DEFINE_PROGRAM section to execute more frequently than
every half second. For example, any time an external event occurs (button push, level change), the DEFINE_PROGRAM section must
re-execute to ensure that any change caused by the event processes through the DEFINE_PROGRAM section code block. This is
also the case for changes to global variables. Any variable change requires the DEFINE_PROGRAM section to re-execute to process
the new variable value through the DEFINE_PROGRAM code block.
Because high CPU usage can be detrimental to the system functionality on an NX master, AMX recommends the complete
deprecation of the DEFINE_PROGRAM section. Syntactically, it is still valid to use the DEFINE_PROGRAM section in your NetLinx
application, but it is no longer recommended. All logic that you would normally place in the DEFINE_PROGRAM section is handled
better in the DEFINE_EVENT section.
Feedback statements remain the most common usage in the DEFINE_PROGRAM section. Because of periodically executing
DEFINE_PROGRAM, you can rely on the program to update user feedback at a regular interval. However, if the DEFINE_PROGRAM
section executes too frequently with the needless iterations expending the CPU to repetitively evaluate the feedback statements.
TIMELINE_EVENTS provide a much more efficient mechanism for evaluating feedback statements. A single timeline triggering every
500ms provides the same periodic execution as the DEFINE_PROGRAM section without the unwanted recursive execution behavior.
Consider the following DEFINE_PROGRAM section containing feedback statements in PRGM EX. 1:
DEFINE_PROGRAM
[dvTP,1] = [dvDev,1]
[dvTP,2] = value1
[dvTP,3] = ![dvTP,3]
PRGM EX. 1 DEFINE_PROGRAM with feedback statements
Enova Digital Media Switchers
Name Description
DGX8-ENC Enova DGX 8 Enclosure
DGX16-ENC Enova DGX 16 Enclosure
DGX32-ENC-A Enova DGX 32 Enclosure
DGX64-ENC Enova DGX 64 Enclosure
Massio ControlPads
Name Description
MCP-106 6-Button Massio ControlPad
MCP-108 8-Button Massio ControlPad