Community Event / Creation Sx2vJoy; get your 3DConnexion device working like a 3D joystick (formerly SN2vJoy)

No problem, thanks for all the work you have done to accomodate my requests. It is perfect. Are you planning on posting a new build to github? I'm sure others would benefit from these changes.
 
So I've encountered a snag trying to use your programs for my 3dconnexion SpaceNavigator. I have downloaded and installed both vJoy and Sx2vJoy programs and have fixed a missing MSVCR120.dll problem, but when I try to run Sx2vJoy.exe I get the following error:

"Couldn't load vJoyInterface.dll from path C:\Program Files\vJoy\x86\vJoyInterface.dll

Sx2vJoy bit architecture: x86
OS bit version: x64
vJoy version: 0.2.0.5

Exiting."

I do have cJoyInterface.dll in my x86 folder and I am running a 64-bit OS. I'm not too well versed with computers, so any help would be greatly appreciated. Thanks!
 
That's odd.

Try this build: http://lbsoftware.bplaced.net/Sx2vJoy/Sx2vJoy.zip

Just download and unzip the executable to where the other Sx2vJoy files are, overwriting the old Sx2vJoy.exe that's already there. The new one might not fix the problem yet but I extended the error dialog to list some additional items that may hint to what's going on.

Once copied over and the old Sx2vJoy.exe is overwritten, please run this new one and post what info the error message shows.

PS: I also put an option in the error dialog that allows you to easily post the error information into wherever you please without typing out everything manually.
 
Last edited:
Sx2vJoy%201.2%20build%205%20test%202_zps5mqvzvvw.png


Took a screenshot this time.

Also, I just noticed that when I try to configure vJoy with the 4 Directions POV Hat Switch option selected and hit apply, it will always re-correct itself to Continuous instead. Is that going to be a problem? Should I try with a slightly older version of vJoy? Thanks for the help, by the way. I've had this 3d mouse for almost a year and have yet to figure out how to use it for my throttle/thrust functions.

vJoyConf_zpsh8frxmus.png
 
There's nothing to be worried about. Well, except running out of ideas ;)



http://lbsoftware.bplaced.net/Sx2vJoy/Sx2vJoy.zip


Made some further adaptations to undocumented changes in the latest release of vJoy. It likely won't fix your problem though but gives a bit more detail about the .dll file.

I'm also running the latest release of vJoy from 20.03.2015 and it works just fine with Sx2vJoy, so I'm almost certain something weird is going on on your system. I'm on Win8.1 myself but can test on a Win7 machine tomorrow and see how it goes.

Some anti-virus or malware protection programs may think Sx2vJoy contains malicious code and prevent it from accessing other files. One thing you could try is to temporarily disable such software and see how Sx2vJoy works then.

Another possibility is that vJoyInterface.dll got corrupted during installation. Chances of something like this happening are maybe one in a billion, but you never know for sure until you go and run some tests.

A quick test you could run is with this build that brings its own vJoyInterface.dll:

http://lbsoftware.bplaced.net/Sx2vJoy/Sx2vJoy_2.zip



Both links contain complete packages. Please unzip and run them both and let me know how it went.



PS: POV resets back to "Continuous" for me as well, but it shouldn't matter since Sx2vJoy doesn't access it. It would only matter if the POV somehow got bound to some game controls.
 
Last edited:
Both links contain complete packages. Please unzip and run them both and let me know how it went.



PS: POV resets back to "Continuous" for me as well, but it shouldn't matter since Sx2vJoy doesn't access it. It would only matter if the POV somehow got bound to some game controls.


Did not go well. :rolleyes:

7zip%20error_zpsr4zekugp.png


WinRAR brings up a similar message. I tested another .zip file and it works perfectly with both 7zip and WinRAR. This error occurs on both of the .zip files you provided, by the way.
 
