20
HDMI5 Component Video Switch
21
HDMI5 Component Video Switch
When used in combination with the “
Read Last IR Code
” command, even IR commands can be
handled by the controller, outside the HDMI5’s firmware.
Because of the tight link between this command and the HDMI5’s firmware, there are some
caveats when using this command. The Zektor firmware expects a button press code to always
be followed by a button release code. Sending these codes out of logical order will not harm the
HDMI5, but may result in unpredictable behavior (buttons codes ignored, or unexpected state
changes).
B
b1
,
bn...
Send one or more button codes to the HDMI5.
B ?
Query for any buffered button presses.
B
Query for any buffered button presses.
Response String:
=B
b1
,
bn...
Where:
b1
,
bn.. = A variable number of button codes (1 to 16 codes per command).
In the Master / Slave mode, only the last 16 button presses will be logged between queries,
after that, new button presses overwrite the old ones in the internal buffer and will be lost to the
controller.
The maximum number of button codes that can be sent is 16. If more than 16 button codes
are sent a “parameter count error” will be returned and only the first 16 button codes will be
accepted.
The Button Codes for the HDMI5 are defined as follows:
Button
Press Code
Release Code
Power Toggle
10
19
Input 1 Select
2
20
Input 2 Select
3
21
Input 3 Select
4
22
Input 4 Select
5
23
Input 5 Select
6
24
‘Sel’ Button
7
25
‘A1’ Relay Toggle
8
26
‘A2’ Relay Toggle
9
27
The “Press Code” is the value returned when a button pressed, and the “Release Code” is the
value returned when a button is released.
There are also a small number of codes that are unique to this command that cannot be gener-
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 flag will be
reset.
HDMI5 Command Ref.
(Cont’d)
HDMI5 Command Ref.
(Cont’d)