Can't get CloudXR SDK running on Amazon G4 instance

Upon installing the SDK server, I get the error “compatible GPU not found.” It’s my understanding that the Amazon g4 instances have T4 GPUs which are Turing and should be CloudXR capable. Is this incorrect?

Hello @peternellius,

Thanks for the note! That is correct. I spoke to our support team, we believe this may actually be a driver issue.

What NVIDIA driver are you using currently?

I recommend that you utilize our Quadro Virtual Workstation AMI: AWS Marketplace: NVIDIA RTX Virtual Workstation - WinServer 2019

This Amazon Machine Image had the GRID Drivers with Quadro licensing already in place.

Let me know if this works or if you have other questions.

Veronica

Hi there,

I also installed a g4dn EC2 instance and was able to install CloudXR server after installing the Nvidia drivers via the instructions above. In addition, I installed SteamVR and launched it on the server. My problem is connecting to it from the client side. Is there anything else I need to do on the server end to enable connections to it?

Thanks

My setup:

  • AMI name - Windows_Server-2019-English-Full-Base-2021.01.13
  • Instance type - g4dn.2xlarge
1 Like

Hello,

Likely there is either the Windows OS firewall and/or the AWS firewall blocking CloudXR connection. Please try the following:

  1. You can try to disable the Windows Server firewall by using Windows search to look for “Check firewall status”. From here click “Turn Windows Defender Firewall on or off” from the left menu. Try to turn off the public and private firewalls.

  2. Edit the AWS security group attached to the CloudXR server instance and edit the inbound port rules to allow CloudXR connection. Here are the inbound ports required:

|Protocol |Port Range |Description |

|TCP| 47999 |CloudXR Control|
|UDP| 47999 |CloudXR Control|
|TCP| 48000 |CloudXR Audio|
|UDP| 48000 |CloudXR Audio|
|TCP| 47998 |CloudXR Video|
|UDP| 47998 |CloudXR Video|
|TCP| 48005 |CloudXR Video|
|UDP| 48005 |CloudXR Video|
|TCP| 48002 |CloudXR Microphone|
|UDP| 48002 |CloudXR Microphone|
|TCP| 48010 |CloudXR RTSP|
|UDP| 48010 |CloudXR RTSP|

  1. Please also make sure your client device is configured correctly using the public IPv4 address of the CloudXR server instance. Refer to the CloudXR SDK Overview guide for more details for your specific HMD.

Mitch

1 Like

Thanks, Mitch! Opening those ports worked for me. May I suggest we put those in the documentation for those wanting to access CloudXR from outside the local network.

Hello Mitch,

I am attempting to run the CloudXR SDK 2.0 on the g4dn.xlarge instance from AWS Marketplace: NVIDIA RTX Virtual Workstation - WinServer 2019.

I have set the inbound rules to open these ports both on AWS and within the Advanced Windows Server firewall but it seems that there is still no connection.

Additionally, I do not see the controller or CXR icon when opening SteamVR on the server although there was a successful installation of the CloudXR-Setup.exe [server portion & Redistributables.

I am also seeing a successful CloudXRRemoteHMD add-on in SteamVR [beta 1.16.6].

Moreover, I have ensured that the public ipv4 of the instance on AWS is the same IP address I am attempting to connect to and that it is accessible through a simple ping test.

I am using an Oculus Quest and have tried running the sample apk given as a Android OVR client, or as mentioned in the FAQ of the latest documentation, as a Windows Client [running w/ Oculus Link] and both options have failed to establish a connection

Hello johnfrancisusc,

It sounds like you are almost there. You will not see the controller or HMD icons in SteamVR until you successfully establish a connection with the client.

Please double check the AWS security group ports and make sure you have both the TCP and UDP versions of the ports open.

The next place I would look is your Oculus Quest configuration. Please make sure you have created the “CloudXRLaunchOptions.txt” file and populated it with “-s ipaddress”. For example the contents of my .txt file would look like the following. Please replace the IP address with your own AWS server IP.

-s 10.0.0.20

This file needs to be copied over into your Quest HMD and placed in the root sdcard directory. /sdcard/CloudXRLaunchOptions.txt

If you continue to have troubles with the connection, I would recommend you take a look at both the server and client logs of CloudXR to see if there are any hints for the connection failures. Here are the log locations:

CXR Server Windows: C:\Users\username\AppData\Local\NVIDIA\CloudXR\logs
Oculus Quest: /sdcard/CloudXR/logs

Hope this helps!
Mitch

Hello there,

I have been using this tech via an EC2 instance and wanted to explore it further with my colleague. We noticed that the current setup doesn’t allow for more than 2 connections at one time. For example, I connected successfully on my Android device, and asked my colleague to connect to the same IP on his Android app. After a surface was detected and he clicked on it, the app froze.

I am wondering if this is a CloudXR or AWS instance limitation. Any ideas?

Thanks

This is actually a limitation of SteamVR - one user/SteamVR instance.

Hi all, I’m having the same issue, configured the stated port on aws and saved the launchoptions file with the correct ip on the quest2. Howevere I still cannot connect from the client. I’ve read the logs and this is the error i receive:
Valid RTSP port was not received. Trying with default port: 48010
RTSP session requested scheme ‘rtsp’ that does not match the expected scheme ‘RTSP’.
Establishing RTSP session with protocol TAG ‘RTSP’ and URL ‘…’ Domain Name x.x.x.x
RTSP client using no SSL
clientHeaderVersion: 14.2
RtspClientSessionLegacy->abort()
perform Request failed with Bad request (400)…Retrying in 3000ms