I use a space pilot at work, so I decided to try and configure it to use with ED. (I like to spend part of my lunch browsing the galaxy map!) I encountered exactly the same problem as Hypgnosis.
Sx2vJoy wasn't able to run the vJoy driver claiming that MSVCR120.dll was missing (when it clearly wasn't), and then refusing to load vJoyInterface.dll.
I found that if I changed the User Account Control in Windows firewall security to 'Never Notify', rebooted my system and then ran Sx2vJoy it appears to work.
I haven't tried configuring it to use with Elite yet, but vJoy properties dialogue box did detect axis movement.
I also don't know if leaving the User Account turned off is a good or bad thing in the long term. Maybe there is a way of telling it to accept vJoy as a friendly program, I shall see if I can find some time to have another play with it soon.
 
This is very strange behavior indeed as I have put code in there that restarts Sx2vJoy with admin rights if it found itself to be running without. I'll investigate. Thanks for finding this!

PS:
I never get the message about it failing to load vJoyInterface.dll with UAC set to standard settings. It quits with an error message saying it failed to start with admin privileges if I select "No" in the UAC popup and works just fine when I select "Yes" instead.


Would you guys be willing to share a few details? Specifically it would be useful to know

- Windows version
- Windows account type (Admin, standard user, ...)
- UAC setting (Always notify, Never notify, something in between)
 
Last edited:
I probably should have mentioned yesterday - I am using Windows 7 Professional 64 bit, with Service Pack 1.
I have tried to run through things a bit more logically, here's what I've found so far.
If I open configure vJoy I get the following requester -

Vjoy1Capture.PNG

If I click Yes, it the configure utility opens, and appears to work. It always opens to its default screen, and doesn't appear to remember any changes I make. However opening vJoy monitor shows the changes have been accepted by vJoy. So, maybe this is normal.

When I open Sx2vJoy, I get a security warning.

S2xVjoy1Capture.PNG

Yesterday clicking run gave me this error message -

S2xVjoy error.PNG

I put my security settings back to normal today and tried again. This time when the security warning popped up I unticked the 'Always ask before opening this file' box.
After clicking run I received this -

S2xVjoy2Capture.PNG

I clicked yes and got the message 'SpacePilot connected to vJoy ID 1' - success!

I don't know if it was running it yesterday with the security setting turned off, or, if it was unticking the notification box that made the difference, but it now appears to be working! Perhaps somebody out there who is savvy with Windows security settings could explain what causes this issue. Since most people don't have a problem it suggests a setting on my PC somewhere.

I haven't configured it fo Elite yet so I may still have other problems to overcome.
 
Sx2vJoy can be made to run with system rights, but since that's entirely untested it may or may not cause its own set of problems. If you feel adventurous and want to give it a shot:



  1. Download and unzip PsExec from here: https://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

  2. Take just the PsExec.exe and put it into the same directory where the Sx2vJoy.exe is.

  3. Run PsExec.exe once to display and acknowledge the licence agreement that pops up on first run. It doesn't run anything without additional parameters, and since none are given it really only shows the licence stuff.

  4. Download and unzip Sx_System from here: http://lbsoftware.bplaced.net/Sx2vJoy/Sx_System.zip. Source code is included.

  5. Take just the Sx_System.exe (or compile your own from the source code) and put it into the same directory where the Sx2vJoy.exe is.

  6. Run Sx_System.exe instead of Sx2vJoy.exe from the Sx2vJoy directory. Sx_System.exe runs Sx2vJoy.exe by passing it on to PsExec.exe as one of several parameters. The other parameters used by Sx_System are "-i", "-d", "-s" and "-w workingdir".
 
First of all, i'm new here. and thanks Lasse B. a lot. because finally i get my spacenavigator to work perfectly. :)

but i have another tricky problem. I wanna use mouse wheel to control the throttle. So i mapped "+ mouse z-axis" to increase throttle and "- mouse z-axis" to decrease throttle. and set the throttle increments to 10%. it work also very well with mouse. But when i try to pitch up and down, it increase or decrease the speed too!

"JOY RX-AXIS" was mapped to pitch axis. It should be no conflict between them...

does anyone have the same problem? or how do you map your throttle? :S

