Spaces:
Sleeping
title: Telemetry Analysis Dashboard
emoji: π
colorFrom: indigo
colorTo: gray
sdk: docker
pinned: false
tags:
- telemetry
- assetto-corsa
- motorsport
- data-visualization
- dash
- plotly
- time-series
short_description: Assetto Corsa telemetry explorer dashboard.
AC Telemetry Analysis β Demo Dashboard
Interactive dashboard for exploring Assetto Corsa telemetry sessions recorded by AC-Datalogger β a high-frequency telemetry logger that reads directly from the game's Windows shared memory interface.
This Space ships with two pre-recorded demo sessions so you can explore the dashboard without running the logger yourself.
What you're looking at
AC-Datalogger polls Assetto Corsa's shared memory (acpmf_physics, acpmf_graphic, acpmf_static) at ~65Hz and writes every sample to a session folder as Parquet + JSON. This dashboard loads those sessions and lets you explore 83 telemetry channels across five tabs:
| Tab | Contents |
|---|---|
| Driver Inputs | Speed, pedals, gear & RPM, steering angle |
| Vehicle Dynamics | G-forces, angular rates, wheel slip, wheel load |
| Tyres | Pressure, core temp, surface temp, wear, brake temps |
| Aero / Misc | Ride height, turbo boost, environment temps, fuel, driver aids |
| Track Map | pos_x/pos_z trace coloured by any channel, with a position scrubber |
The Track Map renders the full lap trace coloured by a selectable channel (speed, throttle, brake, lateral G, longitudinal G). The scrub slider moves the car marker along the trace entirely in the browser via Plotly.restyle β no server round-trip.
Record your own sessions
The logger runs on Windows alongside Assetto Corsa. No plugins or game modification required β just enable shared memory in AC settings and run the script.
# install
pip install pandas pyarrow pyyaml
# record a session (while AC is running)
python main.py
Full setup, configuration, and captured feature reference β AC-Datalogger on GitHub
Session data format
Each recorded session is a folder named track_car_YYYYMMDD_HHMMSS/ containing:
session_info.json # car, track, max_rpm, max_fuel_kg, β¦
telemetry.parquet # 83-column DataFrame at ~65Hz
telemetry.csv # same data as CSV
session_info.json example:
{
"car": "ferrari_458_gt2",
"track": "monza",
"track_configuration": "gp",
"max_rpm": 9000,
"max_fuel_kg": 120.0
}
To use your own sessions with this dashboard, drop the session folder into sessions/ and restart.