Setting Tag | Setting Value Type | Setting Description |
trackerPostTransformation<index> | tracker state |
Defines a post-transformation that is applied to the <index>-th tracker managed by the driver module, where <index> is between 0 and one minus the number of trackers managed by the module. Post-transformations are applied "from the right," and therefore offset a tracker's reported position, and rotate a tracker's reported coordinate frame, in the local coordinate system of the tracker. |
valuatorThreshold | number |
Defines a default threshold applied to all valuators managed by the driver module. See Valuator Mapping for details. |
valuatorThreshold<index> | number |
Defines a threshold applied to the <index>-th valuator managed by the driver module, where <index> is between 0 and the number of valuators managed by the module minus 1. See Valuator Mapping for details. |
valuatorExponent | number |
Defines a default exponent applied to all valuators managed by the driver module. See Valuator Mapping for details. |
valuatorExponent<index> | number |
Defines a exponent applied to the <index>-th valuator managed by the driver module, where <index> is between 0 and the number of valuators managed by the module minus 1. See Valuator Mapping for details. |
deviceType | enumerant |
Defines the type of the device driver plug-in module created by the section. The following device types are supported:
- ArtDTrack
- Driver for A.R.T. DTrack optical tracking systems. Rest of the section contains A.R.T. DTrack settings.
- AscensionFlockOfBirds
- Driver for Ascension Flock of Birds electro-magnetic tracking systems. Rest of the section contains Ascension Flock of Birds settings.
- AscensionWanda
- Driver for button and valuator component of Ascension Wanda tracked wand. As the Wanda is just a hacked serial-port mouse, this driver can also handle many other types of serial mice. Rest of the section contains Ascension Wanda settings.
- FakespacePinchGlove
- Driver for Fakespace pinch gloves. Rest of the section contains Fakespace Pinch Glove settings.
- FiveDTGlove
- Driver for various models of 5DT data gloves. Rest of the section contains 5DT Glove settings.
- HIDDevice
- Driver for generic USB human interface devices. Rest of the section contains HID settings.
- InterSense
- Driver for Intersense IS-900 hybrid inertial/ultrasonic tracking systems. Rest of the section contains Intersense IS-900 settings.
- Joystick
- Driver for any type of joystick-like device supported by the Linux joystick kernel API. Rest of the section contains joystick settings. Note: This device type is superseded by the more flexible HIDDevice device type, which supports a superset of devices via a unified API.
- MouseButtons
- Driver to read button events from any type of mouse-like device supported by the Linux mouse kernel API. Rest of the section contains mouse buttons settings. Note: This device type is superseded by the more flexible HIDDevice device type, which supports a superset of devices via a unified API.
- OculusRift
- Driver to read orientational tracking data from the built-in inertial tracking unit in the Oculus Rift head-mounted display. Rest of the section contains Oculus Rift settings.
- PCTracker
- Driver for PCTracker tracking systems, originally shipped with ImmersaDesks, connected to the computer running VRDeviceDaemon via serial ports. Rest of the section contains PC Tracker settings.
- PCWand
- Driver for PCWand button and valuator devices, originally shipped with ImmersaDesks, connected to the computer running VRDeviceDaemon via serial ports. Rest of the section contains PC Wand settings.
- PolhemusFastrak
- Driver for Polhemus Fastrak electro-magnetic tracking systems. Rest of the section contains Polhemus Fastrak settings.
- RazerHydraDevice
- Driver for Razer Hydra electro-magnetic desktop tracking devices. Rest of the section contains Razer Hydra settings.
- SpaceBall
- Driver for 3DConnexion SpaceBall 4000 FLX desktop relative 6-DOF input devices. This driver module exposes one spaceball as a 6-DOF input device, i.e., the conversion from translational and rotational differential readings to absolute position and orientation is performed in the driver module. It is highly recommnded to use the SpaceBallRaw driver module instead. Rest of the section contains 3D Connexion Spaceball 4000 FLX settings.
- SpaceBallRaw
- Driver for 3DConnexion SpaceBall 4000 FLX desktop relative 6-DOF input devices. This driver module exposes one spaceball as a collection of six analog axes (three translational differentials, three rotational differentials) plus twelve buttons. The conversion from translational and rotational differential readings to absolute position and orientation is performed by the Vrui run-time, which supports much more flexible uses. Rest of the section contains 3D Connexion Spaceball 4000 FLX raw settings.
- ViconTarsus
- Driver for Vicon Tarsus optical motion capture and tracking systems. This driver module only tracks rigid bodies defined using the Tarsus control software. Rest of the section contains Vicon Tarsus settings.
- ViconTarsusRaw
- Driver for Vicon Tarsus optical motion capture and tracking systems. This driver module tracks individual optical markers and exposes them as a set of indistinguishable 3-DOF (position only) input devices. Rest of the section contains Vicon Tarsus raw settings.
- VRPNClient
- Forwarding driver for VRPN device servers. Replicates tracker, button, and valuator data received from the VRPN server, to allow joining them with data received from other driver modules. Rest of the section contains VRPN client settings.
- WiimoteTracker
- Driver for Nintendo Wiimotes, either exposing button and valuators only, or providing a full 6-DOF tracking solution using a custom-made infrared tracking beacon (see Wiimote Hacking). Rest of the section contains Wiimote settings.
- DummyDevice
- Driver for "dummy" devices reporting constant tracker, button, and valuator states for debugging or testing purposes. Rest of the section contains dummy device settings.
- RemoteDevice
- Forwarding driver for remote VR device daemons. Replicates tracker, button, and valuator data received from the VR device daemon, to allow joining them with data received from other driver modules. Rest of the section contains remote device settings.
|
calibratorName | string |
Name of the optional calibrator section containing settings for the calibrator type selected by the calibratorType setting. |
Setting Tag | Setting Value Type | Setting Description |
useRemoteControl | boolean |
Flag whether the A.R.T. DTrack software can be remotely controlled by sending messages to its control UDP port. If set to true (the default), the driver module will send a start tracking command when the first client connects, and send a stop tracking command when the last client disconnects. |
serverName | string |
Internet host name or dotted IP address of computer on which the A.R.T. DTrack software runs. Only needed if useRemoteControl is true. |
serverControlPort | integer |
UDP port number on which the A.R.T. DTrack software received control messages. Only needed if useRemoteControl is true. |
serverDataPort | integer |
UDP port number on which the A.R.T. DTrack software sends device reports. |
dataFormat | enumerant |
Format in which device reports are sent by the A.R.T. DTrack software. Supported values:
- ASCII
- Device reports are received from the A.R.T DTrack software in ASCII text format.
- Binary
- Device reports are received from the A.R.T DTrack software in binary format.
The default format is ASCII. |
deviceNames | list of strings |
List of names of A.R.T. DTrack device sections, each one defining a single 6-DOF tracked device with optional buttons and/or valuators. |
Setting Tag | Setting Value Type | Setting Description |
reportFormat | enumerant |
Format in which reports for this device are sent. Supported values:
- 6d
- 6-DOF position and orientation only.
- 6df
- 6-DOF position and orientation and button/valuator data for flystick version 1.
- 6df2
- 6-DOF position and orientation and button/valuator data for flystick version 2.
- 6dmt
- 6-DOF position and orientation and button data.
- gl
- 6-DOF position and orientation and finger position and orientations and finger bending angles (finger data currently ignored).
- 3d
- 3-DOF position only.
The default report format is 6d. |
id | integer |
Identification number of the device as configured in the A.R.T. DTrack software. Device IDs are only unique inside the same report format. Default IDs are assigned in increasing order per report format, starting from 1. |
numButtons | integer |
Number of buttons included in the device's reports. Defaults to 0. Ignored for report formats 6d, gl, and 3d. |
numValuators | integer |
Number of valuators included in the device's reports. Defaults to 0. Ignored for report formats 6d, 6dmt, gl, and 3d. |
Setting Tag | Setting Value Type | Setting Description |
devicePort | string |
Name of serial port device to which the Flock of Birds is connected, such as /dev/ttyS0. |
deviceBaudRate | integer |
Serial port speed of the Flock of Birds, in bits per second. |
masterId | integer |
ID of the master bird, i.e., the bird directly connected to the host computer via serial cable. |
firstBirdId | integer |
ID of the first bird in the flock. |
numBirds | integer |
Number of birds in the flock, including an extended range controller if one is present and configured via the ercId setting. |
ercId | integer |
ID of an optional extended range controller (long-range antenna). |
ercTransmitterIndex | integer |
Index of the extended range transmitter to use on an optional extended range controller. |
trackerRange | number |
Tracker range of the Flock of Birds in inches. If no extended range controller is present and configured, can be set to either 36.0 (the default) or 72.0. If an extended range controller is present and configured, the tracker range is always 144.0 inches, and this setting is ignored. |
trackerHemisphere | enumerant |
Defines the operational hemisphere of the Flock of Birds, relative to the tracking antenna. Supported values:
- Forward or +X
- Selects hemisphere of positive X coordinates.
- Aft or Rear or -X
- Selects hemisphere of negative X coordinates.
- Right or +Y
- Selects hemisphere of positive Y coordinates.
- Left or -Y
- Selects hemisphere of negative Y coordinates.
- Lower or +Z
- Selects hemisphere of positive Z coordinates.
- Upper or -Z
- Selects hemisphere of negative Z coordinates.
The default tracker hemisphere is positive X coordinates. |
Setting Tag | Setting Value Type | Setting Description |
devicePort | string |
Name of serial port device to which the serial mouse is connected, such as /dev/ttyS0. |
deviceBaudRate | integer |
Serial port speed of the serial mouse, in bits per second. Defaults to 1200 bps, which is the speed used by all serial mice. |
mouseProtocol | enumerant |
Serial port protocol used by the serial mouse. Supported values:
- Microsoft
- Microsoft 2-button protocol.
- Microsoft3
- Microsoft 3-button protocol.
- Logitech
- Logitech 3-button protocol.
- MouseSystems
- MouseSystems 3-button protocol.
- Sun
- Sun Microsystems 3-button protocol.
- MM
- MM 3-button protocol.
The default protocol is Logitech, the protocol used by the Ascension Wanda. |
axisConverter | axis value mapper |
Axis value mapper to convert from raw mouse positional deltas reported by the serial protocol to valuator values in the range [-1, 1]. This setting applies to both axes. Default value is (-34.0, 0.0, 0.0, 34.0). |
axisConverter0, axisConverter1 | axis value mapper |
Separate axis value mappers for both axes. Default values for both is the mapping defined by the axisConverter setting. |
Setting Tag | Setting Value Type | Setting Description |
devicePort | string |
Name of serial port device to which the data glove controller is connected, such as /dev/ttyS0. |
deviceBaudRate | integer |
Serial port speed of the data glove controller, in bits per second. Defaults to 9600 bps for wireless glove models and 19200 bps for wired glove models. |
model | integer |
Data glove's model number, either 5 or 16. |
wireless | boolean |
Selects the glove's wireless (-W) or wired submodel. |
left | boolean |
Overrides the handedness of the glove. Default is the handedness reported by the glove during initialization. |
reportRawValues | boolean |
Requests reporting raw finger bend values as valuators, normalized to the [-1, 1] range using each joint sensor's bend calibrator as defined in the bendCalibration<sensor index> setting. |
reportPitchRoll | boolean |
Requests reporting pitch and roll angles as valuators, normalized to the [-1, 1] range. Is ignored if the configured glove model does not have pitch/roll sensors. |
bendCalibration0, ..., bendCalibration<numSensors-1> | bend calibrator |
Converters from raw joint sensor values to ternary sensor states (straight, relaxed, bent) using a broken line model for each sensor (number of sensors depends on glove model). Default to (0, 64, 191, 255) for model 5 gloves, and (0, 1024, 3071, 4095) for model 16 gloves. |
gestures | list of gestures |
Defines a set of gestures represented as binary buttons. The state of the button corresponding to a gesture is set to true if all joint sensors defining a gesture are in the required state. |
Setting Tag | Setting Value Type | Setting Description |
deviceIndex | integer |
Index of Oculus Rift device to which to connect, where 0 is the first device connected to the computer. Defaults to 0 to connect to the first Oculus Rift device. |
accelCorrection | affine transformation |
Correction transformation for the Oculus Rift's three-axis linear accelerometer. |
magCorrection | affine transformation |
Correction transformation for the Oculus Rift's three-axis magnetometer. Contains what is elsewhere known as "hard iron" and "soft iron" correction. |
neckPivot | point |
Position of the neck pivot joint in HMD-relative coordinates. |
driftCorrectionWeight | number |
Weight of orientation drift correction. Larger values correct drift faster, but lead to more jitter and vertical axis tilt during head motions. The default value is 0.0001. |
useMagnetometer | boolean |
Flag to enable the use of the Oculus Rift's built-in three-axis magnetometer for yaw drift correction. Requires a magnetometer correction matrix. If enabled, the X axis of the HMD-relative coordinate system will be locked to magnetic north. |
motionPredictionDelta | number |
Amount of angular motion prediction in seconds, to account for inherent lag in the display system. |
updateRate | integer |
Rate at which tracker updates are sent to the device manager, and to connected clients. Resulting rate in Hz is 1000/updateRate. |
deviceName | string |
Name to use for the virtual input device representing the Oculus Rift's head tracker. Defaults to "OculusRift." |
Setting Tag | Setting Value Type | Setting Description |
deviceIndex | integer |
Index of Razer Hydra device to which to connect, where 0 selects the first device. Defaults to 0. |
unitInches | boolean |
If set to true, selects inches (25.4mm) as positional measurement unit. Defaults to false. |
unitMMs | boolean |
If set to true, selects millimeters as positional measurement unit. Defaults to false. |
unitFactor | number |
Defines an arbitrary conversion factor from native Razer Hydra measurement units (millimeters) to physical coordinate units. For example, a value of 1.0 would select millimeters as unit, a value of 1.0/25.4=0.03937008 would select inches. Defaults to 1.0. |
applyInterleaveFilter | boolean |
Applies a first-stage interleave filter to merge the time-multiplexed partial tracking streams of the two tracked handles. Defaults to true. |
applyLowpassFilter | boolean |
Applies a second-stage low-pass filter to tracking streams of the two tracked handles. Defaults to true. |
lowpassFilterStrength | number |
Sets the strength of the second-stage low-pass filter. Higher values remove more jitter, but lead to higher tracking latency. Defaults to 24.0. |
deviceNames | list of exactly two strings |
Defines the name of the two virtual input devices describing the Razer Hydra's left and right handle, respectively. Defaults to (RazerHydraLeft, RazerHydraRight). |
Setting Tag | Setting Value Type | Setting Description |
numTrackers | integer |
Number of dummy trackers. |
trackerState<index> | tracker state |
Position and orientation of the <index>-th dummy tracker, where <index> is between 0 and numTrackers-1. |
numButtons | integer |
Number of dummy buttons. |
buttonState<index> | boolean |
State of the <index>-th dummy button, where <index> is between 0 and numButtons-1. |
numValuators | integer |
Number of dummy valuators. |
valuatorState<index> | number |
State of the <index>-th dummy valuator, where <index> is between 0 and numValuators-1. Valuator values must be between -1 and +1, where 0 is considered the "rest value." |
sleepTime | integer |
Time between (redundant) state updates of all trackers, buttons, and valuators managed by the driver module in microseconds. |
Setting Tag | Setting Value Type | Setting Description |
name | string |
Name for the virtual input device. Must be unique in device manager's namespace. |
trackType | enumerant |
Type of tracking data collected for the device. The following tracking types are supported:
- None
- Device has no tracking data.
- 3D
- Device has only positional tracking data.
- Ray
- Device has positional tracking data plus a pointing direction.
- 6D
- Device has positional and orientational tracking data.
The default value is "None." |
rayDirection | vector |
Direction vector of the device's pointing ray in device-local coordinates. Defaults to (0.0, 1.0, 0.0). |
rayStart | number |
Position along the device's pointing ray in physical coordinate units from which the ray is considered valid. A value of 0.0 starts the ray at the device's position; positive values move the ray start forward, negative values move it backwards. Defaults to 0.0. |
trackerIndex | integer |
For devices with trackType other than "None," index of the device's tracker in the device manager's global tracker list. |
numButtons | integer |
Number of buttons on the device. Defaults to 0. |
buttonNames | list of strings |
List of descriptive names for the device's buttons. If the list contains less than numButtons names, the rest of the names are of the form Button<index>, where <index> starts at 0 for the first button. Extra names in the list are silently ignored. Defaults to the empty list, i.e., all buttons have default Button<index> names. |
buttonIndexBase | integer |
Index of the device's first button in the device manager's global button list. Assumes that the device's numButtons buttons are consecutively numbered. |
buttonIndices | list of exactly numButtons integers |
List of indices of the device's buttons in the device manager's global button list. Required if the buttonIndexBase tag is not present. |
numValuators | integer |
Number of valuators on the device. Defaults to 0. |
valuatorNames | list of strings |
List of descriptive names for the device's valuators. If the list contains less than numValuators names, the rest of the names are of the form Valuator<index>, where <index> starts at 0 for the first valuator. Extra names in the list are silently ignored. Defaults to the empty list, i.e., all valuators have default Valuator<index> names. |
valuatorIndexBase | integer |
Index of the device's first valuator in the device manager's global valuator list. Assumes that the device's numValuators valuators are consecutively numbered. |
valuatorIndices | list of exactly numValuators integers |
List of indices of the device's valuators in the device manager's global valuator list. Required if the valuatorIndexBase tag is not present. |