1 atlona-driver: HDMI to HDBase-T Matrix Switcher
This driver was written to control the Atlona AT-PRO2HD1616M HDMI to HDBase-T matrix switcher. Matrix switcher is basically a device that allows routing of multiple inputs to multiple outputs. In this case, 16 HDMI video inputs to 16 HDBase-T video outputs.
1.1 Command Line Arguments
-r, --rpc-endpoint —
Endpoint to receive commands on. Defaults to tcp://127.0.0.1:46101. -p, --pub-endpoint —
Endpoint to push notifications from. Defaults to tcp://127.0.0.1:46201. -i, --identity —
Identity for both endpoints. Defaults to atlona.
Apart from these flags, the atlona-driver command expects a path to serial port device file to open. For example:
atlona-driver --identity video /dev/ttyS3
Would open the /dev/ttyS3 device and assume the video identity.
1.2 Command Messages
To request immediate notifications about both power and matrix status:
(hasheq 'request "status")
Unlike elsewhere, this won’t cause both 'status and 'matrix to be reported in a single 'full notification. Two separate 'delta notifications are sent one after another. This might eventually change.
To connect an input to an output:
(hasheq 'request "connect!" 'input input 'output output) Where both input and output are integers ranging from 0 to 15. The input will replace current video source of specified output. Routing a single input to multiple outputs will cause the source to re-calculate resolution due to EDID changes.
It is also possible to give input of 'null. Doing so is equivalent to the next request type and effectively removes video from specified output port.
To remove source from an output:
(hasheq 'request "disable!" 'output output) To route input 0 to output 0 and so on:
(hasheq 'request "default!")
To reset the matrix to factory defaults:
(hasheq 'request "reset!")
To put the matrix in standby mode (saving power):
(hasheq 'request "offline!")
To wake the matrix from standby mode (to display video again):
(hasheq 'request "online!")
1.3 Published Messages
When the matrix is running and routing video, it reports its power status as:
(hasheq 'delta (hasheq 'status "online"))
When the matrix has been put to standby mode or it has been just turned on, it reports its power status as:
(hasheq 'delta (hasheq 'status "offline"))
To inform about current setup of the switching matrix:
(hasheq 'delta (hasheq 'matrix '(0 1 ... 15)))
Where every position represents an output (from 0 to 15) and the value its current input port.