Dell SDK for Monitors
Application Programming Interface
Guide
for SDK version 1.3
Information in this document is subject to change without notice.
© 2016 Dell Inc. All rights reserved.
Reproduction of these materials in any manner whatsoever without the written permission of Dell
Inc. is strictly forbidden.
Trademarks used in this text: Dell™, the DELL logo, and UltraShrap™ are trademarks of Dell Inc.;
Microsoft
®
, Windows®, and the Windows start button logo are either trademarks or registered
trademarks of Microsoft Corporation in the United States and/or other countries;
Other trademarks and trade names may be used in this document to refer to either the entities
claiming the marks and names or their products. Dell Inc. disclaims any proprietary interest in
trademarks and trade names other than its own.
2016 – 06 Rev. A00
Contents
Introduction ............................................ 6
Monitor Management.....................................7
GetAvailableMonitors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
ConnectMonitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
DisconnectMonitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
SetAssetTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
GetAssetTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
GetMonitorName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
GetMonitorSerialNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
GetBacklightHours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Power Management .....................................11
GetPowerState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
SetPowerState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
GetPowerLED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
SetPowerLED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
GetPowerUSB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
SetPowerUSB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Reset Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Image Management .................................... 15
GetBrightness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
SetBrightness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
GetContrast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
SetContrast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
GetDynamicContrast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
SetDynamicContrast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
GetAspectRatio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
SetAspectRatio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
GetSharpness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
SetSharpness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
GetResponseTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
SetResponseTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
Contents | 3
Color Management .................................... 22
GetSaturation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
SetSaturation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
GetHue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
SetHue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
GetColorTempCaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
GetColorTemp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
SetColorTemp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
GetColorSpaceCaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
GetColorSpaceState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
SetColorSpaceState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
GetInputColorFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
SetInputColorFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
GetColorPresetCaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
GetColorPreset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
SetColorPreset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
GetCustomColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
SetCustomColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
GetGammaMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
SetGammaMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
GetUniformityCompensation . . . . . . . . . . . . . . . . . . . . . . . . . . 36
SetUniformityCompensation . . . . . . . . . . . . . . . . . . . . . . . . . . 36
ResetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
LUT Management ......................................38
GetCalibrationHours. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
GetCalBrightness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
SetCalBrightness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
SetColorControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
SetLUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Video Input Management ..............................42
GetAutoSelect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
SetAutoSelect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
GetVideoInputCaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
GetVideoInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
SetVideoInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4 | Contents
PIP/PBP Management .................................46
GetPxPMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
SetPxPMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
GetPxPSubInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
SetPxPSubInput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
GetPxPLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
SetPxPLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
OSD ................................................. 51
GetOSDTransparency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
SetOSDTransparency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
GetOSDLanguage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
SetOSDLanguage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
GetOSDRotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
SetOSDRotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
GetOSDTimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
SetOSDTimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
GetOSDButtonLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
SetOSDButtonLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
ResetOSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
System Management ................................. 58
GetVersionFirmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
GetVersionSDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
GetMST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
SetMST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
GetLCDConditioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
SetLCDConditioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
FactoryReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
SetDebugLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Contents | 5
Introduction
This document describes the APIs for supported Dell UltraSharp monitors on Linux(x86),
OSX and Windows platforms. These APIs are to be used for remote display management
and control from a Host PC to supported Dell UltraSharp monitors via a USB
connection. A USB 3.0 A to B cable should be used for the connection between the host
and the display.
The following monitors are supported:
1. UP3017
The API described in this document corresponds to SDK version 1.3.
6 | Introduction
Monitor Management
GetAvailableMonitors
Returns the number of supported monitor(s)
API
MONITOR_CODE GetAvailableMonitors(BYTE *pbCount)
Params
byMonitors[] Array for return values
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pbCount Number of supported monitors connected
ConnectMonitor
Connect to monitor and start session
API
MONITOR_CODE ConnectMonitor(BYTE iID)
Params
iID Index of monitor as returned by GetMonitorCaps to connect to.
Index starts at 0 for the first monitor.
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
Monitor Management | 7
DisconnectMonitor
Disconnect to monitor and end session
API
MONITOR_CODE DisconnectMonitor(void)
Params
-
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
SetAssetTag
Set the asset tag of the monitor.
API
MONITOR_CODE SetAssetTag(BYTE *pbyAssetTag)
Params
*pbyAssetTag Pointer to asset tag ID string (max 10 chars)
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
8 | Monitor Management
GetAssetTag
Returns the monitor asset tag. Asset Tag will be empty until set by SetAssetTag.
API
MONITOR_CODE GetAssetTag(BYTE *pbyAssetTag)
Params
*pbyAssetTag Pointer to return asset tag ID string
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pbyAssetTag Asset tag ID string (max 10 chars)
GetMonitorName
Returns the monitor name
API
MONITOR_CODE GetMonitorName(BYTE *pbyMonitorName)
Params
*pbyMonitorName Pointer to return monitor name
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pbyMonitorName Monitor name string (max 10 chars)
Monitor Management | 9
GetMonitorSerialNumber
Returns the monitor serial number
API
MONITOR_CODE GetMonitorSerialNumber(BYTE *pbySerialNumber)
Params
*pbySerialNumber Pointer to return monitor serial number
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pbySerialNumber Monitor serial number string (max 12 chars)
GetBacklightHours
Returns the monitor backlight hours
API
MONITOR_CODE GetBacklightHours(SWORD16 *ps16Val)
Params
*ps16Val Pointer to return monitor backlight hours
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
ps16Val Monitor backlight hours
10 | Monitor Management
Power Management
GetPowerState
Returns the current power state of the monitor
API
MONITOR_CODE GetPowerState(UBYTE *pu8Val)
Params
*pu8Val Pointer to return power state
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pu8Val Power State
0 Off
1 On
2 Standby
Power Management | 11
SetPowerState
Set the monitor on or standby
API
MONITOR_CODE SetPowerState(UBYTE u8Val)
Params
u8Val Power state to set
0 Off
1 On
2 Standby
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
GetPowerLED
Returns the power LED setting of the monitor
API
MONITOR_CODE GetPowerLED(UBYTE *pu8Val)
Params
*pu8Val Pointer to return power LED setting
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pu8Val Power LED Setting
0 Off during Active
1 On during Active
12 | Power Management
SetPowerLED
Set the power LED setting
API
MONITOR_CODE SetPowerLED(UBYTE u8Val)
Params
u8Val Power LED Setting
0 Off during Active
1 On during Active
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
GetPowerUSB
Returns the power USB setting of the monitor
API
MONITOR_CODE GetPowerUSB(UBYTE *pu8Val)
Params
*pu8Val Pointer to return power USB setting
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pu8Val Power USB Setting
0 Off during Standby
1 Off during Standby
Power Management | 13
SetPowerUSB
Set the power USB setting
API
MONITOR_CODE SetPowerUSB(UBYTE u8Val)
Params
u8Val Power USB Setting
0 Off during Standby
1 Off during Standby
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
Reset Power
Reset power to the monitor
API
MONITOR_CODE ResetPower(void)
Params
-
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
14 | Power Management
Image Management
GetBrightness
Returns the brightness level of the monitor
API
MONITOR_CODE GetBrightness(UBYTE *pu8Val)
Params
*pu8Val Pointer to return brightness value
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pu8Val Brightness value
Integer value 0 (dark) to 100 (bright)
Default 75
Values in increments of 1
Image Management | 15
SetBrightness
Set the brightness level of the monitor
API
MONITOR_CODE SetBrightness(UBYTE u8Val)
Params
u8Val Brightness value
Integer value 0 (dark) to 100 (bright)
Default 75
Values in increments of 1
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
GetContrast
Returns the contrast level of the monitor
API
MONITOR_CODE GetContrast(UBYTE *pu8Val)
Params
*pu8Val Pointer to return contrast value
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
pu8Val Contrast value
Integer value 0 (minimal) to 100 (maximum)
Default 75
Values in increments of 1
16 | Image Management
SetContrast
Set the contrast level of the monitor.
NOTE: Uniformity Compensation must be turned off for this to work.
API
MONITOR_CODE SetContrast(UBYTE u8Val)
Params
u8Val Contrast value
Integer value 0 (minimal) to 100 (maximum)
Default 75
Values in increments of 1
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
GetDynamicContrast
Returns the dynamic contrast setting. Applicable for Movies and Gaming.
NOTE: Only works in Color Preset Game or Movie.
API
MONITOR_CODE GetDynamicContrast(UBYTE *pu8Val)
Params
*pu8Val Pointer to return dynamic contrast value
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
Image Management | 17
pu8Val Dynamic Contrast
0 On
1 Off
SetDynamicContrast
Turns on/off the dynamic contrast setting. Applicable for Movies and Gaming.
NOTE: Only works in Color Preset Game or Movie.
API
MONITOR_CODE SetDynamicContrast(UBYTE u8Val)
Params
u8Val Dynamic Contrast
0 Off
1 On
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
GetAspectRatio
Returns the aspect ratio
API
MONITOR_CODE GetAspectRatio(UBYTE *pu8Val)
Params
*pu8Val Pointer to return aspect ratio
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
18 | Image Management
pu8Val Aspect Ratio
0 Wide 16:10
1 Auto Resize
2 4:3
3 1:1
SetAspectRatio
Sets the aspect ratio
API
MONITOR_CODE SetAspectRatio(UBYTE u8Val)
Params
u8Val Aspect Ratio
0 Wide 16:10
1 Auto Resize
2 4:3
3 1:1
Return
MONITOR_CODE Code describing the result of the API call
0 Success
1 Timeout
2 Parameters Error
3 Not connected
-1 Other Failure
Image Management | 19