So I finished the fan controller mod on my R710. Now all you see is a nob sticking out where a tape drive might be installed. :)


The controller is based on an Arduino Nano with a 10k Potentiometer for control. Positive and Negative from the power supply for the Arduino and outside posts of the Potentiometer. Center post goes to A0. D3 of the Arduino goes directly to the PWN pins of the fans. There is a 1uF capacitor on the reset and ground pins to force the Arduino to reset upon power up so the program doesn’t freeze and let the fans go full throttle.

I used 2 pin connectors for power to the Arduino from the HDD Backplane Power Cable and a 3 pin connector from the Arduino to the Pot. Another 3 pin connector to connect the fans to the Arduino. This is so everything can be removed in pieces as needed. As an added feature, I also brought out power to a USB 3 Card in the rear of the Server. Just 5V is needed for everything.

The code:

int pwm = 3; // assigns pin 12 to variable pwm
int pot = A0; // assigns analog input A0 to variable pot
int t1 = 0;   // declares variable t1
int t2 = 0;   // declares variable t2
void setup()  // setup loop
  pinMode(pwm, OUTPUT); // declares pin 12 as output
  pinMode(pot, INPUT);  // declares pin A0 as input
void loop()
  t2= analogRead(pot); // reads the voltage at A0 and saves in t2
  t1= 1000-t2;         // subtracts t2 from 1000 ans saves the result in t1
  digitalWrite(pwm, HIGH); // sets pin 12 HIGH
  delayMicroseconds(t1);   // waits for t1 uS (high time)
  digitalWrite(pwm, LOW);  // sets pin 12 LOW
  delayMicroseconds(t2);   // waits for t2 uS (low time)

And the USB 3 Card.