Make/Model  Device VersionConnection Type
DVDO/VP30 and VP50VP30 - Firmware Version 1.11 or higher
VP50 - Firmware Version 1.04 or higher
Serial

Description:

This driver controls the DVDO VP30 and VP50 HD video scalers. These models share a common control protocol. The VPnn processors are full featured video scaler/switchers that supports composite, S-Video, component, RGB, DVI, HDMI, and SDI inputs, as well as being able to switch audio sources.

Note that there was initially a VP30 driver, but that has now been superseded by this driver, which controls the 30 and 50 models. Please convert to this driver if you are using the older VP30 driver.

This driver supports multiple firmware versions, in order to provide backwards compatibility and to not force users to upgrade to the very latest firmware version. Support for older firmware versions may be removed going forward to keep the driver from getting overly complex. Firmware specific differences are listed below.

Quirks and Limitations:

Some values are not accepted by the VP30/50 when it is in certain states. For instance, you cannot set the Hue when the current input doesn't support a Hue value, such as component. When this happens, the driver will reject the written value to let you know it failed, based on a rejection from the processor.

Connection Details

The VP30/50 uses a serial connection. It has a configurable baud rate, but this driver only supports the highest rate, which is 57,600 baud. It doesn't make sense to run any slower. So you must configure the VP30 to use this rate.

It uses a three wire straight through cable, so you can use a standard 9-pin or a minimal 3-pin serial cable.

Driver Fields

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

NameTypeR/WDescription/Limits
ActiveARStringR/WGet or set the active aspect ratio. This is an enumerated field with the values: Unknown, 1.33 [4:3], 1.55, 1.66, 1.78 [16:9], 1.85, 2.35, User.
AudioInputStringR/WGet or set the AudioInput. This is an enumerated field with the values: Off, AUdio1, Audio2, Audio3, Audio4, Stereo, HDMI.
AutoInputBooleanR/WGet or set the auto input mode setting. This is an enumerated field with the values: Off, On, Auto.
AutoPriorityCardR/WGet or set the auto priority setting. This is an enumerated field with the values: Off, On, Auto.
AVLipSyncIntR/WGet or set the lip sync offset, from -73ms to 150ms
BrightnessIntR/WGet or set the brightness setting. It is a signed value from -100 to +100.
ColorSpaceStringR/WGet or set the color space setting. This is an enumerated field with the values: Unknown, RGB, YPbPr, YCbCr 4:2:2, YCbCr 4:4:4, Auto.
ContrastIntR/WGet or set the contrast setting. It is a signed value from -100 to +100.
CUECorrectionStringR/W???
DisplayARStringR/WGet or set the display aspect ratio. This is an enumerated field with the values: 4:3, 5:4, 16:9, 21:9, User, Auto
DisplayProfileCardR/WGet or set the output display profile. The legal values are from 0 to 10.
FilmModeStringR/WGet or set the film mode. This is an enumerated field with the values: Off, On, Auto.
FrameARStringR/WGet or set the frame aspect ratio. This is an enumerated field with the values: Unknown, 4:3, 16:9.
HDCPBoolR/WGet or set the HDCP mode.
HorizontalBordersCardR/WGet or set the size of the horizontal borders, from 0 to 889.
HorizontalPanIntR/WGet or set the amount of horizontal pan, from -100 to 100. On the VP30, this is a cardinal field. On the VP50 it is a floating point field.
HorizontalZoomCard/FloatR/WGet or set the amount of horizontal zoom. See below for the type and range info, which is firmware or version specific.
HueIntR/WGet or set the hue setting. It is a signed value from -100 to +100.
InformationScreenBooleanR/WTrue causes the display of the VP30 information screen, False removes the display.
InputStringR/WGet or set the active input setting. This is an enumerated field, with the values: Unknown, Video 1, Video 2, S-Video 1, S-Video 2, Component 1, Component 2, HGBHV/Component 3, HDMI 1, HDMI 2, HDMI 3, HDMI 4, SDI, Auto.
InputLevelStringR/WGet or set the input level. This is an enumerated field with the values: Unknown, Video, PC, Auto.
LineOffsetCardR/WGet or set the line offset amount, from 0 to 30.
MenuNavigationStringR/WAllows you to drive the on screen display menus. This is an enumerated field with the values: Left, Right, Up, Down, Menu, Enter, Exit
OverscanCardR/WGet or set the overscan amount. See below for the range, which is firmware or version specific.
OutputColorSpaceR/WStringGet or set the output color space. It is an enumerated field with the values: RGB, YPbPr, YCbCr 4:2:2, YCbCr 4:4:4, Auto.
OutputR/WStringGet or set the selected output connector. The values are: BNC (Analog), HDMI (Digital) 
PowerBooleanWPowers the device on (True) or puts it into standby mode (False).
PresetsStringR/WGet or set the current preset. This is an enumerated field with the values: User, 4:3 Full Frame, Letterbox, 16:9 Full Frame, Preset 1, Preset 2, Preset 3, Preset 4, Preset 5, Preset 6, Preset 7, Preset 8, Preset 9, Preset 10, 4:3 Stretch. Some presets might not be available on some models.
SaturationIntR/WGet or set the color saturation level, from -50 to 50.
ScreenARStringR/WGet or set the screen aspect ratio. This is an enumerated field with the values: 4:3, 16:9, 21:9, User, Auto
SharpnessIntR/WGet or set the sharpness level, from 0 to 7.
SignalTypeStringRA read-only field that indicates the current sensed signal type.
TestPatternsStringR/WGet or set one of the available 35 test patterns.
YCDelayIntR/WGet or set the component luminance/chrominance delay offset, from -50 to 50.
VerticalBordersCardR/WGet or set the size of the vertical borders, from 0 to 889.
VerticalPanIntR/WGet or set the amount of vertical pan, from -100 to 100
VerticalZoomCard/FloatR/WGet or set the amount of vertical zoom. See below for the type and range info, which is firmware or model specific.
VCRModeStringR/WGet or set the VCR mode. This is an enumerated field with the values: Off, On, Auto.

Firmware/Model Specific Differences:

VP30-111 – Firmware Version 1.11

Horizontal Zoom – Type is Card, Range is 0..100
Vertical Zoom – Type is Card, Range is 0..100
Overscan – Type is Card, Range is 0..36

 VP30-114 – Firmware Version 1.14, VP50-104 – Firmware version 1.04

Horizontal Zoom – Type is Float, Range is 1.0 – 2.0
Vertical Zoom – Type is Float, Range is 1.0 – 2.0
Overscan – Type is Float, Range is 0.0 – 100.0