Kürzlich bin ich umgestiegen auf Proxmox und habe mich gefragt, ob es eine Möglichkeit gibt, den Status der Netzteile meiner beiden Server (1x FSP Twins 500W und 1x FSP Twins Pro 500W) unter Linux auszulesen. Ich wollte gerne mitbekommen wenn z.B. eines der Netzteile ausfällt oder es sonstige Probleme gibt.
Eine Mail an FSP brachte erst mal Ernüchterung, es gibt keine Software für Linux.
Mir wurde dann empfohlen, doch auf ein Netzteil mit PMBus zu wechseln (mein Mainboard AsRockRack X470D4U kann das theoretisch), z.B. ein FSP500-RAB.
Allerdings bekommt man die in DE kaum als Privatperson.
Außerdem wollte ich nicht schon wieder hunderte Euro ausgeben.
Also mal ein wenig genauer geschaut.
Ein lsusb
unter Proxmox ergab:
CP2112 HID USB-to-SMBus Bridge
Mein Interesse war geweckt, PMBus ist ja nur eine Spielart von SMBus / I2C mit optionalem zusätzlichem Alert-Pin.
Verdacht: Da werkelt die gleiche Platine wie in den PMBus-fähigen Netzteilen, nur eben mit einem zusätzlichen Wandler von PMBus zu proprietärem USB.
Also das Netzteil geöffnet (ACHTUNG! Nur machen wenn man weiß was man tut und keinen Wert auf Gewährleistung/Garantie legt!!!) und genauer geschaut:
Jap, da sitzt eine separate Platine mit dem CP2112, an der Hauptplatine mit 4 Pins angelötet (SMBus hat VDD, GND, SDA, SCL → passt).
Ich habe dann durchgemessen wohin die jeweiligen Pins gehen:
1: GND
2: zu SDA am CP2112
3: zu SCL am CP2112
4 +3,3V
Jackpot!
Vermutlich liegt am 5-Pin-Connector daneben der originale PMBus an, aber dessen Belegung habe ich nicht sicher rausbekommen (3 ist GND).
Na dann: USB-Platine ausgelötet und mal temporär drei Käbelchen an 1, 2 und 3 angelötet (+3,3V brauchen wir nicht).
Fliegend mit dem Mainboard verkabelt und - Tada! - ich hatte valide Werte im IPMI zu "PSU1 VIN" (232V). Beide Netzteil-Module angeschlossen und Server eingeschaltet: tatsächlich sehen die Werte gut und sinnvoll aus:
Nun denn, dann sollte das Ganze ja auch sauber und mit einem passenden PMBus-Stecker versehen werden.
Das war fast der schwierigste Part, wie heißt der Steckertyp und wo bekommt man den her?
Es ist ein Molex 50579405, den plus passende Crimp-Verbinder habe ich bei Digikey gefunden.
Als die Teile da waren also alles fest verlötet mit einem ordentlichen Kabel und wieder zusammengebaut.
Die FSP Twins und Twins Pro scheinen Hardware-mäßig übrigens baugleich zu sein, vermutlich sind nur die Einschub-Netzteil-Module unterschiedlich.
Läuft nun seit einigen Tagen einwandfrei bei beiden Netzteilen.
Kleine Anekdote: Nachdem der FSP-Support nach einigen Tagen wissen wollte, ob ich Bezugsquellen für ein FSP500-RAB benötige, schrieb ich zurück dass das nicht nötig sei weil ich eine andere Lösung gefunden habe. Natürlich wollte er dann wissen welche, ich habe das dann entsprechend dargelegt und sogar noch einige hilfreiche Tipps dazu bekommen.
Also durchaus ein empfehlenswerter Support!