Jump to content

Unsuccessful calibration while running from Unity application


Recommended Posts

Hey folks,

I've been running into an issue when launching my calibration from my Unity application.  Here's what I expect to happen:

  1. Click on the button in my application to launch calibration
  2. Calibration launches as overlay
  3. I go through complete calibration
  4. Calibration succeeds


Here's what is actually happening:

  1. Click on the button in my application to launch calibration
  2. Calibration launches as overlay
  3. I go through complete calibration
  4. Calibration usually fails


I am able to complete calibration by launching it from the SteamVR menu within the HMD.  I've noticed the framerate of the calibration seems very low and slow when running it from my application (though my application itself is performant).  It seems like having both things running at the same time is a problem.  My background application is attempting to access gaze information when it is running, so this could be part of the problem as well.  I looked through the logs and found this:

[EyeCameraModule] [2020-06-09 15:52:45] [LOG] eyefeature thread alive
[EyeCameraModule] [2020-06-09 15:52:46] [LOG] do InitialCalibration
[EyeCameraModule] [2020-06-09 15:52:46] [LOG] [Calibration] IPD config
[EyeCameraModule] [2020-06-09 15:52:46] [LOG] do StartCalibration
[EyeCameraModule] [2020-06-09 15:52:46] [LOG] [Calibration] Start
[EyeCameraModule] [2020-06-09 15:52:46] [LOG] [Calibration] Clear
[EyeCameraModule] [2020-06-09 15:52:49] [LOG] EyeCameraDevice::Process,  alive
[EyeCameraModule] [2020-06-09 15:52:50] [LOG] [Calibration] Collect
[EyeCameraModule] [2020-06-09 15:52:55] [LOG] [Calibration] Collect
[EyeCameraModule] [2020-06-09 15:52:58] [LOG] [Calibration] Collect Error : 13
[EyeCameraModule] [2020-06-09 15:53:00] [LOG] eyefeature thread alive
[EyeCameraModule] [2020-06-09 15:53:00] [LOG] [Calibration] Collect
[EyeCameraModule] [2020-06-09 15:53:03] [LOG] [Calibration] Collect Error : 13
[EyeCameraModule] [2020-06-09 15:53:05] [LOG] [Calibration] Collect
[EyeCameraModule] [2020-06-09 15:53:07] [LOG] EyeCameraDevice::Process,  alive
[EyeCameraModule] [2020-06-09 15:53:08] [LOG] process alive
[EyeCameraModule] [2020-06-09 15:53:09] [LOG] [Calibration] Collect
[EyeCameraModule] [2020-06-09 15:53:12] [LOG] [Calibration] Collect Error : 13
[EyeCameraModule] [2020-06-09 15:53:13] [LOG] do ReleaseCalibration
[EyeCameraModule] [2020-06-09 15:53:13] [LOG] do ReleaseCalibration

Presumably "Error : 13" is the problem.  Can you please tell me what Error 13 is?

On a related note, launching the calibration allows passing a pointer for a callback via:

SRanipal_Eye_API.LaunchEyeCalibration(IntPtr callback);

But this is a little too low level for me to understand how to use.  Are there any examples of how to use this callback in C#?  Right now I'm just passing IntPtr.Zero to it, but it would be nice to know when calibration completes, and it would be especially nice to know if calibration succeeded or failed so I can put it on the monitor for the researchers.

Cheers!

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...