GENIVI / genivi-vehicle-simulator

An open source vehicle simulator
Other
100 stars 52 forks source link

one-screen and console crashes when Logitec G29 is present at load time #11

Open adam-burns opened 6 years ago

adam-burns commented 6 years ago

On an up-to-date Windows 10 machine installed with Unity 5.6.0f3 running the precompiled binaries, the applications one-screen and console crash when a Microsoft Sidewinder, no-name controller or Logitec G29 steering set are present when the initial screen appears.

screenshot 2

Generated crash & log files included below:

error.log output_log.txt crash.zip

This can be avoided by plugging the USB steering set after pressing the play button on the initial screen before plugging in the USB device.

However, at that point it seems that the USB device does not function in the program.

We purchased a G29 because the G27 do not seem to be available as new, and the G29 is described as its successor.

https://github.com/GENIVI/genivi-vehicle-simulator/wiki/Input mentions that

"Input is managed via DirectInput and as such other wheels should work with some minor modifications to InputController scripts."

If the problem of non-functional controller is related to Logitec model differences, which script should be modified?

Thanks in Advance for any help you can give.

ericblade commented 6 years ago

What you're probably going to need to do with that, is build the DirectInputPlugin solution in Debug mode, copy the resulting debug DLL to the place in the project where it is loaded from, then hit it with a debugger and see what's going on.

You might have a look at this commit I made quite some time ago: https://github.com/GENIVI/genivi-vehicle-simulator/commit/86b126d81c3c82e12b737aabcf6976d2caa07870

That commit fixed some issues where a really old wheel wasn't responding as the input plugin expected, and it's possible that you're running into something similar.

ericblade commented 6 years ago

Ah, I just noticed also that you said pre-compiled binaries. I don't know where those are located, but if they haven't been updated since before the commit I mentioned above, then that would explain the crashing. Building a new setup from the source repo using the current tree will help, if that's the case.

Once you have it not crashing, you may need to have a look at Assets\Scripts\WheelController.cs to adjust which inputs do what.