Docs
Venue

Pair a Simulator Machine

Pair a Windows machine to an existing venue simulator.

Use this guide when you need to connect one Windows simulator machine to one simulator in the venue dashboard.

Pairing starts in Pista and finishes on the Windows machine. Pista creates a short-lived code for one machine-bound setup attempt.

Before You Start

You must have:

  • A simulator in the venue dashboard.
  • Internet access on the Windows machine.
  • Permission to manage venue content or simulators in Pista.
  • Signed in to the local-administrator Windows account used to operate the simulator. The persistent agent starts at this user's logon, including the first logon after a reboot; it does not launch before Windows sign-in.
  • Content Manager registered under that same Windows account with standard storage, a valid selected AC or AC PRO root, and the simulator's exact 17-digit SteamID64. This is required before every Windows station pairs, including stations primarily used for another game.

Pair the Machine

  1. Open the venue dashboard in Pista.
  2. Go to Stations.
  3. Select the station that represents the physical Windows machine.
  4. Open Machine.
  5. Select Download setup on the Windows simulator machine.
  6. Select Pair machine.
  7. Select Generate pairing code.
  8. Run PistaSetup.exe and accept the Administrator prompt.
  9. Enter the pairing code.
  10. Keep the setup window open while it installs and starts the persistent agent, verifies the first service report, and locally verifies the complete Pista-owned Tailscale/OpenSSH support rail.
  11. Wait for the simulator page to show the machine as paired and online and for Setup to report completion.

What Setup Installs

PistaSetup.exe is the installer and contains the Pista Agent runtime. It copies that runtime to C:\Program Files\Pista\PistaAgent.exe; the venue does not install Bun, extract a ZIP, or keep a Command Prompt open. When Pista Agent is already installed, the same executable offers repair or uninstall. REPAIR safely replaces and proves the persistent runtime from the downloaded Setup version, rolling back the prior executable and task if the new runtime does not report successfully. It never consumes another pairing code.

Setup claims the one-time code before installation and keeps credentials in Windows machine-protected storage. Pairing then installs one background task for the current simulator Windows account. It starts immediately, restarts after failures, and starts again when that account signs in after a reboot. Do not install a separate PistaAgent Windows service; a Session 0 service cannot launch Assetto Corsa in the visible simulator session, and pairing will stop before using the code if that legacy service exists.

Before asking for or consuming the one-time code, Setup verifies registered standard Content Manager, its selected AC root, and its exact SteamID64. A failure leaves the code untouched. Pista takes that identity from CM instead of waiting for a driving result or asking staff to type it. After pairing, periodic Steam discovery still finds every supported game; use Check games and installation on the machine page to request another scan.

Setup also installs Tailscale and Windows OpenSSH and creates one Pista-owned local administrator named pista-support. Support uses only this account, with the Pista SSH key and password login disabled. Do not create or reuse that account manually. A pre-existing pista-support account that Pista does not own is treated as a setup conflict instead of being taken over.

Confirm It Worked

The simulator is paired when the simulator page shows:

  • Paired machine status.
  • A recent material agent report.
  • The latest successful detected-game scan, including the required CM-selected Assetto Corsa installation and any supported Steam games.
  • Content status.
  • Detected-game and station-identity status.
  • Settings status.
  • The latest failure message, if something failed.

Core pairing succeeds after the persistent task, not the pairing window, sends the verified service report. Setup reports installation complete only after the Pista-owned Tailscale identity, pista-support account, OpenSSH configuration and key, and restricted firewall are also locally ready. If that remote rail fails, Setup leaves the core agent paired, prints Agent connected; remote support incomplete, and returns a failure instead of claiming installation is complete. An SSH login from an authorized support device is the separate external acceptance check.

Most day-to-day management happens from the Pista venue dashboard. The Windows agent UI is not the normal operating surface.

Replacing a Machine

Run PistaSetup.exe uninstall on the old Windows installation. It can restore the original values of Pista-managed settings or keep the current values. It then unregisters the machine from Pista, removes the Pista scheduled task and local Pista files, removes the Pista-owned pista-support account, SSH key, sshd configuration block, and firewall rule, and logs the machine out of Tailscale. It leaves Level, the Tailscale application, the Windows OpenSSH capability and host keys, game files, content, results, and game logs in place. Then create a new pairing code from the simulator page and run PistaSetup.exe.

If the old machine cannot be reached, revoke its Pista agent record manually from the dashboard after confirming it is stale. A Tailscale administrator can separately remove any offline device row retained in the tailnet.

Do not reuse a saved token from the old machine.

If Setup Is Incomplete

Read the recovery message in the pairing window first. If the credential was installed and the agent is connected but support access is incomplete, rerun the downloaded PistaSetup.exe and choose REPAIR. Repair uses the installed credential and does not need another pairing code. It reconciles the complete installed runtime and local remote rail around the existing Pista-owned Tailscale identity: pista-support, OpenSSH, the dedicated key, and the restricted firewall. It also verifies the required Content Manager configuration and selected SteamID64. It retries Level grouping independently; a Level failure remains a warning.

If repair reports that Tailscale is missing or logged out, choose UNINSTALL and pair again with one fresh code; repair deliberately receives no Tailscale enrollment key. If the credential exists but the persistent agent itself never finished installing, choose RESET, let Setup remove the incomplete local installation, then generate one fresh code. Do not revoke or create another code before local cleanup finishes.

If one simulator shows conflicting paired agents, stop pairing more machines to that simulator. Confirm which Windows installation must remain attached, then contact support to remove the stale credential.

On this page