Jump to content

[VBS & PCVR] - How to use Wrist tracker


Vivi Wu

Recommended Posts

PC VR contents could now enjoy Focus 3 Wrist tracker via VIVE Business Streaming.

Two modes of VIVE Wrist Tracker

  1. Enhancing hand tracking 
    • Wear on wrist to improve hand tracking experience.
    • The buttons on Wrist Tracker can be used to open Dashboard and application menu for better playing content with hands. 
    • SteamVR will not see VIVE Wrist Tracker devices. 
  2. As standalone tracked device 
    • SteamVR will see VIVE Wrist Tracker as tracked device. 
    • VIVE Wrist Tracker can be mounted on accessory and VBS will pass accessory input data from VIVE Wrist Tracker USB port to remote PC content

VBS options for VIVE Wrist Tracker 
Go to VBS > Settings > Preferences > Tracking

image.png.6775d442510deaee82b27253abaf5b4d.png

  • ☑️ Use VIVE Wrist Tracker for hand tracking
    VIVE Wrist Tracker will be not be a tracked device to SteamVR, instead it will be used for enhanced hand tracking. Therefore, you won’t see VIVE Wrist Tracker device in SteamVR.

     
  • 🟦(Uncheck) Use VIVE Wrist Tracker for hand tracking
    VIVE Wrist Tracker is used as a tracked device, and VBS will emulate as VIVE Tracker to SteamVR. You will see device icon on SteamVR monitor.
     
  • ☑️ Emulate VIVE Wrist Tracker as VIVE Tracker
    VBS will fully emulate VIVE Wrist Tracker as VIVE Tracker to PC VR contents. Existed PC VR Contents which support VIVE Tracker should be able to run seamlessly with VIVE Wrist Tracker over VBS.

    NOTICE: the mounting will need to change due to the mounting of VIVE Wrist Tracker are physically different to VIVE Tracker and will cause poses difference.
     
  • 🟦(Uncheck) Emulate VIVE Wrist Tracker as VIVE Tracker
    VBS reports VIVE Wrist Tracker as standalone tracked device to SteamVR. Most contents supports VIVE Tracker could still work.

Use VIVE Wrist Tracker for hand tracking:
Please visit here 

Use VIVE Wrist Tracker as VIVE Tracker:

VIVE Wrist Tracker button events & USB data

  • Checked “Emulate VIVE Wrist Tracker as VIVE Tracker”
    • Input binding file same as for VIVE Tracker.
    • Contents cannot receive USB data in raw format, but VBS will translate to input events and sent as “tracker device” to contents.
  • Unchecked “Emulate VIVE Wrist Tracker as VIVE Tracker”
    • Input binding file is different to VIVE Tracker.
    • Contents can receive USB data in raw format via OpenVR IVRIOBuffer interface. VBS will do no change to the data.
    • Left tracker device name: "vive/trkerex/left”
    • Right tracker device name: "vive/trkerex/right"

OpenXR developers

  • Support XR_HTCX_vive_tracker_interaction extension 
    • Must uncheck “Use VIVE Wrist Tracker for hand tracking” and check “Emulate VIVE Wrist Tracker as VIVE Tracker” options in VBS
  • Support XR_HTC_vive_wrist_tracker_interaction extension (Currently support Unreal Engine only)
    • VBS 1.12.5 (or newer) and SteamVR 1.26 (or newer) are required
    • Must uncheck “Use VIVE Wrist Tracker for hand tracking” and uncheck “Emulate VIVE Wrist Tracker as VIVE Tracker” options in VBS
  • Must check “Emulate VIVE Wrist Tracker as VIVE Tracker” option

Button input binding with Unreal Engine

