Script: Hybrid CPU & HD Fan Zone Controller

n00bftw007

Dabbler
Joined
Jul 11, 2020
Messages
24
Well at least we know that the module is there.

I don't think you need to worry about that setting.
What do you see in FreeNAS under /dev in terms of ipmi?
I'm an idiot, I should have told you this from the get-go, I am hosting FreeNAS in ESXi, so I'm guessing IPMI is not being passed through to the VM, anyway I can achieve this. Thanks in advance.

/dev, where is that located?

Failing that, I will just set it directly via ipmitool. The fans i have are below:

1596047317865.png


All i want is for them to run at 1300RPM minimum and be able to go up automatically from there. They are plugged into FANA on the mobo.

1596047395836.png
 
Last edited:

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,702
OK; so that explains what was a little confusing...

You may be able to get it going using the -H switch (for Host) to specify the IP address of the IPMI from the FreeNAS shell.

Depending on how you're set, you may need to use -U and -P to supply the user and password for the IPMI also in the command... so something like this: ipmitool -H 10.0.0.2 -U admin -P password raw 0x30 0x70 0x66 0x01 0x01 100

To answer your other question:
/dev is a filesystem location which contains handles and files related to devices in a Unix or Linux operating system.
What I was asking is when you do ls /dev do you see anything there with ipmi or something like that, but now we know why that won't happen.
 
Last edited:

saeros

Cadet
Joined
Feb 27, 2021
Messages
1
Don't be rude please, i know we are in a TrueNas Forum here... but are you aware how to get this script running on an unraid server? i would really love to use that as i have a lot of trouble with my noctuas and the supermicro x11sch-ln4f on unraid... any tip/hint/link appreciated!
 
Joined
Dec 2, 2015
Messages
730
Some other folks in this thread have reported that the script works on X11 boards (the author developed it on X10). It should be possible to use this on Unraid, assuming you can run Perl and ipmitool on Unraid, and you edit the script to change the ipmitool and perl paths to match where things are on Unraid. You'll likely get more useful assistance on a forum dedicated to Unraid though.
 

Stux

MVP
Joined
Jun 2, 2016
Messages
4,358
Hi Guys,

I've been busy working on some big things for the last few years which took me away from FreeNAS. Anyway, just recently did some maintenance on one of my FreeNAS servers, in the process I upgraded it to 11.3 via 11.2 from 11.1, on its way to TrueNAS Core.

Anyway, the fan controller stopped working at boot time. The issue was that the start_fan_controller script was probably not 'finishing' and thus tripping on the "new" timeout setting.

Changing the script start command to

/mnt/tank/server/scripts/start_fan_controller &

from

/mnt/tank/server/scripts/start_fan_controller

Seems to have done the trick.

Also set it to pre-init, which is fine and gets it running sooner.

Enjoy.

Edit:

So, I finished the upgrade to TrueNAS Core and decided to recheck this

1) the & is needed if you want to leave the command as a COMMAND

2) but if you switch it to a SCRIPT and just navigate to the script, then it will work just fine.

So I guess, the real issue was me not switching to a script instead of a command :)

TrueNAS Core 12 looks nice.
 
Last edited:

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,702
script start command
The way I'm doing it for mine allows me to launch the script in a tmux session which can then be interrogated, stopped and restarted while the server continues to run.

It also means that the script isn't killed when/if you need to restart the middleware (or it decides to do that by itself) which is a little more often than I would like in the 12.0 CORE era.

I do mine as a post-init, but you could do it as pre-init too.

I have the command text like this:
tmux new-session -d -s fanscript '/mnt/tank/scripts/pid_fan_controller.pl'

You can then attach to that session with tmux attach -t fanscript and then CTRL+B then D to detach when you're done (and can then come back to it later the same way).

While you're in the tmux session, CTRL+C to stop the script and /mnt/tank/scripts/pid_fan_controller.pl to restart it if, for example you wanted to change some of the config.

BTW, I'm using a fork I made of @Kevin Horton 's version which allows some config to be changed without restarting the script (like target temperature).
 

Stux

MVP
Joined
Jun 2, 2016
Messages
4,358
The way I'm doing it for mine allows me to launch the script in a tmux session which can then be interrogated, stopped and restarted while the server continues to run.

It also means that the script isn't killed when/if you need to restart the middleware (or it decides to do that by itself) which is a little more often than I would like in the 12.0 CORE era.

I do mine as a post-init, but you could do it as pre-init too.

I have the command text like this:
tmux new-session -d -s fanscript '/mnt/tank/scripts/pid_fan_controller.pl'

You can then attach to that session with tmux attach -t fanscript and then CTRL+B then D to detach when you're done (and can then come back to it later the same way).

While you're in the tmux session, CTRL+C to stop the script and /mnt/tank/scripts/pid_fan_controller.pl to restart it if, for example you wanted to change some of the config.

BTW, I'm using a fork I made of @Kevin Horton 's version which allows some config to be changed without restarting the script (like target temperature).

Good idea. It hadn't occurred to me that middleware would crash and take down the controller.
 
Top