alvr-org / ALVR

Stream VR games from your PC to your headset via Wi-Fi
MIT License
5.42k stars 484 forks source link

USB / Wi-Fi tethering? [feature request] #1571

Closed Barracuda72 closed 1 year ago

Barracuda72 commented 1 year ago

It would be great if ALVR supported USB / Wi-Fi tethering. Skimmed through issues but haven't found this request.

I've tried it on two distinct devices (smartphone and Pico 4) and it seems that for some reason client can't figure out its own IP, and therefore can't connect to the server (streamer).

This setup would simplify many things, removing the need for intermediary router connection.

(I know that in general it's possible to create a hotspot out of your PC; however, that's not an option for me)

zmerp commented 1 year ago

There is this in the wiki: https://github.com/alvr-org/ALVR/wiki/ALVR-wired-setup-(ALVR-over-USB) For further questions join the Discord server so we can help you quicker.

Barracuda72 commented 1 year ago

There is this in the wiki: https://github.com/alvr-org/ALVR/wiki/ALVR-wired-setup-(ALVR-over-USB) For further questions join the Discord server so we can help you quicker.

Thank you for reply! But this is not related to the tethering.

Tethering is the mode of a mobile device that allows it to create a hotspot (via Wi-Fi) or appear as an RNDIS network interface (via USB). That way computer can connect to a device and form a functional LAN without employing a router.

From that I can tell, ALVR client app is unable to determine the device's IP address in both modes.

(As for the Discord server, I'm already in there, but nobody answered my questions even once, that's why I'm reaching here.)

zmerp commented 1 year ago

I think this is blocked at driver level for the Quest. At least I know that ethernet to USB dongles don't work anymore. I'm not sure about other usecases.

mittorn commented 1 year ago

wifi tethering works, but it exposes p2p (wifi direct) interface which does not seems to work good. For example i'm getting 20ms ping with it, but i not tried to stream. Use android settings via some launcher to enable it if you want to test. You can get ip address from adb, it is something in 192.168.43.0/24 subnet. usb tethering settings seems to be broken, so you need to find bootloader exploit or way to patch ram in runtime first (but when running recent software, which only ALVR going to support it is very unlikely)

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

plashenkov commented 1 year ago

Hey, it looks like I've managed it to work with Pico 4.

You just need to run:

adb shell svc usb setFunctions rndis

Then get IP address of the VR device either with ipconfig or with adb shell ip addr (look for rndis0 interface), then use this IP address when adding the client in ALVR dashboard.

That's all, as simple as that. No adb port forwarding needed.