Join Us and become a Member for a Verified Badge to access private areas with the latest PS4 PKGs.
PS4 CFW and Hacks       Thread starter PSXHAX       Start date May 2, 2018 at 1:57 AM       3      
Status
Not open for further replies.
Hot on the heels of the PSVRFramework / PSVRToolbox, LibOrbis and OpenOrbis come updates to the Orbis ELF repository by RPCS4 and OpenPSVR by alatnet.:fire:

Download: orbis-elf-master.zip / GIT / OpenPSVR-master.zip / GIT

According to the documentation, Orbis ELF is a library for loading ELF for Orbis OS while OpenPSVR is an open source Open VR driver for the PlayStation VR virtual reality device.

From the README.md, to quote: OpenPSVR Build Requirements

Windows

  • Visual Studio
Linux
  • CMake
Building OpenPSVR

Windows


3rd Party libraries should be automatically downloaded into the 3rdParty folder via git submodule support. Make sure that libusb is built and symlinked (prefered) or copied into the 3rdParty folder of libpsvr. Also make sure that libpsvr is build after libusb is symlinked/copied and built.

1. Open the OpenPSVR.sln file in Visual Studio.
2. Modify the paths macro in the property manager (View > Property Manager [towards the bottom]{VS2017}).
3. Batch build both the win32/x86 and x64 versions if you are running the driver on a 64 bit system, otherwise just build the win32/x86 version.
4. The driver should automatically install itself in the steam vr driver folder if you modified the path macros.
5. If you do not want it to automatically install, delete the command line in the project property's post-build event.

Linux

Note: this is still a WIP as some Win32 specific parts need a linux equivalent coded. e.g. stricmp vs strcasecmp etc..
  1. Clone repo
  2. Initialise git submodules git submodule update --init
  3. Generate make files generate.sh
  4. Build driver build.sh
Installation

Windows


If you are building the driver from the solution, it should automatically install the driver into the driver folder if you configured the macro's correctly. Otherwise, copy/extract the openpsvr folder to your SteamVR\drivers folder. The openpsvr within the SteamVR\drivers folder should look like this:
Code:
openpsvr
   ├── driver.vrdrivermanifest
   ├── bin
   │   ├── win32
   │   │   └── driver_OpenPSVR.dll (be sure to have the "driver_" prefix)
   │   └── win64
   │       └── driver_OpenPSVR.dll (be sure to have the "driver_" prefix)
   └── resources
       ├── driver.vrresources
      ├── icons
       │   ├── headset_sample_status_ready_alert.png (to be changed)
       │   ├── headset_sample_status_ready_low.png (to be changed)
       │   ├── headset_sample_status_searching_alert.gif (to be changed)
       │   ├── headset_sample_status_searching.gif (to be changed)
       │   ├── psvr_error.png
       │   ├── psvr_off.png
       │   ├── psvr_ready.png
       │   └── psvr_standby.png
      └── settings
           └── default.vrsettings
Note! You must have at least WinUSB or Libusb drivers installed on at least the PS V R Control device in the device manager for windows.The PS VR Sensors device must at least have HID drivers or the WinUSB/Libusb drivers. libpsvr provides information on how to do this.

Linux

TBD (generally the same as the windows installation...)

Status

What works

  • Connecting to the PSVR
  • Turning the PSVR On/Off
  • Setting the PSVR into VR Mode
  • Reading Sensor Data
  • Finding the monitor for the PSVR (windows only, currently)
  • Moving the vr screen to the PSVR Monitor (be sure "activateMultipleDrivers" in your steam.vrsettings is set to true to have this work)
What sort of works
  • Head tracking (generally converting the sensor data into head tracking)
:arrow: In related PlayStation VR news today PSVRTracker by HipsterSloth is a sample application for demonstrating position and orientation tracking of the PSVR headset.

Download: PSVRService_0.1.0.0.zip / GIT

And from the README.md, to quote: PSVRTracker

A sample application that demonstrates optical position and orientation tracking of the PSVR headset as well as sensor fusion with the accelerometer and gyro.

Prebuilt Releases

You can download prebuilt releases (Windows only at the moment) from the Releases page. Then follow the initial setup instructions found in the wiki.

Building from source

If you want to make modifications to the service or want to debug it, you can build the project from source by following the Building-from-source instructions. Currently supported build platforms are Win10 and OS X with Linux support hopefully coming in the near future.

Documentation
  • General setup guides, troubleshooting and design docs can be found on the wiki
  • Documentation for the code is hosted on codedocs
Near Term Goals
  • Create a new Tracker class for the PS4 camera that mirrors the PS3EyeTracker class
  • Create a KalmanFilter for the MorpheusHMD
Usage in other projects

Feel free to use this code as-is, modified or adapted in other projects (commercial or otherwise). It's intended to be a reference algorithm that I hope other can make use of in any way they see fit.

Attribution and Thanks

Special thanks to the following people who helped make this project possible:
  • Chadwick Boulay - Owner of PSMoveService whose help and guidance made this project possible
  • Antonio Jose Ramos Marquez - Work on PS4EyeDriver and PSX hardware reverse engineering
  • Jules Bock - Got the PS4 camera driver working on Windows
  • Agustín Gimenez Bernad - For his work on reverse engineering the PSVR sensor data
Finally, from danielkot comes Salix PS4 which as the name implies is a Salix builder for Sony PlayStation 4 console.

Github: https://github.com/danielkot/salix-ps4

Cheers to @HydrogenNGU for the heads-up on Twitter earlier today! :beer:
Updates to PS4 Orbis ELF by RPCS4 and OpenPSVR by Alatnet.jpg
 

Comments

Status
Not open for further replies.
Back
Top