GRL-USB-PD-V-UP API Version 1.11
GRL USB Power Delivery & Data Loopback Volume Tester (GRL-V-UP)
VseriesControllerLibrary.GrlVPdApiLib Class Reference

This library will communicate with GRL-V-UP controllers for concurrent USB Power Delivery 3.0 negotiation, 1000W power loading, and USB 2.0 & USB 3.1 data loopback testing. More...

Public Member Functions

bool InitilizeController ()
 This function will detect all GRL USB devices that are connected to the Host PC and establish communication with each of them and add to GetGRLDeviceList. Alternatively you can use this "GetUSBDevices()" API manually and pass the parameter. Once all the devices are connected using the "SelectController()" API, select the specific controller to communicate with. More...
 
USBDeviceList GetUSBDevices ()
 This function will search for all the USB devices connected to the Host PC. More...
 
void SelectController (string serialNumber="")
 This function will select the controller to communicate with. If multiple controllers are connected, obtain the controller's list using "GetGRLDeviceList" and set "ControllerIndex" as "GetGRLControllersList.ControllerIndex". If multiple GRL-V-UP controllers are connected, then select the controller that you want to communicate with. More...
 
void SelectLoopBackController (string serialNumber="")
 This function will select the controller for loopback operation. More...
 
Dictionary< PortID, Attach_Detach_Status_Enum > AttachDetachStatus ()
 This function will return the Attach / Detach status of each DUT connected to individual port. More...
 
Dictionary< PortID, Attach_Detach_Status_Enum > Physical_TesterCardStatus ()
 This function will provide information on the physical Attach status of the tester card on the GRL-V-UP unit. More...
 
LEDSystemStatus TesterCard_System_Status ()
 This function will return the system status of all tester cards on the GRL-V-UP unit, which includes the following: PDO_Index, PDC_Status, Port number, Power LED status, VBUS LED status, DataLock LED status, DataError LED status, En_D_Tx LED status, PD_BC_12 LED status, PD_N LED status, LinkSpeed LED status, VBUS_Voltage, VBUS_Current, VCONN_Voltage, VCONN_Current , Source caps Re-Advertised Timestamps More...
 
string GetSystemInfo (PortID port)
 This function will return the system information for the respective port. More...
 
int GetVbusCurrent (PortID port)
 Depending on the controller mode, this function will return the VBUS current that the DUT supplies to the tester for the respective port. More...
 
bool Get_VBUS_Voltage_Current (PortID port, out int vbusVoltage, out int vbusCurrent)
 Depending on the controller mode, this function will return the VBUS voltage and current that the DUT supplies to the tester in mA for the respective port. More...
 
int GetVconnVoltage (PortID port)
 Depending on the controller mode, this function will return the VCONN voltage that the DUT supplies to the tester for the respective port. More...
 
int GetVbusVoltage (PortID port)
 This function will return the VBUS voltage that the DUT supplies to the tester for the respective port. It is recommended to verify the DUT Attach status before calling the "GetVbusVoltage" API. More...
 
string GetVBUSData (PortID port)
 
This function will return the VBUS voltage and current that the DUT supplies to the tester for the respective port. It is recommended to verify the DUT Attach status before calling the "GetVBUSData" API. More...
 
string GetVCONNData (PortID port)
 Depending on the controller mode, this function will return the VCONN voltage and current that the DUT supplies to the tester for the respective port. More...
 
int FanTurnOnOff (FanControl fan)
 This function will turn ON/OFF the controller fan. More...
 
int TestercardFanControl (PortID port, TCFans fan)
 This function will turn ON/OFF the Testercard fans. More...
 
double GetVconnCurrent (PortID port)
 Depending on the controller mode, this function will return the VCONN current that the DUT supplies to the tester for the respective port. It is recommended to verify the DUT Attach status before calling the "GetVconnCurrent" API. More...
 
double GetLinkSpeed (PortID port)
 Depending on the controller mode, this function will return the Link Speed for the respective port. It is recommended to verify the DUT Attach status before calling the "GetLinkSpeed" API. More...
 
string Get_TesterCard_Firmware_Version (PortID port)
 This function will return the tester card firmware version for the respective port. More...
 
string Get_ControlCard_Firmware_Version ()
 This function will return the controller card firmware version. More...
 
string Get_Eload_Firmware_Version (PortID port)
 This function will return the E-Load firmware version for the respective port. More...
 
string Get_PD_Controller_Firmware_Version (PortID port)
 This function will return the PD Controller Firmware Version for the respective port. More...
 
string Get_TesterCard_SerialNumber (PortID port)
 This function will return the tester card serial number and board number for the respective port. More...
 
bool Get_TesterCard_SerialNumber (PortID port, out int testerCardSerialNumber, out int testerCardBoradNumber)
 This function will return the tester card serial number and board number for the respective port More...
 
string Get_ControlCard_SerialNumber ()
 This function will return the controller card serial number. More...
 
bool Get_ControlCard_SerialNumber (out int controlCardSerialNumber, out int controlCardBoradNumber, out int backPanelSerialNumber)
 This function will return the controller card serial number. More...
 
string Get_ELoad_Frimware_Version (PortID port)
 This function will return the E-Load version for the respective port. More...
 
string GetDutCapabilities (PortID port)
 This function will return the DUT capabilities for the respective port. More...
 
SourceCapabilities SourceCapabilities (PortID port)
 This function will return the Source DUT capabilities for the respective port. More...
 
SourceCapabilities SourceCapabilities (PortID port, out string SrcCaps)
 This function will return the Source DUT capabilities for the respective port. More...
 
int SourceCapabilities_Extended (PortID port)
 This function will return the Source PDP rating for the respective port. More...
 
string GetPDContractNegotationStatus (PortID port)
 This function will return the status of the PD negotiation for the respective port. More...
 
PDC_Status DecoderPDContractNegotationStatus (PortID port)
 This function will return the decoder PD negotiation status of the respective port. More...
 
int VBUS_Selection (PortID port, VBUS_SENSE_VOLT_EN vBUS_SENSE_VOLT_EN)
 This function will switch between the USB Type-C VBUS and VBUS Sense for the respective port. More...
 
PhysicalLinkError Get_Physical_Link_ErrorCount (PortID port)
 This function will return the Physical and Link errors- Physical Error, Total Physical Error, Link Error, Total Link Error, Iteration Count, Present USB 2.0, Total USB 2.0 for the respective port. More...
 
HeatSinkValues Get_HeatSink_TemperatureValue ()
 This function will return the temperature status of the GRL-V-UP unit. More...
 
