protonscr

[Information Request]: Steam Frame Linux support

steamvrclosed
ValveSoftware/SteamVR-for-Linux#946 · opened 2026-09-15 by etosan · updated 2026-10-11 · 38 comments · github
Eetosan 2026-09-15 github

Summary

Steam Frame launched 2026-09-14. Official material names PC, laptop, Steam Deck and (later) Steam Machine as streaming hosts, but does not state whether a non-SteamOS Linux desktop is a supported host at launch. I am requesting clarification before units ship (purchase emails start 2026-09-18).

My current working baseline

Meta Quest 3 -> Steam Link -> SteamVR (beta) on this host, over regular Wi-Fi 5/6, no dongle. PC VR streaming from Linux works today with this stack.

Environment

  • Distro: Void Linux (no systemd; runit, eudev, xorg)
  • Kernel: uname -r = 6.18.18_1
  • Display: X11, herbstluftwm (no Wayland session)
  • Audio: ALSA + dmix only; no PipeWire, no PulseAudio
  • GPU (render/encode): AMD Radeon RX 6700 XT, Mesa: mesa-26.1.8_1, backend used: Vulkan
  • Other GPUs present: Intel UHD (CometLake-H GT2, always present irrelevant), NVIDIA Quadro T1000 (inactive, headless)
  • Steam client: steam-1.0.0.87_1
  • Wi-Fi: ASUS TUF Gaming AX3000 V2, in dedicated 5Ghz mode, dedicated to VR client solely

Questions

1. Host support

  • Is PC VR streaming to Steam Frame from a generic Linux desktop (non-SteamOS) supported at launch?
  • If not: is it planned, and is there a target? Priority and dedication status are more important to me, than timeframe, I can wait months.
  • Is the "coming soon" status of Steam Machine streaming a Linux-host limitation, or specific to Steam Machine?

2. Wireless adapter on Linux

  • Kernel driver (in-tree? minimum kernel version?) or userspace via libusb?
  • Firmware blobs required? Shipped with SteamVR or linux-firmware?
  • USB VID:PID, and will steam-devices udev rules be updated?
  • Any dependency on systemd, logind, NetworkManager, wpa_supplicant or hostapd?
  • Does it require exclusive device access or specific regulatory-domain configuration (6 GHz)?

3. Multi-Link / Wi-Fi-only fallback

  • The Frame page describes Multi-Link Streaming (adapter + regular Wi-Fi). Is Wi-Fi-only streaming, with no adapter, a supported mode, or is Wi-Fi only a redundancy path alongside the adapter?
  • If supported: does it work from a Linux host the same way Steam Link does for Quest 3 today?
  • If the adapter fails or is unplugged mid-session, does the stream fall back to Wi-Fi or drop?

4. Encoding / foveated streaming

  • Which codecs and encode APIs does Frame streaming use on Linux (VAAPI? Vulkan Video? software)?
  • Is AV1 encode required or preferred? The RX 6700 XT (RDNA2) has no AV1 hardware encode. Does foveated streaming work with H.264/HEVC?
  • On multi-GPU systems, how is the encode GPU selected, and can it be pinned?

5. Audio

  • Does Frame streaming audio require PipeWire or PulseAudio on the host, or is plain ALSA supported?
  • Quest 3 Steam Link audio on this host currently: does not work reliably over pipewire, but works 100 solid over ALSA (I just route audio extension cable and wear headphones in addition to headset)

6. Display server

  • Is X11 supported as a host session, or is Wayland/gamescope required?

7. Eye tracking on PC

  • Is Frame eye-tracking data exposed to PC OpenXR apps on a Linux host (e.g. XR_EXT_eye_gaze_interaction), or only used internally for foveated streaming?

8. Reporting

  • Is this repository the correct place for Frame-on-Linux-host issues after launch, or is there a separate tracker?

Once there is confirmation, I will be buying the headset and I can test and report once hardware arrives.

Llkroll 2026-09-15 github

I would also be interested to know if this will be officially support.

So far I've only found this reddit post that said it works on Linux:
https://www.reddit.com/r/virtualreality_linux/comments/1welkhs/steam_frame_confirmed_by_linustechtips_to_not

NNizrael1979 2026-09-17 github

Asking the real questions. I've signed up for the waiting list lotto myself, data point 2:

Environment
Distro: Arch Linux x86_64 (systemd, KDE Plasma 6.7.5)
Kernel: 7.2.4-zen1-1-zen
Display: KWin (Wayland)
Audio: PipeWire + WirePlumber
GPU (render/encode): AMD Radeon RX 9070 XT, Mesa: 26.2.3-arch1.1, Vulkan
Other GPUs present: AMD Radeon Graphics [Integrated - Ryzen 9 9950X3D]
Steam Beta Branch: Steam Beta Update
Steam Version: 1789606022
Steam Client Build Date: Wed, Sep 16, 2026 20:23 UTC -04:00
Steam Web Build Date: Wed, Sep 16, 2026 17:01 UTC -04:00
Steam API Version: SteamClient023
Wi-Fi: Linksys EA6350 AC1200+ Dual-Band

Ttajeraich 2026-09-24 github

I have a Steam Frame and have been unable to get the wireless dongle working on either my Manjaro desktop or Bazzite unofficial "steam machine." WiFi streaming technically works, but I've been experiencing consistent quality drops where it literally goes from "excellent" to "poor" every 10 to 15 seconds, causing severe stuttering. The only decent VR gaming I've been able to do on it is with locally-installed games.

I did try both Wayland and X, and it doesn't seem to be an issue with that. I've also successfully streamed to the Quest 3, so I don't think it's anything to do with my home network.

44ndrs 2026-09-25 github

@tajeraich i'm also struggling getting the dongle working, also had the same problems with the quality drops you're experiencing with the normal wifi, for those what i did was disable the "reserve Wifi 6E for the dongle" option in the connected wifi settings on the frame. it was enabled for me even though the dongle was not connected, making the connection insanely slow. after that i got no connection problems, and could get stable streams.

edit: forgot to mention i had to reconnect the wifi to apply the changes

Nnovember781 2026-09-25 github

I have been able to get the dongle to work.

  1. power on the Frame
  2. plug in the dongle
  3. profit

having the dongle plugged in before the frame is looking for it results in a cascade of disconnected errors
I haven't been able to get VR streaming to work on Fedora even with the dongle tho.

