jung1981 / linux-track

Automatically exported from code.google.com/p/linux-track
MIT License
0 stars 0 forks source link

Tracking breaks in IL-2 1946 if Controller is started first. #84

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

1. Start Controller (webcam led turns on).
2. Start the game.
3. When the game loads, the led on the webcam goes out and tracking doesn't 
work.

If the game is started before Controller, everything works as expected.

What version of the product are you using? On what operating system?

linuxtrack 0.99.12, wine 1.7.28 on fedora 20, IL-2 sturmovik 1946 from Steam

Original issue reported on code.google.com by ANGavri...@gmail.com on 3 Feb 2015 at 4:03

GoogleCodeExporter commented 9 years ago
Hello,
the setup you describe is exactly how it is meant to be started - the 
controller allows you to pause and recenter the tracking (only I run on Ubuntu 
and have GOG version or Il2 1946)...

In the controller, did you assigned the pause/recenter keys? If you did, what 
happens when the game loads and you press the pause hotkey?

Kind regards,

Michal

Original comment by f.jo...@email.cz on 3 Feb 2015 at 6:37

GoogleCodeExporter commented 9 years ago
I tried and using the pause key activates tracking, so I guess it works as 
designed.

However I expected it to start unpaused like it does without controller, and 
the documentation doesn't say otherwise anywhere. Starting paused may be 
something obvious to someone who already used similar software for windows, but 
I never did. :)

Original comment by ANGavri...@gmail.com on 8 Feb 2015 at 3:05

GoogleCodeExporter commented 9 years ago
I digged a bit deeper and it turns out, that there is a race condition in the 
driver initialization; the behavior when controller started was actually 
"correct" - there was a pause command issued upon starting a Linuxtrack/TrackIR 
client, but when you started controller first, the command was received and the 
tracking paused. When started without the controller, that pause command was 
ignored, because the driver was not fully initialized yet...

I'm working on a fix and I'll keep you posted...

Kind regards,

Michal

Original comment by f.jo...@email.cz on 9 Feb 2015 at 6:33

GoogleCodeExporter commented 9 years ago
What if the controller is never started? It would seem it would be impossible 
to unpause then.

Anyway, whatever the final behaviour it would be fine for me if it's described 
in the docs to hopefully avoid similar confusion in the future.

Original comment by ANGavri...@gmail.com on 9 Feb 2015 at 6:36

GoogleCodeExporter commented 9 years ago
I plan to remove both the explicit pause upon startup and the bug that caused 
it to be ignored... That way all should work even without the controller .

Kind regards,

Michal

Original comment by f.jo...@email.cz on 10 Feb 2015 at 3:50

GoogleCodeExporter commented 9 years ago
One more weird thing I realized is that it seems it takes two presses of the 
pause key for me to get over this initial pause. Initially I was just mashing 
the key repeatedly until it works without thinking about it much, but 
eventually noticed that activating on the second press is pretty consistent.

Original comment by ANGavri...@gmail.com on 6 Mar 2015 at 6:56

GoogleCodeExporter commented 9 years ago
Hello,

it seems to be linked to the initial problem - the system is in the pause 
state, while the code expects it running...

I'll check that behavior too...

Kind regards,

Michal

Original comment by f.jo...@email.cz on 8 Mar 2015 at 7:34