User guide

8 HDMI5 Component Video Switch
sponse string after a command is issued, and a Query Response will always follow an Acknowl-
edgement Response.
The Asynchronous Mode of Operation
In the Asynchronous mode the device sends a Query Response string anytime there is a state
change. For instance when an input is changed by the user by pressing a button on the front
panel, or using a remote control, or by the IR jack, or even if a serial command has been issued,
a Query Response string indicating an input change will be sent to the controller.
The advantage if this mode is the controller can be kept constantly in sync with the device
without having to send periodic polling commands. This disadvantages are: The controller must
be able to receive the Query Response strings in the background at unspecifi ed times, and the
communications fl ow is slightly more complicated.
When issuing commands in the Asynchronous mode, the controller must be aware of any unso-
licited Query Responses that may be interjected into the communications fl ow.
For example:
LI?<CR> Sent: Controller issues query command.
=O 1,3 Received: (unsolicited) Out 1 remapped to In 3.
+<CR><LF> Received: Acknowledgment Response.
=P 0 Received: (unsolicited) Power turned off.
=LI 2,13<CR><LF> Received: Query Response for LED intensities.
This represents a worst case scenario where unsolicited responses appear throughout the com-
munication sequence.
First the “LI?<CR>” command was issued by the controller.
While looking for an Acknowledgement or Error Response string, an unsolicited Query Response
is received, indicating the user has remapped Output 1 to Input 3, while the “LI?<CR>” com-
mand was being issued by the controller.
Next the Acknowledgment Response of the “LI?<CR>” command is received.
Next an unsolicited Query Response is received indicating the power has been turned off.
Finally the Query Response indicating the LED intensities is received.
The K.I.S.S.™ command structure was designed to make the above scenario very easy to deal
with. Since all Query Responses start with the ‘=’ character, it is easy to handle them asyn-
chronously, as they are received. This is best done by writing a new “Get Response” routine
that handles all Query Response internally (by looking for the ‘=’ character), and only passing
through non-query responses.
By using such a routine the above scenario becomes:
LI?<CR> Sent: Controller issues command
+<CR><LF> Received: Acknowledgement (or Error) Response
K.I.S.S.™ (Continued)
21HDMI5 Component Video Switch
ated by the keyboard, making this command a bit more useful. These extended codes allow for
better control of the HDMI5.
Some extended button codes are:
Code Description
0 When Issued: Exits setup modes.
0 When returned by query: No buttons have been pressed since last the query.
100 Always toggle power (like Power Toggle without the need of a release code).
101 Discrete power on (always turns on power).
102 Discrete power off (always turns off power).
103 Sequence through inputs.
104 Discrete breakaway disable (always turn off breakaway).
105 Discrete audio breakaway.
106 Discrete video breakaway.
107 Turn on relay 1
108 Turn off relay 1
109 Turn on relay 2
110 Turn off relay 2
The ‘0’ code has special meaning. When returned in a Query Response string it means there are
no keys waiting in the buffer. When issue by the controller, it acts like an Exit key, used to exit
setup modes, similar to pressing the Power Button, but it will be ignored if the HDMI5 is not in
the setup mode. By issuing ‘0’ codes, the HDMI5 can be returned to a known state, regardless of
any possible setup state it might be in.
The ‘0’ button code is also device independent. Its use, and value, does not change between
Zektor devices like the other codes may (and most likely will).
Query Status
In the Master / Slave mode of operation, this command is used to poll for any pending state
changes that are waiting to be read. By issuing this command and testing the returned bit-
mapped value, the controller can determine what has changed in the HDMI5 since the last time
it was polled.
This command allows the controller to quickly poll the HDMI5, using only one command, instead
of issuing a string of commands to check if the power state has changed, or if a new input has
been selected, a button pressed, etc.. The Query Status command is used to determine if any-
thing has changed, and then based on the results of the Query Status, only the query commands
needed are issued to read the new states of the HDMI5.
Once the new state is read by issuing the proper query command, the associated fl ag will be
reset.
HDMI5 Command Ref. (Cont’d)