SwingDeEmphasis USB_Swing_DeEmphasis_RegisterRead_3p0 (PortID port)
 This function will return the Full Speed Swing and De-emphasis data from the USB register for the respective port. More...
 
SwingDeEmphasis USB_Swing_DeEmphasis_RegisterRead_2p0 (PortID port)
 This function will return the High Speed Swing and De-emphasis data from the USB register for the respective port. More...
 
string Get_API_Error_Status ()
 This function will return the error of the latest API set to the GRL-V-UP unit. More...
 
bool Get_PDController_Log_Data (PortID port)
 This function will return the PD Controller Event log data for the respective port and the result will be printed in the debug logger. More...
 
string Get_System_Error_Status ()
 This function will return any error that occurs on the GRL-V-UP unit. More...
 
string Get_DUT_Firmware_Version (PortID port)
 This function will return an DUT firmware version in string format More...
 
CableData Get_Cable_Capablities (PortID port)
 This function will get the cable capablities, Before this function make sure cable tester mode is enabled in V-UP controller by using this ConfigureCableTester() function and then send Detach() and Attach() function. More...
 
CalibrationExpiryDetailsList Calibration_Expire_Details ()
 This function contains the calibration expiry date details for Tester-cards More...
 
PDC_Status CableFlip (PortID port)
 This function will assert RA on active cc line and also commence Detach(), Attach(), and DecoderPDContractNegotationStatus(). For Verification send DecoderPDContractNegotationStatus() before CableFlip() More...
 
RpData Get_RpData (PortID port)
 This function will get the Rp Data for the selected port. More...
 
int SetVbusCurrent (double vbusCurrent, PortID port, VbusEload vbusEload, VBUSModeConfig vBUSModeConfig)
 This function will set the E-Load VBUS current based on the input values for the respective port. More...
 
int SetVCONNCurrent (double vconnCurrent, PortID port, VconnEload vconnEload, CCline cCline, VCONNModeConfig vCONNModeConfig)
 This function will set the E-Load VCONN current based on the input values for the respective port. More...
 
int CableSelection (PortID port, CableType cableType)
 This function will set the cable type for the respective port. More...
 
LoopBackInfo GetLoopBackInfo (PortID port)
 This function will return the LoopBack Information and Link Speed that the DUT supplies to the tester for the respective port. More...
 
int SetDefaultRequest (PortID port)
 This function will send the default PDO request messages during PD negotiation for the respective port. More...
 
int RequestPDO (PortID port, PDOIndex pDOIndex, double maxCurrent_Amps, double oppCurrent_Amps)
 This function will send the PDO Request message to perform voltage/current transition. More...
 
int RequestPDO (PortID port, PDOIndex pDOIndex, double maxCurrent_Amps, double oppCurrent_Amps, SourceCapabilities sourceCapabilities)
 This function will send the PDO Request message to perform voltage/current transition. More...
 
int RequestAPDO (PortID port, PDOIndex pDOIndex, double oppCurrent_Amps, double voltage_Volt)
 This function will send the PPS APDO Request message to perform voltage/current transition for the respective port. More...
 
int RequestAPDO (PortID port, PDOIndex pDOIndex, double oppCurrent_Amps, double voltage_Volt, SourceCapabilities sourceCapabilities)
 This function will send the PPS APDO Request message to perform voltage/current transition for the respective port. More...
 
int Attach (PortID port)
 This function will return the DUT's Attach mode status for the respective port.
More...
 
int PollingTimerControl (StartStop startStop)
 This function will start / stop updating the system LED status, VBUS, VCONN and temperature data. More...
 
int Detach (PortID port)
 This function will detach the DUT from the respective port. More...
 
int RaSelection (PortID port, Ra_Selection ra_Selection)
 This function will Assert Ra on CC1 or CC2, or Assert Ra on a active CC line for the respective port. More...
 
int AppCommandLEDCheck (PortID port, LEDControl controlSwitch)
 This function will indicate to which controller we are communicating More...
 
int Start_LoopBack (PortID port)
 This function will initiate loopback data transfer with the respective tester card for the respective port. This function should be called before starting data transaction. More...
 
int Stop_LoopBack (PortID port)
 This function will terminate loopback data transfer with the respective tester card for the respective port. This function should be called after loopback data testing is completed. More...
 
int USB_Soft_Disconnect (PortID port)
 This function will disconnect and stop the device enumeration for the respective port. This function will apply mostly when using the USB Type-A to Type-C cable. More...
 
int USB_Soft_Connect (PortID port)
 This function will connect and initiate the device enumeration for the respective port. This function will apply mostly when using the USB Type-A to Type-C cable. More...
 
int USB_DeviceMode_2p0 (PortID port)
 This function will revert the device operating mode from USB 3.0 to USB 2.0 for the respective port. More...
 
int USB_DeviceMode_3p0 (PortID port)
 This function will set the device operating mode to USB 3.0 for the respective port. More...
 
int Reset_ErrorCount (PortID port)
 This function will reset the physical and link error count for the respective port. More...
 
bool Configure_USB_Swing_DeEmphasis (PortID port, USBSpeed uSBSpeed, SwingType swingType, int swingValue, DeEmphasisType deEmphasisType, int deEmphasisValue, PreEmphasisType preEmphasisType, PreEmphasisValue preEmphasisValue)
 This function will set the USB Swing and De-Emphasis for the respective port. More...
 
int VCONNLoadSwitch (PortID port, VCONN_Load_Switch vCONN_Load_Switch)
 This function will switch the VCONN to CC1/CC2 or to a active CC line or disable VCONN for the respective port. More...
 
bool Set_HeatSink_Temperature_Limit (int temperatureLimit)
 This function will set the temperature limit for the GRL-V-UP unit. Note: Any value above 60 degrees and below 90 degrees is valid. More...
 
bool Set_Auto_Eload_On_PDO (PortID port, Command autoEload)
 This function will enable or disable the E-Load automatically based on the PDO for the respective port. More...
 
bool Clear_PD_Controller_Event_Log_Data (PortID port)
 This function will clear the PD controller event log data for the respective port. More...
 
bool Configure_VDM_Response (PortID port, VendorDefinedMessage msg, RESPONSE_TYPE rESPONSE_TYPE)
 This function will configure the vendor define message to emulate GRL V-UP as cable More...
 
int Port_Verification_On_CCLine (PortID port, PortVerifyEnableDisable portVerifyEnableDisable, CCline cCline)
 This function will be used to enable CCLines while performing port verification NOTE: Once the port verification is done make sure this function is disabled More...
 
bool ConfigureCableTester (PortID port, Command command)
 This function will configure V-UP controller as cable tester. Note : After sending this command please send Detach() and then Attach() function and then Get_Cable_Capablities() to read the cable capabilities. More...
 
