AndreGilerson / rviz_vive_plugin

RVIZ Plugin for the HTC Vive
13 stars 7 forks source link

Adding plugin crashes with "Unable to retrieve vrTrackedDeviceProvider: 105" #2

Closed skohlbr closed 6 years ago

skohlbr commented 6 years ago

We tried installing the plugin on two different machines, following the install instructions closely. When trying to add the display, rviz crashes with a segfault after displaying the following in the terminal:

"Unable to retrieve vrTrackedDeviceProvider: 105"

Any hints on why this error might pop up (and how to avoid it) are appreciated.

YueErro commented 6 years ago

I have the same issue. How can i solve it?

[ INFO] [1517581171.646158316]: rviz version 1.12.15 [ INFO] [1517581171.646195797]: compiled against Qt version 5.5.1 [ INFO] [1517581171.646203477]: compiled against OGRE version 1.9.0 (Ghadamon) [ INFO] [1517581172.373329168]: Stereo is NOT SUPPORTED [ INFO] [1517581172.373391698]: OpenGl version: 4.5 (GLSL 4.5). Unable to retrieve vrTrackedDeviceProvider: 105

Thank you in advance.

AndreGilerson commented 6 years ago

Sorry Github did not send me an E-Mail when this issue was opened. I will look into the error this week.

Edit: Yeah Im great at forgetting things i have to do.

txlin commented 6 years ago

Has anyone found a solution? I also have the same problem.

[ INFO] [1525298127.546405832]: rviz version 1.12.15 [ INFO] [1525298127.546438299]: compiled against Qt version 5.5.1 [ INFO] [1525298127.546445754]: compiled against OGRE version 1.9.0 (Ghadamon) [ INFO] [1525298128.400084551]: Stereo is NOT SUPPORTED [ INFO] [1525298128.400152450]: OpenGl version: 4.6 (GLSL 4.6). Unable to retrieve vrTrackedDeviceProvider: 105 Segmentation fault (core dumped)

sanketrahul commented 6 years ago

Any update on this error? [ INFO] [1527051838.943390035]: rviz version 1.12.15 [ INFO] [1527051838.943460213]: compiled against Qt version 5.5.1 [ INFO] [1527051838.943480840]: compiled against OGRE version 1.9.0 (Ghadamon) [ INFO] [1527051840.801366375]: Stereo is NOT SUPPORTED [ INFO] [1527051840.801541209]: OpenGl version: 4.6 (GLSL 4.6). terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_M_construct null not valid cc: @k-okada

Edit AndreGilerson: This is unrelated, and can be solved by sourcing the runtime_setup.sh

Sanket: Thanks for the advice. The above error is solved by source runtime_setup.sh.

AndreGilerson commented 6 years ago

So this took quite a while:

The error is triggered in line 135 of vive_serverdriverhost.cpp . The reason for that is probably a mismatch in OpenVR/SteamVR versions. Can you please check that you followed the tutorial thoroughly?

If that did not help, try the following: The issue is probably located in the _vr::IServerTrackedDeviceProviderVersion constant. It is created by openvr, and therefore should have the correct value after checking out the correct version of the openvr repository. Try replacing line 135 with: _pVrTrackedDeviceProvider = reinterpret_cast<vr::IServerTrackedDeviceProvider*>(HmdDriverFactory("IServerTrackedDeviceProvider_003",&error)); Here the expected value is hardcoded.

sanketrahul commented 6 years ago

@AndreGilerson I changed the line 135 of vive_serverdriverhost.cpp suggested by you. But I am still getting this error.

[ INFO] [1527121409.160172925]: rviz version 1.12.15 [ INFO] [1527121409.160245553]: compiled against Qt version 5.5.1 [ INFO] [1527121409.160267333]: compiled against OGRE version 1.9.0 (Ghadamon) [ INFO] [1527121410.728358930]: Stereo is NOT SUPPORTED [ INFO] [1527121410.728543029]: OpenGl version: 4.6 (GLSL 4.6). Unable to retrieve vrTrackedDeviceProvider: 105 Segmentation fault (core dumped)

AndreGilerson commented 6 years ago

Can you please verify your SteamVR Version? My STEAMVRPATH/bin/Version.txt contains 1485391631

sanketrahul commented 6 years ago