@tajeraich @4ndrs I would be interested in getting some info on your machines to see if there is some reason I'm not able to get a VR stream at all, even if a bad one.

I'm running a Fedora 44 system with a 7800xt
Steam beta client with SteamVR beta on KDE (wayland session)

44ndrs 2026-09-25 github

@november781

I would be interested in getting some info on your machines to see if there is some reason I'm not able to get a VR stream at all, even if a bad one.

i'm running gentoo, kernel 7.2.6, RX9070
steam beta client with steam vr beta on bspwm (X11)

i have the experimental steamrt3 client disabled since with that my steam vr fails

Nnovember781 2026-09-25 · hidden on GitHub github

@november781

I would be interested in getting some info on your machines to see if there is some reason I'm not able to get a VR stream at all, even if a bad one.

i'm running gentoo, kernel 7.2.6, RX9070 steam beta client with steam vr beta on bspwm (X11)

i have the experimental steamrt3 client disabled since with that my steam vr fails

I also had to disable the STR3 client. I'm on kernel 7.2.7 with fedora on KDE (wayland) and while I can get VR games to launch, I cannot get video to stream back to the headset right now #960

Fedora 44
kernel: 7.2.7-200.fc44.x86_64
GPU RX7800XT

Ill see if I can get X11 to work. But I tried that earlier today with the same results as Wayland

LLexden12 2026-09-25 github

CachyOS
Kernel: 7.2.7-1-cachyos
GPU: RTX 5070
DE: KDE Plasma 6.7.5 (Wayland)

Was able to play Beat Saber over the adapter by starting Steam (Native, but not beta), going to Big Picture Mode, and then starting Steam VR. Frame connected right away and then I was able to start Beat Saber.
That said, the experience was okay, but not usable for Beat Saber. I initially had the adapter plugged into the back of my PC, which put it at maybe shin-level about 10 feet from the Frame. Packet loss would fluctuate between 15-90% on the adapter. Swapped to the front panel USB port and moved my desk out of the way, so it was at thigh-level about 6 feet from the Frame, and packet loss would be 0-4% typically, but there would still be random drop outs every 30 seconds or so. Not great for Beat Saber. Usable for other stuff though.

WiFi streaming is entirely unusable because when using that, the packet loss was consistently 99% with 200+ms of latency. My router is through about three walls and about 30 feet away.

Another issue I had was with the room settings. Beat Saber would seemingly place the player in a random spot and a random orientation on each boot, and I couldn't figure out how to reset the room from SteamVR (didn't look too hard though), so I had to spend a couple minutes adjusting the room settings within Beat Saber every time I started the game.

44ndrs 2026-09-25 github

i finally got the dongle working today

i have a fairly minimal setup, so i don't have network manager (i think steam uses it in some way. what i have is openrc + netifrc). i saw that in remote play options, inside the frame, you can configure the dongle and use a custom configuration instead of leaving steam to manage it. i enabled the custom config, and in my gentoo box configured the dongle to get it up with openrc

# /etc/wpa_supplicant/wpa_supplicant.conf
network={
    ssid="frame_hostname"
    scan_ssid=1

    key_mgmt=SAE
    sae_password="password_generated_in_the_frame"
    ieee80211w=2
}
# /etc/conf.d/net
modules_wlp5s0f1u3="wpa_supplicant"
wpa_supplicant_wlp5s0f1u3="-Dnl80211"
config_wlp5s0f1u3="dhcp"
dhcp_wlp5s0f1u3="nodns nogateway" # frame link must not touch normal dns/default routing

so far multilink is working, and don't see any other network issues

Nnovember781 2026-09-25 github

Ok I'm an idiot... I was missing the mesa-vulkan-drivers-freeworld swap...

the rest of the mesa-freeworld packages let me use VAAPI just fine but SteamVR hard locks to the vulkan encoder and not vaapi.

Mmichaelkavsak 2026-09-25 github

I have gotten pcvr working, however it has some bugs. On archlinux, I have to run 'steam -pipewire' I then get a dialogue to select what I want to share. If i try to share full desktop with dual monitors it takes both monitors and smashes them together into a single 16:9, so each monitor is essentially half width. If i try to stream a single monitor it works fine, but the cursor control from the steam frame controllers gets an offset. The solution to the offset is to disable your second monitor AND disable display scaling. So I had to set my 4k monitor to 1080p + 100% scaling instead of my typical 4k 150%. This fixes the offset issue, although clicking things at the very edge of the screen top when the browser is max is still difficult. Currently I see no way to stream both monitors as separate windows within the steamframe.

Image
Nnovember781 2026-09-26 github

Replying to https://github.com/ValveSoftware/SteamVR-for-Linux/issues/946#issuecomment-5840998298

when you are getting the desktop display, are you selecting the desktop from the headset dashboard while streaming or are you using some other way to see your desktop? I'm just getting a black screen, sometimes with a cursor.

Fedora 44
KWin
steam -pipewire

00xBA5E64 2026-09-28 github

I have gotten pcvr working

@michaelkavsak I'm confused by this since your description seems only to describe getting traditional 2D streaming working with the frame, considering your talk of desktop resolutions and traditional aspect ratios like 16:9.

To clarify, have you actually managed to get streaming of PCVR games to the Steam Frame working (Eg; Half Life Alyx) from your system, or only desktop/2D game streaming?

RRudidasRentier 2026-09-28 github

Confirming PCVR works for me on a non-SteamOS Linux desktop, including the wireless adapter. I only did short tests, but ran alyx (sound issues however!) , Beatsaber (working fine), Skyrim VR (needs controller remapping i think)

Setup:

  • CachyOS , KDE Plasma 6 on Wayland, no gamescope session
  • RTX 5080, proprietary NVIDIA driver
  • Steam Frame 256GB

What works:

  • PC VR streaming over regular Wi-Fi
  • PC VR streaming via the 6 GHz wireless adapter + WIFI — recognised and working out of the box, no manual driver install

One gotcha that cost me a while, and I suspect it will bite others:

My existing ufw rules were scoped to my LAN subnet, so they did not cover the adapter traffic at all, and the headset simply reported that it could not reach the host. Disabling ufw made it work immediately.

After plugging in the adapter, check which interface and subnet it brought up:

ip -br a

After allowing the subnet everything "just worked".
I did not use any launch params for SteamVR.

GGijsBellaard 2026-09-29 github

My experience is awful.
Streaming Half-Life: Alyx (linux version, no Proton) from my desktop to the frame is basically impossible.

Setup:

  • CPU: AMD Ryzen 7 7800X3D (integrated graphics disabled in the BIOS)
  • GPU: NVIDIA GeForce RTX 5070 Ti
  • Motherboard: MSI PRO B650-P WIFI (BIOS 1.L7)
  • Headset: Steam Frame
  • Ubuntu 24.04.5 LTS, kernel 7.0.0-34, GNOME on X11
  • NVIDIA driver 595.91.07 (nvidia-driver-595-open)
  • NetworkManager with wpa_supplicant (iwd removed)
  • SteamVR stable (2.17.x)
  • WIFI is off, running wired.

Problems Encountered & Fixed:

  • The firewall blocked the Frame. UFW dropped Steam discovery (UDP 27036) and the VR stream (UDP 10400). Fixed with rules.
  • VRInitError_Compositor_UnableToCreateDevice (405). Driver 580 lacked a Vulkan extension (-7). Fixed with a newer driver though.
  • The compositor ran on the AMD integrated GPU (CreateDriverDirectModeResolveTextures) causing errors. Fixed by turning off the integrated graphics.

Continued Problems:

  • The Steam VR UI sometimes appeared twice in my VR view.
  • The Wireless Adapter never connects.
  • Half-Life Alyx crashes or freezes when killing barnacles. (crash libscenesystem.so (a null pointer) with nvidia driver 610, freeze with driver 595)
  • Steam VR on PC randomly crashes
  • When starting a VR stream from the Frame without first starting SteamVR on the PC everything breaks.
  • The Steam PC client crashes whenever starting a desktop stream from within the Frame (in libnvidia-glcore).
Rrbrauer 2026-09-29 github

Not sure how helpful this will be, but this is my experience so far.

x86_64 Linux 7.2.7-arch1-1
KDE Plasma on Wayland
NVIDIA Corporation NVIDIA GeForce GTX 1660/PCIe/SSE2
4.6.0 NVIDIA 615.71.09

Edit: Forgot to mention I'm using the beta Steam client and SteamVR on PC and stable on the headset.

When the headset reports only "2D-Streaming: Ready", 2D streaming works. Adding the firewall rules below causes it to report "Streaming: Ready" and "Local Wi-Fi: Ready". Now, 2D streaming no longer works. It launches the game on the host, but disconnects / will not display on the headset. I've also tested with the firewall disabled with the same result.

ufw allow proto udp from 192.168.1.0/24 to 192.168.1.0/24
ufw allow proto udp from 162.254.192.0/21 to 192.168.1.0/24

In this state, SteamVR will connect to it. When a VR game (Superhot VR) is launched from the headset on the PC, the game is displayed on the PC but never comes up on the headset. The headset displays appear to change modes twice. They flash and a message comes up with 90Hz and then 120Hz. At least once I noticed through the pass-through while wearing the headset that the game displayed on the PC was tracking the headset movement.

Looking at dmesg after, I've seen various segfaults in vrcompositor:

[10293.333135] vrcompositor[36792]: segfault at 7f893c407030 ip 00007f893c407030 sp 00007fff81ef93f8 error 15 likely on CPU 8 (core 2, socket 0)
[10293.333175] Code: 00 00 50 16 3d 3c 89 7f 00 00 a0 55 3d 3c 89 7f 00 00 a0 97 3d 3c 89 7f 00 00 b8 8f 00 00 1c 00 00 00 80 fe 43 3c 89 7f 00 00 <70> fe 43 3c 89 7f 00 00 81 00 00 00 00 00 00 00 40 78 40 3c 89 7f

[10369.450571] vrcompositor[38895]: segfault at 64 ip 0000555f006959cc sp 00007ffe6dd138e0 error 4 in vrcompositor[2389cc,555f005ab000+37d000] likely on CPU 7 (core 1, socket 0)
[10369.450586] Code: 48 8d 83 c8 01 00 00 48 89 45 c8 49 39 c4 0f 84 da 00 00 00 4c 8d 3d db 07 f0 ff eb 62 90 f0 41 83 45 08 01 48 8b 3b 48 8b 07 <ff> 50 18 89 c2 4c 89 f1 4c 89 fe bf 02 00 00 00 31 c0 e8 3d 49 08

[ 1772.601148] vrcompositor[9082]: segfault at 7f4d9c41bc90 ip 00007f4d9c41bc90 sp 00007ffec978f248 error 15 likely on CPU 6 (core 0, socket 0)
[ 1772.601161] Code: 00 00 6a 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 67 00 00 00 0c 00 00 00 02 00 00 00 00 00 00 00 6a 00 00 00 14 00 00 00 <64> 75 6c 65 00 39 32 00 61 00 00 00 00 00 00 00 b0 c2 5b 9c 4d 7f
GGijsBellaard 2026-09-29 github

@rbrauer

I get exactly the same compositor crashes

Nnevy96 2026-09-29 github

So my experience has been, that everything worked correctly!

My PC

  • Distro: CachyOS
  • Kernel: 7.2.8-1-cachyos
  • GPU: AMD Radeon RX 9070 XT
  • DE: KDE Plasma Wayland 6.7.5
  • Steam client: beta
  • SteamVR 2.18.1

Tested VRChat and some other games, no crashes for me. Overall I am pretty happy with the experience.
I had to enable WiFi in my system, otherwise SteamVR cannot manage the dongle via NetworkManager.
I was streaming with 120Hz and all of the other settings on auto.

When in game, the streamed SteamVR dashboards/overlays are pretty wobbly and janky, but I guess this is still WIP and not a big dealbreaker.

Ccorngood 2026-09-30 github

I'm having a lot of trouble with the wifi. I've set the AP on the frame to custom (ssid=frame). I have seen the network show up in scans before from various devices who can connect just fine to other 6GHz networks (phone, intel laptop, dongle). I've been able to connect to it from my phone, but only intermittently.