bool SetSinkCapability (PortID port, ConfigureSinkCapability objSourceCapability)
 This function will allow the controller to set the sink Capability More...
 
bool PD_QC_SwtichMode (PortID port, PD_QC_ModeSwitch pD_QC_SwtichModes, QC_ModeSwitch qC_ModeSwitch=QC_ModeSwitch.None)
 This function will enable or disable PD / QC Mode. After enable use Set_VBUS_Voltage_QC_Mode_2p0() API for QC 2.0 and Set_VBUS_Voltage_QC_Mode_3p0() API for QC 3.0 More...
 
bool Set_VBUS_Voltage_QC_Mode_2p0 (PortID port, Qc_VBUS qc_VBUS)
 This function will set voltage on VBUS line in QC 2.0 mode and note before this API send PD_QC_SwtichMode() ex: PD_QC_SwtichMode(PortID.Port1, PD_QC_ModeSwitch.QC, QC_ModeSwitch.QC2p0) More...
 
bool Set_VBUS_Voltage_QC_Mode_3p0 (PortID port, double voltage_in_V)
 This function will set voltage on VBUS line in QC 3.0 mode and note before this API send PD_QC_SwtichMode() ex: PD_QC_SwtichMode(PortID.Port1, PD_QC_ModeSwitch.QC, QC_ModeSwitch.QC3p0) More...
 
int TesterCard_PowerControlCommand (PortID port, PowerSwitch switchOnOff)
 This function will act as a switch for all tester cards for the respective port. More...
 
bool Controller_Reset ()
 This function will reset the GRL-V-UP controller. More...
 
int SinkConfigure (PortID port)
 This function will set the tester card to Sink mode for the respective port. More...
 
bool Update_TesterCard_Firmware (string fileName, PortID port=PortID.PortAll)
 This function will update the tester card firmware for the respective port or all ports at a time. More...
 
void Stop_FirmwareUpdate ()
 This function will terminate firmware update for the tester card and PD controller ONLY. More...
 
bool Update_ControlCard_Firmware (string fileName, string bootLoaderFileName)
 This function will update the controller card firmware. More...
 
bool Update_SecondStageBootLoader_Firmware (string fileName, PortID port)
 This function will update the second stage boot loader firmware on one tester card port at a time ONLY. More...
 
bool Update_PD_Controller_Firmware (string fileName, PortID port=PortID.PortAll)
 This function will update the PD controller firmware on one port or all ports at a time.
More...
 
bool Update_USB_C_Provider_Firmware (string fileName, PortID port=PortID.PortAll)
 This function will update the CC line firmware for the respective port or all ports at a time. More...
 
bool Update_Eload_Firmware (string comPort, string fileName)
 This function will update the E-Load firmware. More...
 
bool Read (ref byte[] dataBuffer, ref int byteCount, uint timeOut)
 This function will read data from the Loopback device. More...
 
bool Write (ref byte[] buffer, ref int byteCount, uint timeOut)
 This function will write data to the Loopback device More...
 

Properties

Dictionary< string, GRLDeviceList > GetGRLDeviceList [get]
 This will call a list containing details of the connected controller. More...
 
static GrlVPdApiLib Instance [get]
 This will call an Instance of the GrlVPdApiLib class. More...
 
ControllerType SetContollerEndPoint [get, set]
 This will set the controller end point- ControlEndPoint , BulkEndPoint ControlEndPoint , BulkEndPoint More...
 
USBConnectionStatus USBConnectionStatus [get]
 This will call the connection status of the specific controller. More...
 
uint ProgressStatus [get]
 This will call the Firmware Update status in percentage. More...
 

Detailed Description

This library will communicate with GRL-V-UP controllers for concurrent USB Power Delivery 3.0 negotiation, 1000W power loading, and USB 2.0 & USB 3.1 data loopback testing.

Member Function Documentation

◆ AppCommandLEDCheck()

int VseriesControllerLibrary.GrlVPdApiLib.AppCommandLEDCheck ( PortID  port,
LEDControl  controlSwitch 
)

This function will indicate to which controller we are communicating

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
controlSwitchLEDControl.On , LEDControl.Off
Returns
0 = Successful , -1 = Failed

◆ Attach()

int VseriesControllerLibrary.GrlVPdApiLib.Attach ( PortID  port)

This function will return the DUT's Attach mode status for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = DUT is attached successfully , -1 = DUT is not ttached

◆ AttachDetachStatus()

Dictionary< PortID, Attach_Detach_Status_Enum > VseriesControllerLibrary.GrlVPdApiLib.AttachDetachStatus ( )

This function will return the Attach / Detach status of each DUT connected to individual port.

Returns
Dictionary<port, Attach_Detach_Status_Enum>

◆ CableFlip()

PDC_Status VseriesControllerLibrary.GrlVPdApiLib.CableFlip ( PortID  port)

This function will assert RA on active cc line and also commence Detach(), Attach(), and DecoderPDContractNegotationStatus(). For Verification send DecoderPDContractNegotationStatus() before CableFlip()

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
PD negotiation status- Requested PDO, Operating current, Maximum Operating current, VBUS voltage and Communication Line. If there is no status update, it will return as Failed.

◆ CableSelection()

int VseriesControllerLibrary.GrlVPdApiLib.CableSelection ( PortID  port,
CableType  cableType 
)

This function will set the cable type for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
cableTypeSpecial_Cable, TypeC_Cable,
Returns
Int : 0 = Successful , -1 = Failed

◆ Calibration_Expire_Details()

CalibrationExpiryDetailsList VseriesControllerLibrary.GrlVPdApiLib.Calibration_Expire_Details ( )

This function contains the calibration expiry date details for Tester-cards

Returns
CalibrationExpiryDetailsList

◆ Clear_PD_Controller_Event_Log_Data()

bool VseriesControllerLibrary.GrlVPdApiLib.Clear_PD_Controller_Event_Log_Data ( PortID  port)

This function will clear the PD controller event log data for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
bool : True = Successful , False = Failed

◆ Configure_USB_Swing_DeEmphasis()

bool VseriesControllerLibrary.GrlVPdApiLib.Configure_USB_Swing_DeEmphasis ( PortID  port,
USBSpeed  uSBSpeed,
SwingType  swingType,
int  swingValue,
DeEmphasisType  deEmphasisType,
int  deEmphasisValue,
PreEmphasisType  preEmphasisType,
PreEmphasisValue  preEmphasisValue 
)

