Controller Software für Button Boxes und die komplette Software rund um unsere geliebten virtuellen Rennwagen

  • Moin zusammen,


    ich war in den letzten Wochen fleißig und habe ein wenig programmiert. Die Motivation: Ich habe viel zu viele Funktionen für die zwei Button Boxes, die ich habe. Und eine Tastatur gehört nun mal nicht ins Auto. Sagt ja schon der Gesetzgeber. Nun ist die eine Button Box reserviert für die Steuerung des Wagens (Zündung, Licht, BrkBalance, etc.) und da gehören dann auch keine Funktionen drauf, wie "Starte TeamSpeak". Und damit waren es dann noch weniger verfügbare Knöpfe und Schalter. Es musste also eine Art Layering Modell her, usw., usw. Im Prinzip der gleiche Ansatz, den man auch mit dem Elgato Stream Deck realisieren kann, eben nur mit schön großen Schaltern und Knöpfen, die auch nach Auto aussehen.


    Wenn Ihr Interesse habt, schaut mal rein. Der aktuelle Alpha-Build ist schon sehr, sehr stabil.


    Link to Github


    Happy racing...

  • Version 1.2 ist pünktlich zu Weihnachten fertig geworden. Größte Neuerung ist ein Themes Editor, mit dem man sich Sets von Bildern, Animationen und Soundfiles zusammenstellen kann, die einem die Zeit vertreiben, während alles hochfährt. Ein Rallye Theme, ein Formula 1 Theme, ein Schrottmühlen-WM Theme, die Möglichkeiten sind grenzenlos...

  • Version 1.3 ist online. Größte Neuerungen:


    1. Photorealistische Darstellungen der Button Boxes und diese kann nun auf dem Bildschirm frei positioniert werden.

    2. Die Controls im Button Box Fenster sind "klickbar". Damit ist die Software auch bedienbar, wenn man gar keine Button Box hat oder diese auf eBay verkaufen musste, weil die Haushaltskasse knapp wurde.


  • Ich wünsche Euch allen ein frohes neues Jahr. Und da es ja schon ein Jahr her ist (ja, ich weiß, der ist alt), dass ich eine Version meiner Controller Software rausgebracht habe, dachte ich, dass es heute wieder an der Zeit ist. Zwei Neuerungen sind erwähnenswert:


    1. Alle Werte aus SimFeedback werden nun live auf der Button Box dargestellt. Man sieht als immer, mit welchen Effekten man gerade unterwegs ist. Wer's braucht...

    2. Ich hatte einige Anfragen nach anderen Sprachversionen (nicht von Euch). Daher gibt es jetzt ein multibyte-fähiges Übersetzungssystem für alle Texte, Labels, etc. (insg. > 400 Einträge). Ein grafisches Tool, um die Übersetzungen zu pflegen, ist auch dabei.


    Nebenbei habe ich noch 200 Runden in Bathurst abgekämpft. Die 12h können kommen...

  • Hallo zusammen,


    es gibt wieder etwas Neues. Nach den letzten Releases, die eher kleine Verbesserungen und "technische" Anpassungen gab, ist es diesmal wieder ein wirklich großes, neues Feature. Daher auch ein Major Release mit der Nummer 2.0. Das neue Feature erlaubt dem "Fahrer" in Assetto Corsa Competizione die vollständige Steuerung des Pitstop MFDs entweder über die Button Box oder, und jetzt wird es spannend, mittels Sprachsteuerung. Gerade letzteres dürfte helfen, um die Konzentration "auf die Straße" aufrechtzuerhalten.


    Wie immer findet Ihr alles auf GitHub...

  • Neue Version 2.0.4 ist online. Einziges neues Feature ist "Select Driver" (f. Teamrennen) für die Sprachsteuerung, Ansonsten viele Veränderungen unter der Haube, u.a. die Hybrid Rule Engine, auf deren Basis dann im nächsten großen Release der KI-basierte Race Engineer kommen wird. Wer sich für Prädikatenlogik, Hybrid Reasoning und sonstige logische Spielereien interessiert, kann ja mal reinschauen :)

  • Nächstes Update. Hier ist ein Transkript einer typischen Szene mit Jona (ja, so heißt das Ding jetzt), während eines Rennens. Sorry für Englisch, aber ich habe gerade keine Lust das zu übersetzen. Die Grammatikdateien für Spracheeingabe und -ausgabe gibt es aber auch in Deutsch.


    -------------------------------------------------------------------------------------------------------------------------------------------------


    Jona: "Hi, here is Jona, your race engineer today. You can call me anytime if you have questions. Good luck."


    (You hear this or a similar phrase, whenever Jona is ready to interact with you. Typically this is at the beginning of the second lap in a race. From now on Jona might call you, when important information are available, or you can call her/him anytime using one of the key phrases - see the section about [phrase grammars](https://github.com/SeriousOldM…-Engineer#phrase-grammars) on that.)


    Driver: "Tell me the tyre temperatures."


    Jona: "We have a blue screen here. Windows XP is crap. Give me a minute."


    (This answer, or a similar one, means, that Jona does not have enough data at the moment to answer your question. Typically, Jona needs to laps at the beginning of the race or after a pitstop, to be completely up and running)


    (A lap later...)


    Driver: "Tell me the tyre temperatures."


    Jona: "We have the following temperatures: Front left 87. 85 Degrees in the front right tyre. Rear left 93. 91 rear right."


    (You can ask for other information as well. See the section about [phrase grammars](https://github.com/SeriousOldM…-Engineer#phrase-grammars) for more information.)


    (A few laps later...)


    Jona: "Warning. Only 3 laps before you will run out of fuel. Should I update the pitstop strategy now?"


    (With this question, Jona asks, if you want to start the preparation process for the upcoming pitstop.)


    Driver: "No thank you."


    (We are brave and will take another lap.)


    Jona: "Okay. Call me when you are ready."


    (As you can see, Jona always acjknowledges what you said. This helps you to check, whether Jona did understood you correctly.)


    (A lap later...)


    Jona: "What are you doing? You are running out of fuel. We should prepare for a pitstop, Okay?"


    Driver: "Yes go on."


    Jona: "Okay, give me a second."


    (A few moments later...)


    Jona: "Jona here. I recommend this for pitstop number one: ..."


    (Jona gives you a complete overview over all the settings, that were derived for the upcoming pitstop, refueling, tyre compound, pressures, repairs, and so on.)


    (Maybe you have some corrections...)


    Driver: "Can we decrease front right by zero point two?"


    Jona: "The pressure of the front right tyre shall be decreased by 0.2 PSI, is that correct?"


    Driver: "Yes please"


    (A moment later...)


    Jona: "I updated the pitstop plan like you said. Anything else?"


    Driver: "No thank you"


    Jona: "Understood. I am here."


    (The pitstop is now planned, but still not locked in. We are brave and stay out for the last lap...)


    Jona: "Warning. You will run out of fuel in one lap. You should come in immediately. Shall I instruct the pit crew?"


    (With the last question, Jona aks, whether the pitstop plan shall be locked in.)


    Driver: "Ok, let's go on."


    Jona: "Okay, I will let the crew prepare everything immediately."


    (A few moments later...)


    Jona: "We are ready for the pitstop. You can come in."


    (The Pitstop MFD window of *Assetto Corsa Competizione* comes to life and all the data is input automatically. See the section about the [pitstop handling](https://github.com/SeriousOldM…Race-Engineer#the-pitstop) for more information.)


    (You enter the pit and bring the car to a stop.)


    Jona: "Okay, let the crew do their job. Check ignition, relax and prepare for engine restart."


    (And now you are ready for your next stint...)


    ---------------------------------------------------------------------------------------------------------------------------------


    Der Immersionsfaktor ist 10 hoch 10, wenn man über Headset mit dem Bot redet. Ein, zwei Wochen noch, dann ist die finale Version da. Betatester sind natürlich willkommen.


    TheBigO

  • Release 2.3 ist gerade Online gegangen. Größte Neuerung: Jona überwacht die Rundenzeiten nach einer Kollision, übernimmt eine Schadensanalyse und errechnet, ob sich ein früherer Boxenstopp im laufenden Sting lohnen würde. Für die weiteren Analysen (Wettertrend, Reifentemperaturtrend, etc.) sind die statistischen Modelle auch bereits implementiert, aber noch nicht aktiviert.


    Darüber hinaus gibt es ersten Support für rFactor 2. In den nächsten Releases kommt da noch mehr, inkl. Integration mit dem virtuellen Renningenieur.

  • Es ist Freitag und damit Release-Day. Version 2.4 bringt die folgenden Neuerungen:


    1. Unterstützung für mehrere Button Boxes mit unterschiedlichen Belegungen
    2. Die Kalibrierungen der Pedale (Heusinkveld) können nun auch während eines laufenden Rennens verändert werden. Sehr praktisch bei einsetzendem Regen, um Bremse und Gas sensibler zu machen
    3. Initiale RaceRoom Racing Experience
    4. Jona hat wieder was neues gelernt:

      Jona says: "Da die Temperaturen fallen, werden wir die Reifendrücke für den nächsten Stint um 0.2 PSI erhöhen"

      Dahinter steckt eine statistische Trendanalyse der Track, Air und Reifentemperaturen...
  • Release 2.5 ging soeben online:


    1. Push-To-Talk für die Spracherkennung sowohl des virtuellen Renningenieurs als auch zur Kontrolle der Button Box Modis.
    2. Für Button Boxes können die Layouts nun auf Basis eines Konfigurations Files erstellt werden - Programmierung ist nicht mehr notwendig. Eine zukünftige Version wird hierzu sogar einen grafischen Editor bringen.
    3. Die ACC Shared Memory Erweiterung von 1.7 zu Wetter Informationen wurde angebunden und Jona reagiert nun auf Wetteränderungen. Der größere Teil der Regeln läuft noch im Shadow Modus, d.h. die volle Funktionalität inkl. Wechsel der Reifenmischung bei einem Boxenstopp inkl. Luftdruckanpassung kommt in den Releases V2.6 and V2.7.
  • Release 2.5.4 ist online:


    Mit diesem Release ist der erste Zyklus von Jona, dem virtuellen Renningenieur, nun abgeschlossen und Jona ist nicht länger im Alpha Zustand. Ich habe bereits mehrere Rennen hinter mir, in denen Jona den Boxenstopp geplant und durchgeführt hat, und die eingestellten Werte waren spot on. Auch die Analysen bzgl. Zeitverlust nach einen Unfall oder auch die Empfehlung für einen Reifenwechsel bei Wetteränderung funktionieren bereits überzeugend.


    Der KI Kernel von Jona besteht aktuell aus knapp 500 Regeln. Aber das ist noch nicht das Ende, denn ab dem nächsten Release werde ich eine Big Data Sammlung aufbauen, zu der jeder Nutzer (nach Einverständnis selbstverständlich) mit seinen Renndaten beitragen wird. Auf Basis dieser Daten und Reinforced Learning Algorithmen wird Jona noch feinfühliger agieren können, und es werden erste Schritte in eine aktive Boxenstrategie möglich.


    In diesem Release gibt es aber auch wieder Verbesserungen für die anderen Teile von Simulator Controller. U.a. wurde das konfigurationsbasierte Layouting für Button Boxes verbessert und bei der Sprachausgabe kann die Stimmlage nun angepasst werden.

  • Release 2.6.1 bringt wieder umfangreiche Neuerungen:


    1. Nachdem der erste Zyklus von Jona mit Release 2.5 abgeschlossen wurde, beginnt Simulator Controller ab Release 2.6 mit dem Aufbau der Setup Datenbank. Dazu werden eine ganze Reihe Daten aus allen Rennen gesammelt und, sofern ein Einverständnis erteilt wurde, in einer zentralen Datenbank in der Cloud konsolidiert. Im Gegenzug wird jeder Nutzer die konsolidierten Daten erhalten und kann damit auf einen immer größer werdenden Fundus an Setup Informationen zu allen Fahrzeugen, Strecken und Wetterbedingungen zugreifen. Ab Release 3.0 wird Jona auch all diese Informationen nutzen, um in einem Rennen auf unvorhergesehene Veränderungen der Bedingungen reagieren zu können. Um all dies zu ermöglichen, beginnt mit Release 2.6 die Sammlung der Daten.


    2. Daneben gibt es eine Reihe weiterer Verbesserungen. So wurde das Handling des ACC Pitstop MFDs bei unterschiedlichen Bildschirmgrößen und Spracheinstellungen umfassend überarbeitet und robuster gemacht und der Konfigurationsdialog ist "gewachsen" und erlaubt nun den Aufruf kontextsensitiver Hilfsinformation und Dokumentation.


    3. Jona hat gelernt, für einen Boxenstopp eine andere Reifenwahl als die vorgeschlagene zu akzeptieren und dabei auch die Luftdrücke korrekt vorzuwählen.


    4. Das aktuelle Setup kann nun auf einfachem Wege von ACC an Jona übergeben werden.


    Wie immer, gibt es in den Release Notes im Wiki zu all den Neuerungen auch die Verlinkung auf die entsprechende Dokumentation. Und nun viel Spaß damit: Simulator Controller on GitHub

  • Diese Woche ist es aus Zeitgründen nur ein kleines Release und trotzdem gibt es wieder einige neue Funktionen:


    1. Die gewählten Modis der angeschlossenen Button Boxes können nun abhängig vom aktuellen Simulator und der aktuellen Session automatisch ausgewählt werden. Für die Formulierung der Regeln existiert ein grafischer Konfigurationsdialog.

    2. Jona beherrscht nun einen automatischen Boxenstopp in der rFactor 2 Simulation.


    Im Untergrund wurde diesmal ein wenig aufgeräumt:


    1. Die Implementierung eines Plugins für eine weitere Simulation inkl. Unterstützung des virtuellen Renningenieurs wurde stark vereinfacht. DIes ist u.a. eine Vorbereitung für die kommende iRacing Integration.

    2. Für die Dateil "Controller Plugin Labels", die die Bezeichner der Aktionen auf dem Button Box Fenster enthält, wurde eine Lokalisierungsfunktion geschaffen.

    3. Das Versionsmanagement und der automatisierte Update-Mechanismus wurde verbessert.