Skip to content

Vizconnect Hardware Configuration

Vizconnect

Vizconnect is Vizard's tool for connecting displays, trackers, and much more without programming. The visual interface lets you connect devices on-the-fly, see the results immediately in your Vizard render window, and use the visual interface to troubleshoot thorny hardware issues.

For more information on Vizconnect, see the Vizard Documentation here. Below you can find relevant vizconnect information related to SightLab and the built in hardware button events. For supported hardware see this page

There are built-in Events that can be called and used with SightLab. Some of these are necessary for some default features (such as the Arc Teleport and Instructions), others are just mapped to specific buttons on a controller and used for certain examples and some custom features. To modify the mappings or any vizconnect features (including adding new controllers, inputs, displays or trackers, see the vizconnect page on how to do that). Find the vizconnect_configs folder by going to  C:\Program Files\WorldViz\Vizard\<version>\bin\lib\site-packages\sightlab_utils\vizconnect_configs. You can find a shortcut to this also in the "Util_Files" in your main SightLab documents folder. 

To change the list of hardware from the dropdown use this code (making sure that the names are correct from the settings list). When calling SightLab

sightlab = sl.SightLabClient(vizconnectconfiglist=["Desktop", "Meta Quest Pro"])

To bypass the dropdown altogether and use a specific vizconnect:

sightlab = sl.SightLabClient(hardwareconfig="Meta Quest Pro")

To use a custom vizconnect that's not included in SightLab, use this code:

sightlab = sl.SightLabClient(vizconnectconfig = {'Desktop': 'vizconnect_config_desktopy.py'}

List of custom events. Access the vizconnect file and go to the Advanced- Events tab and click "Mappings" to change the mappings used. To use one of these callbacks in your script use this code (where "triggerPress" is the name of the event being used here). This will call the function using the RH trigger on a VR controller or left mouse button with a desktop configuration. 

def yourFunction():
    print("do something")


viz.callback(viz.getEventID("triggerPress"), yourFunction)

screenshot of some of the events, full list below


HMD Mappings for Events

SNAP_LEFT (used for rotating left with the arc teleport transport)

  • Button: Thumbstick Left

SNAP_RIGHT (used for rotating right with the arc teleport transport)

  • Button: Thumbstick Right

triggerPress (used for any callback you want to use with the RH trigger button or left mouse button). Used as the default for clicking past instructions, confirming a rating scale, confirming a selection with the built-in selector tool, interacting with the VR Menu and  virtual screen as well as some other various examples). 

  • Button: Button Trigger (right hand)

triggerPress2

  • Button: Button Trigger (right hand)

triggerPress3

  • Button: Button Trigger (left hand)

pressLeft (used for selecting left on the rating scale)

  • Button: Thumbstick Left (right hand)

pressRight (used for selecting right on the rating scale)

  • Button: Thumbstick Right (right hand)

ResetPosition

  • Button: Key R (keyboard)

ResetPositionHMD

  • Button: Button Squeeze + Button X/A (right hand)

secondTrigger (used as the default to bring up the highlighter, when a highlighter tool is added to your project)

  • Button: Button Squeeze (right hand)

secondTriggerLeft (used as the default to bring up the highlighter with the left hand, when a highlighter tool is added to your project)

  • Button: Button Squeeze (left hand)

triggerPressLeft

  • Button: Button Trigger (left hand)

toggleMenu (used with repositiong the tablet from the tablet_manager module, which is used for the "VR Menu", "Jump To Navigation" menu, "Flashlight", "Image Instructions" and others)

  • Button: Button Thumbstick (right hand)

setOpenXRHead (used to move the head height when using an OpenXR headset)

  • Button: Button Squeeze (left hand) + Button Y/B (right hand)

triggerDown (used for querying the AI agent with a question, hold down while speaking)

  • Button: Button Squeeze (right hand)

triggerUp (used for querying the AI agent with a question, let go when finished speaking)

  • Button: Button Squeeze (right hand, not pressed)

toggleMedia (used for toggling playback of media on certain examples, but can also be used for any callback you may want to call with the LH thumbstick)

  • Button: Button Thumbstick (left hand)

nextModel (used to select the next model or slide with the model viewer or the E-Learning Lab)

  • Button: Button Y/B (left hand)

prevModel (used to select the previous model or slide with the model viewer or the E-Learning Lab)

  • Button: Button X/A (left hand)

triggerDown2

  • Button: Button Y/B (right hand)

triggerUp2

  • Button: Button Y/B (right hand, not pressed)

showControls

  • Button: Button Thumbstick (right hand)

actionButton2

  • Button: Button X/A (right hand)

Desktop Mappings for Events

  • TtriggerPress
  • Keyboard Command: Left Mouse Button

pressLeft

  • Keyboard Command: Left Arrow Key

pressRight

  • Keyboard Command: Right Arrow Key

triggerPress2

  • Keyboard Command: Left Mouse Button

triggerPress3

  • Keyboard Command: Left Mouse Button

ResetPosition

  • Keyboard Command: Key R

confirmHighlight

  • Keyboard Command: Key T

secondTrigger

  • Keyboard Command: Right Mouse Button

toggleMenu

  • Keyboard Command: Key M

measuringToolStart

  • Keyboard Command: Key C

measuringToolEnd

  • Keyboard Command: Key G

triggerDown

  • Keyboard Command: Key C

triggerUp

  • Keyboard Command: Key C (not pressed)

triggerDown2

  • Keyboard Command: Key 2

triggerUp2

  • Keyboard Command: Key 2 (not pressed)

actionButton2

  • Keyboard Command: Enter/Return Key