Python
How to Install Python and Run Pacefinder from Source
Install Python 3.9+ on macOS, Windows, or Linux, then clone and start the Pacefinder telemetry listener in four commands.
When to run from source
Running from source means cloning the Pacefinder repository and starting the listener with Python directly. It's the path used by the Raspberry Pi systemd service and by anyone hacking on the listener — you get the latest code and full control, at the cost of needing Python installed. If you just want to run Pacefinder with no setup, the Docker image or the Linux AppImage bundle everything for you.
Step 1: Install Python 3.9+
macOS
macOS includes a system Python, but the cleanest option is to install the latest from python.org/downloads — download the macOS installer and run it. If you use Homebrew, brew install python works just as well. Both give you a python3 command.
Windows
Download the installer from python.org/downloads. On the first screen of the installer, tick "Add Python to PATH" before clicking Install — this is the single most common thing people miss, and skipping it is why python appears "not recognised" afterward.
Linux
Most distributions already ship Python 3. If not, install it with your package manager:
# Debian / Ubuntu / Raspberry Pi OS sudo apt update && sudo apt install python3 python3-pip python3-venv # Fedora sudo dnf install python3 python3-pip
Step 2: Verify Python and pip
Confirm both the interpreter and pip are available:
python3 --version python3 -m pip --version
You should see Python 3.9 or higher. Note the python3 -m pip form — calling pip through the interpreter is what you'll use to install dependencies, and it sidesteps the "command not found: pip" problem entirely (see below).
pip on your PATH — only pip3, or neither. Always use python3 -m pip instead of pip; it uses the pip that belongs to your python3 and just works.Step 3: Clone and run Pacefinder
Clone the repository, install the requirements, and start the listener:
git clone https://github.com/Estetika101/pacefinderapp.git cd pacefinderapp python3 -m pip install -r requirements.txt python3 listener.py
When the listener starts it prints a confirmation and begins listening for UDP telemetry on port 5300. Open http://localhost:8000 in any browser on your network to load the dashboard.
Optional: use a virtual environment
To keep Pacefinder's dependency isolated from your system Python — and to avoid "externally managed environment" errors on newer Debian and Ubuntu releases — create a virtual environment first:
python3 -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate python3 -m pip install -r requirements.txt python3 listener.py
Troubleshooting
command not found: pip
Use python3 -m pip instead of bare pip. The module form always resolves to the pip bundled with your Python 3 install.
python: command not found / not recognised
On macOS and Linux the command is python3, not python. On Windows, this usually means "Add Python to PATH" was not ticked during installation — re-run the installer and enable it, or repair the existing install.
externally-managed-environment error
Newer Debian/Ubuntu builds block installing into the system Python. Create a virtual environment as shown above and install inside it.
What to do next
With the listener running, point your game's UDP Data Out at the machine's IP address on port 5300. Pacefinder detects your session automatically and starts logging the moment you go on track.
Track your improvement with Pacefinder
The fastest way to apply what you've learned is to measure it. Pacefinder logs your lap times, positions gained, and consistency score across every session — so you can see exactly what's working.