Skip to content

kuathadianto/pyracedash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyracedash: Python Racing Dashboard

pyracedash is an application for Project CARS and Project CARS 2 which displays in-game informations like RPM and speed. This application is intended to run on a Raspberry Pi with an LCD display and act as traditional car dashboard. Although it is intended to run on a Raspberry Pi, it is not restricted to use this application on a standard PC/laptop running Windows, Mac OSX or Linux. pyracedash is completely written in Python.

Demo

Note: Click image to see the video!

pyracedashdemo1

pyracedashdemo2

pyracedashdemo3

TODO: Add complete tutorial how to build video!

Prerequisites

Project CARS REST API or CREST for short (ver. 1.0.2) should be running on host computer (the computer that runs the game) before the game is started, so that pyracedash can get informations from the host computer. To do this, you can simply download the REST API here, unzip it, then run CREST-1.0.2.exe before starting the game.

The host computer and the computer that runs pyracedash should be connected via network (LAN cable, or WiFi, direct connection or through router).

Installation

Install on a Raspberry Pi

TODO

Running on a PC/laptop

  1. Install Python. You can download it here. Check "Add Python to PATH" on installation. Reboot after install. Add PATH on installation
  2. Download pyracedash, unzip it.
  3. Open Terminal/Command Prompt, change directory to the unzipped pyracedash folder.
  4. Run this command: pip install -r requirements.txt
  5. Configure pyracedash (see Configuration section).
  6. Run it (double-click pyracedash.py)!

Configuration

To configure pyracedash, you can open and edit conf.ini located along with pyracedash.py. This is the sample of conf.ini:

[global]
X_RES = 800
Y_RES = 480
TITLE = "Kuat Hadianto's pyracedash"
FPS = 60
FULLSCREEN = 0
THEME = Fallback

[host]
IP_ADDRESS = 127.0.0.1
PORT = 8080
  • X_RES: Length screen resolution.
  • Y_RES: Width screen resolution.
  • TITLE: Application Title.
  • FPS: Frames Per Second. More FPS make it more responsive, but also make CPU works harder.
  • FULLSCREEN: 1 to enable it, 0 to disable.
  • THEME: Theme name that want to use. Default is Fallback. If theme is not found, it will choose Fallback. More themes comes later.
  • IP_ADDRESS: IP address of host computer (computer that runs the game).
  • PORT: Port which CREST use. DO NOT CHANGE IT!

Help

For more info, questions, suggestions or feature requests, please contact me via twitter at: @kuathadianto

Enjoy! 😄