Zum Inhalt springen

Lüftersteuerung

Die Lüftersteuerung kann USB-Geräten mit den folgenden Funktionen einfach hinzugefügt werden. Der allgemeine Ablauf für ein Plugin zur Aktivierung der Lüftersteuerung über die API unseres Kühlsystems ist:

  1. Erkennen der an das Gerät angeschlossenen Lüfter durch integrierte Erkennungsbefehle oder RPM-Prüfungen.
  2. Erstellen von FanControllern für jeden erkannten Lüfter.
  3. Regelmäßiges Abfragen der Lüfter-RPM vom Gerät und Übermittlung an SignalRGB mittels device.setRPM().
  4. Regelmäßiges Abfragen der gewünschten Lüftergeschwindigkeit von device.getFanLevel() und Setzen dieser auf dem Gerät.

Diese Funktion gibt an, ob der aktuelle Benutzer die Lüftersteuerung aktiviert hat. Wenn dies „true” ist, wird die Erstellung von FanControls nicht verhindert, aber der Zugriff auf device.getNormalizedFanLevel() und device.getFanLevel() wird unterbunden.

Dies ist „true”, wenn der Benutzer keinen SignalRGB Pro-Zugang hat oder wenn das System vom Benutzer manuell deaktiviert wurde.

RückgabeTypBeschreibung
ControlDisabledbooleanTrue, wenn die Cooling-API deaktiviert ist
if(device.fanControlDisabled()) {
// Don't touch'a the fans
return;
}

Erstellt einen FanController mit der angegebenen Id. Diese Id wird für die Interaktion mit dem FanController benötigt und sollte gespeichert werden.

ParameterTypBeschreibungBeispiel
FanIdstringFanId zur Referenzierung des FanControllers”Fan1”

Entfernt den FanController mit der angegebenen Id, sofern einer vorhanden ist.

ParameterTypBeschreibungBeispiel
FanIdstringFanController-Id, die entfernt werden soll”Fan1”

Gibt die gewünschte Geschwindigkeit des FanControllers mit der angegebenen Id zurück. Dieser Wert wird leicht zwischen der durch die aktuellen Lüfterkurveneinstellungen vorgegebenen Geschwindigkeit und dem zuletzt zurückgegebenen Wert interpoliert.

ParameterTypBeschreibungBeispiel
FanIdstringFanController-Id, für die die Geschwindigkeit zurückgegeben werden soll”Fan1”
RückgabeTypBeschreibungBeispiel
FanSpeedintGewünschte Lüftergeschwindigkeit im Bereich 0-10042
let speed = device.getFanLevel("Fan1")
// do stuff with speed

Gibt die gewünschte Geschwindigkeit des FanControllers mit der angegebenen Id zurück. Dieser Wert wird leicht zwischen der durch die aktuellen Lüfterkurveneinstellungen vorgegebenen Geschwindigkeit und dem zuletzt zurückgegebenen Wert interpoliert.

ParameterTypBeschreibungBeispiel
FanIdstringFanController-Id, für die die Geschwindigkeit zurückgegeben werden soll”Fan1”
RückgabeTypBeschreibungBeispiel
FanSpeedintGewünschte Lüftergeschwindigkeit im Bereich 0-1.4251
let speed = device.getFanLevel("Fan1")
// do stuff with speed

Setzt die aktuelle RPM des FanControllers. Dieser Wert wird dem Benutzer in der Cooling-Benutzeroberfläche und den Systemüberwachungsdiagrammen angezeigt.

ParameterTypBeschreibungBeispiel
FanIdstringFanController-Id, für die die Geschwindigkeit zurückgegeben werden soll”Fan1”
RPMintAktuelle Lüfter-RPM1337
let RPM = FancyGetRPMFromDeviceFunction();
device.setRPM("Fan1", RPM);