[steamos@frame ~]$ iw dev
phy#0
	Unnamed/non-netdev interface
		wdev 0x4
		addr [...]
		type P2P-device
	Interface wlanap
		ifindex 14
		wdev 0x3
		addr [...]
		ssid frame
		type AP
		channel 37 (6135 MHz), width: 160 MHz, center1: 6185 MHz
		txpower 5.00 dBm
		multicast TXQ:
			qsz-byt	qsz-pkt	flows	drops	marks	overlmt	hashcol	tx-bytes	tx-packets
			0	0	21	0	0	0	0	3768		21
	Interface wlan0
		ifindex 12
		wdev 0x1
		addr [...]
		ssid [...]
		type managed
		channel 36 (5180 MHz), width: 80 MHz, center1: 5210 MHz
		txpower 5.00 dBm
		multicast TXQ:
			qsz-byt	qsz-pkt	flows	drops	marks	overlmt	hashcol	tx-bytes	tx-packets
			0	0	0	0	0	0	0	0		0

Most people here seem to be having no problem with this. @GijsBellaard you mentioned "The Wireless Adapter never connects.". Is that consistent with what I'm seeing?

Edit: of course as soon as I post I make some progress.

I switched back to 'steam' AP mode, connected the dongle, did a scan and found 'frame_*' SSID. Starting steam still failed to connect, so I did a nmcli conn delete 'Steam Frame Wireless Adapter', and then restarted steam. Now it's connecting.

00xBA5E64 2026-09-30 github

Here's my experience troubleshooting and ultimately getting HL:A streaming to work with the dongle on Linux. I'm on Arch Linux with CachyOS packages, 7950X3D & 7900XTX.

Any attempt to start streaming Half-Life: Alyx directly from the Steam Frame would only get you to the menu, but "Continue" or "New Game" would only get you in the gray rocky loading environment before locking up with a pop-up on the desktop:

SteamVR runtime failure!
Timed out waiting for response from Mongoose.
SteamVR needs to be restarted.

An interesting detail here is that the gray rocky loading environment did not have the "LOADING" text it is meant to show, so if you're not seeing it either, my following findings may apply to you too.

Streaming purely SteamVR directly via "Streaming Status" -> <my-pc> -> "Advanced" -> "Stream VR Without Game" gave me a choppy feed of broken lines:
Image
This turned out to be due to launch options I'd set for SteamVR in my Steam library previously when setting up ALVR. After removing these and launching SteamVR manually I was prompted to grant it superuser privileges for some sort of additional system configuration. After which its been working fine.

Now if I enter SteamVR first via "Stream VR Without Game", and then begin streaming HL:A from the same UI, I get proper "LOADING" text in the loading screens, and the game appears to start and run properly.

This still feels like a workaround and so I hope we'll see this addressed in the near future, especially considering this being effectively a launch title.

Mmmseng 2026-10-01 github

if I enter SteamVR first

My experience has been mixed, but one thing that's been consistent is that launching games which should launch SteamVR (e.g. BeatSaber), simply doesn't launch SteamVR, meaning they launch without the necessary SteamVR bits, which apparently includes the necessary OpenXR components. Launching SteamVR first and then launching the game always fixes this particular issue for me. I'm sure this will get fixed eventually.

Personally I have other issues. I can't get the dongle to connect to the headset at all in Mint, but my guess is that's due to the older (7.0) kernel.

In Nobara with a 7.2.6 kernel I can get the dongle to connect (usually after a raindance restarting SteamVR on both the PC and headset), and it will even work flawlessly in multistreaming mode for a while. But after a while, I will lose audio entirely. Also taking the headset off will frequently cause it to lose either the Wifi or the dongle connection, or both. On top of that SteamVR like to crash randomly.

Pretty much all of these things are resolved by restarting SteamVR on the PC, or on the headset, or restarting the headset entirely. But even then sometimes the headset will just never get a wifi connection and/or dongle connection back. It's an entirely unpredictable buggy mess.

I've tried various combinations of the SteamVR beta on PC, beta client on the headset, etc. But nothing has improved the inconsistency.

I will say that on both OSes I had almost no issues with wifi-only streaming (or flatscreen remote play for that matter). And the headset works flawlessly standalone as well. It's only after throwing the dongle into the mix that things go crazy.

Update: today I was able to multistream BeatSaber for a good couple hours with zero issues. However it did take a handful of SteamVR restarts on both the PC and headset to make that stable in the first place. And then SteamVR on the PC crashed immediately when I manually closed it afterward. So the functionality is clearly possible, it's just not consistent. With that said, today I moved my dongle from a front port on my PC (for which I don't really know the specs offhand) to an active, powered 16ft USB extension plugged into a known fast port on my motherboard backplane. The extension placed the dongle squarely above where I stand to play VR. Whether this change actively helped eliminate the various issues and disconnects is debatable. Either way there are clearly still big issues.

P.S. Also I'm sorry to the originator of this issue, who put together such a lovely info request and got exactly nothing except for a bunch of technically-off-topic anecdotes from users. To be fair I think there's some good info in here.

OOrangestar12 2026-10-01 github

I'm going to assume this is the place to put this, but I am also having issues with the dongle on Arch Linux, Kernel 7.2.7-zen1-1-zen

I can see the adapter with lsusb

Bus 004 Device 010: ID 28de:2432 Valve Software 802.11ax WLAN Adapter

and frame-dongle-troubleshoot.sh reports no errors after I set my regulatory domain.

➜  ~ sudo ~/Downloads/frame-dongle-troubleshoot.sh
[sudo] password for orangestar: 
-- Steam Frame Wireless Dongle Troubleshooting script v0.4
--
-- Lines beginning with PROBLEM are issues which will prevent the dongle from working.
-- Lines beginning with INFO may not prevent the dongle from working, but are worth looking into.

which: no firewall-cmd in ([my $PATH])
SUCCESS: None of the most obvious/common problems seem to have turned up!

Despite this, connecting the dongle to my computer does nothing. I've tried multiple ports, but there's nothing onscreen and the frame says no adapter is connected.

Other people have been saying Steam needs to be able to do something with NetworkManager in order to add the hotspot... should my user be in a specific group or should I give Steam access to modify some file in order to grant this access?

Ccorngood 2026-10-01 github

Other people have been saying Steam needs to be able to do something with NetworkManager in order to add the hotspot... should my user be in a specific group or should I give Steam access to modify some file in order to grant this access?

It depends on how polkit is setup. On my nixos/gnome laptop I just got an OS prompt asking to allow the process to change network stuff.

