eudean

Transition Members
  • Content Count

    8
  • Joined

  • Last visited

Community Reputation

2 Neutral

About eudean

  • Rank
    Newbie

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Please see attached binary with the sanity check removed. fancontrol
  2. I can offer to re-compile with the sanity check removed. Whether the rest of the logic will work with the IT8613E I can't say, though. I'll have to figure out how to set up the appropriate development environment again, but please check back later this week and I will post a new binary for you.
  3. You can put it anywhere Task Scheduler can read from, which includes in the DSM filesystem or in your NAS storage. You just need to pass the full path to the script in the "User-defined script", e.g., in mine I put /usr/local/bin/fancontrol
  4. g++ No libraries aside from standard C/C++ libraries. You can glance at the source to see what I include. Just inspect the source, it's really straightforward. Take a look at https://www.tldp.org/HOWTO/IO-Port-Programming-2.html if you've never worked with IO ports. There are python libraries that expose IO port access, e.g. https://pypi.org/project/portio/, but you could also do writes to /dev/port as mentioned in the tldp page. FYI there's no Makefile as there's only one self-contained source file. You just need to do g++ fanc
  5. I just wanted to mention that the it87 kernel module does the exact same memory accesses to control the fan speed, it just does them in the kernel and exposes control in sysfs rather than my script which does it from userspace and doesn't expose any control files. I think if you want to use lm-sensors you do need the kernel module, but you could write a bash script (or Python or anything else) that controls the fans doing the same writes to /dev/port, or you could call the fancontrol binary from a bash script to control the fans (by passing arguments to write a fixed PWM value). Al
  6. Try using sudo (i.e., sudo ./fancontrol). If you aren't root iopl will probably fail and you'll be writing to invalid memory very quickly (I don't have a lot of error checking for these kinds of things).
  7. So when developing I logged in via ssh to run the script from a shell. But for general usage you should use "Task Scheduler" (in the Control Panel) to create a task that runs at boot up that just executes the script. See https://www.synology.com/en-us/knowledgebase/DSM/help/DSM/AdminCenter/system_taskscheduler for details. Then just reboot your NAS. The fans will take some time to stabilize so after you boot it, wait an hour or two, then check the hard drive temperatures in Storage Manager and they should be pretty close to 37 C (unless you're room is super hot or cold, in which ca
  8. I recently installed Xpenology on a Terramaster F4-220 I picked up during the holiday sales that were going on. I noticed the hard drives were consistently operating at a very high temperature (50+ C while idle) so I decided to investigate how to control the fans. I had read elsewhere there is some BIOS option to drive the fans faster, but lacking the VGA dongle to get into the BIOS I figured I'd investigate how to control them from Linux. So I discovered the hardware contains an IT8772E chip for which Google helpfully brings up this datasheet: https://master-chip.ru/fi