Need velocity and acceleration values from Nolo IMU (SteamVR)

In order for SteamVR to do pose predictions (which it needs to do for warping etc.), it's necessary to supply it with velocity and acceleration values, as well as angular velocity and acceleration values. It's possible to derive these values from the orientation and position values, but doing so introduces a lot of jitter, which is not present when providing just the position and orientation values. I'm guessing that the position/orientation values that Nolo provides are 'noisy' and SteamVR is doing a filter on them to smooth them out, as there is no jitter if not providing the velocity/acceleration values. It appears that SteamVR does not try to interpolate these values if not provided by the driver (probably due to jitter).

If these values aren't provided (for the controllers at least), then it's not possible to do things like throwing (or anything that relies on the acceleration or velocity of the controllers). These values are certainly available on the hardware side of the Nolo sensors, and so it would be a lot better to use these values than try to interpolate them from the position/orientation values. Even it I put an alpha-beta filter onto the interpolated values, there is still some jitter. If the filter smooths out the values too much, then quick movements are not possible.


  • I put a Kalman filter in and played around with the parameters a bit. I got rid of the jitter, but quick movements (eg. throwing something hard) are lost. Not ideal, but better than everything that you throw falling at your feet (which quick movements still do as they are ironed out of the data).
  • @iVRy your doing a great job, will your app (android) work directly with steam VR making the Nolo work more like the Vive? i still run into issues all the time, its hit and miss whether or not the nolo kit links to Steam VR :neutral:  
  • @AxleB Yes, there are no apps or other such nonsense (well, apart from the Nolo app). It just works, and all Vive stuff just works too (including ReVive)... :wink: 
  • When will the app become available? Will this replace riftcat?
  • "When it's ready". The idea is to make it as close as possible to the iOS version, which is "just works" (ie. no typing in IP addresses or some such), and not rush it out. That said, the basics are there already, just needs a bit of polish... :wink:

    As to replacing some other software, iVRy has only one purpose, to be the best mobile HMD (for SteamVR) it can be, it's not aiming to be a "swiss army knife"...

    'Alpha' version of iVRy on Android:

  • Cool is the Alpha on android play yet? How much will it cost as I already have vridge and trinus vr, I was in their test groups :)
  • how about the trigger not being analog on Nolo controller?
  • There are a few things missing/strange in the Nolo controller API at the moment:
    - No acceleration and velocity values, so these must be simulated by the driver. Throwing in "The Lab" is not possible without this.
    - No analog value for the trigger, so it is either fully pressed or not at all.
    - Double clicking menu button causes Nolo runtime to flip around co-ordinate system (simulating 180 degree turn), so this either has to be implemented in the driver (as I do currently) or counteracted in the driver (as I may do if Nolo doesn't add the option to disable it) to ignore it.
  • i really do hope there is analog values
  • The hardware supports it, so just a case of them adding it to the runtime.

  • Left off the list:
    - Support for timed duration haptic pulses on particular axes of controller (or even just timed haptic pulses if there is only 1 vibration motor)
  • Thanks for telling us, that the hardwarde supports analog trigger values. How can you be certain though?
  • Sorry, *it looks like* the hardware supports it. :wink:
  •  :| i hope it will. Nolo doesnt even respond to any of this issue. so i kinda doubt it. 
  • I've found them quite responsive so far, and am working with them to improve the API.
  • What exactly do you mean by it looks like, iVRy?  Are you completely guessing or is there some reason you believe that way? I really hope it's the latter and the hardware actually supports it  :)
  • I, for one, am glad that someone who is knowledgeable with how SteamVR works is raising these issues with NOLO. Thanks iVRy for all the time you're putting into this.
  • LYRobotix has confirmed that there is no hardware for analog trigger.
  • @iVRy *sigh*, guess we couldn't get it all with Nolo, huh?  lol.  Analog triggers was a huge oversight for me when getting Nolo.  I didn't even think of asking myself if they were analog, I just assumed they would be.

    Also, they aren't very publicly responsive.  I sent them an email last month and never got a reply, and they're super hit-and-miss with talking on the forums/kickstarter page
  • They have said that they can add these IMU velocity/acceleration values to their driver in the future, so one day (hopefully soon) the controllers will be reasonable replacements for Vive controllers (ignoring the trigger, which can't be fixed in software and they don't plan to make a hardware revision with the trigger).
  • sadly, what kind of trigger that dont have analog value. pssh yeah nolo controllers' triggers.
  • edited July 2017
    "We will provide speed and acceleration in our SDK later,maybe in Q3"

    "At present NOLO's trigger button can only provide 0 and 1. will be improved in our next generation product."

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!