Oculus Rift motion controller thumbsticks report invalid values

For our project we’ve been successfully using the Rift motion controllers. Everything is working great so far.

Just recently I tried to read the thumbstick axis values on the touch controls.

I am using the following UE4 events to get the values:

  • MotionControll (L) Thumbstick X
  • MotionControll (L) Thumbstick Y
  • Oculus Touch (L) Thumbstick CapTouch
  • MotionControll (R) Thumbstick X
  • MotionControll (R) Thumbstick Y
  • Oculus Touch (R) Thumbstick CapTouch

The events are working just fine, but the values I get from the X, Y positions are sometimes invalid.

What happens is anytime I move the thumbstick to the maximum extents either directly up, down, left, or right, the events report a value of 1 (along the appropriate axis) for about .5 seconds before reporting a value of zero until the thumbstick is moved again.

As an example:

  1. Move the thumbstick slowly to the right.
  2. Observe the X axis value change from zero towards 1.
  3. Upon the stick physically reaching the far right, the X axis value reports 1 for about .5 seconds.
  4. The X axis will now start reporting a value of zero even though I continue to hold the thumbstick to the right.

Diagonal thumbstick positions don’t have this problem because the X and Y axis values never get close enough to 1.

This behavior appears to be a bug.

Edit: This may not be a UE4 bug. The xbox 360 controller works just fine. Might be a Rift specific bug.

Hello .Hpe,

I have a few questions for you that will help narrow down what issue it is that you are experiencing.

Quick questions:

  1. Can you reproducing this issue in a clean project?
  2. If so, could you provide a detailed list of steps (including any small steps that may have been left out of your original post)to reproduce this issue on our end?
  3. Could you provide screen shots of any blueprints/settings that may be involved with this issue?

Hello .Hpe,

We have not heard back from you in a few days, so we are marking this post as Resolved for tracking purposes. If you are still experiencing the issue you reported, please respond to this message with additional information and we will follow up.

Thanks,

Hello, . Have you solved this issue? I bumped into the same problem as you described. A few days ago everything worked just fine

Oh, I found why this is happening and it is definitely a bug. The cause of this issue is a Google VR Motion Controller plugin. If enable it, touch controller starts to zero out values at maximum extent from center horizontally or vertically. Tested on Oculus Touch controllers

I had the same problem (UE4.21).
I disabled the Microsoft Windows Mixed Reality plugin and everything returned to normal.