EyeTrackVR

EyeTrackVR #

DIY eye tracking for any headset. Here are the steps to get the software working on linux.

Prerequisites #

  • tkinter pacman -S tk or apt install python3-tk
  • Python 3.11 for it to work out-of-the-box, available through the AUR, build yourself! Otherwise tk will not work!
    • Build after installing tkinter, otherwise it will not be included
  • poetry apt install python3-poetry

Clone the repository #

git clone https://github.com/EyeTrackVR/EyeTrackVR.git
cd EyeTrackVR

Patching for Python 3.13 #

Eyetrackapp runs fine off of Python 3.13, but you need to change a couple package versions. Follow this if you don’t want to build or install Python 3.11

Change these three lines in pyproject.toml and delete poetry.lock

@@ -7,11 +7,11 @@ license = "LICENSE: Babble Software Distribution License 1.0"
 repository = "https://github.com/EyeTrackVR/EyeTrackVR"

 [tool.poetry.dependencies]
-python = "~3.11.0"
+python = "~3.13.0"
 python-osc = "^1.8.0"
 requests = "^2.28.1"
 opencv-python = "^4.6.0.66"
-numpy = "~1.24.3"
+numpy = "~1.26.4"
 pye3d = "^0.3.2"
 pysimplegui-4-foss = "^4.6.4.1"
 pydantic = "^2.4.2"
@@ -29,7 +29,7 @@ matplotlib = "^3.10.7"

 [tool.poetry.group.dev.dependencies]
 black = "^22.10.0"
-pyinstaller = "^5.6.2"
+pyinstaller = "^6.10.0"
 flake8 = "^5.0.4"

 [tool.taskipy.tasks]

Building EyeTrackApp #

poetry install --no-root
cd EyeTrackApp
poetry run pyinstaller eyetrackapp.spec

and just like that you now should now have a fully functional eyetrack app in directory dist

Your serial cams should be up under /dev/ttyACM*

Alternatively, instead of building an executable you can run the app directly from the code by running poetry run python3 eyetrackapp.py within the EyeTrackApp directory.

VRCFT #

Be sure to check out VRCFaceTracking.Avalonia for cross-platform VRCFT.