Giter Site home page Giter Site logo

anton264 / racing Goto Github PK

View Code? Open in Web Editor NEW

This project forked from b4mad/racing

0.0 0.0 0.0 63.64 MB

Community-driven SimRacing data collection and analysis

Home Page: https://b4mad.racing

License: GNU General Public License v3.0

Shell 0.01% Python 0.21% FLUX 0.01% HTML 0.49% Jupyter Notebook 99.27% Dockerfile 0.01% Jsonnet 0.01%

racing's Introduction

Community driven SimRacing data collection and analysis.

A telemetry data collection and analysis pipeline for simracers ๐ŸŽ๏ธ

The pipeline start at CrewChief. This means we can take data in from any simulation that CrewChief supports. CrewChief will send your simulator telemetry data to an endpoint hosted on the Operate First Community Cloud. You can then visualize your telemetry data in our B4mad Pitwall or do some data science

architecture

Installation

  1. Install CrewChief
  2. Enable the telemetry collection by checking 'MQTT Telemetry enabled' in the CrewChief Properties
  3. Choose a 'MQTT drivername' in the CrewChief Properties cc_settings_mqtt
  4. Enable text to speech cc_settings_tts
  5. If all works you should see connection messages in the CrewChief console cc_log
  6. Join our Discord and say hello ๐Ÿ‘‹

Drive some laps to send some initial data. Now any time you run your simulator you will be sending data. If anything doesnt work, check out the FAQ.

Coaches

At Paddock find your drivername and enable the coach.

Visualization

Head over to the B4mad Pitwall and explore your recent sessions or signup for an account to create new dashboards.

grafana

Check out the flux scratchpad for some flux query examples.

Hacking

docker-compose stack

cd docker-compose
docker-compose up

influx

Go to http://localhost:8086/ and login with configuration.env and explore the racing bucket

connecting to influx

# create a config with a reader token
influx config create --active -n b4mad_reader -u https://telemetry.b4mad.racing -t "citqAMr66LLb25hvaaZm2LezOc88k2ocOFJcJDR6QB-RmLJa_-sAr9kYB4vSFYaz8bt26lm7SokVgpQKdgKFKA==" -o b4mad

# count the number of sessions in the last 24 hours
influx query 'from(bucket:"racing") |> range(start:-1d) |> keep(columns: ["SessionId"])|> group()|> distinct(column: "SessionId") |> count()'
Result: _result
Table: keys: []
                _value:int
--------------------------
                      1788

# count the number of points
influx query 'from(bucket:"racing") |> range(start:-10y) |> filter(fn: (r) => r["_measurement"] == "fast_laps") |> group() |> count()'
influx query 'from(bucket:"racing") |> range(start:-10y) |> filter(fn: (r) => r["_measurement"] == "fast_laps") |> filter(fn: (r) => r["SessionId"] == "1677384694") |> group() |> count()'

# delete all points in a measurement
influx delete --bucket racing --start '2022-11-27T00:00:00Z' --stop $(date +"%Y-%m-%dT%H:%M:%SZ") \
  --predicate '_measurement="fast_laps"'

telegraf

docker compose exec telegraf cat /tmp/metrics.out
docker compose restart telegraf

mosquitto

publish stuff

docker-compose exec mosquitto mosquitto_pub  -u admin -P admin -t racing -m '{"a": 5}'
docker-compose exec mosquitto mosquitto_pub  -u admin -P admin -t racing -m "`cat ../sample-small.json`"

subscribe

docker-compose exec mosquitto mosquitto_sub  -u admin -P admin -t racing/\# -d
docker-compose exec mosquitto mosquitto_sub  -p 31883 -h telemetry.b4mad.racing -u admin -P admin -t crewchief/\# -d

grafana

Export data sources

curl -s "http://localhost:3000/api/datasources" -u admin:admin | jq -c -M '.[]'

CD

App Status

racing's People

Contributors

durandom avatar goern avatar dependabot[bot] avatar eadali avatar tetourne avatar taholmes160 avatar thoraxe avatar yrogory avatar lukaslichten avatar step-security-bot avatar khebhut[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.