Menu

#33 Joystick plugin : built-in scaling inappropriate

Next release
open
nobody
None
5
2017-01-29
2017-01-26
Dan Howell
No

Hi guys,

As per discussion post, will re-create here for clarity.

I am seeing some curious behaviour on the raw input values in the joystick plugin, particularly exhibited with an EDTracker device being used as the joystick input...

Checking raw values in windows USB game properties, I'm seeing the expected ranges of +/-32768 on the X and Z axis, with half that on the Y (to be expected).

However FaceTrackNoIR seems to be reporting some odd raw input numbers in the tracker detail screen.
Roll (Z) reports raw values of 0 to 65535
X and Y seem to either be massively scaled down, or possibly reading the wrong bytes/offsets as no number change is reported with device movement until it's rotated about 20 degrees from straight ahead, at which point the raw input values start to increment - it seems to wrap at +/-1000 points. I've certainly not got anything set in the EDTracker software that should cause this, it's on linear scaling with 1:1 axis scaling.

I think what you've possibly done is developed the joystick input against an EDTracker that was configured in exponential scaling mode by accident? Because rather magically, 1000 points on the X and Y (when in exponential mode) maps perfectly to the EDTracker axis limits when it's configured at the default 16/16 values on Exponential scaling!!!

So - if that's the case - my advice would be not to perform any scaling of input values but look for a linear range from +/-32768. We always advise customers to configure their EDTracker to linear scaling and 1:1 when using it with external software like FaceTrackNoIR... so I guess this might be confusing people.

Anyway, hope my interpretation of what's happening is correct. Apologies if not.

Cheers,
Dan

Discussion

  • Wim Vriend

    Wim Vriend - 2017-01-26

    Hello Dan,

    I'll have to look into it. If I remember correctly, the configuration of the EDtracker used was "virgin": no settings were changed after installing the software...

    But I will check anyway, because we don't want people to get confused :)

     
  • Dan Howell

    Dan Howell - 2017-01-28

    No worries ;) that would explain it. As said, EDTracker is outputting 16-bit signed values. Using a virgin device is probably what caused the issue; as they are originally intended to drive games direct with headlook, they have a 1:5 scaling initially set (or 1:16 on exponential mode) so you (or Willem) may have been unaware of the features within the UI and then developed and applied a reverse scaling at your end, in FTNoIR, to bring the head position back in line.

    When people are applying curves and scaling in external products like yours and Opentrack, they have much more power to set the device up the way they want, so having the physical device do weird response shaping as well is, in our view, a bad way to go. Hence why we have always, to date, instructed people using tools like yours to turn off scaling in the actual EDTracker device and put it to 1:1 scaling, so the device reports actual head movement directly to virtual - the limits (well, wrap around points) of the real-world device map to the axis limits. Scaling in both the hardware and the software makes it harder for users to understand why their curves might not be performing how they expect, possibly.

    Apologies for warbling on - I'm not trying to labour the point, just hoping I get across the details of what I think is happening ;)

    Keep up the excellent work ;)

     
  • Wim Vriend

    Wim Vriend - 2017-01-29

    Hello Dan,

    To be sure I checked my EDTracker Pro and it was like I mentioned: no settings changed.

    I remember I did this on purpose: new users usually want things to work "right away", without changing settings and such...

    But I also developed the Joystick tracker with adjustable scaling, so any device which outputs joystick data could be configured. If anything is "wrong" with the tracker, I do want to know about it :)

    Thanks for your feedback!

     

Log in to post a comment.

MongoDB Logo MongoDB