xref: /openbmc/linux/Documentation/hwmon/aquacomputer_d5next.rst (revision 0c15d66d071c3490a9a3004b5a4c6f7524041a99)
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 Aquastream Ultimate watercooling pump
16* Aquacomputer Poweradjust 3 fan controller
17
18Author: Aleksa Savic
19
20Description
21-----------
22
23This driver exposes hardware sensors of listed Aquacomputer devices, which
24communicate through proprietary USB HID protocols.
25
26The Aquaero devices expose eight physical, eight virtual and four calculated
27virtual temperature sensors, as well as two flow sensors. The fans expose their
28speed (in RPM), power, voltage and current. Temperature offsets and fan speeds
29can be controlled.
30
31For the D5 Next pump, available sensors are pump and fan speed, power, voltage
32and current, as well as coolant temperature and eight virtual temp sensors. Also
33available through debugfs are the serial number, firmware version and power-on
34count. Attaching a fan to it is optional and allows it to be controlled using
35temperature curves directly from the pump. If it's not connected, the fan-related
36sensors will report zeroes.
37
38The pump can be configured either through software or via its physical
39interface. Configuring the pump through this driver is not implemented, as it
40seems to require sending it a complete configuration. That includes addressable
41RGB LEDs, for which there is no standard sysfs interface. Thus, that task is
42better suited for userspace tools.
43
44The Octo exposes four physical and sixteen virtual temperature sensors, as well as
45eight PWM controllable fans, along with their speed (in RPM), power, voltage and
46current.
47
48The Quadro exposes four physical and sixteen virtual temperature sensors, a flow
49sensor and four PWM controllable fans, along with their speed (in RPM), power,
50voltage and current. Flow sensor pulses are also available.
51
52The Farbwerk and Farbwerk 360 expose four temperature sensors. Additionally,
53sixteen virtual temperature sensors of the Farbwerk 360 are exposed.
54
55The High Flow Next exposes +5V voltages, water quality, conductivity and flow readings.
56A temperature sensor can be connected to it, in which case it provides its reading
57and an estimation of the dissipated/absorbed power in the liquid cooling loop.
58
59The Aquastream Ultimate pump exposes coolant temp and an external temp sensor, along
60with speed, power, voltage and current of both the pump and optionally connected fan.
61It also exposes pressure and flow speed readings.
62
63The Poweradjust 3 controller exposes a single external temperature sensor.
64
65Depending on the device, not all sysfs and debugfs entries will be available.
66Writing to virtual temperature sensors is not currently supported.
67
68Usage notes
69-----------
70
71The devices communicate via HID reports. The driver is loaded automatically by
72the kernel and supports hotswapping.
73
74Sysfs entries
75-------------
76
77================ ==============================================================
78temp[1-20]_input Physical/virtual temperature sensors (in millidegrees Celsius)
79temp[1-8]_offset Temperature sensor correction offset (in millidegrees Celsius)
80fan[1-8]_input   Pump/fan speed (in RPM) / Flow speed (in dL/h)
81fan5_pulses      Quadro flow sensor pulses
82power[1-8]_input Pump/fan power (in micro Watts)
83in[0-7]_input    Pump/fan voltage (in milli Volts)
84curr[1-8]_input  Pump/fan current (in milli Amperes)
85pwm[1-8]         Fan PWM (0 - 255)
86================ ==============================================================
87
88Debugfs entries
89---------------
90
91================ =================================================
92serial_number    Serial number of the device
93firmware_version Version of installed firmware
94power_cycles     Count of how many times the device was powered on
95================ =================================================
96