0.1.6 • Published 4 years ago

f1-2020-client v0.1.6

Weekly downloads
3
License
MIT
Repository
github
Last release
4 years ago

F1 Telemetry Client

The F1 series of games support the outputting of key game data via a UDP data stream. This data can be interpreted by external apps or connected peripherals for a range of different uses, including providing additional telemetry information, customised HUD displays, motion platform hardware support or providing force feedback data for custom steering wheels.

This is a TypeScript UDP client and telemetry parser for Codemaster's F1 2020 that enables the consumption of such information.

This version only works on F1 2020.

Installing

$ npm install f1-2020-client

or

$ yarn add f1-2020-client

Running the playground

$ npm run start

or

$ yarn start

Usage

import { F1TelemetryClient, constants } from "f1-2020-client";
// or: const { F1TelemetryClient, constants } = require('f1-telemetry-client');
const { PACKETS } = constants;

const client = new F1TelemetryClient();
client.on(PACKETS.session, console.log);
client.on(PACKETS.motion, console.log);
client.on(PACKETS.lapData, console.log);
client.on(PACKETS.event, console.log);
client.on(PACKETS.participants, console.log);
client.on(PACKETS.carSetups, console.log);
client.on(PACKETS.carTelemetry, console.log);
client.on(PACKETS.carStatus, console.log);
client.on(PACKETS.finalClassification, console.log);
client.on(PACKETS.lobbyInfo, console.log);

// to start listening:
client.start();

// and when you want to stop:
client.stop();

Documentation

For the F1 2020 UDP specifications, please refer to this post from the official Codemaster's forum.

License

This project is originally a fork from irvingswiftj's f1-2018-udp which was further forked by jonybur'sf1-telemetry-client. Licensed under the MIT License.