Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix SteamVR driver bug in the new motion smoothing beta #130

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

DiThi
Copy link

@DiThi DiThi commented Oct 26, 2018

Fixes #127 .

The driver for Vive implements both IVRServerDriverHost_004 and IVRServerDriverHost_005. Since the Vive driver is always included with SteamVR, it makes no sense to have more than one interface version. The v4 sends garbage and made the driver crash, so we're just ignoring that call when we get a string with a very small pointer, or a device class that is not a small positive number.

The driver for Vive implements both IVRServerDriverHost_004 and IVRServerDriverHost_005. Since the Vive driver is always included with SteamVR, it makes no sense to have more than one interface version. The v4 sends garbage and made the driver crash, so we're just ignoring that call when we get a string with a very small pointer, or a device class that is not a small positive number.
Copy link

@ory25 ory25 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested this and it works great

@SplitPixl
Copy link

Seeing how the motion smoothing beta just got released, it would be nice to see some movement around this PR, before there is a flood of issues on how Input Emulator "mysteriously" doesn't work anymore.

@flash66
Copy link

flash66 commented Nov 28, 2018 via email

@SplitPixl
Copy link

SplitPixl commented Nov 28, 2018

For a temporary workaround until a release is made with this branch, I made a build that people can use easier without having to spend 3 hours installing Visual Studio and Boost and Qt like I did.

To install it, extract the attached folder to C:\Program Files (x86)\Steam\steamapps\common\SteamVR\drivers and move anything else in the folder called inputemulator to somewhere else.

Note: I only made a build for 64 bit windows systems, and you're probably gonna want to remove this after an official release of input emulator with this PR merged in comes out.

@ShadowtheUltimate
Copy link

I'm trying your temporary workaround but Input Emulator doesnt seem to be working. I'm trying to run PlaySpace Mover and it says it doesnt detect it.

@SplitPixl
Copy link

@ShadowtheUltimate Did you copy it in while SteamVR was running? Also, maybe try restarting your computer?

@ShadowtheUltimate
Copy link

Still nothing. I'm probably doing it wrong, then. in my \Steam\steamapps\common\SteamVR\drivers there's a folder called 00vrinputemulator. What am i doing with that in relation to your fix?

@SplitPixl
Copy link

Ah, You should move that 00vrinputemulator folder to somewhere else. I couldn't remember the actual name of the folder when writing my first comment.

@ShadowtheUltimate
Copy link

Still nothing. Am I supposed to keep your extracted folder named driver_vrinputemulator?

@SplitPixl
Copy link

SplitPixl commented Nov 28, 2018

I left it as that and haven't had any issues.

If you open the driver_vrinputemulator folder, do you see a folder inside it with the same name? If you do, you should put that inner folder in the drivers folder instead.

@ShadowtheUltimate
Copy link

Nope. There's the regular files (bin, resources, src, driver.vrdrivermanifest and driver_vrinputemulator.vcxproj) directly inside. Is there any other software I needed to have installed?

@SplitPixl
Copy link

There shouldn't be any other software you need. Can you make sure that SteamVR isn't running in safe mode?

@ShadowtheUltimate
Copy link

It's not in safe mode, no. I'm unable to actually test to see if Input Emulator is showing up in the steamvr menu (im not at home so ive been teamviewering in to apply these fixes). So I'll just wait till I can properly test and see what's up. But if it looks good then it's possible that PlaySpace Mover can't detect Input Emulator after your fix for some reason. Would you be able to test to see if it works for you?

@SplitPixl
Copy link

I was using PlaySpace Mover last night, I had a few issues where moving was a lot less smooth than it used to be, but no issues where it would outright refuse to connect. I won't be able to test this again for another few hours.

@ShadowtheUltimate
Copy link

Alright. And I just checked the Task Manager. I see that OpenVR-InputEmulatorOverlay.exe is running, so it must be working. No idea what my problem is. I applied the fix PlaySpace Mover linked to as well.

@Iovebug
Copy link

Iovebug commented Nov 29, 2018

Hi Split - I unzipped your patch to the file destination and tried to use OpenVR to no avail - just error 306, even after multiple attempts to come out of Safe Mode. Also tried an uninstall and reinstall of OpenVR which did not work.

@SplitPixl
Copy link

@Impoggers did you remove the 00vrinputemulator folder?

Also @ShadowtheUltimate, did you ever get it working on your machine?

