Unity-Technologies / ROS-TCP-Connector

Apache License 2.0
296 stars 93 forks source link

ROS TCP Connector doesn't work on my Oculus Quest 2 #280

Open jbg73 opened 2 years ago

jbg73 commented 2 years ago

Hi Everyone,

I'm trying to finish my end-of-degree project, which consists of doing some VR tasks with NAO Robot on Oculus Quest 2 and Unity. To do that, I have some scripts in ROS, so my aim is to connect Unity and ROS. So far I have managed to connect Unity and ROS successfully using ROS-TCP-Connector. However, now that I'm trying to run the app on the Oculus Quest 2, after I build and run it, nothing happens. I can see the scene with the robot and I get no compilation errors, however, it seems that the connection between Oculus and ROS never happens.

I tried another thing in order to see if ROS was the problem. I created a script in python which opens a server and waits for Unity to act as client. With this same ROS-TCP-Connector, when I specify the server ip (the one I created in python) and I run the app in Unity, I can see in the terminal that something connected to the server. However, again, when I build it and run it from the Oculus, the server stays waiting because nothing connects to it.

I don't know if any of you can help or advice me on how to continue. I have searched on the internet and I have tried a lot of things but any of them worked at all.

Thank you so much in advance!

ndaley7 commented 2 years ago

Its a somewhat basic question, but if it is possible, are you able to ping the ros server IP address from the quest?

Stan850 commented 2 years ago

Hi all,

I am also experiencing the same connection issue with both the Quest 1 and Quest 2 when trying to connect my app (when built onto the device) to a ROS instance running on my computer. https://github.com/Unity-Technologies/Unity-Robotics-Hub/issues/359 contains an exhaustive list of things I have tried (not sure if @jbg73 had tried them as well).

Also, how would one go about pinging the ros server IP inside the quest? I am assuming the IP here is the one in the launch file for the ROS-TCP Endpoint package.