@AndreGilerson That issue is resolved by hard coding "IServerTrackedDeviceProvider_004" instead of 003 in your case. I found this number in one of the steamVR files. Now I am getting this error: [ INFO] [1527121409.160172925]: rviz version 1.12.15 [ INFO] [1527121409.160245553]: compiled against Qt version 5.5.1 [ INFO] [1527121409.160267333]: compiled against OGRE version 1.9.0 (Ghadamon) [ INFO] [1527121410.728358930]: Stereo is NOT SUPPORTED [ INFO] [1527121410.728543029]: OpenGl version: 4.6 (GLSL 4.6). Segmentation fault (core dumped)

I tried to debug the code and found the code is crashing at line #144 of vive_serverdriverhost.cpp : vr::EVRInitError initError=_pVrTrackedDeviceProvider->Init(_pDriverLog,this, "/home", driverProviderPath.c_str()); Any insights with this will be appreciated. By the way my SteamVR version is 1527117754.

k-okada commented 6 years ago

hi, we haven't succeeded yet for other reasons, but I have noticed that https://github.com/AndreGilerson/rviz_vive_plugin/blame/feature/without_steamvr_rendering/README.md#L31 requres 1.0.5 of openvr and that should have version "003", not "004". (https://github.com/ValveSoftware/openvr/blob/v1.0.5/headers/openvr_driver.h#L1868).

I could net compile rviz_vive_plugin with latest version of openvr, so I'm curious how you find "004" version.

AndreGilerson commented 6 years ago

This is definitely a mismatch of the SteamVR version. The version.txt actually does not matter, since it is for some reason not downloaded by steamcmd and therefore does not contain the actual version number were using. However "003" should definitely be the correct variant meaning that you have a wrong version of SteamVR installed. This plugin was created when the OpenVR/SteamVR API was very volatile, so it wont probably work with any other version of OpenVR/SteamVR.

sanketrahul commented 6 years ago

Hi, I uninstalled steamvr and openvr. I re-installed both again as per the version mentioned on this git account. But I am still getting same error. For me, 003 doesn't work rather only 004 works. Interesting thing to note is that when I printed vr::IServerTrackedDeviceProvider_Version I got IServerTrackedDeviceProvider_003. I installed openvr 1.0.5 version only. And my version.txt = 1527117754

k-okada commented 6 years ago

