{"id":15034979,"url":"https://github.com/openhmd/openhmd","last_synced_at":"2025-05-14T14:06:48.721Z","repository":{"id":8468297,"uuid":"10067225","full_name":"OpenHMD/OpenHMD","owner":"OpenHMD","description":"Free and Open Source API and drivers for immersive technology.","archived":false,"fork":false,"pushed_at":"2025-01-13T06:26:37.000Z","size":840,"stargazers_count":1244,"open_issues_count":84,"forks_count":192,"subscribers_count":113,"default_branch":"master","last_synced_at":"2025-04-14T02:57:38.333Z","etag":null,"topics":["driver","hmd","linux","multi-platform","oculus","openhmd","psvr","rift","vive","vr"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsl-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OpenHMD.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-05-14T23:37:05.000Z","updated_at":"2025-04-13T03:42:30.000Z","dependencies_parsed_at":"2024-10-15T07:40:44.107Z","dependency_job_id":"0b82c0b4-509e-4922-aba6-8ce10bd47cf6","html_url":"https://github.com/OpenHMD/OpenHMD","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenHMD%2FOpenHMD","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenHMD%2FOpenHMD/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenHMD%2FOpenHMD/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OpenHMD%2FOpenHMD/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OpenHMD","download_url":"https://codeload.github.com/OpenHMD/OpenHMD/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248813786,"owners_count":21165632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["driver","hmd","linux","multi-platform","oculus","openhmd","psvr","rift","vive","vr"],"created_at":"2024-09-24T20:27:04.554Z","updated_at":"2025-04-14T02:57:42.552Z","avatar_url":"https://github.com/OpenHMD.png","language":"C","readme":"# UNMAINTAINED ⛔️\n\nOpenHMD is currently NOT ACTIVELY MAINTAINED. If you are interested in maintaining OpenHMD, please open a github issue.\n\nOculus Rift CV1 positional tracking support is developed in this OpenHMD fork https://github.com/thaytan/OpenHMD.\n\nOpen Source XR driver development has largely moved to the Monado project:\n\n* https://monado.freedesktop.org/\n* https://gitlab.freedesktop.org/monado/monado\n\n# OpenHMD\nThis project aims to provide a Free and Open Source API and drivers for immersive technology, such as head mounted displays with built in head tracking.\n\n## License\nOpenHMD is released under the permissive Boost Software License (see LICENSE for more information), to make sure it can be linked and distributed with both free and non-free software. While it doesn't require contribution from the users, it is still very appreciated.\n\n## Supported Devices\nFor a full list of supported devices please check https://github.com/OpenHMD/OpenHMD/wiki/Support-List\n\n## Supported Platforms\n  * Linux\n  * Windows\n  * OS X\n  * Android\n  * FreeBSD\n\n## Requirements\n  * Option 1: Meson + Ninja\n    * http://mesonbuild.com\n    * https://ninja-build.org\n  * Option 2: GNU Autotools (if you're building from the git repository)\n  * Option 3: CMake\n  * HIDAPI\n    * http://www.signal11.us/oss/hidapi/\n    * https://github.com/signal11/hidapi/\n\n## Language Bindings\n  * GO bindings by Marko (Apfel)\n    * https://github.com/Apfel/OpenHMD-GO\n  * Java bindings by Joey Ferwerda and Koen Mertens\n    * https://github.com/OpenHMD/OpenHMD-Java\n  * .NET bindings by Jurrien Fakkeldij\n    * https://github.com/jurrien-fakkeldij/OpenHMD.NET\n  * Perl bindings by CandyAngel\n    * https://github.com/CandyAngel/perl-openhmd\n  * Python bindings by Lubosz Sarnecki\n    * https://github.com/lubosz/python-rift\n  * Rust bindings by The\\_HellBox\n    * https://github.com/TheHellBox/openhmd-rs\n  \n## Other FOSS HMD Drivers\n  * libvr - http://hg.sitedethib.com/libvr\n\n## Compiling and Installing\nUsing Meson:\n\nWith Meson, you can enable and disable drivers to compile OpenHMD with.\nCurrent available drivers are: rift, deepon, psvr, vive, nolo, wmr, xgvr, vrtek, external, and android.\nThese can be enabled or disabled by adding -Ddrivers=... with a comma separated list after the meson command (or using meson configure ./build -Ddrivers=...).\nBy default all drivers except android are enabled.\n\n    meson ./build [-Dexamples=simple,opengl]\n    ninja -C ./build\n    sudo ninja -C ./build install\n\nUsing CMake:\n\nWith CMake, you can enable and disable drivers to compile OpenHMD with.\nCurrent Available drivers are: OPENHMD_DRIVER_OCULUS_RIFT, OPENHMD_DRIVER_DEEPOON, OPENHMD_DRIVER_PSVR, OPENHMD_DRIVER_HTC_VIVE, OPENHMD_DRIVER_NOLO, OPENHMD_DRIVER_WMR, OPENHMD_DRIVER_XGVR, OPENHMD_DRIVER_VRTEK, OPENHMD_DRIVER_EXTERNAL and OPENHMD_DRIVER_ANDROID.\nThese can be enabled or disabled adding -DDRIVER_OF_CHOICE=ON after the cmake command (or using cmake-gui).\n\n    mkdir build\n    cd build\n    cmake ..\n    make\n    sudo make install\n\n### Configuring udev on Linux\nTo avoid having to run your applications as root to access USB devices you have to add a udev rule (this will be included in .deb packages, etc).\n\nA full list of known usb devices and instructions on how to add them can be found on:\nhttps://github.com/OpenHMD/OpenHMD/wiki/Udev-rules-list\n\nAfter this you have to unplug your device and plug it back in. You should now be able to access the HMD as a normal user.\n\n### Compiling on Windows\nCMake has a lot of generators available for IDE's and build systems.\nThe easiest way to find one that fits your system is by checking the supported generators for you CMake version online.\nExample using VC2013.\n\n\tcmake . -G \"Visual Studio 12 2013 Win64\"\n\nThis will generate a project file for Visual Studio 2013 for 64 bit systems.\nOpen the project file and compile as you usually would do.\n\n### Cross compiling for windows using mingw\nUsing CMake:\n\nFor MinGW cross compiling, toolchain files tend to be the best solution.\nPlease check the CMake documentation on how to do this.\nA starting point might be the CMake wiki: http://www.vtk.org/Wiki/CmakeMingw\n\n### Static linking on windows\nIf you're linking statically with OpenHMD using windows/mingw you have to make sure the macro OHMD_STATIC is set before including openhmd.h. In GCC this can be done by adding the compiler flag -DOHMD_STATIC, and with msvc it can be done using /DOHMD_STATIC.\n\nNote that this is *only* if you're linking statically! If you're using the DLL then you *must not* define OHMD_STATIC. (If you're not sure then you're probably linking dynamically and won't have to worry about this).\n\n## Pre-built packages\nA list of pre-built backages can be found on http://www.openhmd.net/index.php/download/\n\n## Using OpenHMD\nSee the examples/ subdirectory for usage examples. The OpenGL example is not built by default, to build it use the --enable-openglexample option for the configure script. It requires SDL2, glew and OpenGL.\n\nAn API reference can be generated using doxygen and is also available here: http://openhmd.net/doxygen/0.1.0/openhmd_8h.html\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenhmd%2Fopenhmd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenhmd%2Fopenhmd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenhmd%2Fopenhmd/lists"}