I'm testing it on my main computer and it seems to work fine, but that's not an acceptable answer if i want to let other people use this as a temporary fix. I'm gonna see if i can get SteamVR installed on a different computer and if my patched build works there.

@ShadowtheUltimate
Copy link

@SplitPixl Sadly nothing yet. Can't think of the reason why it wont work. Do you have Advanced Settings installed as well?

@Iovebug
Copy link

Iovebug commented Nov 29, 2018

@SplitPixl I did not have that folder, as well as when I reinstalled OpenVR there was no 00inputemulator folder in drivers.

@SplitPixl
Copy link

I do have advanced settings installed, haven't had any issues with it.

Can both of you check C:\Program Files (x86)\Steam\steamapps\common\SteamVR\drivers\driver_vrinputemulator\bin\win64\driver_vrinputemulator.log, and maybe post it in a gist? This will probably be the best place to start looking for a solution.

@ShadowtheUltimate
Copy link

Here ya go. I hope you find something ><

@SplitPixl
Copy link

Doesn't seem to be anything wrong there that I can tell. Maybe we could have a look at SteamVR's logs? ( There's a bunch of different things to look at under C:\Program Files (x86)\Steam\logs)

@Iovebug
Copy link

Iovebug commented Nov 29, 2018

oops.

here ya go - https://gist.github.com/imPoggers/7ea3c08f1a6724f7c73637d41f5e7145
this is from vrclient_OpenVR-InputEmulatorOverlay.txt in Logs

@SplitPixl
Copy link

Um, @Impoggers, could you edit your post so it's a link to a gist or something? It makes it nicer when reading the comments so people don't need to scroll through a giant wall of text.

@SplitPixl
Copy link

SplitPixl commented Nov 29, 2018

I'm still digging around the logs folder because i'm not super familiar with how SteamVR works behind the scenes, but vrserver.txt seems like it might have some clues for us, as it seems to be logging information from devices and drivers. Here's mine for a reference.

Also i'm not insane and this is Playspace Mover running on the latest version of SteamVR, right?

right???

@ShadowtheUltimate
Copy link

Here ya go

@SplitPixl
Copy link

Welp, there's a problem. I wonder what file it's trying to find but can't?

@trueA1M2
Copy link

trueA1M2 commented May 23, 2019 via email

@TripRodriguez
Copy link

TripRodriguez commented May 23, 2019

This place would be alive No probs Get Outlook for Androidhttps://aka.ms/ghei36

Hooray! Thanks for the quick response. This is a huge relief given how excited I am to finally get flying (and racing) again!

@trueA1M2
Copy link

And if it doesn't everyone will be here just to help you 👍I must admit I always expect problems and run a check list friday night ready for full sim racing saturday

@TripRodriguez
Copy link

Greetings again. I have not yet had the opportunity to test myself but over on the SimTools forum we have two reports of people having problems since the SteamVR update.

I'd like to have a show of hands, how many people can confirm that it's working without any issues? I just want to confirm that these are isolated incidents and not a widespread problem.

Thank you.

@trueA1M2
Copy link

trueA1M2 commented Jun 3, 2019

Hi this place would be alive if their was a prob now put on your big boy pants and stop being such a tart BOOM 😜

@trueA1M2
Copy link

trueA1M2 commented Jun 3, 2019

I wonder how you chat so much but nevet game whats really up

@apointner
Copy link

Hi this place would be alive if their was a prob now put on your big boy pants and stop being such a tart BOOM 😜

What is wrong with you, Mr. iknoweverthing? Trip just want´s to help.

@TripRodriguez
Copy link

TripRodriguez commented Jun 3, 2019

LOL. I definitely spend more time working on the sim than riding it so far. Talking on the forums too as you so wittily pointed out @trueA1M2 .

I'm hoping that's about to change, I think I've finally solved my backlash issue (been fighting it for three years) and Dirty, HeXpod, and others are working on some smoothing filters for SimTools 2.4 that look very promising. Also Dirty is working on his own software solution.

@apointner I thank you for coming to my defense sir, but based on the "BOOM" and ";P" I think @trueA1M2 was just busting my chops. If not it still doesn't matter, such things don't bother me. I hang out to discuss things I love, try to learn, and try to help but I know there's plenty about me that's "open to criticism" to put it kindly! =) Just last night I exploded part of my motion sim electronics by making a really dumb mistake.
Thanos broken
Immediately before that I spent six hours trying to install my limit switches in a way that didn't work out. There wasn't enough space. Doing these things takes me far longer than someone who is competent and can pay attention to what they are doing. I have extremely severe ADHD-PI, and I'm H.F. Autistic so ¯_(ツ)_/¯.

