When running speedfan as a service under Shuttle XPC SN45Gv3 (with Athlon XP 3200+ processor and nforce2 ultra 4000 chipset) the processor speed is halved from 2.2 Ghz into 1.1 Ghz in the next boot when speedfan has been ran
1. as a service according to instructions over here
(http://www.tacktech.com/display.cfm?ttid=197) or
2. as a startup program defined in registry key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Disconnecting the power cord will restore the original processor speed. The processor speed is also halved in the next boot when trying to modify the clock speed form Speedfan but in addition the computer crashes immediately.

The processor speed halving seems to be feature of Athlon XP 3200+ processor to prevent overclocking. It seems as id speedfan tries to modify the clock speed or change the processor speeed multiplier when ran non interactively. I expect this bug not to be present when processor has been modified to allow overclocking.

3. Run Service Manager from Control Panel / Administrative Tools / Services
4. Set service RunSpeedfan to manual
5. Start service RunSpeedfan
6. Reboot and check the processor speed at bios generated startup screen

Additional Information

This bug is propably related to unresolved bug "0000252: Setting clock lead to reboot".

Problem is much worse than I previously reported. It seems that issue is not related to running speedfan as a service but running speedfan at all. I tried to remove the config files to reset the configuration but the problem existed wven with the default config. The problem was present also on older version 4.19.

The processor speed does not immediately drop but only after reboot. The speed is still normal after speedfan exit. With version 4.19 ran as a service the problem didn't occur, but only because speedfan got propably stuck and never got even to a point where it was able to modify the fan speeds.

What really happens is that during the reboot FSB speed drops from 200 to 100 and CPU clock speed drops to 1.1 GHz.

The problem of processor adn FSB speed halving can be overcome by running SpeedFan with /NOSMBSCAN command line parameter. There may be something wrong with Shuttle XPC SN45Gv3 motherboard which causes the problem. To run SpeedFan as a service one needs to pass SpeedFan command line parameters as well. Below are step by step instructions how to do it.

Setting up SpeedFan

First install and setup SpeedFan normally. I have been using SpeedFan 4.24. Note that you should run it with /NOSMBSCAN option. (Click SpeedFan shortcut with right mouse button and select properties and make sure you have "C:\Program Files\SpeedFan\speedfan.exe" /NOSMBSCAN as Target. Don't forget quotation marks.) Remove SpeedFan from Start | All Programs | Startup folder. If you have already installed speedfun previously but have ran it without /NOSMBSCAN option, shut down your computer and remove the power cord for 15 seconds to restore original processor and FSB speed.

First of all you should give SpeedFan control to the system fan. Start SpeedFan (with /NOSMBSCAN) and select configure | Advanced | Chip | IT8712F on ISA | PWM 1 mode | Set to | Software controlled. Then configure speedfan according to speedfan documentation. Check that it can control your fan speeds. Finally from SpeedFan option tab (Configure | Options) check "start minimized" and uncheck "minimize on close". Exit SpeedFan now, do not just minimize it.

Setting up speedfan to run as a service

To set up Speedfan service one needs srvany.exe and instsrv.exe programs. These utilities can be obtained for example from the following address http://www.tacktech.com/pub/microsoft/service/srvany.zip. Expand the zip file to some path for example C:\reskit. From now on I expect these files to reside in C:\reskit directory.

At a MS-DOS command prompt(Start | Run | "cmd.exe"), type the following command:
C:\reskit\INSTSRV.EXE "RunSpeedFan" C:\reskit\SRVANY.EXE
This creates the "RunFanSpeed" service in the Services manager and the registry keys to setup what program to run.

Next open regedt32.exe (Start | run | regedt32.exe)

Next navigate to this registry key
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RunSpeedFan

Add new key and name it Parameters (Edit | New | Key). Select this Paramters key.

Add new string value to Parameters key and name it Application (Edit | New | String Value)
Select this newly made Application value and add "C:\Program Files\SpeedFan\speedfan.exe" to the data field (Edit | Modify). You MUST include the quotation marks!!!

Add new string value to Parameters key and name it AppDirectory (Edit | New | String Value)
Select this newly made AppDirectory value and add "C:\Program Files\SpeedFan" to the data field (Edit | Modify). You MUST include the quotation marks!!!

Add new string value to Parameters key and name it AppParameters (Edit | New | String Value)
Select this newly made AppParameters value and add /NOSMBSCAN to the data field (Edit | Modify).

You can now exit regedt32.exe.

Go to Service Manager (Start | Control Panel | Administrative Tools | Services). Locate RunSpeedFan service. To test the service start it manually (right click |start). Note that SpeedFan will not be visible as tray icon but it controls the fan speed on backgroun. You cannot run normally simultaneously when RunSpeedFan service is running. If SpeedFan starts properly try to stop it (right click | stop). If everything went ok you can set SpeedFan service to start automatically (right click | properties | startup type | automatic). Now next time you restart your computer SpeedFan should start even if nobody logs into the computer and it should not exit until you shut down or restart.