*sits there trying to work out what it does* Going to give any hints on how it works, mainly the micro supervisor?
The micro supervisor contains an oscillator, and it basically performs the role of a basic clocked synchronous state machine, but hey, i'd rather use one fancy chip then 3 stock standard 74LS logic chips. This is explained better in the DS/Max appnote regarding no-microcontroller Dig. Pot. applications. Basically, the Digital Potentimeter moves on on falling edges (or rising, don't remember) of the pin 1 signal, and such that the resistance between the wiper and the 'low end' of the 'pot' decreases if the signal on pin 2 is low and vice versa. So we need that element that can generate the right synchronised signals from our pushbutton inputs. I don't think debouncing will be too critical in our application, so i left it out. Can someone that understands the circuit operation please suggest any changes, improvements or faults?
It does look pretty flawless, though I've not played much with the LM317 it looks perfectly reasonable.
Maxim do several digital potentiometers that can handle push button inputs without the need for a separate IC. It may have been the DS1802, but I cannot remember off hand. If the button was held down, it would increase/decrease the resistance at regular intervals.
You may need an opamp voltage-follower buffer between pot & regulator to boost the current. IIRC it's a very low max on digipots. http://forums.bit-tech.net/showpost.php?p=108053&postcount=11
The DS1809 seems like a possible, and increments the pot every 100ms after the button is held down for 1/2 a second, or single steps if pressed for less than 1/2 a second.
The absolute maximum rating for the DS1804 is 7V. The recommended voltage range for the output is 0 to 5V. With a resistor and a Zener diode you may be able to shift that. (In the following all voltages rounded to integer) The LM317 itself has a dropout of 2V, so it will never make more than 10V at the output. That requires 9V at the adjustment pin. From the pot you have a range of 0 to 5V, which can be shifted to 4 to 9V with a 4V Zener. Put the Zener in series with the pot output.
*nods* The 555 doesn't tend to operate in the MHz, so isn't likely to cause any problems regards layout
Digipots like DS1804 have appreciable wiper resistance (500R) and low max current (1mA), put the two together and you've a 0.5V loss, and an opamp in between looks even more attractive. Give it a low gain (x1.5-2) and you've a bit more flexibility with the output voltage range. Then use an LDO reg and get 4-11.9V output to your fan. is a nice system for 10W fans, but for silent running not the way2go.