On my more barebones desktop machine (nixos/sway), I had to add myself to the networkmanager group, but that's because of a nixos specific polkit config:

    polkit.addRule(function(action, subject) {
      if (
        subject.isInGroup("networkmanager")
        && action.id.indexOf("org.freedesktop.NetworkManager.") == 0
        )
          { return polkit.Result.YES; }
    });

Perhaps that's a standard thing?

Ccorngood 2026-10-01 github

today I moved my dongle from a front port on my PC (for which I don't really know the specs offhand) to an active, powered 16ft USB extension plugged into a known fast port on my motherboard backplane.

I didn't use an extension, but moving to a USB3 backplane port seemed to solve a lot of problems for me with the driver freezing and failing to connect.

Bbrandonbunce 2026-10-01 github

+1, same situation here: Steam Frame on a non-SteamOS desktop (Debian 13, kernel 7.1.13, KDE Plasma Wayland), and nothing official covers this setup.

System: Ryzen 9 9950X, RX 9070 XT (RADV), Frame on the SteamOS 0.4.2 preview channel, SteamVR 2.17.10.

What I ran into, in case it helps:

  • Adapter driver: Debian's kernel doesn't build rtw89_8852cu (CONFIG_RTW89_8852CU not set), so the wireless adapter has no driver. I had to backport rtw89 from 7.2.8 via DKMS. Steam also expects a holo-realtek-firmware-toggles helper that only exists on SteamOS ("low latency mode unavailable").
  • SteamVR startup on Linux: Proton titles fail with VRInitError_Init_InterfaceNotFound unless SteamVR is already running and the HMD is connected before launch (same as #962).
  • Stream quality: frequent stutter and stream-reset storms. The PC side is clean (0 late frames in SteamVR frame timing), but under game load 1–4% of the video packets sent to the adapter never reach the headset's radio, measured by counting packets at both ends. At idle nothing is lost. I also hit the pFrame->ulVideoTimeline == ulTimelineSequence assert from #965.
  • Shared radio: taking the headset off home Wi-Fi (so its single ath12k radio stays on the 6 GHz link) cut resets by about 75% but didn't eliminate them.

It would really help to know which host distros, kernels and driver versions are supported or tested for the Frame and its adapter on Linux.

Mmmseng 2026-10-01 github

It would really help to know which host distros, kernels and driver versions are supported or tested for the Frame and its adapter on Linux.

This is basically the crux, and actually relevant to the OP. With this information we could at least have a target to shoot for to bring all our various systems into alignment. However I suspect we won't see something official until it's officially supported on SteamOS. Taking a step back, we're all here trying to break into something that even Valve hasn't officially cracked yet. Releasing the product without this support is lame of course, but that's beside the point here.

Personally I'd just like to hear an official statement on WHERE (let alone WHEN) we can expect to see an announcement that there's some form of support officially released, and documentation of the details. Currently this crowd is all over the place (GitHub, Steam forums, Reddit, Steam Support, etc.). Bringing us (and the relevant information) together in a more coherent and orderly fashion would probably be quite useful for a lot of folks going forward, even after official support is announced, for troubleshooting purposes.

Ssmirgol 2026-10-01 github

FWIW:

My system

OS: Xubuntu 24.04.5 LTS x86_64
Kernel: 7.2.8 (self-compiled)
GPU: AMD ATI Radeon RX 7900 XTX
GFX Driver: 26.2.3~kisak1~n
Steam: latest beta
Steam Frame: latest beta (though doesn't matter I guess)

I also had issues with lsusb showing the dongle, but neither Steam nor the Frame recognized the dongle.
Turns out by default only the PCIe of the driver required for the dongle is built-in. So I had to compile a kernel module for usb.
If you are a developer and have a lot of local networks, that can be an issue as well, as Steam only broadcasts to the first 16 networks - if you boot with the dongle you should be okay, but if you plug it in and already have 16+ networks (hello docker), it won't work.
I've also disabled my onboard wifi, as I usually don't use that, but wifi needs to be active for the dongle to work.

tl;dr: When I made the dongle and streaming work, I've compiled a file that contains what we did, along with a script to toggle on/off my onboard wifi - maybe it is of use to someone.

For me it works, since recently also without starting steam with the previously required -vrlinkforceenable. It still has its usual SteamVR quirks here and there (right now it only shows a black screen, will be fixed soon), network switches on and off, but overall it works pretty good. Remember to start SteamVR before you start to stream. I have not yet fiddled with the powersaving, wasn't necessary yet.

README.md

onboard-wifi.sh

CCarlB86 2026-10-01 github

My Environment

Item Value
OS Nobara Linux 44 (KDE Plasma Desktop Edition), Fedora-based
Kernel 7.2.6-201.nobara.fc44.x86_64
Desktop / Network stack Plasma 6.7.4, NetworkManager 1.56.1, wpa_supplicant 2.11
Steam steam_client_publicbeta_ubuntu12, build 1790545198
Dongle USB ID 28de:2432 (Valve), product string "802.11ax WLAN Adapter", mfr string "Realtek", serial 00e04c000001
Wi-Fi chip Realtek RTL8852CU (802.11ax / Wi-Fi 6E), USB 2.0 device (bcdUSB 2.00, MaxPower 500 mA)
Linux driver in-kernel rtw89 (rtw89_usb → rtw89_8852c → rtw89_8852cu), no external driver installed
Firmware loaded rtw89/rtw8852c_fw-2.bin, firmware version 0.27.129.4 (3f1a5302)
Interface wlp17s0u3, mode: managed (station), MAC c2:d8:40:79:18:1c
Host USB controllers AMD 800 Series Chipset ("Promontory 21") XHCI, PCI 1022:43fd rev 01, driver xhci_pci_prom21 (built into Nobara kernel, author Jihong Min)
Reference OS Windows 11 — dongle + Steam + Frame pair and work on identical hardware

My issue was after plugging in the dongle, the network manager would do an infinite loop of losing the connection and re-attempting the connection. There was also a problem where steam would never make the connection to the frame.

I was able to get the dongle connecting by loading in a different driver than what was on the Nobara 44 kernel also using a different USB port. This hasn't resolved all issues, since now streaming from the PC to Frame is unreliable due to it rendering the game on PC, but not to the frame. Alternatively it will render on the frame, but inputs are ignored (controller and head movement).

Driver that worked for me — morrownr/rtw89

https://github.com/morrownr/rtw89.git

Steam Support Answer

This was the steam support response to my troubles:

Hello,

Thank you for contacting Steam Support.

SteamVR on desktop Linux isn't fully supported at this time. While many games may work, you may run into performance or compatibility issues.

With that said, Steam Support's ability to provide in-depth support for issues that may arise from using the wireless adapter on Linux PCs is limited.

If you're using the Steam Frame wireless adapter, Linux PCs require Linux kernel 7.2+.

We're working on expanding support following the launch of the Steam Frame.

Mmmseng 2026-10-01 github

streaming from the PC to Frame is unreliable due to it rendering the game on PC, but not to the frame. Alternatively it will render on the frame, but inputs are ignored (controller and head movement).

That's about where I'm at as well. With enough SteamVR restarts on the PC and headset I can get eventually get it to randomly work and then it will be stable for a session, or until I take the headset off and let it go idle. After that I have to do the raindance again.

MMolier 2026-10-02 github
Hi all, I've done a lot of searching these past evenings since I got the frame and was determined getting it working streaming on my linux host and wanted to share it all. Ive gotten it from a broken state to a **basically perfect working state** using all the things I found online that others had already tested ( like no dual link mode etc). So i wanted to leave a comment here aggregating it all for future people finding this thread and for fixes for the next SteamVR beta releases. I put a formatted full verbose overview under here which should be very useful for a lot of issues.

Data point from a non-SteamOS host that now works (CachyOS, kernel 7.3.0-rc4, Plasma 6 Wayland, RX 9070 XT / RADV, SteamVR 2.18.2 beta, Frame OS 0.4.3 beta): full Beat Saber songs with 0 lost packets and 0 stream resets, Alyx at 120 Hz. What it took, in the order it bit, measured rather than guessed:

  1. Adapter TX power (the stutter, and the "1 to 4 % loss under load"). The Frame hotspot advertises a 6 GHz VLP AP and rtw89 then limits the adapter to 4 dBm per chain; the Windows driver uses the chip maximum. The headset hears the adapter 13 dB weaker and the MAC retransmits until vrlink resets. Measurements and the driver change are in #965 (today's comment). @brandonbunce this is most likely your 1 to 4 %.
  2. Kernel 7.3 for a chipset USB port. On the AMD chipset xHCI at SuperSpeed every 2.4 GHz scan crashed the adapter (reconnect every 3 s). 7.3 drops the adapter's 2.4 GHz band (commit 355626a2) and the same port works at 5000M. The whole cable chain must be USB 3: a USB 2 extension caps the link at 480M and looks exactly like "packet loss at higher bitrates".
  3. Plasma session, not a gamescope session. In Game Mode VR titles render as a flat floating window. Steam started with -pipewire -vrlinkforceenable and PRESSURE_VESSEL_IMPORT_OPENXR_1_RUNTIMES=1 in its environment (without it Proton OpenXR titles failed with XR_ERROR_RUNTIME_UNAVAILABLE even with SteamVR running), SteamVR started before the game (#962). Steam relaunches itself without the flags after a crash; check /proc/$(pgrep -x steam)/cmdline when games suddenly open flat.
  4. Pin the stream to the adapter: driver_vrlink.allowMultipleLinks false plus an nftables rule dropping UDP 10400/10401 on every interface except the adapter's, same conclusion as the last comment in #962. tailscaled stopped during VR, vrlink binds it otherwise.
  5. polkit when Steam is started from ssh or a script: NetworkManager refuses the adapter profile (Insufficient privileges in remote_connections.txt) and SteamVR sits at "Awaiting Wireless Connection (215)". A polkit rule allowing org.freedesktop.NetworkManager.* for the user fixes it; starting Steam from the desktop session avoids it.
  6. rfkill and radio state: systemd-rfkill had saved the adapter's port as blocked once (rfkill unblock wifi). Wi-Fi must be enabled for Steam to manage the adapter. After a session nmcli radio wifi off stops Steam's 60 s link retries while the headset sleeps (ValveSoftware/steam-for-linux#13643).
  7. holo-realtek-firmware-toggles installs fine from the SteamOS package on a desktop and Steam calls it on connect. Its rate-cap step (iw set bitrates) oopsed the 7.3-rc driver and froze networking here, so that one step is disabled locally; the packet-detection and power-save steps are kept.
  8. GPU in the VR power profile (pp_power_profile_mode 4 on amdgpu): otherwise clocks dip between frames and head turns judder even in menus with a clean link.
  9. Resizable BAR on. With a 256 MiB BAR, heavy titles (Alyx) ran in slow motion with the GPU idle: every DRM_IOCTL_AMDGPU_CS spent 14 to 34 ms in the DRM buddy allocator (__alloc_range_bias), render thread 95 % kernel time. It also produced "black frames" that looked like an encoder regression after 2.18.2. dmesg | grep BAR= should not say 256M.
  10. Never enable steamvr.showLegacyMirrorView on this stack: every compositor start then hangs (monitors in DPMS off) or aborts on its first frame (ASSERT ppRTs[0] != nullptr) and the headset reconnects every 15 s.
  11. The headset's home Wi-Fi scans share the radio with the 6 GHz hotspot: one scan gave 2000+ stream aborts. Home Wi-Fi off during a stream (headset wlan0 unmanaged, NAT from the host so it keeps internet) removed them; same 75 % effect brandonbunce saw.

Smaller: public 2.17.10 has the AMD right-eye jitter (#938, fixed in 2.18.1), so stay on the beta on AMD. The Steam in-game overlay teardown aborted steamwebhelper on every VR game exit here (per-app overlay off avoids it). A TV output at scale 2 under Plasma doubles Xwayland and makes Steam's game-window capture deadlock and exit (Driver deadlock in hardware accelerated desktop capture); keep spectator outputs at scale 1.

Bbrandonbunce 2026-10-02 github
I am happy to report that I have streaming stable on my Debian 13 system! Not necessarily perfect, of course, but Pavlov is now playable for me lol with the occasional stutter every few minutes or so. Big thanks to @Molier because the transmit power was the final missing piece for me. -- I will continue tweaking and seeing the best possible performance I can get out of this setup and will update here if I find anything cool. -- I have an AI slop summary for anyone below that would like to try getting this working. Also want to note that Multi-link streaming did not seem to be a deal breaker for me, it did stutter a little bit more in my unscientific testing, but you should try keeping it on if you value moving around your environment.

System

Host OS Debian 13 (trixie), kernel 7.1.13+deb13-amd64 (Debian backports), KDE Plasma 6.3.6 (Wayland), Secure Boot on
CPU / RAM AMD Ryzen 9 9950X, 92 GB
GPU AMD RX 9070 XT (GFX1201), Mesa 26.1.6 (RADV), Resizable BAR on; Raphael iGPU also present
Steam Client 1788652215 (stable)
SteamVR 2.18.2 beta (build 25664061). Was 2.17.10 stable for most of the testing
Proton Proton Experimental
Headset Steam Frame, SteamOS 0.4.3 preview (build 20260930), kernel 6.18
Adapter Steam Frame Wireless Adapter 28de:2432 (RTL8852CU), firmware 0.27.129.4, USB 3 at 10 Gb/s on a CPU root port
Link 6 GHz ch 37 (6135 MHz), 160 MHz, regdomain US, signal -48 to -57 dBm, HE-MCS 6–7 2SS from the host
Title tested Pavlov VR (Proton, -dx11)

Stream settings

  • 108 Hz (also tested 120/144 Hz)
  • Render target 2160×2160 per eye
  • HEVC over Vulkan Video, 4 slices (encode surface 1088×4352, VTE_USE_ENCODE_TARGET_WIDTH = 1152)
  • Automatic bandwidth: about 300 Mbit/s over the adapter during play
  • Multi-link off, stream pinned to the adapter (see below)

What was needed, in order of impact

1. Adapter driver. Debian's 7.1 and 7.2 kernels don't build CONFIG_RTW89_8852CU. On the 7.1 in-tree stack the adapter stayed on USB 2 and hung NetworkManager/RTNL. I now build SteamOS's own rtw89 via DKMS: drivers/net/wireless/realtek/rtw89 from Valve's linux-neptune-72 7.2.7-valve1 source package (steamdeck-packages sources/jupiter-main), which is upstream plus about 180 backported fixes. A two-line compat header makes it build against 7.1. The rtw8852c firmware SteamOS ships is byte-identical to linux-firmware's.

2. Adapter TX power (biggest single improvement). As @Molier described in #965: the Frame's hotspot advertises a 6 GHz VLP AP, and rtw89 then applies VLP client limits to the adapter. I added a reg6_pwr_override module parameter in regd.c (options rtw89_core reg6_pwr_override=1 selects LPI). iw dev … info went to txpower 12.00 dBm, the US 6 GHz regdomain limit.

3. Multi-link off and the stream pinned to the adapter. With allowMultipleLinks on, vrlink sent a full second copy of the stream over Ethernet → router → the headset's home Wi-Fi: about 295 Mbit/s on top of 300 Mbit/s on the adapter. The headset received only about 211 Mbit/s of that copy, and its single radio had to serve both bands. Fix: driver_vrlink.allowMultipleLinks false plus an nftables table that drops UDP 10400/10401 on every interface except the adapter and lo. vrserver now binds only the adapter, and Ethernet carries 0 Mbit/s of stream traffic.

4. SteamVR 2.18.2 beta (AMD right-eye jitter fix, #938).

5. SteamOS's low-latency mode, rebuilt to work under Secure Boot. Steam calls holo-realtek-firmware-toggles set-low-latency-mode on|off, which doesn't exist on desktop distros. SteamOS's version (holo-main holo-realtek-firmware-toggles 1.3-3) writes rtw89 debugfs (disable_dm, static_pd_th, write_reg), and kernel lockdown blocks those under Secure Boot. I re-implemented it as:

  • a low_latency rtw89 module parameter (sysfs is still writable under lockdown) that blocks firmware scans and inactive power save while streaming and applies SteamOS's EDCA values (TXOP 2000 µs, CWmin 3, CWmax 7, AIFSN 1);
  • a stand-in script that also turns A-MSDU and power save off and caps HE-MCS at 0–9.

SteamOS's static -75 dBm packet-detection threshold is left out, following @Molier's finding that it makes the adapter deaf on fades.

6. rtw89 oops (wedged the whole system). iw set bitrates (the toggles script's MCS-cap step) while the adapter isn't associated causes a NULL dereference in __rtw89_phy_rate_pattern_vif. The default channel is 2 GHz, and the 28de:2432 adapter registers no 2 GHz band, so sband is NULL. It happens with the wiphy lock held, so RTNL wedges and networking hangs until reboot. Fixed with a !sband check; the script also only sets the cap while connected. This looks like the same oops @Molier hit on 7.3-rc.

7. SteamVR auto-start (#962). A launch-option wrapper starts SteamVR, waits for vrcmd --info to see the HMD, then execs the game. Without it, games launched from the headset open flat.

Other host settings in place:

  • adapter power save off (rtw89_core disable_ps_mode=Y, NetworkManager wifi.powersave=2);
  • usbcore quirks=28de:2432:k (no USB LPM);
  • regdomain set to US;
  • amdgpu VR power profile while vrcompositor runs;
  • cap_sys_nice on vrcompositor-launcher;
  • DRI_PRIME unset: KDE's PrefersNonDefaultGPU in steam.desktop made games render on the iGPU and produced garbled stream frames;
  • audio.linuxPipewireForceRouting true.

Results

The reset rates below count Reset video stream because we had a stream reset request in vrserver/driver_vrlink. The retry counts are SVLFEC: substantive retry in the headset's vrlink.txt.

Configuration Stream resets Notes
7.2.8 rtw89 backport, VLP power, multi-link on, auto bandwidth, 144 Hz 70–680 / min Constant stutter, frequent fades to the SteamVR environment
Same, bandwidth capped at 60 Mbit/s, 120 Hz 20–25 / min Still stuttering
SteamOS rtw89, VLP power Adapter path lost 0.56% of packets under load Headset retries 5–99 consecutive packets at a time
+ TX power fix (LPI, 12 dBm) 13 in 2 min (one burst) One fade, during a 25–73 ms latency spike on the adapter link
+ multi-link off, pinned to adapter, SteamVR 2.18.2 beta 11 in ~14 min About 13 FEC retries/min, no fades, playable

The game side was clean throughout: 0 late frames and a GPU frame time around 5 ms in compositor frame timings.

Measured and ruled out:

  • PC and headset socket or receive drops (RcvbufErrors, ath12k device_dp_stats, REO counters all 0);
  • OpenSSL falling back to software (hardware AES at 1470 MB/s);
  • Resizable BAR;
  • network-change events;
  • a 10 Gb/s vs 5 Gb/s USB port;
  • the PC's rmem_default (vrserver sets its own buffer sizes).

Still for Valve:

  • vrlink turns a 20–70 ms delivery stall into a full encoder reset; a backtrack window that tolerates a stall would hide most of what's left;
  • SteamVR doesn't auto-start on desktop hosts (#962);
  • there's no supported way to pin vrlink to the adapter interface;
  • Steam retries the adapter link every 60 s while the headset sleeps (steam-for-linux#13643), with a "disconnected" notification each time;
  • the low-latency helper relies on debugfs, which Secure Boot lockdown blocks.
Bbrandonbunce 2026-10-02 github

P.S. Also I'm sorry to the originator of this issue, who put together such a lovely info request and got exactly nothing except for a bunch of technically-off-topic anecdotes from users. To be fair I think there's some good info in here.

This kind of info dump is probably the best we're gonna get until the Steam Frame is successfully released fully and Valve can reallocate devs to the treadmill work of getting this working on multiple distros 😭. Also, like @mmseng says, there is no central spot for this kind of info anyway so might as well do it right on top of SteamVR repo lol.

Ddanwillm 2026-10-03 github
  1. Many Linux configurations already support streaming to Steam Frame and other headsets using Steam Link, and we hope you'll find your configuration also works too. If you're already using Steam Link with a Quest, we expect streaming to a Frame would also work just fine. If either streaming to a Quest or Frame don't work, that's something we'd want to look at resolving.

  2. The dongle is supported on SteamOS 3.9+, or Linux kernel 7.2+. There are also additional patches currently working their way through various packages to better support the dongle, so we expect that your experience streaming with the dongle to improve in the future.

  3. Similar to Quest, WiFi streaming is supported on it's own but you'll want to make sure you're using a 5GHz router plugged directly into your PC. Multi-Link is also supported on Quest, and sends packets over multiple interfaces to ensure that you're using an optimal connection at any given time. If one were to drop, the other interface would still be streaming packets just fine and the stream shouldn't drop.

  4. We use vulkan video to encode HEVC video on the host PC. We prefer discrete GPUs, and prefer a nvidia card if available. The GPU that steam link chooses will also be the one used by SteamVR too.

  5. The audio system on the host is the same as when streaming from a Quest using Steam Link.

  6. When permission is explicitly granted in Steam Link's VR settings to send eye tracking data to other apps, XR_EXT_eye_gaze_interaction is supported on the host PC.

  7. We pay attention to issues reported on this GitHub page, as well as the SteamVR community forums. A number of issues reported here have been fixed in recent SteamVR updates - so thanks to those who have reported issues.

If you are reporting an issue, please do use the issue template and include logs/dumps as requested. A simple and concise hand-written message describing the problem you're running into, and a description of your system/configuration, goes a long way to helping us diagnose and fix the problem.

Nnuclearsheep 2026-10-04 github

I want to know the intended operation of the link adapter, I think there's userspace software conflicts with programs that control the radio.

I will post my testing here, fwiw:
PC is my existing VR rig that normally uses WiVRn + quest. It runs CachyOS with KDE Plasma, and steamVR has never worked on any of my systems-- hence wivrn.
Headset is 1TB Steam Frame.

Traditional game streaming works to this PC
XR standalone environment works for HL:A

Immediately on plugging the dongle in, there's notification spam informing me that the adapter connects and reconnects repeatedly. I think it's some conflict between networkmanager and steam trying to use the same device.
Whatever driver makes this work, it isn't kernel level because the adapter doesn't appear anywhere in lspci. Swapping networkmanager for iwd stops the usb connection loop (the adapter is now recognized as wlan199). I've also confirmed using another computer that you can just use this adapter to surf the web by itself and it's actually decent lol.

Anyways, it's possible both IWD and NetworkManager take control of the adapter (and can use it) when steam is supposed to take control and do... something with it?

The troubleshooting script by valve reports no major issues other than maybe the firewall, after updating the rules no change was observed. The firewall was also disabled completely, as suggested by RudidasRentier, but this must not have been the issue with my setup.

Nnovember781 2026-10-04 github

Replying to https://github.com/ValveSoftware/SteamVR-for-Linux/issues/946#issuecomment-5985267737

I think the notification spam is a conflict with NetworkManager trying to query 2.4ghz networks with the adapter. I've heard mentions of a driver update in a future kernel roll-out that should solve that problem, but we will have to wait and see.

For now, having the headset on and ready to connect before plugging in the adapter seems to let you occasionally win a race condition and get connected before NetworkManager throws the error.

DDoc-4 2026-10-05 github

I've been compiling various issues with using frame with Linux, mostly to do with the desktop view (Wayland, multi-monitor, pipewire flag, etc.) but would there be an appropriate place to submit feedback relating to the frame's OS itself?

For example, MPRIS works but not for Bluetooth sources, likely due to missing packages. The frame's version of steamOS is strangely sparse in terms of packages, missing stuff like that, Kate, KDE Connect, etc. Also, the current version of beta SteamOS inverts colors for steam windows including games (but not floating windows of other apps?) when sharing your view through the virtual camera with applications like Discord.

Ddanwillm 2026-10-05 github

Immediately on plugging the dongle in, there's notification spam informing me that the adapter connects and reconnects repeatedly. I think it's some conflict between networkmanager and steam trying to use the same device.

This is a known issue we are looking into addressing.

would there be an appropriate place to submit feedback relating to the frame's OS itself?

There is a community forums page for Steam Frame specifically where you can report issues: https://steamcommunity.com/app/4165890/discussions/

I believe many of the comments in the original post have been resolved, so I'm going to close this. Feel free to open a new issue if you encounter any problems.

Ffizzy6868 2026-10-11 github

Replying to https://github.com/ValveSoftware/SteamVR-for-Linux/issues/946#issuecomment-5825776747

steamrt3 kills steam VR for me had to turn it off

Proton versions