Make/Model  Device VersionConnection Type
Kramer/VS-2053N/ASerial

Description:

The Kramer VS-2053 is a 1-in/3-out RGBHV switcher, which supports delayed switching, and sync on green or vertical sync. This driver allows you to control all of the things you can control from the Kramer VS-2053 front panel.

This driver has a dedicated client side driver, which is shown below. It pretty closely mimics the front panel of the Kramer device.

This driver's server side component is CML based. The server driver classes for this device are in the MEng.System.CQC.Drivers.Kramer2503 scope.

Quirks and Limitations:

The Kramer VS-2053 does not have any sort of 'soft power' mode. If you turn it off, its dead and it cannot be turned on via software. So you'll probably want to just leave it on.

For whatever reason, this switch was designed so that it will not respond on the serial port while it is doing a delayed switch. You can set the delay time up to 9 seconds, but that would means that the driver has to assume that any delay less than that might just be a delayed switch. Since almost no one would use such a long delay, and supporting it would make the driver extraordinarily sluggish to notice loss of communications, the maximum wait time is set to 2 seconds instead. If you crank the delay time beyond that, you will get spurious offline/online transitions every time you change inputs! Best of all just don't use the delayed switching, for maximum responsiveness.

Connection Details

The Kramer VS-2053 uses a serial connection. It requires a 9-pin null modem serial cable (NOT a straight through cable!) The serial port parameters are fixed, so you are not given a chance to configure them, you just get to choose the serial port. The parameters are 9600 baud, 8 bits, one stop bit, no parity. This is very slow, but the protocol is very, very light, consisting of 2 byte values for each packet, so this doesn't seem to be an issue.

Driver Fields

This section lists the fields that the driver makes available, their types, minimum and maximum values, etc...

NameTypeR/WDescription/Limits
AdjustDelayBooleanWBump the switching delay time up by writing a true or down by writing a false.
DelayTypeStringRIndicates whether the delay time is in seconds or tenths of a second. It is an enumerated string and must be either "Tenths" or "Seconds". This isn't of much interest since this driver converts the delay to milliseconds anyway.
DelayMillisCardRThe number of milliseconds to delay during switching. It will be from 0 to 9000 (i.e. zero to nine seconds.) But don't set it above 2000, because the driver isn't willing to wait for 9 seconds every time an input is changed! In general, don't use the delayed switching at all unless you have to.
EnableDelayBooleanR/WEnables or disables the delayed switching. If this is disabled, the delay time is ignored.
InputNumCardR/WThe number of input to monitor. It must be from 1 to 3, since this is a one by three switcher.
NextPrevInputBooleanWWrite a true to move to the next input, false to move to the previous input. This is a convenience, in addition to direct input selection.
SyncTypeStringR/WThe switch sync to use. It is an enumerated string and must be either "Green" or "Vertical".