OpenF1.Data
1.0.7
See the version list below for details.
dotnet add package OpenF1.Data --version 1.0.7
NuGet\Install-Package OpenF1.Data -Version 1.0.7
<PackageReference Include="OpenF1.Data" Version="1.0.7" />
paket add OpenF1.Data --version 1.0.7
#r "nuget: OpenF1.Data, 1.0.7"
// Install OpenF1.Data as a Cake Addin #addin nuget:?package=OpenF1.Data&version=1.0.7 // Install OpenF1.Data as a Cake Tool #tool nuget:?package=OpenF1.Data&version=1.0.7
open-f1
open-f1 is a open source Live Timing client which integrates with the F1 Live Timing data stream. The client allows you to receive live data during F1 sessions. This data can be streamed in to a file for later processing, or processed live to show in live timing clients.
The OpenF1.Data
library is provided to facilitate connectivity with the F1 Live Timing data stream, and handle all the processing of the incoming data. It also allows for "simulated" streams, where previously recorded data streams can be played back to allow for easy development/testing.
OpenF1.Console
is a TUI application which uses OpenF1.Data
to show a basic Live Timing screen during sessions.
Inspiration
This project is heavily inspired by the FastF1 project by theOehrly. They did a lot of the work understanding the SignalR stream coming from the F1 Live Timing service. Visit their project if you'd like to do any sort of data analysis on past F1 events, or gather live timing data using their module.
Configuration
OpenF1 can be configured using a simple config.json
file, or using environment variables. JSON configuration will be loaded from ~/open-f1/config.json
.
Name | JSON Path | Environment Variable | Description |
---|---|---|---|
Data Directory | dataDirectory |
OPENF1_DATADIRECTORY |
The directory in which JSON timing data is read or written from |
Live Timing Data Source
F1 live timing is streamed using SignalR
(the old ASP.NET version, not the newer ASP.NETCore protocol) at https://livetiming.formula1.com/signalr. The OpenF1.Data
simply connects to this endpoint, subscribes to the "Streaming" Hub
, and listens for messages. It subscribes to the following "topics":
Heartbeat
ExtrapolatedClock
TopThree
TimingStats
TimingAppData
WeatherData
TrackStatus
DriverList
RaceControlMessages
SessionInfo
SessionData
LapCount
TimingData
The following topics are also available but currently not subscribed to:
CarData.z
Position.z
Data Recording and Replay
All events received by the live timing client will be written to the configured Data Directory
, see see Configuration for details. Files will be written to a subdirectory named using the current sessions name, e.g. ~/open-f1/data/Jeddah_Race/
. In this directory, two files will be written:
subscribe.txt
contains the data received at subscription time (i.e. when the live timing client connected to the stream)live.txt
contains an append-log of every message received in the stream
Both of these files are required for future simulations/replays. The IJsonTimingClient
supports loading these files and processing them in the same way live data would be. Data points will be replayed in real time, using a calculated delay.
Notice
open-f1 is unofficial and are not associated in any way with the Formula 1 companies. F1, FORMULA ONE, FORMULA 1, FIA FORMULA ONE WORLD CHAMPIONSHIP, GRAND PRIX and related marks are trade marks of Formula One Licensing B.V.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- AutoMapper (>= 12.0.0)
- AutoMapper.Collection (>= 9.0.0)
- AutoMapper.Extensions.Microsoft.DependencyInjection (>= 12.0.0)
- Microsoft.AspNet.SignalR.Client (>= 2.4.3)
- Microsoft.Extensions.Configuration (>= 8.0.0)
- Microsoft.Extensions.Logging (>= 8.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.127 | 33 | 11/3/2024 |
1.0.124 | 82 | 9/26/2024 |
1.0.123 | 74 | 9/26/2024 |
1.0.121 | 84 | 9/26/2024 |
1.0.118 | 120 | 9/15/2024 |
1.0.114 | 110 | 7/17/2024 |
1.0.109 | 93 | 7/6/2024 |
1.0.87 | 96 | 6/29/2024 |
1.0.82 | 97 | 6/22/2024 |
1.0.78 | 96 | 6/22/2024 |
1.0.77 | 96 | 6/22/2024 |
1.0.49 | 89 | 5/19/2024 |
1.0.34 | 91 | 5/9/2024 |
1.0.32-g14cd2d38df | 72 | 5/9/2024 |
1.0.31-g9c7dd7acba | 71 | 5/9/2024 |
1.0.30-gcd1d18cc4f | 76 | 5/9/2024 |
1.0.29-g9a42a11fbc | 76 | 5/9/2024 |
1.0.28-g184c7383a1 | 72 | 5/9/2024 |
1.0.26 | 92 | 5/7/2024 |
1.0.25 | 92 | 5/7/2024 |
1.0.24 | 102 | 5/5/2024 |
1.0.23 | 107 | 5/4/2024 |
1.0.20 | 108 | 5/4/2024 |
1.0.14 | 93 | 5/3/2024 |
1.0.12 | 103 | 4/29/2024 |
1.0.11 | 125 | 3/28/2024 |
1.0.10 | 109 | 3/28/2024 |
1.0.9 | 116 | 3/28/2024 |
1.0.8 | 100 | 3/28/2024 |
1.0.7 | 106 | 3/28/2024 |
1.0.6 | 118 | 3/28/2024 |