This function will set the USB Swing and De-Emphasis for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
uSBSpeedUSB_3_0 = 0, USB_2_0 = 1
swingTypeNoConfiguration = 0, FullSwing = 1, LowSwing = 2,
swingValueint value
deEmphasisTypeNoconfiguration = 0, _3_5_db = 1, _6_db = 2
deEmphasisValueint value
preEmphasisTypeNoconfiguration = 0, Enable = 1, Disable = 2
preEmphasisValueEnable = 1, Disable = 2
Returns
bool : True = Successful , False = Failed

◆ Configure_VDM_Response()

bool VseriesControllerLibrary.GrlVPdApiLib.Configure_VDM_Response ( PortID  port,
VendorDefinedMessage  msg,
RESPONSE_TYPE  rESPONSE_TYPE 
)

This function will configure the vendor define message to emulate GRL V-UP as cable

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
msgnew VendorDefinedMessage()
rESPONSE_TYPEIGNORE = 0, ACK = 1, NAK = 2
Returns
bool : True = Successful , False = Failed

◆ ConfigureCableTester()

bool VseriesControllerLibrary.GrlVPdApiLib.ConfigureCableTester ( PortID  port,
Command  command 
)

This function will configure V-UP controller as cable tester. Note : After sending this command please send Detach() and then Attach() function and then Get_Cable_Capablities() to read the cable capabilities.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
commandDisable = 0, Enable = 1,
Returns
boolean : True = Successful , False = Failed

◆ Controller_Reset()

bool VseriesControllerLibrary.GrlVPdApiLib.Controller_Reset ( )

This function will reset the GRL-V-UP controller.

Returns
Bool : True = Successful , False = Failed

◆ DecoderPDContractNegotationStatus()

PDC_Status VseriesControllerLibrary.GrlVPdApiLib.DecoderPDContractNegotationStatus ( PortID  port)

This function will return the decoder PD negotiation status of the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
PDC_Status : Status

◆ Detach()

int VseriesControllerLibrary.GrlVPdApiLib.Detach ( PortID  port)

This function will detach the DUT from the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Detached successfully, -1 = DUT is not Detached

◆ FanTurnOnOff()

int VseriesControllerLibrary.GrlVPdApiLib.FanTurnOnOff ( FanControl  fan)

This function will turn ON/OFF the controller fan.

Parameters
fanFanControl.On , FanControl.Of
Returns
APIErrorEnum.NoError = 0, APIErrorEnum.UnknownError = -1, APIErrorEnum.USBLinkError = -2,

◆ Get_API_Error_Status()

string VseriesControllerLibrary.GrlVPdApiLib.Get_API_Error_Status ( )

This function will return the error of the latest API set to the GRL-V-UP unit.

Returns
String : Detailed error description

◆ Get_Cable_Capablities()

CableData VseriesControllerLibrary.GrlVPdApiLib.Get_Cable_Capablities ( PortID  port)

This function will get the cable capablities, Before this function make sure cable tester mode is enabled in V-UP controller by using this ConfigureCableTester() function and then send Detach() and Attach() function.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
CableData : cable capablities

◆ Get_ControlCard_Firmware_Version()

string VseriesControllerLibrary.GrlVPdApiLib.Get_ControlCard_Firmware_Version ( )

This function will return the controller card firmware version.

Returns
string : Controller card firmware version

◆ Get_ControlCard_SerialNumber() [1/2]

string VseriesControllerLibrary.GrlVPdApiLib.Get_ControlCard_SerialNumber ( )

This function will return the controller card serial number.

Returns
Controller card serial number

◆ Get_ControlCard_SerialNumber() [2/2]

bool VseriesControllerLibrary.GrlVPdApiLib.Get_ControlCard_SerialNumber ( out int  controlCardSerialNumber,
out int  controlCardBoradNumber,
out int  backPanelSerialNumber 
)

This function will return the controller card serial number.

Parameters
controlCardSerialNumberout int: control card serial number
controlCardBoradNumberout int: control card board revision number
backPanelSerialNumberout int: back panel serial number
Returns
bool : True = Successful , False = Failed

◆ Get_DUT_Firmware_Version()

string VseriesControllerLibrary.GrlVPdApiLib.Get_DUT_Firmware_Version ( PortID  port)

This function will return an DUT firmware version in string format

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
string : firmware version

◆ Get_Eload_Firmware_Version()

string VseriesControllerLibrary.GrlVPdApiLib.Get_Eload_Firmware_Version ( PortID  port)

This function will return the E-Load firmware version for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
string : E-Load firmware version

◆ Get_ELoad_Frimware_Version()

string VseriesControllerLibrary.GrlVPdApiLib.Get_ELoad_Frimware_Version ( PortID  port)

This function will return the E-Load version for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
String : E-Load version

◆ Get_HeatSink_TemperatureValue()

HeatSinkValues VseriesControllerLibrary.GrlVPdApiLib.Get_HeatSink_TemperatureValue ( )

This function will return the temperature status of the GRL-V-UP unit.

Returns
HeatSinkValues - TemperatureValue1, TemperatureValue2, TemperatureValue3, Overall temperature and Temperature status


◆ Get_PD_Controller_Firmware_Version()

string VseriesControllerLibrary.GrlVPdApiLib.Get_PD_Controller_Firmware_Version ( PortID  port)

This function will return the PD Controller Firmware Version for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
string : PD_Controller Firmware version

◆ Get_PDController_Log_Data()

bool VseriesControllerLibrary.GrlVPdApiLib.Get_PDController_Log_Data ( PortID  port)

This function will return the PD Controller Event log data for the respective port and the result will be printed in the debug logger.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
bool : True = Successful , False = Failed

◆ Get_Physical_Link_ErrorCount()

PhysicalLinkError VseriesControllerLibrary.GrlVPdApiLib.Get_Physical_Link_ErrorCount ( PortID  port)

This function will return the Physical and Link errors- Physical Error, Total Physical Error, Link Error, Total Link Error, Iteration Count, Present USB 2.0, Total USB 2.0 for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
PhysicalLinkError

◆ Get_RpData()

RpData VseriesControllerLibrary.GrlVPdApiLib.Get_RpData ( PortID  port)

This function will get the Rp Data for the selected port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
RpData : return RP data , holds the active CC line and This holds the current RP value indication in mA

◆ Get_System_Error_Status()

string VseriesControllerLibrary.GrlVPdApiLib.Get_System_Error_Status ( )

This function will return any error that occurs on the GRL-V-UP unit.

Returns
string - Error Notes

◆ Get_TesterCard_Firmware_Version()

string VseriesControllerLibrary.GrlVPdApiLib.Get_TesterCard_Firmware_Version ( PortID  port)

This function will return the tester card firmware version for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
string : Tester card firmware version