@sanketrahul I can run this rviz plugin, so you have something wrong.

  1. did you run download_depot 250820 250823 1008772584334738762 described in 2.4 Getting SteamVR section of https://github.com/AndreGilerson/rviz_vive_plugin? I haven't tested on latest steamVR, but at least "SteamVR build from January 3rd, 2017" is working.
  2. also did you confirm if you actually Copy the files into the SteamVR directory you noted earlier, the instruction says cp -r /home/username/.steam/steamcmd/linux32/steamapps/content/app_250820/depot_250823/ home/username/.steam/steam/steamapps/common/SteamVR/*. but I ran cp -r steamcmd/linux32/steamapps/content/app_250820/depot_250823/* steam/steamapps/common/SteamVR/ to Merge and replace existing files.. I do not know if the original instruction is correct or not, but we need to be very careful on this section.
  3. did you Create a new folder somewhere, note the path, and copy following files from the Steam runtime folder into the folder you just created: described in 4.0 Running the Plugin ? At beginning, I just copied all libraries in app_250820\depot_250823 but if crashes rviz, so we need manually copy these files, may be cp -P helps.
    k-okada@p51s:~/catkin_ws/ws_vive$ rviz
    [ INFO] [1527666665.538976791]: rviz version 1.12.16
    [ INFO] [1527666665.539034142]: compiled against Qt version 5.5.1
    [ INFO] [1527666665.539050716]: compiled against OGRE version 1.9.0 (Ghadamon)
    [ INFO] [1527666666.355171535]: Stereo is NOT SUPPORTED
    [ INFO] [1527666666.355282716]: OpenGl version: 4.5 (GLSL 4.5).
    DriverLog:Attached HID Devices:
    DriverLog:    28DE, 2000: s/n LHR-C4CE9212: Lighthouse FPGA RX (max-input-report 0)
    DriverLog:    28DE, 2000: s/n LHR-C4CE9212: Lighthouse FPGA RX (max-input-report 1)
    DriverLog:    28DE, 2101: s/n F4DB0E3B66: Watchman Dongle (max-input-report 0)
    DriverLog:    28DE, 2101: s/n 6E188A11ED: Watchman Dongle (max-input-report 0)
    DriverLog:    BB4, 2C87: s/n 205131635848: HTC Vive (max-input-report 0)
    DriverLog:    D8C, 12: s/n /dev/hidraw1: USB Audio Device (max-input-report 3)
    DriverLog:HID opened: VID 28de PID 2000 serial LHR-C4CE9212 seq 0 | if 0
    DriverLog:LHR-C4CE9212: Read config of 3481 bytes from [vid:28de, pid:2000] (LHR-C4CE9212) and inflated to 16606 bytes
    DriverLog:HID opened: VID 28de PID 2000 serial LHR-C4CE9212 seq 0 | if 0
    DriverLog:HMD Model: HTC Vive
    DriverLog:Unable to read Lighthouse DB from file /home/lighthousedb.json
    DriverLog:LHR-C4CE9212 H: Source: tdm disambiguator -- Preferred basestation 00000000
    DriverLog:Enumerating displays...
    DriverLog:SDL says there are 1 video displays
    DriverLog:HTC Vive": 0, 0, 2160, 1200
    DriverLog:Warning:  HMD Display  is Primary display
    Use Screen Resolution control panel to fix
    DriverLog:Loaded Chromatic Correction Factors RED (-0.024, 0.050, -0.028, -0.006) BLUE (0.025, -0.058, 0.037, 0.008) x 0.750
    DriverLog:LHR-C4CE9212: Attached device ID not set.  No controller input available.
    DriverLog:InitTrackedCamera(): Rejecting camera on (LHR-C4CE9212) due to vr settings. Camera services not available.
    DriverLog:Attempting HID Open IMU: LHR-C4CE9212
    2
    Width:1920
    Width:2160
    DriverLog:HID opened: VID 28de PID 2000 serial LHR-C4CE9212 seq 0 | if 0
    DriverLog:HID opened: VID 28de PID 2000 serial LHR-C4CE9212 seq 0 | if 0
    DriverLog:Lighthouse IMU HID opened
    DriverLog:LHR-C4CE9212: Firmware Version 1462663157 steamservices@firmware-win32 2016-05-08 FPGA 1.6/0/0
    DriverLog:LHR-C4CE9212: Unable to fetch gyro/accelerometer range modes from the device
    DriverLog:Attempting HID Open Optical: LHR-C4CE9212
    DriverLog:HID opened: VID 28de PID 2000 serial LHR-C4CE9212 seq 0 | if 1
    DriverLog:Lighthouse Optical HID opened
    DriverLog:Attempting HID Open IMU: F4DB0E3B66
    DriverLog:HID opened: VID 28de PID 2101 serial F4DB0E3B66 seq 0 | if 0
    DriverLog:Lighthouse IMU HID opened
    ioctl (GFEATURE): Broken pipe
    DriverLog:Reading /home/lhr-c4ce9212/userdata/Green_46GA166P003235_mura_analyzes.mc from device
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    DriverLog:Attempting HID Open IMU: 6E188A11ED
    DriverLog:HID opened: VID 28de PID 2101 serial 6E188A11ED seq 0 | if 0
    DriverLog:Lighthouse IMU HID opened
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (GFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    ioctl (SFEATURE): Broken pipe
    DriverLog:Attempting HID Open HMD: 
    DriverLog:HID opened: VID 0bb4 PID 2c87 serial 205131635848 seq 0 | if 0
    DriverLog:Lighthouse HMD HID opened
    DriverLog:HmdDeviceConnect( 53794, 43521, 3146068, 19 )
    DriverLog:LHR-C4CE9212: Successfully fetched gyro/accelerometer range modes from the device. GyroRangeMode:1 AccelRangeMode:1
    DriverLog:LHR-C4CE9212 H: No base stations seen...
    DriverLog:LHR-C4CE9212 H: No optical frames in past 5 seconds
    DriverLog:Reading /home/lhr-c4ce9212/userdata/Green_46HA1674004354_mura_analyzes.mc from device

    screenshot from 2018-05-30 16-52-20

sanketrahul commented 6 years ago

@k-okada Thanks for the comprehensive reply. I followed all the steps listed by you and it works perfectly for me.