Skip to content

The Phoenix Head Tracker is a program that interfaces with Xreal Air glasses to capture and analyze sensor data. By detecting changes in the user's head yaw and pitch, this program can send this gyro data to Opentrack UDP or can control the computer mouse to look around in video games

License

Notifications You must be signed in to change notification settings

iVideoGameBoss/PhoenixHeadTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PhoenixHeadTracker

The Phoenix Head Tracker is a program that interfaces with Xreal Air glasses to capture and analyze sensor data using custom version of AirAPI_Windows.dll to support roll data. By detecting changes in the user's head yaw and pitch and roll, this program can send this data to opentrack over UDP or you can even control the movement of the computer mouse on screen which can be used to play video games that use mouse look feature. You can also use this feature with Nreal Air 3D SBS mode

Buy Me a Coffee Hey, I created PhoenixHeadTracker for Xreal Air and would really appreciate your support. I work on this software on my own time for you guys. Thank You!

PhoenixHeadTracker.mp4

I worked all day and night on this thing and it was worth it for you all. You will love your Xreal Air glasses with this new tool. It even works with 3D SBS mode. Play your games, Skyrim, DCS, Microsoft Flight Simulator, Cyberpunk 2077.

microsoft_flight_simulator_opoentrack.mp4

How to use PhoenixHeadTracker

To connect your Xreal Air glasses to your PC, there are two options available. Firstly, you can use the USB-Type C connector. Alternatively, a goFanco adapter can also be used, which can be obtained from the following Amazon link: goFanco adapter

It is important to ensure that your glasses have a direct connection to the PC. Once connected, launch the PhoenixHeadTracker software and click on the 'Connect Xreal Air' option. Please allow a few seconds for the sensors to adjust.

You now have two options for utilizing the head tracking data. Firstly, you can use opentrack, or alternatively, you can click on 'Start Mouse Track'. This will allow you to control the mouse on your screen, enabling you to look around in video games. Here is an example of playing Cyberpunk 2077 with mouse look feature and using a controller at same time. On PC you can play games using a controller, mouse, keyboard. PhoenixHeadTracker and Xreal Air are the perfect match.

cyberpunk2077.mp4

Should you choose to use opentrack, you can do so by clicking on the 'start opentrack UDP' option. Within opentrack, you will need to select UDP over network in order to receive the data.

Screenshot 2023-04-14 211257

Opentrack settings for UDP

Screenshot 2023-04-08 210432

You can also adjust how to use the Yaw and Pitch values. So if you want the in game camera to turn 90 degrees like in real life you can adjust it in mappings.

Screenshot 2023-04-12 073500

Here you can see I wanted the in game camera to turn faster on Yaw so I don't have to turn 90 degrees is real life. It makes it eaiser on the neck when playing games. So now when I turn my head it will turn faster to left and right using the data from PhoenixHeadTracker.

yaw

I did the same think for Pitch so it just feels right.

pitch

Setup your Center Key in Opentrack

Due to how gyro data works and drifts, it is a good idea to have a center camera key setup. Just click on bind and pick a key. In this example you can see I picked the '-' key on my numpad.

Screenshot 2023-04-13 103644

Fight Drift

When you are looking around in a game the Yaw, Pitch and Roll values can drift overtime. You can fight this type of drift more by adding a negative or positive value. You want to try to keep the ‘Track’ value to where; when you can turn your head and bring it back, and it shows you the same view more or less or close enough. Don't drive yourself crazy over this cause you can always center the view in opentrack with the shortcut key I told you about above. Remember we are dealing with math and the physical world and earth's gravity. Below example shows I added a value of -3 to help fight drift on my Xreal Air glasses Yaw value when playing Elite Dangerous.

fightdrift

Microsoft Flight Simulator working with opentrack

microsoft_flight_simulator.mp4

Download Latest Release

Phoenixheadtracker https://github.com/iVideoGameBoss/PhoenixHeadTracker/releases

Opentrack https://github.com/opentrack/opentrack/releases

How to build using Visual Studio 22

PhoenixHeadTracker is based on the AirAPI_Windows.dll :https://github.com/MSmithDev/AirAPI_Windows: You will find the custom version of AirAPI_Windows.dll that supports roll data and also hidapi.dll in the PhoenixHeadTracker/bin/x64/Release/ and or debug folder. These two files are required in order to connect to Xreal Air glasses. The version of AirAPI_Windows.dll included with PhoenixHeadTracker supports roll data.

Once you clone the project, open in Visual Studio 22 by clicking on PhoenixHeadTracker.sln. Make sure you set to build on x64 and debug or release. Then simply click on start.

visualstudio22

Make sure that both AirAPI_Windows.dll and hidapi.dll are in the debug and release folder. I have included them with project.

Screenshot 2023-03-27 145335

You Can Use Phoenix Head Tracker with Gyro Data from Other Devices

PhoenixHeadTracker can be made to work with other devices that can supply gyro data using a dll. You can also add code if you want to work with 6dof data. Its already setup to work with 3dof data in degrees. Create your own dll and import it like I did here with AirAPI_Windows.dll. Add two functions to get started.

Screenshot 2023-04-13 105555

The GetEuler function returns an array for Yaw, Pitch and Roll.

Screenshot 2023-04-13 104815

DCS (Digital Combat Simulator)

So.Cool-.Nreal.Air.working.with.DCS.using.PhoenixHeadTracker.mouse.look.Works.with.3D.SBS.mode.too.mp4

About

The Phoenix Head Tracker is a program that interfaces with Xreal Air glasses to capture and analyze sensor data. By detecting changes in the user's head yaw and pitch, this program can send this gyro data to Opentrack UDP or can control the computer mouse to look around in video games

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages