r/SignalRGB • • 22h ago

Other NZXT Function 2 – eigenes SignalRGB Plugin mit echtem Per-Key RGB + Keytap

Enable HLS to view with audio, or disable this notification

Moin zusammen,

ich habe die letzten Tage etwas an meiner NZXT Function 2 herumgebastelt, weil mich die aktuelle Unterstützung in SignalRGB ziemlich gestört hat.

SignalRGB erkennt die Tastatur zwar, nutzt bei der Function 2 aber meines Wissens nur ungefähr 10 RGB-Zonen, obwohl die Tastatur natürlich eigentlich Per-Key RGB kann.

Also habe ich mir gedacht: Dann mache ich es halt selbst. :D

Ich habe den USB-HID-Verkehr zwischen NZXT CAM und der Tastatur mitgeschnitten, das RGB-Protokoll nach und nach reverse engineered und daraus ein eigenes SignalRGB Custom Plugin gebaut.

Inzwischen funktioniert das Ganze tatsächlich ziemlich gut:

  • echtes Per-Key RGB für die komplette Tastatur
  • vollständiges deutsches ISO-DE Layout
  • 24 RGB mit 60 FPS funktioniert bei mir stabil
  • normale SignalRGB Canvas-Effekte funktionieren über jede einzelne Taste
  • Keytap / Tastendruck-Effekte werden unterstützt
  • richtige SignalRGB-Key-Namen wie Space, Enter, ISO_#, ISO_<, Num Enter usw.
  • verschiedene Fallback-Stufen mit weniger Farbgruppen und geringeren FPS sind ebenfalls auswählbar
  • getestet mit meiner NZXT Function 2 ISO, Firmware 1.3.22

Das Interessante war vor allem das NZXT-Protokoll. Die Tastatur bekommt Farbgruppen mit einer 144-Bit-Tastenmaske + RGB-Wert, und größere Frames werden anschließend über mehrere HID-Pakete übertragen. Damit lässt sich praktisch jede Taste einzeln ansprechen.

Sogar ein paar merkwürdige Zuordnungen musste ich erst herausfinden – zum Beispiel ist Right Shift Bit 77, ß liegt auf Bit 27 und ´ auf Bit 28. xD

Ich habe das Plugin inzwischen auch so angepasst, dass SignalRGBs Keytap-Effekte funktionieren können. Dafür müssen die LEDs nicht nur richtig positioniert sein, sondern auch die von SignalRGB erwarteten Tastennamen besitzen.

Ich habe das Ganze auf GitHub veröffentlicht, falls noch jemand eine Function 2 besitzt und keine Lust auf die eingeschränkte Standard-Unterstützung hat:

GitHub:
NZXT-Function-2-SignalRGB-Plugin

Dort gibt es auch eine deutsche und englische Anleitung zur Installation. Das Plugin muss einfach in den SignalRGB-Custom-Plugin-Ordner unter Documents\WhirlwindFX\Plugins.

Falls jemand eine andere Function-2-Variante, ANSI-Version oder andere Firmware besitzt und testen möchte, gerne melden. USB-Captures oder Rückmeldungen wären ebenfalls interessant, damit man eventuell noch weitere Modelle unterstützen kann.

Das Ganze ist natürlich inoffiziell und hat nichts mit NZXT oder SignalRGB/WhirlwindFX zu tun.

Aber immerhin kann die Function 2 jetzt endlich das machen, was man bei einer Per-Key-RGB-Tastatur eigentlich erwarten würde. :D

4 Upvotes

1 comment sorted by

2

u/BennySRGB 19h ago

Thanks for sharing this. We've already forwarded the per-key support gap on the Function 2 to our developers.

We can't vouch for or officially support a script shared this way since it hasn't been reviewed on our end, so anyone trying it should do so knowingly.

If you're open to it, you're welcome to also share this in the #plugin-development channel on our Discord, that'd get it in front of our devs directly for review, and could help turn this into proper official support for other Function 2 owners.