You might want to note that when pwm-ing certain fans using arduino or arduino based controllers they have a very audible "whine" due to the arduino's default pwm frequency of ~490hz(well within audible range). There's 2 ways to fix this, the first is to put a 220uf cap in series with the fan you're driving, this will smooth the pulses and reduce the whine (making the digital signal "look" more like a analog one). The second involves changing the switching frequency of the timers responsible for the arduino's pwm outputs see http://playground.arduino.cc/Main/TimerPWMCheatsheet#.Uxw12PldX5M Also be sure to note that if you change timer TCCR0B, it affects millis() and delay() which will throw off any timing dependent parts of your code, so it's best not to mess with that timer if you don't have to. This is just something I found out when experimenting with driving 4 pin and 3 pin fans using your scw circuit:beer: