Monado
More actions
| Monado | |
|---|---|
| Information | |
| Type | OpenXR runtime |
| Industry | Virtual reality, augmented reality |
| Developer | Collabora and open-source contributors |
| Written In | C, C++ |
| Operating System | Linux, Android, Windows |
| License | Boost Software License 1.0 |
| Supported Devices | HTC Vive, Valve Index, Oculus Rift S, PlayStation VR, Windows Mixed Reality headsets, Project North Star, Xreal Air series, Google Cardboard viewers |
| Release Date | March 2019 (announced) |
| Website | https://monado.freedesktop.org |
Monado is an open-source OpenXR runtime, originally built for Linux, that is primarily developed on Linux and also runs on Android and Windows.[1] It was created by Collabora, which sponsors the project, and is hosted by freedesktop.org; the README notes that "Monado" "has no specific meaning and is just a name".[2][1] It is largely the successor to OpenHMD: the OpenHMD repository now describes that project as not actively maintained and states that open-source XR driver development "has largely moved to the Monado project".[3] It may require a Vulkan-compatible graphics card, because its compositor is built on Vulkan and the Vulkan headers and loader are a build dependency.[4][1]
Collabora announced Monado in March 2019, shortly after the Khronos Group published the provisional OpenXR 0.90 specification.[4] The runtime implements the OpenXR API that applications call, and supplies the device drivers, tracking and compositor that sit between those applications and the headset.[4][1] Monado 21.0.0 was the first release to be recognized as an officially conformant OpenXR 1.0 implementation, a status that covers only its simulated device.[5] The project's top-level license is the permissive Boost Software License 1.0, and in 2026 Collabora said that Google's Android XR, Snapdragon Spaces, NVIDIA CloudXR and several other commercial XR products build on Monado components.[6][7]
History
Announcement (2019)
Collabora announced Monado on 18 March 2019, following the Khronos Group's release of the OpenXR 0.90 provisional specification. In the announcement, Jakob Bornecrantz described it as "a fully open source OpenXR runtime for Linux" with a Vulkan-based compositor that could run OpenGL and Vulkan applications in both extended mode and direct mode. Hardware support came from existing community projects, OpenHMD and libsurvive, and from native drivers written for Monado. The announcement included a "seethrough" example using the cameras of the Vive, named Project North Star as a possible first AR device to support, and said Collabora would look at using the HTC Vive Pro cameras for video see-through AR. Collabora listed its goals as bringing a fully open driver stack to mobile system-on-chip platforms, supporting as many VR and AR devices as possible, and making Linux a fully XR-enabled platform.[4] GamingOnLinux reported at the time that Monado "pulls in hardware support thanks to projects like OpenHMD and libsurvive".[8]
After OpenXR 1.0 was released, Collabora adapted Monado to the 1.0 API, which it said would be the project's target ABI from then on. Ryan Pavlik wrote in August 2019 that "there are many pieces missing to make Monado a complete OpenXR runtime", and that four new hardware drivers had been merged: PlayStation VR, the PlayStation Move controller, the OSVR HDK and the Razer Hydra.[9]
Android support and conformance (2020-2021)
In November 2020 Collabora reported that Monado 0.4 passed all of the OpenXR conformance tests with both OpenGL and Vulkan on desktop, using a simulated device. The same update added a preliminary Android build distributed as an .apk, with orientation tracking from a smartphone's IMU and display and distortion values for Google Cardboard and Daydream viewers. Collabora also noted native multi-application overlay support, work sponsored by Pluto VR.[10]
Monado 21.0.0 was tagged in January 2021 and announced by Collabora in February 2021 as an officially conformant OpenXR 1.0 implementation.[11][12] The Khronos Group noted that the conformance result applied to the simulated device, and that "anyone building a product using Monado with non-simulated hardware still needs to go through the full, normal adopter and conformance process".[5] With this release the project switched to a date-based version scheme modeled on Mesa's, in which the major number is the last two digits of the year the release branch was made. Release 21.0.0 also added a SteamVR driver that lets Monado's headset and controller drivers be used inside SteamVR, and simulated hand tracking in the remote driver based on the finger-curl model used by the Valve Index controller.[12]
Visual-inertial tracking (2022)
In 2022 Collabora added initial support for 6DoF inside-out tracking for devices with cameras and an IMU. Mateo de Mayo, who did the work as an intern on Collabora's XR team, integrated three open-source SLAM and visual-inertial odometry systems: Kimera-VIO, ORB-SLAM3 and Basalt. He reported that he could not get good results from Kimera-VIO, that ORB-SLAM3 produced usable results but is licensed under the GPL-3.0 where a permissive license would have been preferred, and that the permissively licensed Basalt was fast and worked well for real-time applications such as XR. Monado's RealSense driver and its Linux-only Windows Mixed Reality driver were extended to support this tracking; the RealSense work was tested with an Intel RealSense D455.[13] De Mayo, Daniel Cremers and Taihú Pire later published the Monado SLAM dataset, a set of real sequences recorded on several VR headsets under a CC BY 4.0 license, in a paper accepted to IROS 2025.[14]
Khronos upgrade project and later releases (2023-2025)
The OpenXR Working Group at Khronos funded a project to speed up Monado improvements, and Collabora, which responded to the request for proposals, was selected to carry it out. Frederic Plourde, the Monado maintainer at Collabora, wrote in January 2024 that the project's goals covered device compatibility, portability across Android, Linux and Windows, and new features; the planned enhancements included the LOCAL_FLOOR and UNBOUNDED reference spaces, Windows direct mode, cylinder and equirect2 composition layers, and extensions such as XR_KHR_visibility_mask and XR_EXT_eye_gaze_interaction.[15] When Khronos released OpenXR 1.1 in April 2024, it listed "Collabora's Monado open source runtime" among the conformant OpenXR implementations, alongside runtimes from vendors such as Meta, Microsoft, HTC, Valve and Qualcomm.[16]
Monado 24.0.0, released in June 2024, was the project's first tagged release in three years; its notes say most users had been running the main development branch in the meantime. It counted 4,647 commits from 105 authors or co-authors since 21.0.0. The release added initial OpenXR 1.1 support (not yet submitted for conformance), asynchronous time warp in both a new compute-based compositor backend and the revised graphics backend, optical hand tracking in some environments, support for external visual-inertial tracking modules, and face tracking through the XR_HTC_facial_tracking extension. New drivers covered Windows Mixed Reality headsets (3DoF by default, 6DoF with Basalt), XREAL Air, Air 2, Rokid and Rokid Max glasses (3DoF), the Oculus Rift S, the HTC Vive Pro 2, and Ultraleap v2 and v5 hand trackers through the vendor's API.[17]
Monado 25.0.0 followed in April 2025, with over 40 contributors and more than 400 commits, and new internal compositor interfaces for reading and requesting the display refresh rate.[18] In October 2025 Collabora added a driver for Google Cardboard and similar phone viewers that scans a viewer's QR code for lens distortion and projection parameters and provides stereoscopic rendering, IMU-based rotational head tracking and basic input. Collabora said the driver borrows some header files and constructs from the Google Cardboard SDK but is largely independent of it, because adding the SDK as a dependency was judged incompatible with Monado.[19]
Monado 25.1.0, released on 9 December 2025, is the latest tagged release as of September 2026.[11] Its release notes credit more than 50 commit authors or co-authors with more than 550 commits since 25.0.[20] It added the XR_EXT_hand_tracking_data_source and XR_EXT_future extensions, per-scanline timewarp for rolling-scanout displays, Cardboard QR-code scanning from the Android app, and new drivers for the Blubur S1, the Oculus Rift DK2 and SolarXR IPC, with improvements for the Razer Hydra, Vive Pro 2, Xreal Air 2 Ultra and a Fujitsu headset.[21]
| Version | Date | Notes |
|---|---|---|
| 0.1.0 | 25 February 2020 | Tag only, described as "not a release" |
| 0.2.0 | 29 May 2020 | |
| 0.3.0 | 10 July 2020 | |
| 0.4.0 / 0.4.1 | 2 and 4 November 2020 | Passed OpenXR conformance tests on a simulated device[10] |
| 21.0.0 | 28 January 2021 | First officially conformant OpenXR 1.0 release; date-based versioning[12] |
| 24.0.0 | 7 June 2024 | First tagged release in three years; initial OpenXR 1.1 support[17] |
| 25.0.0 | 18 April 2025 | Display refresh rate APIs[18] |
| 25.1.0 | 9 December 2025 | Hand-tracking data source and future extensions; new drivers[20] |
Dates are the release dates listed on the project's GitLab releases page.[11]
Features
Monado's source tree separates the OpenXR API implementation (the "state tracker") from hardware drivers, the compositor that performs distortion and drives the display, and shared utilities.[1] Its developer site lists support for Vulkan, OpenGL and OpenGL ES applications, D3D11 and D3D12 applications on Windows only, and headless applications without graphical output. The compositor supports direct mode on AMD, NVIDIA and Intel GPUs, uses mesh-based distortion correction with generators for headsets such as the Vive and Index, and can show several projection and quad layers at once. Multi-application support is provided through the XR_EXTX_overlay extension.[2]
For tracking, Monado includes an outside-in framework for PlayStation VR and PlayStation Move controllers that uses stereo cameras such as the PS4 camera, and inside-out visual-inertial tracking through a fork of Basalt for supported headsets with stereo or more cameras, such as Windows Mixed Reality headsets, the Oculus Rift S and the Valve Index.[2] Hand tracking is exposed through the XR_EXT_hand_tracking extension with Index controllers and with the Leap Motion controller through Ultraleap's v2 driver.[2]
On Android, Monado uses the built-in IMU of most smartphones for 3DoF experiences similar to Google Cardboard. On Windows, the developer site says mostly simulated headset and controller drivers are usable, and that direct-mode access to existing headsets without NDA APIs "remains a major blocker".[2]
Supported devices
The developer site lists the following devices as natively supported with open-source drivers. Most of the hardware drivers work only on Linux.[2]
| Device | Tracking listed by the project | Notes |
|---|---|---|
| HTC Vive, HTC Vive Pro, Valve Index | 3DoF, or 6DoF with Monado Basalt (Valve Index only) | Native "vive" driver |
| Project North Star | 6DoF with Intel RealSense T265 on-device tracking, or 6DoF with Monado Basalt | 3D and 2D/polynomial distortion correction |
| Oculus Rift S | 6DoF with Monado Basalt | Controllers 3DoF only |
| PlayStation VR | 3DoF, or 6DoF with PS4 camera or generic stereo camera | Distortion correction work in progress |
| PlayStation Move | 3DoF, or 6DoF with PS4 or generic stereo camera | |
| Razer Hydra | 6DoF | Tracking done on device in firmware |
| Windows Mixed Reality headsets | 3DoF, or 6DoF with Monado Basalt | Tested on HP Reverb, HP Reverb G2, Samsung Odyssey and Lenovo Explorer |
| Xreal Air, Air 2, Air 2 Pro | 3DoF | |
| OSVR HDK 1.x and 2.x | 3DoF | |
| Daydream controller | 3DoF |
Monado also wraps third-party drivers. It uses libsurvive for 6DoF Lighthouse tracking of the Vive, Vive Pro and Index, librealsense for the Intel RealSense T265, the proprietary Ultraleap v2 driver for the Leap Motion controller, and a steamvr_lh driver that wraps SteamVR's proprietary Lighthouse tracking. Devices supported by OpenHMD, including the Oculus Rift CV1 and Nolo CV1, can be used through Monado's OpenHMD driver.[2]
Use in other products
Collabora has described Monado as a modular base that other companies can build on, citing its modularity, a Mesa-style separation between the OpenXR API and its implementation, permissive licensing and the ability to debug the full stack. In a March 2026 post, Frederic Plourde of Collabora listed Google's Android XR, Hololight Stream, NVIDIA CloudXR, Pico's runtime for the Pico Neo 3 and Pico 4, PortalVR and Qualcomm's Snapdragon Spaces as products that use Monado components.[7] GamingOnLinux, which described Plourde as Collabora's XR lead, reported the same list.[22] In February 2026 Collabora wrote that Google had chosen Monado as the foundation of its OpenXR runtime for Android XR.[23]
Open-source projects also build on Monado. WiVRn, a GPL-3.0 application that streams VR games wirelessly from a Linux computer to standalone headsets, lists Monado among its dependencies.[24] The developer site notes that end users can run OpenXR applications such as Blender on supported hardware.[2]
See also
References
- ↑ 1.0 1.1 1.2 1.3 1.4 "Monado - XR Runtime (XRT): README". freedesktop.org GitLab. Collabora, Ltd.. https://gitlab.freedesktop.org/monado/monado/-/blob/main/README.md. Retrieved 2026-09-27.
- ↑ 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 "Monado - Developer Site". monado.freedesktop.org. https://monado.freedesktop.org/. Retrieved 2026-09-27.
- ↑ "OpenHMD/OpenHMD: Free and Open Source API and drivers for immersive technology". GitHub. https://github.com/OpenHMD/OpenHMD. Retrieved 2026-09-27.
- ↑ 4.0 4.1 4.2 4.3 Jakob Bornecrantz (2019-03-18). "Introducing: Monado". Collabora. https://www.collabora.com/news-and-blog/news-and-events/introducing-monado.html. Retrieved 2026-09-27.
- ↑ 5.0 5.1 "Monado 21.0.0 is officially an OpenXR conformant implementation". The Khronos Group. 2021-02-16. https://www.khronos.org/news/permalink/monado-21.0.0-is-officially-an-openxr-conformant-implementation. Retrieved 2026-09-27.
- ↑ "monado/LICENSE (Boost Software License - Version 1.0)". freedesktop.org GitLab. https://gitlab.freedesktop.org/monado/monado/-/blob/main/LICENSE. Retrieved 2026-09-27.
- ↑ 7.0 7.1 Frederic Plourde (2026-03-26). "How Monado became the foundation for OpenXR runtimes". Collabora. https://www.collabora.com/news-and-blog/news-and-events/how-monado-became-the-foundation-for-openxr-runtimes.html. Retrieved 2026-09-27.
- ↑ Liam Squires-Hand (2019-03-20). "OpenXR from The Khronos Group and Monado from Collabora could unify VR & AR". GamingOnLinux. https://www.gamingonlinux.com/2019/03/openxr-from-the-khronos-group-and-monado-from-collabora-could-unify-vr-ar/. Retrieved 2026-09-27.
- ↑ Ryan Pavlik (2019-08-02). "What's new in OpenXR 1.0 & Monado?". Collabora. https://www.collabora.com/news-and-blog/blog/2019/08/02/whats-new-in-openxr-and-monado/. Retrieved 2026-09-27.
- ↑ 10.0 10.1 Jakob Bornecrantz (2020-11-02). "Monado update: Passing conformance, Android support & more". Collabora. https://www.collabora.com/news-and-blog/news-and-events/monado-update-passing-conformance-android-support-and-more.html. Retrieved 2026-09-27.
- ↑ 11.0 11.1 11.2 "Releases - monado / monado". freedesktop.org GitLab. https://gitlab.freedesktop.org/monado/monado/-/releases. Retrieved 2026-09-27.
- ↑ 12.0 12.1 12.2 Jakob Bornecrantz (2021-02-15). "Monado 21.0.0, an officially conformant OpenXR implementation!". Collabora. https://www.collabora.com/news-and-blog/news-and-events/monado-2100-officially-conformant-openxr-implementation.html. Retrieved 2026-09-27.
- ↑ Mateo de Mayo (2022-04-05). "Visual-inertial tracking for Monado". Collabora. https://www.collabora.com/news-and-blog/blog/2022/04/05/visual-inertial-tracking-support-for-monado-openxr/. Retrieved 2026-09-27.
- ↑ Mateo de Mayo, Daniel Cremers, Taihú Pire (2025-07-31). "The Monado SLAM Dataset for Egocentric Visual-Inertial Tracking". arXiv (accepted to IROS 2025). https://arxiv.org/abs/2508.00088. Retrieved 2026-09-27.
- ↑ Frederic Plourde (2024-01-09). "Upgrading Monado to Empower the OpenXR Ecosystem". The Khronos Group. https://www.khronos.org/blog/empowering-the-openxr-ecosystem-the-monado-upgrade-project. Retrieved 2026-09-27.
- ↑ "Khronos Releases OpenXR 1.1 to Further Streamline Cross-Platform XR Development". The Khronos Group. 2024-04-15. https://www.khronos.org/news/press/khronos-releases-openxr-1.1-to-further-streamline-cross-platform-xr-development. Retrieved 2026-09-27.
- ↑ 17.0 17.1 "Monado v24.0.0 release notes". freedesktop.org GitLab. 2024-06-07. https://gitlab.freedesktop.org/monado/monado/-/releases/v24.0.0. Retrieved 2026-09-27.
- ↑ 18.0 18.1 "Monado v25.0.0 release notes". freedesktop.org GitLab. 2025-04-18. https://gitlab.freedesktop.org/monado/monado/-/releases/v25.0.0. Retrieved 2026-09-27.
- ↑ Frederic Plourde (2025-10-31). "Expanding access to XR: Google Cardboard comes to Monado". Collabora. https://www.collabora.com/news-and-blog/blog/2025/10/31/expanding-access-to-xr-bringing-google-cardboard-support-to-monado/. Retrieved 2026-09-27.
- ↑ 20.0 20.1 "Monado v25.1.0 release notes". freedesktop.org GitLab. 2025-12-09. https://gitlab.freedesktop.org/monado/monado/-/releases/v25.1.0. Retrieved 2026-09-27.
- ↑ Frederic Plourde (2025-12-10). "Monado 25.1.0: Enabling OpenXR experiences of tomorrow". Collabora. https://www.collabora.com/news-and-blog/news-and-events/monado-25-1-0-enabling-tomorrows-openxr-experiences.html. Retrieved 2026-09-27.
- ↑ Liam Squires-Hand (2026-03-27). "Monado becomes the open source foundation for various OpenXR (VR) vendors". GamingOnLinux. https://www.gamingonlinux.com/2026/03/monado-becomes-the-open-source-foundation-for-various-openxr-vr-vendors/. Retrieved 2026-09-27.
- ↑ Mark Filion (2026-02-18). "Monado at the core of Android XR". Collabora. https://www.collabora.com/news-and-blog/news-and-events/monado-at-the-core-of-android-xr.html. Retrieved 2026-09-27.
- ↑ "WiVRn/WiVRn: The Linux OpenXR streaming application to standalone headsets". GitHub. https://github.com/WiVRn/WiVRn. Retrieved 2026-09-27.