The opinions of mere mortals don't bother me, this is why I can admit to these things on the internet without fear! I am very much looking forward to sharing all the work I've done on the sim this Spring, but I'm waiting until it's done to show it off. I intend to set up motion compensation and also test the Kyosho vibration gel as soon as I finish getting the limit switches installed but I've expected to have that done every night this past week and it still hasn't actually gotten done LOL.

PS- @trueA1M2 I'm pretty sure I understood the meaning of your last post, but it took some effort considering the misspellings, missing punctuation, and the fact that the first half of what you said actually makes no sense the way it was written. "How" I do a lot of chatting and "never game" isn't what you meant to ask, I think you meant to ask "Why" I chat so much and never game. If you don't know "how" to engage in one non-critical ordinary activity in lieu of another I think you have even bigger problems than I do! It's finding time to chat while complaining that I never have time to get things done that is open to criticism.
BOOM! ;P

PPS- Before you say it; yes my sentence structure is usually a mess too, but at least it usually makes sense if you can deal with all the run-on sentences, excessive use of commas and parenthesis, and the occasional misspelled word.

PPPS- There, I just spent ten minutes typing this post, then another 42 minutes editing it to add more content and make more sense. There's another bit of ridiculousness to add to my legend. See why I never have enough time to get stuff done!?

@trueA1M2
Copy link

trueA1M2 commented Jun 3, 2019

🙊🙉🙈

@TripRodriguez
Copy link

@trueA1M2 =P
for A1M2

@apointner
Copy link

:-D Oh guys you are so crazy! All of you!

@TripRodriguez
Copy link

TripRodriguez commented Jun 3, 2019

:-D Oh guys you are so crazy! All of you!
https://youtu.be/Od6hY_50Dh0

Fixed link.

@TripRodriguez
Copy link

For anyone following along I finally got my limit switches installed! It only took about a week of thinking I was going to get it done "tonight". D=

Now the only problem is I'm waiting for a replacement motion control PCB because of the mishap with mine. =( I should be testing and tuning by the weekend for sure and hopefully ready to show off the mods to the sim next week some time. =D

@trueA1M2
Copy link

trueA1M2 commented Jun 4, 2019

I am sort of getting excited for you but im having my own probs thurstmastet wheel is being very naughty since the firmware update im thinking windows/gpu mem overheat

@TripRodriguez
Copy link

TripRodriguez commented Jun 4, 2019

I am sort of getting excited for you but im having my own probs thurstmastet wheel is being very naughty since the firmware update im thinking windows/gpu mem overheat

Thanks. I am afraid I can't put together your word salad this time but I do hope you get your issues sorted. My wheel is only a G-27 (with real steering wheel adapted on) but I'm more focused on flight sims. I'm planning to build a home made hand brake and rally type sequential shifter soonish. As for flying stuff my total investment in joysticks and such is something I try not to think about. =/

Flying DCS helicopters is my favorite, and I've got a hydraulically damped microhelis cyclic base, with no springs and a home made gooseneck with Warthog stick grip, plus a real life salvaged Huey collective I wired up with a Bodnar BUO-836. It's awesome, just have to finish up some details and paint the enclosure. For the heli's I also run my MFG Crosswinds with no spring and hydraulic damper added. Also have a Warhog Hotas with a very slicked up gimbal, a very old (was gameport) Precision Flight Controls Cirrus yoke with Bodnar BUO836 running it, an older model well used GoFlight TQ-6 (which is terrible feeling for what they charge for them but I'm going to heavily mod it) and a hacked dual motor assembly MSFFB2 for WWII planes, Christen Eagle, Yak-52, etc. Also I have an old Cougar HOTAS that has been all chopped up to make a left hand "throttle-stick" for 6DOF space flight control (Elite Dangerous etc.). It's got the Cougar throttle grip (with mods underway) mounted on the Cougar stick gimbal which is has strong x/y axis separation which is good for this application (but it's a terrible gimbal for using for an actual stick).. oh that's got a BUO-836 going into it too LOL. Everything but the Warthog and the Microhelis.de gimbal I bought on ebay well used over the course of six years or so but still the total.....