Hi, I'm trying to use a setup similar to @Dirk Brabeem and @racon. (I think.) I've combed through my custom.binds file and fixed Binding Device allocations to vJoy with notepad++. (The Control-Alt-D audible method seemed to be working almost every time, but sometimes a direct connection to the 3D SpacePilot Pro would sneak through.) I've read through the rest of the thread and haven't seen too much more information regarding this problem.

Right now, every reference to the Joy_RXAxis input from vJoy is with regard to pitch in the custom.binds file; however, in game, whenever I touch the pitch axis of the 3DC device, I accelerate forward or decelerate backward. I have since gone through and eliminated any game input to the throttle axis and the forward/reverse thrust axis and yet my ship magically accelerates when I pitch.

Do you all have any recommendations?

Thanks!
 
Would you guys be willing to share a few details? Specifically it would be useful to know

- Windows version
- Windows account type (Admin, standard user, ...)
- UAC setting (Always notify, Never notify, something in between)


I have Windows 7 Ultimate edition, 64 bit, running as an admin account, and my UAC is set to never notify.

The latest 2 archive files you provided have the same issue for me. "Can not open file as archive." I have the 9.20 version of 7zip, too, so it's not that.
 
@davidtheterp

Can you please upload the content of your custom.binds file to http://pastebin.com/ ? There are a couple of other things to check for as well. In one case it just wouldn't stop taking input from the physical device instead of the vJoy "translated" one, which resulted in pretty weird behavior.
 
@davidtheterp

Can you please upload the content of your custom.binds file to http://pastebin.com/ ? There are a couple of other things to check for as well. In one case it just wouldn't stop taking input from the physical device instead of the vJoy "translated" one, which resulted in pretty weird behavior.

Hey, thanks! That'd be great if you could take a look at it. Lasse (and everyone else in the world), here is the link to my attempt at configuring bindings in Elite Dangerous with none of the axes of any joystick set to throttle / forward thrust. I've done my best to leave those commands undefined (except for the keyboard and mouse wheel backups). And I've done my best to make sure I'm only referring to the vJoy Binding Device rather than to the 3DConnexion SpacePilot Pro directly. Operating System is Windows 7. Elite Dangerous is as downloaded from Steam. Environment where I'm encountering the problem is all the tutorial missions. Problem is not encountered when flying with regular / boring joysticks.

Main problem: ship accelerates when I pitch down; decelerates when I pitch up.

http://pastebin.com/BQN41DWH
 
Your configuration works just fine on my system. Ship pitches when I move the Rx axis with no change in throttle whatsoever. Throttle only changes when I scroll the mousewheel or press keyboard buttons w or s. Seems like something else is interfering here.

As you have a SpacePilot Pro, which is 3DC's current top of the line product which you surely haven't bought just to play games, chances are you also have their 3DxWare driver installed. Depending on how it is set up it may just cause this strange behavior you're observing. One thing you can try is to disable the 3DxWare driver and then to restart both Sx2vJoy and E:D. There should be an entry to disable and enable the driver in the 3DxWare entry accessible via the start menu.
 
Last edited:
One thing you can try is to disable the 3DxWare driver.

That did the trick! Thanks, Lasse. I went to:

Start > All Programs > 3Dconnexion > Driver > Stop Driver


and then the little LCD Screen on 3D SpacePilot Pro dimmed out. I went to Window's Joystick Properties to play around with the emulated vJoy controller and see all 6 axes and 21 buttons (or how ever many there are) respond. Works in game as well. I no longer accelerate when I pitch down.
 
Great! Switching off and on the 3DxWare driver every time you want to play is a bit of a nuisance I imagine. What you could try to work around this is to set up a profile for Elite Dangerous in the 3DxWare driver that does nothing. I can't give you the exact steps unfortunately as I don't have the 3DxWare driver installed anymore, but I remember seeing different SpaceNavigator behavior when switching between Chrome and the Game Controllers window when I still had it and had separate profiles for both windows.
 
Back
Top Bottom