◆ Get_TesterCard_SerialNumber() [1/2]

string VseriesControllerLibrary.GrlVPdApiLib.Get_TesterCard_SerialNumber ( PortID  port)

This function will return the tester card serial number and board number for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
string : Tester Card Serial Number , BaseBoard Revision

◆ Get_TesterCard_SerialNumber() [2/2]

bool VseriesControllerLibrary.GrlVPdApiLib.Get_TesterCard_SerialNumber ( PortID  port,
out int  testerCardSerialNumber,
out int  testerCardBoradNumber 
)

This function will return the tester card serial number and board number for the respective port

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
testerCardSerialNumberout int : Tester card serial number
testerCardBoradNumberout int : Tester card board revision number
Returns
bool : True = Successful , False = Failed

◆ Get_VBUS_Voltage_Current()

bool VseriesControllerLibrary.GrlVPdApiLib.Get_VBUS_Voltage_Current ( PortID  port,
out int  vbusVoltage,
out int  vbusCurrent 
)

Depending on the controller mode, this function will return the VBUS voltage and current that the DUT supplies to the tester in mA for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
vbusVoltageVBUS Voltage in mA
vbusCurrentVBUS current in mA
Returns
bool : True = Successful , False = Failed

◆ GetDutCapabilities()

string VseriesControllerLibrary.GrlVPdApiLib.GetDutCapabilities ( PortID  port)

This function will return the DUT capabilities for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
String : DUT capablities ; It will return empty string if you select PortAll

◆ GetLinkSpeed()

double VseriesControllerLibrary.GrlVPdApiLib.GetLinkSpeed ( PortID  port)

Depending on the controller mode, this function will return the Link Speed for the respective port. It is recommended to verify the DUT Attach status before calling the "GetLinkSpeed" API.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
LinkSpeed

◆ GetLoopBackInfo()

LoopBackInfo VseriesControllerLibrary.GrlVPdApiLib.GetLoopBackInfo ( PortID  port)

This function will return the LoopBack Information and Link Speed that the DUT supplies to the tester for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
VBUS voltage in volts

◆ GetPDContractNegotationStatus()

string VseriesControllerLibrary.GrlVPdApiLib.GetPDContractNegotationStatus ( PortID  port)

This function will return the status of the PD negotiation for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
PD negotiation status- Requested PDO, Operating current, Maximum Operating current, VBUS voltage and Communication Line. If there is no status update, it will return as Failed.


◆ GetSystemInfo()

string VseriesControllerLibrary.GrlVPdApiLib.GetSystemInfo ( PortID  port)

This function will return the system information for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
String : System information

◆ GetUSBDevices()

USBDeviceList VseriesControllerLibrary.GrlVPdApiLib.GetUSBDevices ( )

This function will search for all the USB devices connected to the Host PC.

Returns
List of connected USB devices

◆ GetVbusCurrent()

int VseriesControllerLibrary.GrlVPdApiLib.GetVbusCurrent ( PortID  port)

Depending on the controller mode, this function will return the VBUS current that the DUT supplies to the tester for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
VBUS current in mili amps

◆ GetVBUSData()

string VseriesControllerLibrary.GrlVPdApiLib.GetVBUSData ( PortID  port)


This function will return the VBUS voltage and current that the DUT supplies to the tester for the respective port. It is recommended to verify the DUT Attach status before calling the "GetVBUSData" API.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
String value - Voltage in volts , Current in amps

◆ GetVbusVoltage()

int VseriesControllerLibrary.GrlVPdApiLib.GetVbusVoltage ( PortID  port)

This function will return the VBUS voltage that the DUT supplies to the tester for the respective port. It is recommended to verify the DUT Attach status before calling the "GetVbusVoltage" API.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
VBUS voltage in millivolts

◆ GetVconnCurrent()

double VseriesControllerLibrary.GrlVPdApiLib.GetVconnCurrent ( PortID  port)

Depending on the controller mode, this function will return the VCONN current that the DUT supplies to the tester for the respective port. It is recommended to verify the DUT Attach status before calling the "GetVconnCurrent" API.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
VCONN current in miliamps

◆ GetVCONNData()

string VseriesControllerLibrary.GrlVPdApiLib.GetVCONNData ( PortID  port)

Depending on the controller mode, this function will return the VCONN voltage and current that the DUT supplies to the tester for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
String value - Voltage in volts, Current in amps

◆ GetVconnVoltage()

int VseriesControllerLibrary.GrlVPdApiLib.GetVconnVoltage ( PortID  port)

Depending on the controller mode, this function will return the VCONN voltage that the DUT supplies to the tester for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
VCONN voltage in millivolts

◆ InitilizeController()

bool VseriesControllerLibrary.GrlVPdApiLib.InitilizeController ( )

This function will detect all GRL USB devices that are connected to the Host PC and establish communication with each of them and add to GetGRLDeviceList. Alternatively you can use this "GetUSBDevices()" API manually and pass the parameter. Once all the devices are connected using the "SelectController()" API, select the specific controller to communicate with.

GrlVPdApiLib.Instance.InitilizeController();

Parameters
uSBDeviceListPass the "USBDeviceList". If this is null then manually it will connect all connected devices to the Host PC.
Returns
bool : True = Successful , False = Failed

◆ PD_QC_SwtichMode()

bool VseriesControllerLibrary.GrlVPdApiLib.PD_QC_SwtichMode ( PortID  port,
PD_QC_ModeSwitch  pD_QC_SwtichModes,
QC_ModeSwitch  qC_ModeSwitch = QC_ModeSwitch.None 
)

This function will enable or disable PD / QC Mode. After enable use Set_VBUS_Voltage_QC_Mode_2p0() API for QC 2.0 and Set_VBUS_Voltage_QC_Mode_3p0() API for QC 3.0

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
pD_QC_SwtichModesPD or QC mode switch
qC_ModeSwitchQC mode 2.0 / 3.0 Note If PD is selected then this parameter should be QC_ModeSwitch.None
Returns
boolean : true for successful else false

◆ Physical_TesterCardStatus()

Dictionary< PortID, Attach_Detach_Status_Enum > VseriesControllerLibrary.GrlVPdApiLib.Physical_TesterCardStatus ( )

This function will provide information on the physical Attach status of the tester card on the GRL-V-UP unit.

Returns
Dictionary<port, Attach_Detach_Status_Enum>

◆ PollingTimerControl()

int VseriesControllerLibrary.GrlVPdApiLib.PollingTimerControl ( StartStop  startStop)

This function will start / stop updating the system LED status, VBUS, VCONN and temperature data.

