Skip to content

low tracking quality #324

@carlmstott

Description

@carlmstott

Hello,

I'm writing a basic ros2 wrapper around libsurvive (all it does is scrapes the poses of the headsets/controllers and broadcasts them as transforms) and I'm getting very inconsistent tracking quality and I'm constantly hit with messages like:

Warning: Disambiguator got lost at 2819285738; refinding state for WM0
Info: Locked onto state 5( 6, 634218) at 2821685058 for WM0

or

Warning: Too many failures for WM1 at 260.804865; reseting calibration 0.000000e+00 ( 6.5233 stationary)

or libsurvive crashing because the solver fails to converge

these issues are accompanied with the pose's of the controllers/headset in my scene moving very erratically (zooming off into space in Rviz, etc). Ive also noticed that once this happens I need to delete the calibration data in order to get the controllers to behave again.

Is this a sign that my room setup is subpar? or should I be using a different solver (follow up question would be, how do I select the solver when I launch libsurvive)? Do you have any advice on how to tell if the light or reflective objects in my space could be contributing to my issues? I'm fairly sure its not how I'm writing my wrapper because I get the same issues with Andrew Symington's ros2 wrapper as well.

Screencast.from.2025-02-27.14-40-04.mp4

Some things I've tried:

  • moving to another room (no improvement)
  • running libsurvive outside of my projects docker container. Doing this caused the controller/headset poses to be MUCH more stable.

Is there some issue related to running libsurvive in a docker container that could cause issues?

any advice on bug squashing would be really appreciated. Ive attached a video of what the behavior looks like in rviz when I run Libsurvive inside my project's docker container and I move a controller.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions