# 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 --compact : Print sensor reading in a compact one-line per card format ``` ### Examples: Read sensors: ```text $ ./evga-icx #0: EVGA GeForce RTX 3090 FTW3 Ultra v2 (/dev/i2c-3) @ c:00.0 Fan 0: 1934 RPM (64/0%, Auto) Fan 1: 1930 RPM (64/0%, Auto) Fan 2: 1944 RPM (64/0%, Offset) Ext. fan: 0 RPM (0/0%, Offset) GPU2: +64.1°C MEM1: +62.2°C MEM2: +58.2°C MEM3: +62.2°C PWR1: +54.3°C PWR2: +59.4°C PWR3: +66.0°C PWR4: +64.3°C PWR5: +57.6°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!