Skip to content
View in the app

A better way to browse. Learn more.

The AVSIM Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

What I like about XP12

Featured Replies

@mSparks Out of an impulse, I bought myself a barely used Pico 4 VR set (goggles, controllers). After working around a SteamVR bug and setting up ALVR to stream SteamVR via WiFi to the glasses, I found that XP12 works without any further ado. (Who'd have thought, considering this is on Linux...) Just checked the menu box and off I was. The only drawback is no audio streaming to the glasses' loudspeakers, but a bluetooth headset fixes that. And thanks to the headset's wirelessness and the controllers, I can sit myself down basically anywhere in the room and fly, which is nice.

The experience is so vastly different to 2D. Small aircraft feel actually quite tight now and the depth perception is just so much better. This has a lot of potential.

Drawbacks so far: The visual output of XP's window is rather grainy and controllers don't work well with the R22's collective. And the initial controller setup in XP is underwhelming as they are initialized with a blank mapping which requires use of the VR mouse until the basics are mapped, which is a fairly clumsy affair. And battery life of the Pico is a bit low. Good for 2 hours of use, but you can hook it up to a charger during usage. I just nee to find myself one with a long cable.

Edited by Bjoern

7950X3D + 7900 XT + 64 GB + Linux | 4800H + RTX2060 + 32 GB + Linux
My add-ons from my FS9/FSX days

  • Replies 39
  • Views 6.7k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • JonathanC
    JonathanC

    What I like is the self-contained, offline nature of the program. Don't get me wrong, I fully understand that there are many things that are better with a cloud connection, and some that are simply im

  • Just to throw my 2c in.  I have to say the X-Plane flight model is the best in a commercial flight sim, by far.  And the flexibility it allows with changing variables is outstanding.

  • Just like you pointed out, the way XP12 "paints the skies" has progressed in the right durection and nowadays there are circumstances under which I consider it even ahead of MSFS 2020. I also par

39 minutes ago, Bjoern said:

The only drawback is no audio streaming to the glasses' loudspeakers

Pipewire? My G2 doesn't automatically trigger any audio path switching to make it the default sink. I have to either manually set that with pactl or one of the pipewire gui apps (e.g. helvum). Shows up as a bog standard USB device. No special name to set it apart as the headset.

ALVR hmds will just work. At least, until steamvr breaks itself, which did happen when they released v2 of that software. Thankfully not everything VR demands steam.

Friendly reminder: WHITELIST AVSIM IN YOUR AD-BLOCKER. Especially if you're on a modern CPU that can run a flight simulator well. These web servers aren't free...

20 hours ago, blingthinger said:

Pipewire? My G2 doesn't automatically trigger any audio path switching to make it the default sink. I have to either manually set that with pactl or one of the pipewire gui apps (e.g. helvum). Shows up as a bog standard USB device. No special name to set it apart as the headset.

Aye. And yes, it works just fine. For some reason I simply did not consider checking Plasma's audio control panel, although I have to manually switch outputs each time when I want to wear my headset.

 

20 hours ago, blingthinger said:

At least, until steamvr breaks itself, which did happen when they released v2 of that software. Thankfully not everything VR demands steam.

Are there any other options for XP that do not rely on SteamVR? I've tried WiVRn, but it doesn't seem to work for XP. Probably because Laminar relies on Valve's libraries and codecs.

 

One thing that's highly annoying is that the controllers are inititalized as blank in unprepared aircraft joystick profiles, requiring laboriously assigning buttons and axes from scratch.

On the upside, I found wlx-overlay-s, which streams my monitor's content to the headset.

 

7950X3D + 7900 XT + 64 GB + Linux | 4800H + RTX2060 + 32 GB + Linux
My add-ons from my FS9/FSX days

22 hours ago, Bjoern said:

After working around a SteamVR bug and setting up ALVR to stream SteamVR via WiFi to the glasses, I found that XP12 works without any further ado.

Nice, great to know.

22 hours ago, Bjoern said:

The experience is so vastly different to 2D.

744 for that unforgettable OMG I'm in the cockpit of a 744 feeling

22 hours ago, Bjoern said:

The visual output of XP's window is rather grainy

My "guess" would be this is very likely/made worse video streaming related, the main reason I've avoided switching to a video streaming headset  so far more than anything is aiui requires wifi5, and I'm still on 802.11n.

PSVR2 adapter for PC dropped this week, Aces of Thunder has been pushed back to Q4, right now I'm borderline grabbing a PS5/PSVR2 but crazy busy, aces of thunder will tip the balance - still work to do to get that running on linux, Sony might actually end up getting me to install a windows blob #%#!@~$##!

AutoATC Developer

3 hours ago, Bjoern said:

I simply did not consider checking

It took me a couple days to figure it out the first time. It's easy to get lost in the red herrings of VR.

The only way around steamvr on linux is to replace LR's packaged libopenvr_api.so with Opencomposite.

Friendly reminder: WHITELIST AVSIM IN YOUR AD-BLOCKER. Especially if you're on a modern CPU that can run a flight simulator well. These web servers aren't free...

Found a workaround for the "empty controller assignments" issue in existing non-VR profiles. Save a working assignment from a working VR profile as the default configuration for the controllers. After switching to a non-VR profile and clicking "Done", X-Plane complains that essential axes are not bound and offers resetting the device to defaults and voilà, the assignments are there.

Note: The "reset to defaults" button in the joystick menu does not work (for me).

 

20 hours ago, mSparks said:

My "guess" would be this is very likely/made worse video streaming related, the main reason I've avoided switching to a video streaming headset  so far more than anything is aiui requires wifi5, and I'm still on 802.11n.

A cable connection for streaming is a also possible, but involves a bit of tinkering. But I think it's more of an X-Plane issue as I've set ALVR quality to maximum and my streamed desktop is very crisp. WiFi connection is also not an issue at all as my router is 4 meters away from me with direct line of sight. And I use 802.11n on 5 Ghz, too. I don't see any lag or delay whatsoever.

Speaking of, with desktop streaming, you can have X-Plane VR on your headset and an image of your desktop floating in X-Plane's world view with the very same X-Plane VR window on it. That old Xzibit meme aside, this was actually pretty useful to work around the unassigned VR controller mappings as the desktop window uses controllers for mouse input.

 

20 hours ago, mSparks said:

PSVR2 adapter for PC dropped this week, Aces of Thunder has been pushed back to Q4, right now I'm borderline grabbing a PS5/PSVR2 but crazy busy, aces of thunder will tip the balance - still work to do to get that running on linux, Sony might actually end up getting me to install a windows blob #%#!@~$##!

That looks interesting. I hope it's more classic IL-2 than War Thunder.

 

18 hours ago, blingthinger said:

The only way around steamvr on linux is to replace LR's packaged libopenvr_api.so with Opencomposite.

Did just that (downloaded Opencomposite Linux build, renamed vrclient.so --> libopenvr_api.so, replace file in "Resources/dlls/64"), started a WiVRn server and connected it to the headset, but X-Plane doesn't seem to recognize that VR is available as the box in the menu remains greyed out. I think I'm missing something, but I don't know what.

Edited by Bjoern

7950X3D + 7900 XT + 64 GB + Linux | 4800H + RTX2060 + 32 GB + Linux
My add-ons from my FS9/FSX days

4 hours ago, Bjoern said:

I think I'm missing something, but I don't know what.

Do you need to set XR_RUNTIME_JSON? It's the only VR-related evar I've got set in my XP shell script.

I've got that pointed to my custom build folder of the drivers needed to run my G2. No clue what the equivalent would be for wivrn or if you're using a system-level install. That json points to the OXR .so runtime file.

And for other VR titles that may not have the OXR loader built in (XP does), I have installed the OpenXR-SDK git. I imagine major distros might have that in their repos? Because I build it, I have to append LD_LIBRARY_PATH with the folder containing libopenxr_loader.so.

Edited by blingthinger

Friendly reminder: WHITELIST AVSIM IN YOUR AD-BLOCKER. Especially if you're on a modern CPU that can run a flight simulator well. These web servers aren't free...

11 hours ago, Bjoern said:

I don't see any lag or delay whatsoever.

As I understand it.

Its variable bitrate video streaming that targets the framerate.

So relatively static images will be fine, but as soon as things start getting change heavy it needs to reduce the bitrate to keep the framerate.

HDMI2 does 48Gbps, 802.11n maxes out at 600Mbps at best shared on everyone using it, probably a lot less.

Not tested, but to me thats a big bandwidth gap.

wifi 5 is 7Gbps, still a gap, but a significant improvement. 

AutoATC Developer

On 8/9/2024 at 2:11 AM, blingthinger said:

Do you need to set XR_RUNTIME_JSON? It's the only VR-related evar I've got set in my XP shell script.

I've got that pointed to my custom build folder of the drivers needed to run my G2. No clue what the equivalent would be for wivrn or if you're using a system-level install. That json points to the OXR .so runtime file.

And for other VR titles that may not have the OXR loader built in (XP does), I have installed the OpenXR-SDK git. I imagine major distros might have that in their repos? Because I build it, I have to append LD_LIBRARY_PATH with the folder containing libopenxr_loader.so.

Not that I know.

There's no openxr SDK for Arch. Meh.

 

On 8/9/2024 at 10:23 AM, mSparks said:

As I understand it.

Its variable bitrate video streaming that targets the framerate.

So relatively static images will be fine, but as soon as things start getting change heavy it needs to reduce the bitrate to keep the framerate.

HDMI2 does 48Gbps, 802.11n maxes out at 600Mbps at best shared on everyone using it, probably a lot less.

Not tested, but to me thats a big bandwidth gap.

wifi 5 is 7Gbps, still a gap, but a significant improvement. 

May need to try USB then, but that involves a bit of tinkering.

7950X3D + 7900 XT + 64 GB + Linux | 4800H + RTX2060 + 32 GB + Linux
My add-ons from my FS9/FSX days

1 hour ago, Bjoern said:

Not that I know.

I'm saying that you DO need to set that evar. Otherwise opencomposite doesn't know where to look for the XR runtime/drivers.

XP doesn't need the sdk. That's only for apps that don't have the OXR loader built in.

Friendly reminder: WHITELIST AVSIM IN YOUR AD-BLOCKER. Especially if you're on a modern CPU that can run a flight simulator well. These web servers aren't free...

18 hours ago, blingthinger said:

I'm saying that you DO need to set that evar. Otherwise opencomposite doesn't know where to look for the XR runtime/drivers.

Can you post the relevant VR bits of your shell script? I still do not understand how the pipeline is set up and what exactly needs to be installed, configured, overwritten and pointed at.

 

P.S: Anybody getting an XP crash when trying to use the ALIA 250 in VR?

7950X3D + 7900 XT + 64 GB + Linux | 4800H + RTX2060 + 32 GB + Linux
My add-ons from my FS9/FSX days

2 hours ago, Bjoern said:

the relevant VR bits of your shell script

This is all I've got in there:

export XR_RUNTIME_JSON=/data/src/monado_build/install/share/openxr/1/openxr_monado.json

That json is a product of the monado build process (not a distro package yet, so building manually). It points to the monado driver .so lib. Opencomposite's XR backend looks for that evar given that's a OXR standard convention. When XP makes any VR queries on linux it's always speaking openvr/steamvr. Opencomposite is translating to XR (a la zink). Currently I also have to manually start the monado server prior to entering VR mode, but that's it.

I'd be surprised if alvr/wivrn did anything different if they're adhering to the OXR spec. Or maybe there's another XR evar out there that points directly to the .so instead of the json? I would have thought AUR would set all that as part of the install. 

Edited by blingthinger

Friendly reminder: WHITELIST AVSIM IN YOUR AD-BLOCKER. Especially if you're on a modern CPU that can run a flight simulator well. These web servers aren't free...

44 minutes ago, blingthinger said:

This is all I've got in there:


export XR_RUNTIME_JSON=/data/src/monado_build/install/share/openxr/1/openxr_monado.json

That json is a product of the monado build process (not a distro package yet, so building manually). It points to the monado driver .so lib. Opencomposite's XR backend looks for that evar given that's a OXR standard convention. When XP makes any VR queries on linux it's always speaking openvr/steamvr. Opencomposite is translating to XR (a la zink). Currently I also have to manually start the monado server prior to entering VR mode, but that's it.

I'd be surprised if alvr/wivrn did anything different if they're adhering to the OXR spec. Or maybe there's another XR evar out there that points directly to the .so instead of the json? I would have thought AUR would set all that as part of the install. 

Don't overestimate AUR in that regard. While everything has a package, it doesn't mean it'll work. Prime example: ALVR, for which I have to use a prebuilt release from their repo because the AUR version does not ship a matching APK for the headset.

The stack/procedure is giving me a bit of a headache and I'm stuck. What I have so far:

  • Replace "Resources/dlls/64/libopenvr_api.so" with one from OpenComposite
  • Install Monado and wivrn-server from AUR, install WiVRn APK on headset
  • Run Monado with XRT_COMPOSITOR_FORCE_WAYLAND=1 monado-service because this is Wayland country
  • Run the WiVRn server with wivrn-server
  • Run X-Plane from its installation folder with export XR_RUNTIME_JSON="/usr/share/openxr/1/openxr_monado.json" && ./X-Plane-x86_64
  • Run the WiVRn app on the headset and connect to the server
  • Enable VR in X-Plane

While I can see X-Plane running on the screen and in the Monado window, there does not seem to be any communication between headset and PC. WiVRn is stuck on "Waiting for video stream" and there is no controller input in XP. And I'm stuck with WiVRn because there is no Linux server binary for ALXR (OpenVR fork of ALVR)...

7950X3D + 7900 XT + 64 GB + Linux | 4800H + RTX2060 + 32 GB + Linux
My add-ons from my FS9/FSX days

2 hours ago, Bjoern said:

X-Plane running on the screen and in the Monado window

This part is all I need for my G2. 

I'm on x11 and I know XP triggers xwayland. I can't imagine that's a problem with your AMD gpu though. If you don't see the hmd hardware listed in the commandline output log messages (e.g. I see

INFO [wmr_read_config] Name: HP Reverb Virtual Reality Headset G2

very early after starting the monado server) then you're seeing the software render stack output. 

That said, I am not certain that you even need Monado. Seems like you'd only need 1 OXR server running and with your hmd that would be wivrn. I noticed on the wivrn AUR page that someone made a comment about openxr_wivrn.json. I wonder if you should point to that instead of monado's json?

If that doesn't change anything, check out Envision. It's a standalone build/config tool that the FOSS VR crowd is building around Monado and most of the other components (including wivrn, so I see just now and possibly the ALV/XR twins). It pulls latest git versions and compiles them for you like AUR but also includes full installer functions. I personally compile all of the pieces on my own so have never tried it, but the Monado folks frequently recommend it and contribute to the git.

Edited by blingthinger

Friendly reminder: WHITELIST AVSIM IN YOUR AD-BLOCKER. Especially if you're on a modern CPU that can run a flight simulator well. These web servers aren't free...

22 hours ago, blingthinger said:

That said, I am not certain that you even need Monado. Seems like you'd only need 1 OXR server running and with your hmd that would be wivrn. I noticed on the wivrn AUR page that someone made a comment about openxr_wivrn.json. I wonder if you should point to that instead of monado's json?

If that doesn't change anything, check out Envision. It's a standalone build/config tool that the FOSS VR crowd is building around Monado and most of the other components (including wivrn, so I see just now and possibly the ALV/XR twins). It pulls latest git versions and compiles them for you like AUR but also includes full installer functions. I personally compile all of the pieces on my own so have never tried it, but the Monado folks frequently recommend it and contribute to the git.

No joy with WiVRn's Monado implementation. X-Plane freezes when going into settings. It can be unfrozen by hitting CTRL+C a few times, but VR is greyed out regardless. Log output is:

Quote

ALSA lib pcm_oss.c:404:(_snd_pcm_oss_open) Cannot open device /dev/dsp
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
[OC] GetXRAppName:59     Setting application name to OpenComposite_X-Plane-x86_64
^C20240813 21:34:32.672153 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
ERROR [ipc_receive_fds] recvmsg(214) failed: 'Interrupted system call'!
ERROR [ipc_client_setup_shm] Failed to retrieve shm fd!
XR_ERROR_RUNTIME_FAILURE in xrCreateInstance: Failed to create instance '-1'
Error [GENERAL | xrCreateInstance | OpenXR-Loader] : LoaderInstance::CreateInstance chained CreateInstance cal
l failed
Error [GENERAL | xrCreateInstance | OpenXR-Loader] : xrCreateInstance failed
[OC] GetXRAppName:59     Setting application name to OpenComposite_X-Plane-x86_64
^C20240813 21:34:34.738191 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
ERROR [ipc_receive_fds] recvmsg(181) failed: 'Interrupted system call'!
ERROR [ipc_client_setup_shm] Failed to retrieve shm fd!
XR_ERROR_RUNTIME_FAILURE in xrCreateInstance: Failed to create instance '-1'
Error [GENERAL | xrCreateInstance | OpenXR-Loader] : LoaderInstance::CreateInstance chained CreateInstance cal
l failed
Error [GENERAL | xrCreateInstance | OpenXR-Loader] : xrCreateInstance failed
^C20240813 21:34:34.915181 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
^C20240813 21:34:35.443120 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
^C20240813 21:34:35.615204 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
^C20240813 21:34:36.084211 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
^C20240813 21:34:36.268228 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
^C20240813 21:34:36.462241 UTC 35090 WARN  SIGINT signal received. - HttpAppFrameworkImpl.cc:177
[OC] GetXRAppName:59     Setting application name to OpenComposite_X-Plane-x86_64

Running WiVRn and monado-service alongside does not change this.

Same for the WiVRn server built in Envision.

 

I think I'll give up on WiVRn for now. SteamVR and ALVR works reasonably well on WiFi and with USB passthrough. Still trying to find settings that balance visuals and framerate though.

Edited by Bjoern

7950X3D + 7900 XT + 64 GB + Linux | 4800H + RTX2060 + 32 GB + Linux
My add-ons from my FS9/FSX days

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.