Jump to content

Vive Tracker muddle up with controller


photo

Recommended Posts

Posted

Hello

All works fine with Vive HMD+2Base+2Controllers, but after adding Vive Tracker in Vive device update it recognized as controller (and controller stops tracking)

at start

VIVE HMD:0
VIVE TRACKING:1
VIVE TRACKING:2
VIVE TRACKER:3 <---- ok
VIVE CONTROLLER:4
VIVE CONTROLLER:5
VIVE TRACKER:6

at runtime update

VIVE HMD:0
VIVE TRACKING:1
VIVE TRACKING:2
VIVE CONTROLLER:3 <---- here
VIVE CONTROLLER:4
VIVE CONTROLLER:5
VIVE TRACKER:6
        public static void UpdateDevicesId()
        {
            int curTracking = 0, curController = 0, trackers = 0;
            for (int i = 0; i < MAX_TRACKED_DEVICE_COUNT; i++)
            {
                TRACKERS[i] = -1;
                switch (GetDeviceType(i))
                {
                    case TRACKED_DEVICE_INVALID://0
                        //System.Console.WriteLine($"VIVE INVALID:{i}"); any other empty slot
                        break;
                    case TRACKED_DEVICE_TRACKING://4
                        System.Console.WriteLine($"VIVE TRACKING:{i}");
                        if (curTracking == 0) BASE_1 = i; else BASE_2 = i;
                        curTracking++;
                        break;
                    case TRACKED_DEVICE_CONTROLLER://2
                        System.Console.WriteLine($"VIVE CONTROLLER:{i}");
                        if (curController == 0) CONTROLLER_1 = i; else CONTROLLER_2 = i;
                        curController++;
                        break;
                    case TRACKED_DEVICE_HMD://1
                        System.Console.WriteLine($"VIVE HMD:{i}");
                        HMD = i;
                        break;
                    case TRACKED_DEVICE_OTHER://1000
                        System.Console.WriteLine($"VIVE OTHER:{i}");
                        break;
                    case TRACKED_DEVICE_TRACKER://3
                        System.Console.WriteLine($"VIVE TRACKER:{i}");
                        TRACKERS[trackers++] = i;
                        break;
                    default:
                        System.Console.WriteLine($"VIVE UNKNOWN:{i} type={GetDeviceType(i)}");
                        break;
                }
            }
        }

is there any way to fix that, or work around?

Posted (edited)

once after system reboot it seems correct,

but after some time it start to redetect tracker as 3th controller

and real controller buttons stops working

without trackers all working good

Edited by lightmap
Posted

That's would be tough to reproduce sine we don't have a vive tracker currently in-house. 

Could you please give us some additianal information like:

  1. SDK Version
  2. HTC Vive tracker version (1.0 / 2.0)
  3. Have you tried to recompile existing plugin with the latest OpenVR manually?

Thanks!

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Posted

Hello

Unigine 2.6.1

ViveTracker2.0

downloaded openvr-1.0.17.zip, recompiled AppVive plugin, replaced dll's for project, updated firmware for trackers

at start

VIVE HMD:0
VIVE TRACKING:1
VIVE CONTROLLER:2
VIVE TRACKING:3
VIVE CONTROLLER:4
VIVE TRACKER:5
VIVE TRACKER:6 <----- ok

at runtime

VIVE HMD:0
VIVE TRACKING:1
VIVE CONTROLLER:2
VIVE TRACKING:3
VIVE CONTROLLER:4
VIVE TRACKER:5
VIVE CONTROLLER:6 <--- not ok - 3th controller ?

all bad, help

Posted

If you have an access to the Unigine 2.7.2.1 could you please try to copy AppVive sources from here and do a plugin rebuild one more time (to link against your 2.6.x SDK)? If that doesn't help we will think what else we can do with that.

Thanks!

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Posted

EnginePlugins::addPlugin(): can't load "AppVive_x64d.dll" library 127

Posted

127 error is basically general windows error while loading any library (some dependencies are missing or has the wrong version [x86/64 conflicts as well]).

You can use Dependencies software (https://github.com/lucasg/Dependencies/releases) to find out which library is missing. More likely it has some connection with openvr_api.dll.

Thanks!

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Posted

---- Engine ----

UNIGINE Engine

Version: 2.6.1 ver-2.6-cef3c5e Dec 21 2017

Posted

Yep, I can see that you are launching the engine with correct version, however, during the AppVive building process you need to link it with a correct engine version and specify correct include path from 2.6.1 SDK.

But, let's forget about this for a moment, since I've also found that some of the OpenVR users are experiencing almost the same issue that you have after recent SteamVR updates:

So the solution can be actually to change the trackers settings inside SteamVR app as described in release notes.

Please, let us know if these somehow helps.

Thanks!

  • Like 1

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Posted

Thank you, I'll try to use serial, or rollback steam

×
×
  • Create New...