DIY-Projekt: SPC LED Box für Sim Rigs

DIY-Projekt: SPC LED Box für Sim Rigs

Bei dem hier vorgestellten DIY-Projekt handelt es sich um eine Mischung aus Dekorationsobjekt und funktionalem Gadget. Es lässt sich wahlweise über SimHub steuern und seine Funktionsweise kann durch verschiedene Inserts verändert werden.

Benötigte Materialien

Für das Projekt benötigt man neben einem 3D-Drucker mit Filament lediglich einen Raspberry Pi Pico und einen LED-Ring. Insgesamt sollte sich das Projekt für 5 bis 10 Euro umsetzen lassen und ist damit wieder ein echtes Schnäppchen. Eine vollständige Übersicht über das benötigte Material findet ihr hier:

Preis (ab)Mögliche Bezugsquelle*
LED-Box
Pico RP2040 (Micro-USB / USB-C)3.00€Aliexpress / Amazon
12 Bit WS2812 LED Ring1.50€Aliexpress / Amazon
Verkabelung / Sonstiges
Kabel1.00€Aliexpress / Amazon
3M Dual Lock (optional)4.00€Aliexpress / Amazon
3D-Druck
Filament schwarz~50gAliexpress / Amazon
Filament weiß~5gAliexpress / Amazon

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

  • Schrauben
    • M2 x 6/8 mm (4x): Für die Verschraubung des RP2040 Boards.
    • M6: Für die Montage über zum Beispiel Nutensteine

3D-Druck

Das Gehäuse und die Inserts werden mit einem 3D-Drucker hergestellt. Die Box wird in einem Stück gedruckt und ist mit und ohne Halterung für ein typisches 12-Bit-Board erhältlich. Die Druckzeit beträgt hierbei rund eine bis zwei Stunden.

Die Inserts werden idealerweise mit einem Drucker, der mehrere Filamente unterstützt, gedruckt. Ist dies nicht möglich, kann man stattdessen den gesamten ersten Layer in Weiß und den Rest in Schwarz drucken. Aktuell gibt es verschiedene Startnummern, zwei Designs für die Verwendung als Flag-LEDs sowie Templates für eigene Designs.

  • LED Box
    • With mount for 12 Bit RGB Ring
    • Without mount
  • Inserts
    • Numbers: 1 – 11, 22, 33, 55, 66 ,77 ,88 ,99
    • Flags: small, big
    • Template (0.4mm, 0.8mm)
    • Logos: SPC

Elektronik / Zusammenbau

Für die Verkabelung müssen lediglich drei Kabel zwischen den auf der Grafik gezeigten Pins des Picos und der verwendeten LED-Platine verbunden werden. Mehr ist nicht erforderlich.

[Rp2040 VBUS]   --->   [5V  RGB Stripe] 
[RP2040 GND]    --->   [GND RGB Stripe]
[RP2040 GP28]   --->   [DIN RGB Stripe]

Anschließend kann das LED-Board eingesetzt und der RP Pico verschraubt werden (bei der USB-C-Variante werden die vorderen Schrauben nicht genutzt). Anschließend werden die Inserts einfach eingesetzt und können entweder mit einem spitzen Gegenstand oder mithilfe der Aussparung des USB-Ports wieder herausgenommen werden. Bei Verwendung des Modells mit Halterung für den 12-Bit-LED-Ring verdeckt der Pico leicht die LEDs der Platine. Hier kann man entweder den entsprechenden Teil des Picos vorsichtig herausschneiden oder die Variante der Box ohne vorgefertigte Halterung wählen. In diesem Fall wird das LED-Board einfach verklebt und es können auch alternative Ausführungen und Formen der WS2812B-LED-Boards verwendet werden.

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.

Moutning

Für die Verschraubung am Rig ist zentral ein Loch für M6-Schrauben vorgesehen. Stattdessen kann man die LED Box aber auch mit M3 Dual Lock am Rig anbringen. Durch das sehr geringe Gewicht von unter 100 Gramm ist man bei der Montage extrem flexibel. Die LED Box kann zum Beispiel direkt am Rig oder am Monitor-Mount angebracht werden.

Software

Bei der Software gibt es zwei verschiedene Ansätze. Entweder erfolgt die Steuerung über SimHub, beispielsweise zur Anzeige von Flaggen und anderen Telemetriedaten, oder die Software wird als Standalone-Device mit festgelegter Farbe genutzt.

SimHub – Dahl Design Fast DDC

Dank der „Fast DDC“-Umsetzung ist auch die Software-Seite in wenigen Sekunden abgeschlossen. Dazu sind lediglich die folgenden Schritte erforderlich:

  • Zunächst wird der RP2040 mit dem PC verbunden. Bei der ersten Verbindung öffnet sich automatisch ein Dateifenster. Danach muss während des Einsteckens die Taste „BOOTSEL” auf dem Controller gedrückt werden.
  • Anschließend muss dort dann nur noch die Datei B17_E4Half_LED30.uf2 in diesem Ordner abgelegt werden. Der Controller startet anschließend neu und kann direkt verwendet werden.
  • Das Gerät kann jetzt in SimHub hinzugefügt und Profile geladen werden:
    • Hinzufügen eines neuen Geräts: Devices -> Add new device -> Add standard device -> Standard LED device
    • Anschließend müssen für das Gerät unter USB PID / VID configuration folgende Parameter gesetzt werden:
      • VID: 0x2E8A
      • PID: 0x1053
      • LED count: 12
      • Telemetry LED limit: 70%

In SimHub können die LED-Effekte wie gewohnt eingestellt werden. Für die ersten Schritte steht hier ein LED-Profil mit einer statischen Farbe und Flaggen-Effekten (standardmäßig deaktiviert) zum Download bereit.

Standalone

Wenn keine dynamischen LEDs benötigt werden, kann auch ein einfaches Script genutzt werden. In diesem Fall benötigt die LED-Box keine direkte Verbindung zum PC und leuchtet durchgängig in der zuvor gewählten Farbe. Zum Aufspielen des Codes wird die Python-IDE Thonny verwendet. Ein entsprechendes Tutorial findet ihr hier: https://www.youtube.com/watch?v=_ouzuI_ZPLs

import machine
import neopixel
import time

# Number of LEDs
n = 12
# Configure Pin GP28
pin = machine.Pin(28, machine.Pin.OUT)
# Create NeoPixel object
np = neopixel.NeoPixel(pin, n)

base_color = (255, 255, 255)  # White
# base_color = (255, 0, 0)      # Red
# base_color = (0, 255, 0)      # Green
# base_color = (0, 0, 255)      # Blue
# base_color = (255, 255, 0)    # Yellow
# base_color = (255, 0, 255)    # Magenta
# base_color = (0, 255, 255)    # Cyan
# base_color = (255, 165, 0)    # Orange
# base_color = (128, 0, 128)    # Purple
# base_color = (255, 192, 203)  # Pink
# base_color = (0, 128, 128)    # Teal

# Define brightness (0.0 to 1.0, e.g., 0.3 for ~30% brightness)
brightness = 0.6  # Matches your previous (75, 75, 75)

# Calculate scaled color
scaled_color = (int(base_color[0] * brightness), 
                int(base_color[1] * brightness), 
                int(base_color[2] * brightness))

# startup routine: Light up LEDs one by one with scaled color
for i in range(n):
    np[i] = scaled_color  # Set each LED to scaled color
    np.write()           # Update the strip
    time.sleep(0.1)       # Short delay for smooth effect

# Keep all LEDs on with scaled color
for i in range(n):
    np[i] = scaled_color

# Apply changes
np.write()

# Keep LEDs on indefinitely
while True:
    pass

Fazit

Für rund fünf Euro erhält man hier eine kleine, aber dekorative LED-Box, die sich bei Bedarf auch zur Darstellung von Telemetriedaten eignet. Das Projekt selbst ist an einem Nachmittag abgeschlossen und erfordert nur wenige Vorkenntnisse.

Schreibe einen Kommentar

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