Parameters
startStopStartStop.Start / StartStop.Stop
Returns
0 = Successful, -1 = Failed

◆ Port_Verification_On_CCLine()

int VseriesControllerLibrary.GrlVPdApiLib.Port_Verification_On_CCLine ( PortID  port,
PortVerifyEnableDisable  portVerifyEnableDisable,
CCline  cCline 
)

This function will be used to enable CCLines while performing port verification NOTE: Once the port verification is done make sure this function is disabled

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
portVerifyEnableDisableDisable = 0, Enable = 1
cClineCC1 = 0, CC2 = 1,
Returns
0 = Successful, -1 = Failed

◆ RaSelection()

int VseriesControllerLibrary.GrlVPdApiLib.RaSelection ( PortID  port,
Ra_Selection  ra_Selection 
)

This function will Assert Ra on CC1 or CC2, or Assert Ra on a active CC line for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
ra_SelectionRaDisable = 0x00, RaAssert_CC1 = 0x01, RaAssert_CC2 = 0x02, RaAssert_ActiveCC = 0x03,
Returns
0 = Ra Selection is successful, -1 = Ra Selection has failed

◆ Read()

bool VseriesControllerLibrary.GrlVPdApiLib.Read ( ref byte[]  dataBuffer,
ref int  byteCount,
uint  timeOut 
)

This function will read data from the Loopback device.

Parameters
dataBufferData buffer
byteCountBuffer count
Returns
Bool : True = Successful , False = Failed

◆ RequestAPDO() [1/2]

int VseriesControllerLibrary.GrlVPdApiLib.RequestAPDO ( PortID  port,
PDOIndex  pDOIndex,
double  oppCurrent_Amps,
double  voltage_Volt 
)

This function will send the PPS APDO Request message to perform voltage/current transition for the respective port.

Example: If using PDO 4, then the command will be "RequestAPDO(PortID.Port1, PDO4, 0 (Maximum operating current), 5 (Voltage))"

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
pDOIndexPDO indes : PDO1,PDO2,...,PDO7
oppCurrent_AmpsMaximum operating current
voltage_VoltVoltage
Returns
-1 = Unknown Error, 0 = No Error

◆ RequestAPDO() [2/2]

int VseriesControllerLibrary.GrlVPdApiLib.RequestAPDO ( PortID  port,
PDOIndex  pDOIndex,
double  oppCurrent_Amps,
double  voltage_Volt,
SourceCapabilities  sourceCapabilities 
)

This function will send the PPS APDO Request message to perform voltage/current transition for the respective port.

Example: If using PDO 4, then the command will be "RequestAPDO(PortID.Port1, PDO4, 0 (Maximum operating current), 5 (Voltage))"

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
pDOIndexPDO indes : PDO1,PDO2,...,PDO7
oppCurrent_AmpsMaximum operating current
voltage_VoltVoltage
sourceCapabilitiesSource caps SourceCapabilities()
Returns
-1 = Unknown Error, 0 = No Error

◆ RequestPDO() [1/2]

int VseriesControllerLibrary.GrlVPdApiLib.RequestPDO ( PortID  port,
PDOIndex  pDOIndex,
double  maxCurrent_Amps,
double  oppCurrent_Amps 
)

This function will send the PDO Request message to perform voltage/current transition.

Example: If using PDO 4, then the command will be "RequestPDO(PortID.Port1, PDO4, 1.5 (Maximum operating current), 1.5 (Operating Current))"

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
pDOIndexPDO indes : PDO1,PDO2,...,PDO7
maxCurrent_AmpsDouble: Maximum operating current
oppCurrent_AmpsOperating current


Returns
-1 = Unknown Error, 0 = No Error

◆ RequestPDO() [2/2]

int VseriesControllerLibrary.GrlVPdApiLib.RequestPDO ( PortID  port,
PDOIndex  pDOIndex,
double  maxCurrent_Amps,
double  oppCurrent_Amps,
SourceCapabilities  sourceCapabilities 
)

This function will send the PDO Request message to perform voltage/current transition.

Example: If using PDO 4, then the command will be "RequestPDO(PortID.Port1, PDO4, 1.5 (Maximum operating current), 1.5 (Operating Current))"

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
pDOIndexPDO indes : PDO1,PDO2,...,PDO7
maxCurrent_AmpsDouble: Maximum operating current
oppCurrent_AmpsOperating current


Parameters
sourceCapabilitiesSource caps SourceCapabilities()
Returns
-1 = Unknown Error, 0 = No Error

◆ Reset_ErrorCount()

int VseriesControllerLibrary.GrlVPdApiLib.Reset_ErrorCount ( PortID  port)

This function will reset the physical and link error count for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful , -1 = Failed

◆ SelectController()

void VseriesControllerLibrary.GrlVPdApiLib.SelectController ( string  serialNumber = "")

This function will select the controller to communicate with. If multiple controllers are connected, obtain the controller's list using "GetGRLDeviceList" and set "ControllerIndex" as "GetGRLControllersList.ControllerIndex". If multiple GRL-V-UP controllers are connected, then select the controller that you want to communicate with.

Here 0th Contoller is selected

foreach (var device in GrlVPdApiLib.Instance.GetGRLDeviceList) { GrlVPdApiLib.Instance.SelectController(device.Value.USBSerialNumber); Console.WriteLine("Controller Serial number : " + device.Value.USBSerialNumber); break; }

Parameters
serialNumberDevice serial number ex: device.Value.USBSerialNumber

◆ SelectLoopBackController()

void VseriesControllerLibrary.GrlVPdApiLib.SelectLoopBackController ( string  serialNumber = "")

This function will select the controller for loopback operation.

Parameters
serialNumberSerial number

◆ Set_Auto_Eload_On_PDO()

bool VseriesControllerLibrary.GrlVPdApiLib.Set_Auto_Eload_On_PDO ( PortID  port,
Command  autoEload 
)

This function will enable or disable the E-Load automatically based on the PDO for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
autoEloadEnable or disable the function
Returns
bool : True = Successful , False = Failed

◆ Set_HeatSink_Temperature_Limit()

bool VseriesControllerLibrary.GrlVPdApiLib.Set_HeatSink_Temperature_Limit ( int  temperatureLimit)

This function will set the temperature limit for the GRL-V-UP unit. Note: Any value above 60 degrees and below 90 degrees is valid.

Parameters
temperatureLimitint Temperature value
Returns
Bool : True = Successful , False = Failed

◆ Set_VBUS_Voltage_QC_Mode_2p0()

bool VseriesControllerLibrary.GrlVPdApiLib.Set_VBUS_Voltage_QC_Mode_2p0 ( PortID  port,
Qc_VBUS  qc_VBUS 
)

