cancel
Showing results for 
Search instead for 
Did you mean: 

quest 2 Headset and controllers communication

NevoVaknin
Level 3

Hello can someone please explain to me in what ways the headset and the control in the quest 2 communicate with each other.

(What kind of sensors responsible for what movement recognition etc...)

1 ACCEPTED SOLUTION

Accepted Solutions

kojack
Volunteer Moderator
Volunteer Moderator

Oculus controllers use two tracking methods:

- IMU (Inertial Measurement Unit, a combination of accelerometers, gyroscopes and magnetometers)

- IR tracking lights

 

IMUs are extremely fast. Oculus receives updates from them at around 500Hz (last time I looked into it). They can track all 6 degrees of movement (x,y,z,pitch,yaw,roll). However IMUs will accumulate errors over time. After a couple of seconds they will have drifted a potentially noticeable amount. So they aren't enough on their own. (The original Oculus DK1 headset used just an IMU, it could keep pitch/roll correct using gravity, but yaw would drift, causing your forward direction to change over time and need reseting)

 

The Rift-S, Quest 1 and Quest 2 have cameras that perform two functions (both 6 degrees of freedom like IMUs): Oculus Insight (tracking headset movement by observing the environment) and Oculus Constellation (tracking the controllers using IR lights).

The cameras are much slower (60Hz). Actually, they are alternating short/long exposure, so you get 30Hz high exposure (to see the room) and 30Hz low exposure (to see controller LEDs and ignore the room).

 

So what Oculus does is use IMU tracking as much as possible, with the slower camera tracking correcting drift. This means you can still move a controller when it's out of sight of all the cameras (like over your shoulder), but only for a second or so before they stop position tracking, although rotation tracking will continue.

 

The controllers talk to the headset using a non-standard bluetooth (they changed it a tiny bit so it doesn't show up to other things as a bluetooth device).

 

For completeness sake:

The Oculus Go controller and headset are purely IMU devices, no cameras. They only do rotation tracking and the yaw will drift a lot if you keep looking around.

The Oculus DK2 had an external IR camera with very narrow view, the DK2 headset had tracking LEDs in the shell.

The Oculus CV1 had 1-4 external IR cameras. Both headset and controllers had tracking lights.

 

Vive, Index, Windows Mixed Reality also use a combination of high speed IMUs and slow speed "other" tracking. For Vive and Index it's Lighthouse (external sweeping IR lasers) and for WMR it's headset cameras like the Quest 2, but not IR.

 

And yeah, the bot does tend to get confused. 😞

Author: Oculus Monitor,  Auto Oculus Touch,  Forum Dark Mode, Phantom Touch Remover,  X-Plane Fixer
Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich
Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2

View solution in original post

11 REPLIES 11

As far as I'm aware controller motion is tracked by cameras in the headset following IR LEDs. Button presses etc are communicated via Bluetooth.

Thank you.

Do you know if the controller moving in its own axle (spining in place) is recognized  by the camera or buy some sort of gyro located in the controller and transmitted via Bluetooth?

I'm not sure but given that the position is evaluated absolutely I would very much suspect it's via the cameras. I'm not a developer though.

NevoVaknin
Level 3

I was wondering When the controller in oculus quest 2 is moving on its own axle (spining in place) is the movment recognized by the IR and the camera or buy some sort of gyro located in the controller and transmitted via Bluetooth?

I still think it's IR. The "ring" contains a umber of IR LEDs that would accentuate the axial rotation.

Hello and welcome! We hope you're having a wonderful day. We see you're having some controller drifting issues, which is not the experience we want you to have. So let's get you taken care of and see if we can get this resolved as soon as possible. Could you try these steps:

 

  • Remove the batteries for at least 30 seconds before attempting to use them again.
  • On Standalone Headsets: Increase the dead zones of the controller until the drift is no longer an issue/noticeable. 
    1. Go to Settings
    2. Go to Controller Settings
    3. Under Joystick Deadzone and Range, select the joystick which is having issue
    4. Follow on-screen instructions to recalibrate the joysticks deadzones
  • When powering on your controllers, ensure that the Analog sticks aren't being held in any direction and are at rest in the neutral position.

Please let us know if these instructions were beneficial.

I swear this bot is getting worse and worse.

kojack
Volunteer Moderator
Volunteer Moderator

Oculus controllers use two tracking methods:

- IMU (Inertial Measurement Unit, a combination of accelerometers, gyroscopes and magnetometers)

- IR tracking lights

 

IMUs are extremely fast. Oculus receives updates from them at around 500Hz (last time I looked into it). They can track all 6 degrees of movement (x,y,z,pitch,yaw,roll). However IMUs will accumulate errors over time. After a couple of seconds they will have drifted a potentially noticeable amount. So they aren't enough on their own. (The original Oculus DK1 headset used just an IMU, it could keep pitch/roll correct using gravity, but yaw would drift, causing your forward direction to change over time and need reseting)

 

The Rift-S, Quest 1 and Quest 2 have cameras that perform two functions (both 6 degrees of freedom like IMUs): Oculus Insight (tracking headset movement by observing the environment) and Oculus Constellation (tracking the controllers using IR lights).

The cameras are much slower (60Hz). Actually, they are alternating short/long exposure, so you get 30Hz high exposure (to see the room) and 30Hz low exposure (to see controller LEDs and ignore the room).

 

So what Oculus does is use IMU tracking as much as possible, with the slower camera tracking correcting drift. This means you can still move a controller when it's out of sight of all the cameras (like over your shoulder), but only for a second or so before they stop position tracking, although rotation tracking will continue.

 

The controllers talk to the headset using a non-standard bluetooth (they changed it a tiny bit so it doesn't show up to other things as a bluetooth device).

 

For completeness sake:

The Oculus Go controller and headset are purely IMU devices, no cameras. They only do rotation tracking and the yaw will drift a lot if you keep looking around.

The Oculus DK2 had an external IR camera with very narrow view, the DK2 headset had tracking LEDs in the shell.

The Oculus CV1 had 1-4 external IR cameras. Both headset and controllers had tracking lights.

 

Vive, Index, Windows Mixed Reality also use a combination of high speed IMUs and slow speed "other" tracking. For Vive and Index it's Lighthouse (external sweeping IR lasers) and for WMR it's headset cameras like the Quest 2, but not IR.

 

And yeah, the bot does tend to get confused. 😞

Author: Oculus Monitor,  Auto Oculus Touch,  Forum Dark Mode, Phantom Touch Remover,  X-Plane Fixer
Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich
Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2

Thank you for the detailed response. Very helpful.

Do you also know what is the wavelength of the IR that the sensors on the controllers transmit to the headset?