And there I go 'sperging out again. How did you saying your TM wheel is misbehaving turn into me listing all my sim controllers? Oh yeah, I was jealous of your wheel and apparently felt the need to compensate for my ahem various inadequacies. =P

PS- I apologize for us (mostly me) going so far off topic peoples. I should probably contact trueA1M2 so we can just get a room. =P But then I'd be denying you all the privilege of reading our ridiculous banter! Seriously though, sorry about all the OT posts.

Back on-topic(ish), if anyone here is still having issues with vibration causing tracking errors when using motion compensation (especially happens with tactile transducers) there has been serious progress made on isolating the tracker from vibration over on the SimTools forum using Kyosho gel stuff: https://www.xsimulator.net/community/threads/vr-motion-cancellation-time-to-test.10241/page-33#post-179599

@SplitPixl
Copy link

Woah, seems like I missed a whole tangent from the original issue. It's cool to see what people are doing with vr and how it plays into their other interests.

Anyway,

Greetings again. I have not yet had the opportunity to test myself but over on the SimTools forum we have two reports of people having problems since the SteamVR update.

I'd like to have a show of hands, how many people can confirm that it's working without any issues? I just want to confirm that these are isolated incidents and not a widespread problem.

Thank you.

I haven't had any issues after installing the patched version of input emulator. I'm still using that version I compiled and put on that issue referenced earlier. If these people are installing SteamVR for the first time, they will need to run the installer here then apply the patch.

I'm still interested in seeing a fork or something of this repo, with active maintainers, but I don't know who they would be.

@TripRodriguez
Copy link

@SplitPixl We all want to see that, we just need some sucker to volunteer!

@TripRodriguez
Copy link

Guys, I can also report great success on being able to finally use bass shakers now that I mounted the Vive Tracker using the Kyosho Gel!

If you want to try a cheaper method that may work even better, try the orange foam 32db earplugs under your tracking device, with your tracking device rubberbanded down on top of them slightly compressing them. You can google this method, it's very commonly used with Radio Control drones and such.

@apointner
Copy link

Good to hear!!! But still OT *ggg :-)

@TripRodriguez
Copy link

TripRodriguez commented Jun 5, 2019

Good to hear!!! But still OT *ggg :-)

I disagree! This time, I am innocent!

The motion compensation has up until now basically been incompatible with tactile transducers... this is a physical "bug fix"! =P

@apointner
Copy link

Ok, ok, that counts :-D
And just to mention, after steam update yesterday, motion cancelling works for me (htc vive)

@TripRodriguez
Copy link

TripRodriguez commented Jul 3, 2019

Update: This no longer really matters to me, experiments revealed that my plan wouldn't work anyway.

OpenVR InputEmulator will not allow the Index cameras to work. If I move the VROIE folder out of steamvr/drivers the cameras work. Put the folder back in, the cameras go back to not working.

@TripRodriguez
Copy link

TripRodriguez commented Jul 4, 2019

Nevermind, not going to work.

@trueA1M2
Copy link

trueA1M2 commented Jul 5, 2019

@TripRodriguez
Copy link

TripRodriguez commented Jul 5, 2019

Thanks for the link trueA1M2. My problem had nothing to do with tracking, I just wanted to use the camera to see but turns out it's not going to work anyway.

@SplitPixl
Copy link

SplitPixl commented Jul 6, 2019 via email

@TripRodriguez
Copy link

TripRodriguez commented Jul 15, 2019

Nevermind to my having a problem, "restart VR headset" in SteamVR options fixed that.

@TripRodriguez
Copy link

TripRodriguez commented Aug 12, 2020

Greetings all. For those who do not already know, we have been saved by Dschadu!

This even works without lighthouse! Confirmed working on Reverb with it's own included WMR controller mounted in front of you.

In addition I understand there is a compatible experimental feature from FlyPT Mover to create a virtual reference controller that is 100% software based.

Motion Compensation:
https://ovrmc.dschadu.de/
https://tinyurl.com/motion-compensation

I am also taking it upon myself to provide to you all a link to our modest friend Dschadu's PayPal donation link for those who wish to thank him for his awesome work in this way:

Donate: https://tinyurl.com/OVR-motion-compensation-donate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

OpenVR Input Emulator causes the latest SteamVR beta (1539829670) to fail to load.