Oculus Quest 2 ROS Drivers for teleoperation?

Are there any open source ROS drivers to teleoperate a robot using a Quest 2?

A close example are these joystick drivers: GitHub - ros-drivers/joystick_drivers: ROS drivers for joysticks

2 Likes

Hi @lorepieri8, can you tell us more about what you are trying to do exactly? Teleoperating a five axis arm is vastly different from a mobile robot.

Teleoperation as a topic area is a fairly advanced ROS application, and there is not one ROS package that is going to do everything you need (e.g. you need packages for the robot, the cameras, the controllers, etc). However, I wouldn’t be surprised if there is a ROS node that can take a two camera topics and relay them to the Occulus.

Off the top of my head there is a group at UT Austin doing work in this direction. I think NullAgent is working on something similar too (I can’t remember his Discourse handle).

@lorepieri8 cool idea! Do you want to control the robot remotely (via the internet), or locally (over Wifi or similar)? The answer to that question makes a big difference both in terms of complexity and requirements. If it’s the former, I invite you to check out our remote teleop feature at Transitive Robotics (still in beta but free), which solves a lot of the problems involved and gives you a reusable web component you could use to put together a solution for the Oculus – maybe using a second video stream for the second camera.

If you do decide to give it a try, please give feedback since we are still actively developing this. Or DM me if you just want to chat about this.

Kinda like this?

I’d reach out here:

The idea is to teleoperate a 6DOF robot arm over internet, associating the movements of the Quest joysticks to the cartesian movements of the robot end effector.

From the suggestions so far Reachy gets closer to what I need, even though in a perfect case scenario there should be a robot-agnostic ROS codebase to get the commands coming from the Quest joysticks, similarly to how the joy codebase does for console joysticks.

For my specific use case it could be enough to simply get the commands from the joysticks, without visual feedback on the visor (the latter can be obtained by regular camera streams over webRTC displayed on the teleoperator’s monitor).

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.