DIY Projekt: Mini Button Box mit 60 Funktionen und OLED-Bildschirm

Wenn der Platz am Rig oder Schreibtisch begrenzt ist, ist diese Mini-Button-Box eine kompakte Alternative für zusätzliche Tastenbelegungen. Auf einer Grundfläche von nur 60 x 30 Millimetern lassen sich bis zu 60 verschiedene Funktionen abbilden. Ein Rotary Encoder und ein kleines OLED-Display dienen dabei der Bedienung und Übersicht. Das Projekt lässt sich mit Materialkosten von rund sieben Euro und einigen einfachen 3D-Druckteilen umsetzen.

Benötigte Materialien

Die Liste der benötigten Materialien ist dieses Mal so kurz wie das Projekt klein ist. Neben dem Mikrocontroller RP2040 werden nur noch ein Encoder des Typs EC11 und ein knapp ein Zoll großer OLED-Screen mit der Bezeichnung SSD1306 benötigt. Hinzu kommen lediglich das Filament, ggf. Kabel und acht M2-Schrauben.

Preis (ab)Mögliche Bezugsquelle*
Button Box
Pico RP2040 (Micro-USB / USB-C)3.00€Aliexpress / Amazon
EC11 Encoder x 3 (15mm Half handle)2.00€Aliexpress / Amazon
SSD1306 OLED Screen (white)2.00€Aliexpress / Amazon
Gesamt~7€
3D-Druck
Filament schwarz~20gAliexpress / Amazon
Filament weiß (optional)~5gAliexpress / Amazon

Folgende Tools bzw. Schrauben sollten zusätzlich vorhanden sein:

  • Schrauben
    • M2 x 6 mm (8x): Für die Verschraubung des RP2040 Boards und des Gehäuses

3D-Druck

Das Projekt ist in einem ultrakompakten Gehäuse untergebracht, das direkt aus dem 3D-Drucker stammt. Es stehen drei Gehäusevarianten zur Auswahl (mit und ohne Mounting-Optionen). Die Drucke sind insgesamt sehr unkompliziert und anspruchslos und sollten auf absolut jedem 3D-Drucker möglich sein.

  • Frontcover: Beherbergt den OLED-Screen und den EC11-Encoder. Er kann ohne Support gedruckt werden.
  • Box/Mount: Hier stehen drei Varianten zur Auswahl, die jeweils ohne Support gedruckt werden können.
  • Rotary Encoder Cap: Gedruckte Abdeckungen für die beiden EC11-Encoder, die standardmäßig ohne Caps ausgeliefert werden. Je nach Toleranz des Druckers kann es hier nötig sein, leicht an der Skalierung zu feilen. Kann auf dem Kopf stehend ebenfalls ohne Support gedruckt werden.

Montage und Verkabelung

Da hier nur ein Typ Schrauben zum Einsatz kommt, ist die Montage besonders schnell abgehandelt.

  • Die einzelnen Komponenten werden im Gehäuse der Button-Box verschraubt: Display (wird eingesetzt und kann dann zusätzlich mit Kleber nach Wahl zusätzlich fixiert werden) und Encoder befinden sich an der Front, der RP2040 im Gehäuse.
  • Anschließend wird das Gehäuse mit vier M2-Schrauben fixiert. Dabei sollten die Schrauben nicht zu fest angezogen werden, da sie in den 3D-Druck greifen.
  • Wurde eines der Gehäuse mit vorgesehenen Löchern gewählt, kann die Box anschließend mit je zwei M6-Schrauben direkt am Rig verschraubt werden.

Die Button-Box lässt sich ganz einfach per USB-Kabel mit dem PC verbinden. Welche Ausführung des RP 2040 verwendet wird, ist dabei unerheblich.

Für die Verkabelung werden insgesamt neun kurze Kabel benötigt, die so verlegt und verlötet werden sollten, dass sie beim Zusammenbau nicht zusammengedrückt werden. Grundsätzlich können auch andere Pins gewählt werden, dann muss allerdings der Code entsprechend angepasst werden.

  • SSD1306 OLED Screen:
    • SDA -> GP0
    • SCL -> GP1
    • GND -> GND
    • VDD -> 3V3(OUT)
  • EC11 Encoder:
    • Phase A -> GP17
    • Phase B -> GP18
    • GND -> GND
    • BTN Pin -> GP9
    • GND -> GND

Wichtig: Alle elektronischen Arbeiten sollten nur unter Aufsicht von ausgebildeten Elektronikern durchgeführt werden, es wird keine Haftung für Fehler / Schäden übernommen. DIY auf eigene Gefahr.

Software