This function will set voltage on VBUS line in QC 2.0 mode and note before this API send PD_QC_SwtichMode() ex: PD_QC_SwtichMode(PortID.Port1, PD_QC_ModeSwitch.QC, QC_ModeSwitch.QC2p0)

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
qc2P0_VBUS_5V = 5 Volts on VBUS , _9V = 9 Volts on VBUS , _12V = 12 Volts on VBUS , _20V = 20 Volts on VBUS ,
Returns
boolean : true for successful else false

◆ Set_VBUS_Voltage_QC_Mode_3p0()

bool VseriesControllerLibrary.GrlVPdApiLib.Set_VBUS_Voltage_QC_Mode_3p0 ( PortID  port,
double  voltage_in_V 
)

This function will set voltage on VBUS line in QC 3.0 mode and note before this API send PD_QC_SwtichMode() ex: PD_QC_SwtichMode(PortID.Port1, PD_QC_ModeSwitch.QC, QC_ModeSwitch.QC3p0)

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
voltage_in_Vdouble Voltage value in V (Limit from 3.7V to 20V)
Returns
boolean : true for successful else false

◆ SetDefaultRequest()

int VseriesControllerLibrary.GrlVPdApiLib.SetDefaultRequest ( PortID  port)

This function will send the default PDO request messages during PD negotiation for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
-1 = Unknown Error on request, 0 = No Error on request

◆ SetSinkCapability()

bool VseriesControllerLibrary.GrlVPdApiLib.SetSinkCapability ( PortID  port,
ConfigureSinkCapability  objSourceCapability 
)

This function will allow the controller to set the sink Capability

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
objSourceCapabilitySinkCapability object
Returns
boolean : true for successful else false

◆ SetVbusCurrent()

int VseriesControllerLibrary.GrlVPdApiLib.SetVbusCurrent ( double  vbusCurrent,
PortID  port,
VbusEload  vbusEload,
VBUSModeConfig  vBUSModeConfig 
)

This function will set the E-Load VBUS current based on the input values for the respective port.

Parameters
vbusCurrentDouble value VBUS current in amps
portRefer to Port Number Port1, Port2,..., Port10.
vbusEloadVBUS load on off
vBUSModeConfigVBUS eLoad mode configuration CCMode = 0 Constant current Mode, VbusCRMode = 1 CR Mode - Constant resistance mode,


Returns
NoError = 0 , UnknownError = -1,

◆ SetVCONNCurrent()

int VseriesControllerLibrary.GrlVPdApiLib.SetVCONNCurrent ( double  vconnCurrent,
PortID  port,
VconnEload  vconnEload,
CCline  cCline,
VCONNModeConfig  vCONNModeConfig 
)

This function will set the E-Load VCONN current based on the input values for the respective port.

Parameters
vconnCurrentDouble value VCONN current in amps
portRefer to Port Number Port1, Port2,..., Port10.
vconnEloadVCONN load on off
cClineCC line selection CC1 = 0, CC2 = 1
vCONNModeConfigCCMode = 0, CRMode = 1,
Returns
Int -1 - Error, 0 - No Error,

◆ SinkConfigure()

int VseriesControllerLibrary.GrlVPdApiLib.SinkConfigure ( PortID  port)

This function will set the tester card to Sink mode for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful, -1 = Failed

◆ SourceCapabilities() [1/2]

SourceCapabilities VseriesControllerLibrary.GrlVPdApiLib.SourceCapabilities ( PortID  port)

This function will return the Source DUT capabilities for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
SourceCapabilities : DUT capablities

◆ SourceCapabilities() [2/2]

SourceCapabilities VseriesControllerLibrary.GrlVPdApiLib.SourceCapabilities ( PortID  port,
out string  SrcCaps 
)

This function will return the Source DUT capabilities for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
SrcCapsout string : SourceCapabilities
Returns
SourceCapabilities : DUT capablities ;

◆ SourceCapabilities_Extended()

int VseriesControllerLibrary.GrlVPdApiLib.SourceCapabilities_Extended ( PortID  port)

This function will return the Source PDP rating for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
int value of Source PDP rating in watts

◆ Start_LoopBack()

int VseriesControllerLibrary.GrlVPdApiLib.Start_LoopBack ( PortID  port)

This function will initiate loopback data transfer with the respective tester card for the respective port. This function should be called before starting data transaction.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful , -1 = Failed

◆ Stop_FirmwareUpdate()

void VseriesControllerLibrary.GrlVPdApiLib.Stop_FirmwareUpdate ( )

This function will terminate firmware update for the tester card and PD controller ONLY.

◆ Stop_LoopBack()

int VseriesControllerLibrary.GrlVPdApiLib.Stop_LoopBack ( PortID  port)

This function will terminate loopback data transfer with the respective tester card for the respective port. This function should be called after loopback data testing is completed.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful , -1 = Failed

◆ TesterCard_PowerControlCommand()

int VseriesControllerLibrary.GrlVPdApiLib.TesterCard_PowerControlCommand ( PortID  port,
PowerSwitch  switchOnOff 
)

This function will act as a switch for all tester cards for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
switchOnOffSwitch On/Off
Returns
NoError = 0, UnknownError = -1, USBLinkError = -2,

◆ TesterCard_System_Status()

LEDSystemStatus VseriesControllerLibrary.GrlVPdApiLib.TesterCard_System_Status ( )

This function will return the system status of all tester cards on the GRL-V-UP unit, which includes the following: PDO_Index, PDC_Status, Port number, Power LED status, VBUS LED status, DataLock LED status, DataError LED status, En_D_Tx LED status, PD_BC_12 LED status, PD_N LED status, LinkSpeed LED status, VBUS_Voltage, VBUS_Current, VCONN_Voltage, VCONN_Current , Source caps Re-Advertised Timestamps

NOTE: Source caps Re-Advertised will return as "False" again only after sending the source capabilities API.

Returns
LEDSystemStatus

◆ TestercardFanControl()

int VseriesControllerLibrary.GrlVPdApiLib.TestercardFanControl ( PortID  port,
TCFans  fan 
)

This function will turn ON/OFF the Testercard fans.

Parameters
fanFanControl.On , FanControl.Of
portRefer to Port Number Port1, Port2,..., Port10.
Returns
NoError = 0, UnknownError = -1, USBLinkError = -2,

◆ Update_ControlCard_Firmware()

bool VseriesControllerLibrary.GrlVPdApiLib.Update_ControlCard_Firmware ( string  fileName,
string  bootLoaderFileName 
)

This function will update the controller card firmware.

