diff --git a/README.md b/README.md new file mode 100644 index 0000000..f75fec4 --- /dev/null +++ b/README.md @@ -0,0 +1,80 @@ +# evga-icx + +This program allows you to read temperature sensors off of supported EVGA 30-series iCX3 video cards, as well as control the fans individually. + +## Prerequisites +A supported EVGA 30-series iCX3 card. I have not done extensive testing but belive this is every model of their: +* RTX 3060 Ti +* RTX 3070 +* RTX 3070 Ti +* RTX 3080 +* RTX 3080 Ti +* RTX 3090 +* RTX 3090 Ti + +The number of fans supported depends, of course, on your particular model. + +Access to the `/dev/i2c` device files, which means either: +* Run as root, or +* Install udev rules to allow user access. If you have the OpenRGB udev rules installed to control the LEDs you already have this set up. + +## Dependencies +* libi2c-dev + +## Building +`make` + +## Usage +Note that when controlling fans directly through iCX3 they will fall offline from the Nvidia driver and show as 0 RPM until you return them to automatic mode. + +```text +Available options: +--gpu N : Control only GPU N instead of all supported cards +--fan SPEED : Set all fans at once to SPEED (see below) +--fanN SPEED : Set fan N (0-3) to SPEED + SPEED may be one of the following: + 'auto' to return the fan to its default control mode + N to set the fan to that manual % speed + [+/-]N to set that fan to an RPM offset from the GPU-controlled speed +--reset : Reset all fans to their default mode +--sensors : Print sensor readings even if setting a fan speed +``` + +### Examples: +Read sensors: +```text +$ ./evga-icx +#0: EVGA GeForce RTX 3090 FTW3 Ultra v2 (/dev/i2c-3) @ c:00.0 +Fan 0: 1094 RPM (36/0%, Auto) +Fan 1: 1164 RPM (38/0%, Auto) +Fan 2: 1161 RPM (38/0%, Offset) +Ext. fan: 0 RPM (0/0%, Offset) +GPU2: 35.8 C +MEM1: 35.3 C +MEM2: 35.6 C +MEM3: 35.9 C +PWR1: 35.0 C +PWR2: 35.6 C +PWR3: 36.3 C +PWR4: 36.9 C +PWR5: 36.3 C +``` + +Set external fan to follow Nvidia driver controlled speed with a -500 RPM offset: + +`evga-icx --fan3 -500` + +Set all fans to manual 100% + +`evga-icx --fan 100` + +Force all fans on card 0 to off except for fan1: + +`evga-icx --gpu 0 --fan1 0 --fan2 auto --fan3 0 --fan4 0` + +Return fans back to Nvidia driver control: + +`evga-icx --reset` + +### Future capabilities +It appears to also be possible to read power and voltage sensors off of the K|NGP|N cards, and possibly even control the onboard OLED screen. If you have one of these and are willing to help test this please contact me!