1.. SPDX-License-Identifier: GPL-2.0-or-later 2 3Kernel driver aquacomputer-d5next 4================================= 5 6Supported devices: 7 8* Aquacomputer Aquaero 5/6 fan controllers 9* Aquacomputer D5 Next watercooling pump 10* Aquacomputer Farbwerk RGB controller 11* Aquacomputer Farbwerk 360 RGB controller 12* Aquacomputer Octo fan controller 13* Aquacomputer Quadro fan controller 14* Aquacomputer High Flow Next sensor 15* Aquacomputer Leakshield leak prevention system 16* Aquacomputer Aquastream XT watercooling pump 17* Aquacomputer Aquastream Ultimate watercooling pump 18* Aquacomputer Poweradjust 3 fan controller 19* Aquacomputer High Flow USB flow meter 20* Aquacomputer MPS Flow devices 21 22Author: Aleksa Savic 23 24Description 25----------- 26 27This driver exposes hardware sensors of listed Aquacomputer devices, which 28communicate through proprietary USB HID protocols. 29 30The Aquaero devices expose eight physical, eight virtual and four calculated 31virtual temperature sensors, as well as two flow sensors. The fans expose their 32speed (in RPM), power, voltage and current. Temperature offsets and fan speeds 33can be controlled. 34 35For the D5 Next pump, available sensors are pump and fan speed, power, voltage 36and current, as well as coolant temperature and eight virtual temp sensors. Also 37available through debugfs are the serial number, firmware version and power-on 38count. Attaching a fan to it is optional and allows it to be controlled using 39temperature curves directly from the pump. If it's not connected, the fan-related 40sensors will report zeroes. 41 42The pump can be configured either through software or via its physical 43interface. Configuring the pump through this driver is not implemented, as it 44seems to require sending it a complete configuration. That includes addressable 45RGB LEDs, for which there is no standard sysfs interface. Thus, that task is 46better suited for userspace tools. 47 48The Octo exposes four physical and sixteen virtual temperature sensors, a flow sensor 49as well as eight PWM controllable fans, along with their speed (in RPM), power, voltage 50and current. Flow sensor pulses are also available. 51 52The Quadro exposes four physical and sixteen virtual temperature sensors, a flow 53sensor and four PWM controllable fans, along with their speed (in RPM), power, 54voltage and current. Flow sensor pulses are also available. 55 56The Farbwerk and Farbwerk 360 expose four temperature sensors. Additionally, 57sixteen virtual temperature sensors of the Farbwerk 360 are exposed. 58 59The High Flow Next exposes +5V voltages, water quality, conductivity and flow readings. 60A temperature sensor can be connected to it, in which case it provides its reading 61and an estimation of the dissipated/absorbed power in the liquid cooling loop. 62 63The Leakshield exposes two temperature sensors and coolant pressure (current, min, max and 64target readings). It also exposes the estimated reservoir volume and how much of it is 65filled with coolant. Pump RPM and flow can be set to enhance on-device calculations, 66but this is not yet implemented here. 67 68The Aquastream XT pump exposes temperature readings for the coolant, external sensor 69and fan IC. It also exposes pump and fan speeds (in RPM), voltages, as well as pump 70current. 71 72The Aquastream Ultimate pump exposes coolant temp and an external temp sensor, along 73with speed, power, voltage and current of both the pump and optionally connected fan. 74It also exposes pressure and flow speed readings. 75 76The Poweradjust 3 controller exposes a single external temperature sensor. 77 78The High Flow USB exposes an internal and external temperature sensor, and a flow meter. 79 80The MPS Flow devices expose the same entries as the High Flow USB because they have 81the same USB product ID and report sensors equivalently. 82 83Depending on the device, not all sysfs and debugfs entries will be available. 84Writing to virtual temperature sensors is not currently supported. 85 86Usage notes 87----------- 88 89The devices communicate via HID reports. The driver is loaded automatically by 90the kernel and supports hotswapping. 91 92Sysfs entries 93------------- 94 95================ ============================================================== 96temp[1-20]_input Physical/virtual temperature sensors (in millidegrees Celsius) 97temp[1-8]_offset Temperature sensor correction offset (in millidegrees Celsius) 98fan[1-9]_input Pump/fan speed (in RPM) / Flow speed (in dL/h) 99fan1_min Minimal fan speed (in RPM) 100fan1_max Maximal fan speed (in RPM) 101fan1_target Target fan speed (in RPM) 102fan5_pulses Quadro flow sensor pulses 103fan9_pulses Octo flow sensor pulses 104power[1-8]_input Pump/fan power (in micro Watts) 105in[0-7]_input Pump/fan voltage (in milli Volts) 106curr[1-8]_input Pump/fan current (in milli Amperes) 107pwm[1-8] Fan PWM (0 - 255) 108================ ============================================================== 109 110Debugfs entries 111--------------- 112 113================ ================================================= 114serial_number Serial number of the device 115firmware_version Version of installed firmware 116power_cycles Count of how many times the device was powered on 117================ ================================================= 118