Parameters
fileNamestring : File location
Returns
Bool : True = Successful , False = Failed

◆ Update_Eload_Firmware()

bool VseriesControllerLibrary.GrlVPdApiLib.Update_Eload_Firmware ( string  comPort,
string  fileName 
)

This function will update the E-Load firmware.

Parameters
fileNamestring : File location
comPortRefer to Port Number Port1, Port2,..., Port10.
Returns
Bool : True = Successful , False = Failed

◆ Update_PD_Controller_Firmware()

bool VseriesControllerLibrary.GrlVPdApiLib.Update_PD_Controller_Firmware ( string  fileName,
PortID  port = PortID.PortAll 
)

This function will update the PD controller firmware on one port or all ports at a time.

Parameters
fileNamestring : File location
portRefer to Port Number Port1, Port2,..., Port10.
Returns
Bool : True = Successful , False = Failed

◆ Update_SecondStageBootLoader_Firmware()

bool VseriesControllerLibrary.GrlVPdApiLib.Update_SecondStageBootLoader_Firmware ( string  fileName,
PortID  port 
)

This function will update the second stage boot loader firmware on one tester card port at a time ONLY.

Parameters
fileNamestring : File location
portRefer to Port Number Port1, Port2,..., Port10.
Returns
Bool : True = Successful , False = Failed

◆ Update_TesterCard_Firmware()

bool VseriesControllerLibrary.GrlVPdApiLib.Update_TesterCard_Firmware ( string  fileName,
PortID  port = PortID.PortAll 
)

This function will update the tester card firmware for the respective port or all ports at a time.

Parameters
fileNamestring : File location
portRefer to Port Number Port1, Port2,..., Port10.
Returns
Bool : True = Successful , False = Failed

◆ Update_USB_C_Provider_Firmware()

bool VseriesControllerLibrary.GrlVPdApiLib.Update_USB_C_Provider_Firmware ( string  fileName,
PortID  port = PortID.PortAll 
)

This function will update the CC line firmware for the respective port or all ports at a time.

Parameters
fileNamestring : File location
portRefer to Port Number Port1, Port2,..., Port10.
Returns
Bool : True = Successful , False = Failed

◆ USB_DeviceMode_2p0()

int VseriesControllerLibrary.GrlVPdApiLib.USB_DeviceMode_2p0 ( PortID  port)

This function will revert the device operating mode from USB 3.0 to USB 2.0 for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful , -1 = Failed

◆ USB_DeviceMode_3p0()

int VseriesControllerLibrary.GrlVPdApiLib.USB_DeviceMode_3p0 ( PortID  port)

This function will set the device operating mode to USB 3.0 for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful , -1 = Failed

◆ USB_Soft_Connect()

int VseriesControllerLibrary.GrlVPdApiLib.USB_Soft_Connect ( PortID  port)

This function will connect and initiate the device enumeration for the respective port. This function will apply mostly when using the USB Type-A to Type-C cable.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful , -1 = Failed

◆ USB_Soft_Disconnect()

int VseriesControllerLibrary.GrlVPdApiLib.USB_Soft_Disconnect ( PortID  port)

This function will disconnect and stop the device enumeration for the respective port. This function will apply mostly when using the USB Type-A to Type-C cable.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
0 = Successful , -1 = Failed

◆ USB_Swing_DeEmphasis_RegisterRead_2p0()

SwingDeEmphasis VseriesControllerLibrary.GrlVPdApiLib.USB_Swing_DeEmphasis_RegisterRead_2p0 ( PortID  port)

This function will return the High Speed Swing and De-emphasis data from the USB register for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
SwingDeEmphasis - Tx_De_Emphasis_3p5dB, TX_De_Emphasis_6dB, Tx_Amp_Full_Swing, Tx_Amp_Low_Swing

◆ USB_Swing_DeEmphasis_RegisterRead_3p0()

SwingDeEmphasis VseriesControllerLibrary.GrlVPdApiLib.USB_Swing_DeEmphasis_RegisterRead_3p0 ( PortID  port)

This function will return the Full Speed Swing and De-emphasis data from the USB register for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
Returns
SwingDeEmphasis - Tx_De_Emphasis_3p5dB, TX_De_Emphasis_6dB, Tx_Amp_Full_Swing, Tx_Amp_Low_Swing

◆ VBUS_Selection()

int VseriesControllerLibrary.GrlVPdApiLib.VBUS_Selection ( PortID  port,
VBUS_SENSE_VOLT_EN  vBUS_SENSE_VOLT_EN 
)

This function will switch between the USB Type-C VBUS and VBUS Sense for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
vBUS_SENSE_VOLT_ENExternalVbus = 0, TypeCVbus = 1,
Returns
NoError = 0, UnknownError = -1, USBLinkError = -2,

◆ VCONNLoadSwitch()

int VseriesControllerLibrary.GrlVPdApiLib.VCONNLoadSwitch ( PortID  port,
VCONN_Load_Switch  vCONN_Load_Switch 
)

This function will switch the VCONN to CC1/CC2 or to a active CC line or disable VCONN for the respective port.

Parameters
portRefer to Port Number Port1, Port2,..., Port10.
vCONN_Load_SwitchVCONN_Load_Disable , VCONN_Load_CC1 , VCONN_Load_CC2 , VCONN_Load_ActiveCC ,
Returns
0 = Successful , -1 = Failed

◆ Write()

bool VseriesControllerLibrary.GrlVPdApiLib.Write ( ref byte[]  buffer,
ref int  byteCount,
uint  timeOut 
)

This function will write data to the Loopback device

Parameters
bufferData buffer
byteCountData buffer count
Returns
Bool : True = Successful , False = Failed

Property Documentation

◆ GetGRLDeviceList

Dictionary<string, GRLDeviceList> VseriesControllerLibrary.GrlVPdApiLib.GetGRLDeviceList
get

This will call a list containing details of the connected controller.

◆ Instance

GrlVPdApiLib VseriesControllerLibrary.GrlVPdApiLib.Instance
staticget

This will call an Instance of the GrlVPdApiLib class.

◆ ProgressStatus

uint VseriesControllerLibrary.GrlVPdApiLib.ProgressStatus
get

This will call the Firmware Update status in percentage.

◆ SetContollerEndPoint

ControllerType VseriesControllerLibrary.GrlVPdApiLib.SetContollerEndPoint
getset

This will set the controller end point- ControlEndPoint , BulkEndPoint ControlEndPoint , BulkEndPoint

◆ USBConnectionStatus

USBConnectionStatus VseriesControllerLibrary.GrlVPdApiLib.USBConnectionStatus
get

This will call the connection status of the specific controller.