Send data to OpenTrack
OpenTrack Setup Guide
This guide explains how to set up OpenTrack to receive head tracking data from Playability.
What is OpenTrack?
OpenTrack is an open-source head tracking application that translates head movements into game inputs. It's commonly used with flight simulators, racing games, and other applications that support head tracking.
Prerequisites
- Playability installed and running
- OpenTrack installed (Download from GitHub)
- A webcam for face detection (required for Playability to track your head)
Step 1: Install OpenTrack
- Download the latest OpenTrack release from GitHub
- Extract the ZIP file to a folder (e.g.,
C:\Program Files\opentrack) - Run
opentrack.exeto launch OpenTrack
Step 2: Configure OpenTrack Input
OpenTrack needs to be configured to receive UDP data from Playability:
- In OpenTrack, click on Input (or press
F1) - Select UDP over network from the dropdown
- Click Start to begin listening for UDP data
- Verify the settings:
- Protocol: UDP over network
- Port:
4242(default) - Bind address:
127.0.0.1(localhost)
Step 3: Configure OpenTrack Output
Configure OpenTrack to send tracking data to your game or application:
- In OpenTrack, click on Output (or press
F2) - Select your preferred output method:
- FreeTrack 2.0 Enhanced - For older games
- vJoy - For games that support vJoy
- SimConnect - For Microsoft Flight Simulator
- UDP over network - For applications that accept UDP input
- Wine - For Linux compatibility
- Configure the output settings according to your game's requirements
- Click Start to begin output
Step 4: Configure Playability
Enable OpenTrack output in Playability:
- Open Playability
- Navigate to Connections **in the sidebar then click on **OpenTrack tab
- Enable "Enable OpenTrack Output" toggle
- (Optional) Enable "Auto-start OpenTrack Output" if you want it to start automatically when Playability launches
What Happens When Enabled
When OpenTrack output is enabled, Playability will:
- Automatically enable face detection (required for head tracking)
- Start sending head pose data via UDP to
127.0.0.1:4242 - Send data at approximately 30fps (whenever new camera data arrives)
Step 5: Verify Connection
To verify that data is flowing correctly:
- In OpenTrack: Look at the main window - you should see the head position indicator moving when you move your head
- In Playability: Ensure your webcam is active and face detection is running
- Test: Move your head slowly and watch the OpenTrack visualization respond
Data Format
Playability sends head tracking data in the following format:
- Protocol: UDP (User Datagram Protocol)
- Port:
4242 - Host:
127.0.0.1(localhost) - Format: Binary (48 bytes)
- 6 double-precision floats (8 bytes each, little-endian)
- Order: X, Y, Z, Yaw, Pitch, Roll
- Translation values (X, Y, Z) are in meters
- Rotation values (Yaw, Pitch, Roll) are in degrees
Coordinate System
- X: Left/Right translation (meters)
- Y: Up/Down translation (meters)
- Z: Forward/Back translation (meters)
- Yaw: Rotation around Y-axis (degrees)
- Pitch: Rotation around X-axis (degrees)
- Roll: Rotation around Z-axis (degrees)
Troubleshooting
OpenTrack Not Receiving Data
- Check OpenTrack is running: Ensure OpenTrack is started and listening on port 4242
- Check firewall: Windows Firewall may be blocking UDP port 4242
- Add an exception for OpenTrack in Windows Firewall
- Or temporarily disable firewall to test
- Check Playability settings: Verify "Enable OpenTrack Output" is toggled on
- Check face detection: Ensure your webcam is active and face detection is working
- Look for the face detection indicator in Playability
- Make sure you're facing the camera with good lighting
Data Not Smooth
- Lighting: Ensure you have good lighting on your face
- Camera position: Position your camera so it has a clear view of your face
- Calibration: In Playability, you may need to calibrate head tracking for better accuracy
OpenTrack Shows No Movement
- Verify input: In OpenTrack, check that the input source shows activity
- Check mapping: Ensure OpenTrack's input mapping is correct
- Test with another source: Try using OpenTrack's built-in test input to verify output is working
Port Already in Use
If you get an error that port 4242 is already in use:
- Check for other instances: Make sure no other application is using port 4242
Advanced Configuration
Adjusting Sensitivity
If head movements are too sensitive or not sensitive enough:
- In OpenTrack, use the Mapping tab to adjust sensitivity curves
- Adjust the Smoothing settings to reduce jitter
- Use Filtering options to fine-tune responsiveness
Coordinate System Adjustments
If the tracking feels inverted or rotated incorrectly:
- In OpenTrack, use the Mapping tab
- Adjust axis mappings and invert axes as needed
- Use the Relative translation option if needed
Additional Resources
Notes
- Playability sends data continuously while OpenTrack output is enabled
- The connection is one-way: Playability → OpenTrack
- No configuration is needed in Playability beyond enabling the toggle
- Face detection must be enabled for OpenTrack output to work (this happens automatically)
Updated on: 18/12/2025
