From: David Gwynne Subject: crsri(4) for monitoring corsair rm/hx i series power supplies To: tech@openbsd.org Date: Tue, 26 Mar 2024 11:11:34 +1000 i'm trying to put a new box together to run at home, and was interested in keeping an eye on the power consumption of the system. the most common way to do this is with a power monitoring plug thing, but it seems like a no brainer to me that this functionality would be part of the actual power supply in the computer. turns out the no brainer is actually quite niche, and there's only a couple of manufacturers that do it and only on a subset of their products. corsair is one of those, and one of these psus was on ebay so i grabbed it. the psu has a usb socket which you can plug into your system, and then you can ask it for information. the following is a fairly quick and dirty driver to talk to my psu. it's based on information figured out by Wilken Gottwalt, as per https://github.com/wgottwalt/corsair-psu/tree/main. i say it's quick and dirty cos it won't cope with the usb device being unplugged while the sensors are being read, and apparently different PSUs can present different subsets of the possible information. eg, mine does not appear to know how much current i'm pulling from mains, and doesn't do any power calculations. i should probably omit those values if i detect that situation. these feel like things we could work on in the tree, if the driver is acceptibe in the first place. the readings are presented as kstats like this: crsri0:0:corsair-psu:0 product: RM850i vrm-temp: 47.00 degC case-temp: 41.25 degC fan-speed: 0 input-volts: 230.00 VAC input-current: 0.000 A 12v-volts: 12.06 VDC 12v-current: 1.250 A 12v-power: 0.000 W 5v-volts: 5.03 VDC 5v-current: 1.938 A 5v-power: 0.000 W 3.3v-volts: 3.33 VDC 3.3v-current: 0.688 A 3.3v-power: 0.000 W