Um den für das Projekt vorgesehenen Code auf den Pico aufzuspielen, müssen lediglich die folgenden Schritte durchgeführt werden. Es sind keine Programmierkenntnisse notwendig:

  • Halte die BOOTSEL-Taste am Raspberry Pi Pico gedrückt, während du ihn per USB mit dem PC verbindest, bis er als neues Laufwerk namens RPI-RP2 erscheint.
  • Kopiere die vorbereitete .uf2-Datei einfach per Drag & Drop (wie auf einen USB-Stick) auf dieses Laufwerk.
  • Der Pico installiert die Firmware automatisch, startet sofort neu und meldet sich direkt als einsatzbereiter SPC Input Game-Controller an deinem System an.

Features und Tastenbelegung

Die Mini Button Box vereint bis zu 60 verschiedene Buttons auf kleinstem Raum. Dabei kann man zwischen drei Profilen wählen, die jeweils bis zu zehn verschiedene Parameter (+/-) kontrollieren können.

Betriebsmodus:

  • Drehen Links: Sendet Gamepad-Button (ungerade Zahl, z.B. Button 1).
  • Drehen Rechts: Sendet Gamepad-Button (gerade Zahl, z.B. Button 2).
  • Kurzer Klick: Springt zum nächsten Modus im aktuellen Profil.
  • Halten (> 0.5 Sek): Wechselt das Profil (A -> B -> C -> A).
  • Halten (> 2.0 Sek): Öffnet das SETUP-MENÜ am Gerät.
  • Jeder Modus belegt zwei Gamepad-Buttons (Links/Rechts Drehung).
    • Profil A (Buttons 1 – 20): 10 Modi x 2 Buttons.
    • Profil B (Buttons 21 – 40): 10 Modi x 2 Buttons.
    • Profil C (Buttons 41 – 60): 10 Modi x 2 Buttons.

Setup-Menü:

  • PHASE 1: MODUS-ANZAHL (Anzahl der aktiven Slots festlegen)
    • Drehen: Erhöht oder verringert die Anzahl der Modi (1-10) für das aktuelle Profil.
    • Klick: Speichert die Anzahl und springt zur Label-Bearbeitung (Phase 2).
  • PHASE 2: LABEL EDITIEREN (Namen der Slots anpassen)
    • Drehen: Scrollt durch das Alphabet/Sonderzeichen für die aktuelle Stelle.
    • Klick: Springt zur nächsten Stelle (3 Zeichen pro Label).
    • Automatik: Nach dem 3. Zeichen springt der Cursor zum nächsten Slot.
    • Beenden: Halte den Taster für ca. 1 Sekunde gedrückt, um jederzeit zu speichern und zum Normalmodus zurückzukehren.

Reset-Optionen:

  • Bootsel-Modus: Taster des EC11 beim Einstecken gedrückt halten (für Firmware-Updates).
  • Factory Reset: Taster des EC11 zehn Sekunden gedrückt halten. Ab sieben Sekunden erscheint eine Warnung auf dem Display. Löscht alle Profile auf Standardwerte.

Da der Controller als regulärer Gamecontroller fungiert und die verschiedenen Modi als separate Buttons erkannt werden, können alle virtuell zugewiesenen Buttons in nahezu jeder aktuellen Simulation belegt werden.

SimHub-Version

Als Alternative zur eigenständigen Button-Box besteht zusätzlich die Möglichkeit, SimHub zu nutzen. Hier können bis zu fünf verschiedene Telemetrie-Daten ausgelesen und angezeigt werden. Pro Variable gibt es wieder die Möglichkeit, zwei Buttons zu belegen (Drehung rechts und Drehung links). Durch Drücken des Encoders wird jeweils zur nachfolgenden Variable gewechselt.

In SimHub muss die Mini Button Box als Custom Serial Device mit folgenden Einstellungen hinzugefügt werden:

Bei der Übertragung kann sowohl die Bezeichnung der Variablen als auch die darzustellenden Telemetrie-Daten beliebig nach folgendem Beispiel (JS) konfiguriert werden:

return 'TC:'+$prop('TCLevel') + ';TC2:'+$prop('GameRawData.Graphics.TCCut') + ';ABS:'+$prop('ABSLevel') + ';BB:'+$prop('BrakeBias').toFixed(1) + ';MAP:' + $prop('EngineMap') +'\n'

Es können dabei bis zu fünf Variablen definiert werden, welche mit einem Semikolon getrennt werden. Wichtig ist zudem am Ende des Codes eine neue Zeile auszugeben (‚\n‘).

Fazit

Die hier vorgestellte Mini Button Box ermöglicht die Steuerung von bis zu 60 verschiedenen Funktionen mithilfe eines einzelnen Encoders mit zusätzlicher Druckfunktion. Mit einer Größe von nur rund 60 x 30 Millimetern lässt sich die winzige und kostengünstige Box nahezu überall montieren. Dank des integrierten OLED-Screens bietet sie so komfortabel die Möglichkeit, verschiedenste Parameter zu kontrollieren.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

,

Simracing Coupons Simracing Deals