USB System Entity¶
API Documentation: [cpp] [python] [.NET] [LabVIEW]
The USBSystem class provides high level control of the lower level Port Entity
Upstream Connection (Get/Set)¶
usbsystem . setUpstream => (unsigned char) enable
usbsystem . getUpstream <= (unsigned char) enable
Many acroname products have multiple upstream port selections. This function is used to access and control that functionality.
Enumeration Delay (Get/Set)¶
usbsystem . getEnumerationDelay <= (unsigned int) ms_delay
usbsystem . setEnumerationDelay => (unsigned int) ms_delay
Gets/Sets the inter-port enumeration delay in milliseconds. The enumeration delay sequentially enables data and power to downstream ports after the defined delay time. After setting and saving this parameter all downstream ports will be initially disabled upon system power-on or reset. Similarly, if there is no upstream connection, all downstream ports will be disabled. When an upstream connection is applied, or after the system boots, the system will wait for the defined delay time and enable the lowest port number. The system will then wait for the defined delay time and then enable the next highest port. This behavior repeats until all ports are enabled.
Inconsistent behavior from race conditions may occur if enumeration delay is used in conjunction with Reflex programs which also manipulate the downstream port states. Care should be taken to ensure no conflicts between the enumeration delay and Reflex programs.
Enabled List (Get/Set)¶
usbsystem . getEnabledList <= (unsigned int) list
usbsystem . setEnabledList => (unsigned int) list
The enabled list function provides state and control over all lower ports enables. It is equivalent to calling calling get/set enabled from the PortClass on all ports at once. The returned variable is in a bit mapped format. Please see the product data sheet for specific bit meanings.
Mode List (Get/Set)¶
usbsystem . getModeList <= (unsigned int [NUM_PORTS]) list
usbsystem . setModeList => (unsigned int [NUM_PORTS]) list
The mode list function gives you access and control to all lover level port modes. It is equivalent to calling get/set mode from the PortClass on all ports at once.
State List (Get)¶
usbsystem . getModeList <= (unsigned int [NUM_PORTS]) list
usbsystem . setModeList => (unsigned int [NUM_PORTS]) list
The state list function gives you access and control to all lover level port states. It is equivalent to calling get/set state from the PortClass on all ports at once.
Power Behavior (Get/Set)¶
usbsystem . getPowerBehavior <= (unsigned char) behavior
usbsystem . setPowerBehavior => (unsigned char) behavior
The power behavior controls how power will be allocated to each lower level port. This behavior comes into play when the requested power of the system exceeds the available power. i.e. first come first server, even distribution, priority list. See the product datasheet for specific implementations.
Power Behavior Config (Get/Set)¶
usbsystem . getPowerBehaviorConfig <= (unsigned int []) config
usbsystem . setPowerBehaviorConfig => (unsigned int []) config
Some power behaviors require a list of parameters in order to operate. For instance in priority list mode the user can supply a list of port indexes to priorities for power. This feature is product specific and users should consult the manual for further details.
Data Role Behavior (Get/Set)¶
usbsystem . getDataRoleBehavior <= (unsigned char) behavior
usbsystem . setDataRoleBehavior => (unsigned char) behavior
Some Type-C ports are capable of being dual role ports (DRP). Meaning they are capable of being either a host or a device. The behavior defined here will determine if that is allowed, what happens if it is, and what occurs when a host goes away. Examples are: first come first serve, priority list, static/fixed selection, etc. See the product datasheet for specific implementations.
Data Role Behavior Config (Get/Set)¶
usbsystem . getDataRoleBehaviorConfig <= (unsigned int []) config
usbsystem . setDataRoleBehaviorConfig => (unsigned int []) config
Many of the data role behaviors require a list of parameters in order to operate. For instance in a static/fixed mode the config would indicate what port is the upstream connection.
Selector Mode (Get/Set)¶
usbsystem . getSelectorMode <= (unsigned char) mode
usbsystem . setSelectorMode => (unsigned char) mode
The selector mode defines what will happen if the external selector/trigger input is used. The selector input allows for physical (button) control of the Acroname product. This feature is product specific and users should consult the manual for further details.