cmbruns / pyopenvr

Unofficial python bindings for Valve's OpenVR virtual reality SDK

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add support for openvr_driver.h and the driver_lighthouse library

mncharity opened this issue · comments

The openvr_driver.h and driver_lighthouse library are normally used by vrserver, but can be used directly.

This permits, for example, using tracked devices even when you can't run the usual vrserver, or prefer not to. For robots, and non-SteamVR stacks, and such.

The API is similar, but the focus shifts to interfaces like IServerTrackedDeviceProvider.

And happily, it is already running on linux. For example, Vrui's OpenVRHost.h and OpenVRHost.cpp using this openvr_driver.h. And for node.js, there's steamvr-lighthouse-driver.

It would be nice to use openvr devices from python, without having to run Steam's vrserver.

But should that be done with pyopenvr? Parts of openvr.h, and their associated python glue, are needed for both. But it is a separate underlying library. In node.js, these would be several little modules. For python, I'm not sure: should it be a new pyopenvr-driver, with some code sharing or duplication; or a bigger pyopenvr?

This is super interesting. I've been searching for a way to get lighthouse telemetry without having to run steam VR on linux. I Spent a few minute looking through the node project.. @mncharity can we chat about this offline?

node is perfect for my usecase, but i agree that vrserver-less way from python would increase accessibility for the ros community.

This is an old post, but any updates on this topic ?
I'm currently looking for an access to lowest possible level of data (ideally raw transformation matrix between lighthouse and Tracker without any filter or IMU data). Do you know any way to reach theses ?

Another track is to be able to reset the system and calibration at a given time, is there a way to do it ?