For wrist tracker button input binding, both Unreal Engine and SteamVR needs to be well config. Below are the steps to setup Wrist Tracker button.

  • Use VIVE Wrist Tracker for hand tracking
    • In VBS Console (* VBS 1.08 is required)
      • Enable “Hand tracking”
      • Enable “Use VIVE Wrist Tracker for hand tracking”
    • Connect VBS with Wrist Tracker paired, Wrist Trackers will be hidden to SteamVR due to used for hand tracking. Wrist Tracker buttons will be interpreted as controller buttons “Y” and “B” to SteamVR. You will need to bind your actions to “vive_cosmos_controller”’s “Y” and “B” buttons in SteamVR input binding interface.
    • Left System button is used to trigger SteamVR dashboard, right Menu button is for quick menu, content won’t receive these two button events.
       
  • Use VIVE Wrist Tracker as VIVE Tracker
    • In VBS Console (* VBS 1.08 is required)
      • Disable “Hand tracking” if you want to set tracker role to Held In Hand.
      • Disable “Use VIVE Wrist Tracker for hand tracking”
      • Enable “Emulate VIVE Wrist Tracker as VIVE Tracker” (This option is in VBS 1.08)
    • Connect VBS with Wrist Tracker paired
    • In SteamVR Settings
      • Controllers -> 
        • Manage Trackers -> Choose tracker role which in pair, like “Left foot”, “Right foot”.
          • At this step, action pose is automatically bound.
        • Show Old Binding UI -> Choose your application -> Create a new custom binding file for each tracker role assigned, like “vive_ tracker_left_foot” or “vive_tracker_right_foot”
          • “System button” on Wrist Tracker is defined as “/input/power”
          • “Menu/Y button” on Wrist Tracker is defined as “/input/menu”
    • In Unreal Engine
      • Project Settings -> Input -> Action Mapping -> Click “+” to add an Action (for example it’s “TrackerButton1” and “TrackerButton2”
      • In your MotionController component for tracker, choose the Motion Source that you previously assigned to tracker 
        • Tracker_Foot_Left, Tracker_Foot_Right
      • In SteamVR Settings
        • Controllers -> Show Old Binding UI
          • Bind the action “TrackerButton1” to “/input/power”
          • Bind the action “TrackerButton2” to “/input/menu”
        • Now the tracker poses are reported to SteamVR as “vive_ tracker_left_foot”, “vive_ tracker_right_foot”, and button events are recognized by SteamVR as  “/input/power”, “/input/menu” and then mapped to Unreal Engine as actions “TrackerSystemBtn”, “TrackerMenuBtn”.

 

More detail:

VBS for Developers - VIVE Wrist Tracker_V2.pdf

VBS for Developers - hand tracking.pdf

Link to comment
Share on other sites

  • 11 months later...

Hi, I wanted to ping in on this as well.

Seeing as how SteamVR will be phased out in the coming months for OpenXR in Unreal Engine, this method has a possibility of becoming invalid.  So I was wondering if there are any updates for the wrist tracker profile.  I may submit an official forum post on this too, but would like to message directly first.

Thanks in advance!

 

Edited by VincentCXR
Small notification for a forum post
Link to comment
Share on other sites

  • 3 months later...

Hi,

I'm trying to use the VIVE Wrist Tracker to track objects in PC VR (not for hand tracking). But I have trouble to make it work. Is there someone who could help me?

I'm using :
SteamVR 2.1.4
Vive Buisiness Streaming 1.12.8
Unity 2022.3.11

Package :
VIVE OpenXR Plugin 2.0.0
OpenXR Plugin 1.8.2

image.thumb.png.f057137348abe2d4df06a907a6d3a869.png

I date XR Wrist Tracker Profile then I created an Input Action Asset with one map for the left tracker and one for the right tracker.  I defined all the actions to retrieve tracker data based on https://developer.vive.com/resources/openxr/unity/tutorials/wrist-tracker/
image.thumb.png.817bfcb77b720fc3f18f4436fee5ae0f.png

Then in my scene I add a InputActionManager with my InputActionAsset and I created and add a simple script to move a objet with the position of the tracker :
 

using UnityEngine.InputSystem;

public class ChangePosition : MonoBehaviour
{
    [SerializeField] private InputActionReference RightControllerPosition;

    void Update()
    {
       
        Vector3 controllerPosition = RightControllerPosition.action.ReadValue<Vector3>();
        transform.position = controllerPosition;
    }
}

image.thumb.png.b1ca4235c00955aee5599d1e8e383574.png

In CBS settings I try both checking/unchecking "Emulate VIVE Wrist Tracker as VIVE Tracker" with no more result even if  steamVR show the tracker.

image.thumb.png.76d4c8618c170b825e427d7037b9ec1c.png

I try to see in the Analysis/Input Debbuger, but the trackers are not visible. 

Did I forget something? Is anyone having an idea show to proceed?

 

 

 

Link to comment
Share on other sites

@VIVE_chengnayseeing same issue on my end. Using the Vive XR Wrist Tracker Profile. When  using OpenXR in XR Plugin Management, no devices populate the Input Debugger Representing the Wrist tracker. BUT, when using the OpenVR Loader option in XR Management, the wrist tracker does show up. This of course is the soon to be deprecated approach. 

 

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...