Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] SasaKaranovic - OpenFan Controller

Featured Replies

Summary: Support thread for SasaKaranovic's OpenFan Controller Docker template

Application: OpenFan Controller Software

Source: https://github.com/SasaKaranovic/OpenFanController

 

This is a support thread for running OpenFan Controller on your Unraid server via Docker.

The provided template should work out-of-the-box with no modifications.

 

Note: You can specify exact USB device that you would like this docker instance to control. This can be useful in some (rare) cases. For example if you have multiple USB-to-Serial devices connected to your Unraid server or if you have multiple OpenFan controllers connected at the same time. This is done by changing the `OPENFANCOMPORT` environment variable.

 

Please note: In order to run this app, you will need to have OpenFan Controller physically connected to your  Unraid server. Otherwise the setup will fail.

You can build your own or buy finished and programmed unit from here.

 

Update 2024-05-28:

Thanks to good folks at support, I have been informed on how to access disk temperatures that are shown in the UI and have built a tiny project/docker-container around that. This solutions should hopefully run smoothly on every UnRAID setup.

It will periodically poll disk temperature information and based on that set the fan RPM/PWM.

What RPM/PWM value it will set and which disk temperature it will use is configured through a .json file.

 

More information on how it works and link to the project source code is here

Edited by SasaKaranovic
Adding update for OpenFAN Unraid Servce app

  • Replies 99
  • Views 11.8k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • For anyone interested in this great project, i created an updated 3d printable case. This remix allows the installation of the fancontroller in a 2.5" SATA SSD slot. https://makerworld.com/en/models

  • SasaKaranovic
    SasaKaranovic

    New version should be live now. Main improvement should be that now you are able to specify multiple disks temperatures to be used for determining fan curve profile. This should hopefully make a life

  • JayBee_Unraid
    JayBee_Unraid

    That was it! I just needed to switch it to host. Thanks for figuring that out. No, that address is the one used my unRaid server, you can see it in the screenshot. No problem with the port either. It

Posted Images

This looks perfect!!

 

It wont let me install without giving it access to a controller (which I don't have yet) so just quick question - Is this able to access all server sensors? so all HD temps & CPU / motherboard temps too? Rather than solely external sensors on the openFan controller?

Edited by dopeytree

  • Author

Thank you @dopeytree

 

I'm not sure what your target application is but let me describe what this is and how it can be used.

The OpenFAN Controller allows you to control up to ten 12V PWM fans individually and you can set target PWM value or target RPM for each individual fan.

It is designed to be platform and system agnostic. Meaning you can use it on Windows, Linux, Mac in a Docker container or whatever you desire.

It also has a public API that you can use to create a plugin for existing software (ie. like I did for FanControl) or to trigger/integrate into some other automation.

 

The application that is available on Community App store is an API server that also comes with a simple GUI. This allows you to interact with the OpenFAN controller.

 

So for example, on my desktop I use it with FanControl software. It has a very simple and clean UI that I like and it's the software I used before. But I can't run FanControl on my servers.

 

So on the Unraid server that I have in my living room I have a bit more "complex" setup.

I run it in a docker container and then have couple of separate applications/scripts/cron jobs that control the fans.

For example if the HDD temp is too high, I can spin up only the HDD fans. If the CPU/GPU temp is too high, I can spin up only the fans that move air in that area.

There is also a feature to define fan profiles. This is where I can specify RPM/PWM values for all 10 fans. Like for example I have a "idle" profile, "medium load" an "crank it to 11" profiles. Then I can make a simple API call from any application (ie. using some other docker container or even cron) to apply any of the profiles I have.

 

With that said, the API server will not monitor temperature sensors etc. It provides an API interface (it also has a Web UI interface) and you can use it to simply link any application (running locally or even remotely) with the fan controller.


I don't know if this sounds like a weird design decision, but I honestly think (hope) it's not that terrible idea. Please bear with me while I try to explain my view and motivation for this:

Instead of designing another fan controller and trying to "lock" people into vendor software that maybe won't work on your system or does not support (some of) your sensors, has terrible GUI, needs ton of ram just to run, annoys you every couple of days about new update that doesn't do anything and so on.
The idea was to make a fan controller that works on any OS and that gives you the flexibility to run it whichever way you want. It is your fan controller and you can control and interact with it in any way you want. There is nobody "prescribing" how you have to use it.

Now obviously this design decision also comes with a down-side for average user, in that it does not come with fancy software package. And if I gave it to my parents, it definitely will not be entirely plug&play out of the box. But I still think the ability to be used in almost every use-case is very valuable, at least for me.

 

Finally since the project is open-source and public, the API is open-source and public, you (the community) can use it however you want, integrate it with whatever you want or make custom apps for it and (hopefully/please) share back with the community so that we all can benefit from it.

 

Sorry about the very long reply to your question but I hope this gives you the answer you were looking for. :)

Edited by SasaKaranovic
Typos, so many typos

Sounds good at the moment I'm using a manual fan controller with a dial I turn but with your designed software & hardware I could automate this with some scripts.

 

Awesome project for me to get ready for the warmer summer months.

Edited by dopeytree

Tried to install this but I get the below failed error. 

 

docker run
  -d
  --name='OpenFanController'
  --net='bridge'
  -e TZ="Australia/Brisbane"
  -e HOST_OS="Unraid"
  -e HOST_HOSTNAME="DarKnight"
  -e HOST_CONTAINERNAME="OpenFanController"
  -e 'OPENFANCOMPORT'='/dev/ttyACM0'
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://[IP]:[PORT:3000]'
  -l net.unraid.docker.icon='https://github.com/SasaKaranovic/OpenFanController/blob/master/assets/logo.png?raw=true'
  -p '3210:3000/tcp'
  --device='/dev/ttyACM0'
  --memory=512M 'ghcr.io/sasakaranovic/openfancontroller:release'
WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
bc17432da45ec7d414380d58678601895254edc6385c73aa074ef732387fcf38
docker: Error response from daemon: error gathering device information while adding custom device "/dev/ttyACM0": no such file or directory.

The command failed.

 

  • Author
20 hours ago, z0ki said:

Tried to install this but I get the below failed error. 

 

docker run
  -d
  --name='OpenFanController'
  --net='bridge'
  -e TZ="Australia/Brisbane"
  -e HOST_OS="Unraid"
  -e HOST_HOSTNAME="DarKnight"
  -e HOST_CONTAINERNAME="OpenFanController"
  -e 'OPENFANCOMPORT'='/dev/ttyACM0'
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://[IP]:[PORT:3000]'
  -l net.unraid.docker.icon='https://github.com/SasaKaranovic/OpenFanController/blob/master/assets/logo.png?raw=true'
  -p '3210:3000/tcp'
  --device='/dev/ttyACM0'
  --memory=512M 'ghcr.io/sasakaranovic/openfancontroller:release'
WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
bc17432da45ec7d414380d58678601895254edc6385c73aa074ef732387fcf38
docker: Error response from daemon: error gathering device information while adding custom device "/dev/ttyACM0": no such file or directory.

The command failed.

 

 

Do you have OpenFAN Controller connected to your Unraid server? This docker application will not work without the hardware connected.

  • 2 weeks later...
On 2/24/2024 at 3:34 PM, SasaKaranovic said:

Please note: In order to run this app, you will need to have OpenFan Controller physically connected to your  Unraid server. Otherwise the setup will fail.

 

Does this only work with the OpenFan Controller hardware, or will any USB fan controller hardware work?

  • Author
On 3/14/2024 at 7:57 PM, lord xeon said:

 

Does this only work with the OpenFan Controller hardware, or will any USB fan controller hardware work?

 

It works only with the OpenFAN Controller.

Thanks for confirmation.  I was looking for a controller so this might be the decision for me.

  • 2 months later...

Thank you for your work on this, will see if this fits my unraid fan needs.  Currently it looks like even just being able to tweak static RPMs will be a bit helpful.

 

I noticed on your project video, that you have other dockers setup to control your fans.

 

Some sort of specific examples would be nice in your documentation. particularly around sensor usage. 

 

Still need to dig more but first problem for me is where do I start for dynamic based on sensor/temp data, even a simplified version of your setup would help jump start and get the ideas flowing.

 

To be honest, I use Unraid specifically because I am lazy, I am fixing stuff for my day job :).  I am not opposed to writing simple scripts or config files, but I personally tend to have a complexity wall for my home server that I just do not pass without a benefit to that laziness.   Example would let me see if for my use, if it would even be worth it.

 

I realize this is your personal project, I don't want to sound demanding or ungrateful.  Just one person's personal input.

 

Again thank you for your work on this, very impressive!

  • Author

Hey @dandirk thank you for your feedback.

 

I think everyone has a different use-case and different setup, so it's understandable that something that works well for me might not work well for you and vice-versa.

Right now my Unraid server is in my living room, and I'm using OpenFAN to add extra fans to that setup and also to be able to individually control those fans.

But as you noticed, I'm not really setting the fan curves or anything special, it's just turning on specific profiles (ie off, low, hdd, full on) based on what is going on in Unraid.

 

Right now the biggest challenge is reading sensor information reliably on every setup. There are so many different setups, so many variations of hardware and also different ways people are running Unraid...

If you or anyone else is a aware of open-source docker/app/package that works on "every" setup and can easily be integrate into a docker application, please let me know.

It would be relatively easy to then create a simple app that you can tell "When sensor X is at this temperature, set this/these fan/fans to this speed".

 

Also note that while here we are mostly talking about Unraid and OpenFAN community application. Keep in mind that OpenFAN is completely platform agnostic fan controller.

So by design it does not care if you are using Unraid, Linux, Windows, Mac or even no OS at all. It receives a simple API request to set FAN X to target RPM/PWM and it does just that.

Now you can make that request from a shell script, python script, docker container, specific app (ie FanControl), remotely, trough IFTT, HomeAssistant, manually... whichever way works for you, OpenFAN will do what you tell it to do.

 

I think that in the long run this gives people so many options and flexibility. And also the whole thing is open-source open-hardware so anyone can contribute if they want/can.

Personally I build it this way because I don't like buying something and ending up feeling like I really don't own that product or can't use it the way I want to.

 

And I agree with your point that this may not be a complete plug&play solution that requires no effort (at least not right now).

But also I think it's not that hard to interact with. Just as an example with a shell/python script you could read temperature of X and based on that set all/certain fans to target RPM/PWM. Maybe I should start a repository of example scripts that people could use or use as a starting point.

 

I have also been asking the Unraid team to see if there is any way to read temperature readings that are shown in the UI.

Because those should hopefully always work across all setups and is something that probably most people care about. Then it would be easy to poll that information and adjust fan speeds based on that information.

 

Again, thank you for taking the time to provide your honest feedback! :)

  • Author

Update 2024-05-28:

 

Thanks to good folks at support, I have been informed on how to access disk temperatures that are shown in the UI and have built a tiny project/docker-container around that.

It will periodically poll disk temperature information and based on that set the fan RPM/PWM.

What RPM/PWM value it will set and which disk temperature it will use is configured through a .json file.

 

More information and link to the project source code is here

  • 3 weeks later...

For the past two weeks now my system has been going through random restarts and there's nothing in the logs that indicates anything.  As far as I can tell temps are well within acceptable ranges and nothing resource heavy is happening when it restarts.  

 

I'm not ready to say it's this hardware, but I'm removing it for a few days to test things out.

 

Has anyone else been using this in their systems and noticed any stability issues?

  • Author
21 minutes ago, lord xeon said:

For the past two weeks now my system has been going through random restarts and there's nothing in the logs that indicates anything.  As far as I can tell temps are well within acceptable ranges and nothing resource heavy is happening when it restarts.  

 

I'm not ready to say it's this hardware, but I'm removing it for a few days to test things out.

 

Has anyone else been using this in their systems and noticed any stability issues?

 

Hey @lord xeon

I have been using these in my Unraid machines (one main NAS and one for testing) for way over a year now without any issues.
The main machine has 9 FANs and the test one has just four. But so far I have had zero issues with it.

I have another in my desktop PC which has 8 fans and also has been running for over a year without any issues.

So far I have not heard from anyone having stability issues.

The OpenFAN just drives extra fans, assuming your system (mainly power-supply) can handle those extra fans in the first place.

 

Obviously/unfortunately random restarts can be caused by many different things.

And as someone who has been using it for very long time and also as the "creator" of the OpenFAN I would have to disagree with very broad statement/approach like "if I remove it for a few days, that's the root cause". :)

 

Can you provide some additional information about your hardware/system?

How many and what kind of fans are you driving and what kind of power supply do you have?

How many drives do you have in your Unraid?

 

If you are connecting fans on the same SATA connector as the hard-drives, make sure you are not overloading your power supply on that "channel/cable".

Or even better, separate them if you have extra connectors on your power supply.

Also make sure you have a proper enclosure for the fan controller and double check that there is nothing "loose" in your setup (ie. cables connectors).

 

Keep in mind that while one average fan, drawing ~0.2 Amps on it's own is probably nothing for your power supply.
However if you add 5, 6...10 of those, plus whatever existing hard-drives, fans, peripherals etc you might have.

You have to make sure your power supply can handle that.

 

If you need any additional information or help from my end, please feel free to send me an email.

 

I'm not ready to blame the hardware, I'm using process of elimination.  I did not say that removing it is the root cause, I said I was going to remove it to eliminate that variable.

 

My system:

  • Running Unraid 6.12.8
  • ASrock Z690 Extreme board 
  • Intel Core i5-13500
  • 650W PSU
  • 5 HDDs (7200rpm)
  • 1 m2 SSD
  • 1 m2 Coral
  • 1 BluRay Drive
  • 1 HBA card (5HDDs connected through that)
  • 1 USB TV Turner
  • 1 USB Z-Wave controller
  • 3 Case fans running via the controller board
  • 1 CPU cooler fan running via MB header

 

I understand that you're the creator and likely have been using this for a very long time with no issues, but you're one data point in an infinite combination of hardware profiles so it's not out of the question that there's something wrong either with my setup, or my hardware that is making it incompatible.  That's why I posted here in the forums looking for other Unraid users to help.

  • Author

I would suggest double checking if your power supply can keep you system stable under full load.

Unrelated to OpenFAN but with the above mentioned config (which does not mention GPU), 650W power supply does not really leave a lot of buffer in my opinion.

What other changes have you made to your system in the past two-three weeks? After reading the spec, I'm surprised your system is stable under full load...

 

Maybe a dumb question, but if you are running only 3 extra fans, why do you need OpenFAN? Seems a bit wasteful. Especially since your motherboard can drive 6 fans on its own.

 

3 hours ago, lord xeon said:

I understand that you're the creator and likely have been using this for a very long time with no issues, but you're one data point in an infinite combination of hardware profiles so it's not out of the question that there's something wrong either with my setup, or my hardware that is making it incompatible.  That's why I posted here in the forums looking for other Unraid users to help.

What I meant to say is that other than myself, there is also a number of other people who have purchased OpenFAN and have been using it for months without any issues.

Obviously not all of them are using Unraid but definitely there are people who have reported using it with Unraid without any issues.

17 minutes ago, SasaKaranovic said:

I would suggest double checking if your power supply can keep you system stable under full load.

Unrelated to OpenFAN but with the above mentioned config (which does not mention GPU), 650W power supply does not really leave a lot of buffer in my opinion.

What other changes have you made to your system in the past two-three weeks? After reading the spec, I'm surprised your system is stable under full load...

 

Maybe a dumb question, but if you are running only 3 extra fans, why do you need OpenFAN? Seems a bit wasteful. Especially since your motherboard can drive 6 fans on its own.

 

What I meant to say is that other than myself, there is also a number of other people who have purchased OpenFAN and have been using it for months without any issues.

Obviously not all of them are using Unraid but definitely there are people who have reported using it with Unraid without any issues.

 

Several online Power calculators suggest that 400-500W is more then enough power for my system.  And my system has been stable for months under all kinds of loads having everything spinning, transcoding plex, heavy load on VMs.  I have had a rock solid system since I built it earlier this year.  I have no GPU - using the built in iGPU on the chip for plex transcoding.

 

The other changes have been:

  • Taking a 5.25 slot to put some SSDs in.  They aren't powered on yet as I need more SATA cables
  • Physically moving the case opposite my room
  • It being summer and getting hot

 

As for why I'm using fan control I like the ability to program the fans without having to go into the bios, building a UI for it and/or scripting around it offers more power in my opinion.  Also, those are just the fans I have in now because it's what I have.  I intend to move the hardware to a server chassis and add much increased cooling capacity, so when I found this I figured get it now (since it was backordered) and play with it to get the hang of it so that when I do move to a new case I know how it's set up.

 

Again, I am not claiming that the fan control hardware is the cause, I'm coming here to see if anyone else has experienced the same as I have and to get more eyes for trouble shooting.

 

  • Author

I don't have your full setup details, but from what I have, to me the PSU seems to be very close if not the weakest link in your setup.

Regardless, if you say it is stable, I'll take your word for it.

 

One edge-case might be that because you technically move those fans to SATA power (instead of MBO connector) and you have quite a few SATA powered devices already, when all of them go online and start drawing power, you maybe go over your power supplies power limit for that channel/cable.

I guess you can check this by moving the OpenFAN to another SATA cable if you have one free or the one which is not fully used.

But again, I would say it's extremely unlikely that OpenFAN + 3 fans are causing this. Your system would really need to be on the edge for this to push it over.

 

49 minutes ago, lord xeon said:

Again, I am not claiming that the fan control hardware is the cause, I'm coming here to see if anyone else has experienced the same as I have and to get more eyes for trouble shooting.

I understand where you are coming from. But it also seems wild to me that your first instinct is to come here to the docker app support thread and say "I'm removing it for a few days to test things out" implying that this is the most probable cause...


Reason I'm saying this is because years ago, I had an issue where I was asking Unraid for support because my system became unstable without a single hardware component being changed.
People said check memory, which I did. And we all thought it was fine because after 3-4 days, there were zero errors on memtest.
After weeks of debugging, people suggested try running memtest for very long time. And since the system was unstable anyway, I let it run for 10+ days and only then saw hundreds of errors. Turned out one of my memory sticks was faulty. I replaced the ram and everything was running great again.
Another time I had Unraid freezing and restarting randomly, again nothing changed on the system. After couple of months of many random restarts and freezes, absolutely nothing in the logs. Someone suggested to try removing Unifi docker container. After that it was running smoothly.

So with that said, I hope you understand why I'm puzzled by your initial comment.

 

Anyway, I'm available if you need any help to troubleshoot this issue or if you need any additional support.

45 minutes ago, SasaKaranovic said:

One edge-case might be that because you technically move those fans to SATA power (instead of MBO connector) and you have quite a few SATA powered devices already, when all of them go online and start drawing power, you maybe go over your power supplies power limit for that channel/cable.

I guess you can check this by moving the OpenFAN to another SATA cable if you have one free or the one which is not fully used.

That's a good suggestion and something I didn't think of.  I'm going to try that after I can confirm that my system is stable as is (without fan control).  Trying to keep things one variable at a time right now.  I'll report back (probably in July as I'm going on vacation), if stability returns, and if moving to a different SATA power channel fixes things.

 

Thanks for the help!

Edited by lord xeon
typos

  • 1 month later...

Hello

 

Thanks for the great project you have created.

I am about to order the hardware from your shop this weekend after payday but I just had a question.

 

I have my UnRAID build in a Fractal Node 804 case that has three pre-installed fans, they are only 3 pin fans though.

Would I be able to use these 3 existing fans with your controller as I was hoping not to replace those as I am already buying 4 more.

 

Thanks

  • Author

Thank you @crookers!

 

 

I am using Node 804 case for one of my Unraid builds too. :)

You should be able to use (power) 3-pin fans with OpenFAN but obviously you will _not_ be able to control the fan speed of 3-pin fans, only the 4-pin fans.

My personal preference was to "future proof" my build by using all 4-pin (PWM) fans.

Let me know if this helps or if you have any additional questions.

  • 2 months later...

I am trying to install this board. I don't have a usb header available on my mobo, so I ran a MicroUSB to USB cable to the back of my mobo. I get power from the serial port but when I run "lsusb" command in unraid it doesn't show up. I've tried several cables (one brand new) and 3 different usb ports, and it won't ever show up. The docker container fails as well, probably because it doesn't show up. Any suggestions?

  • Author

Hey @Bigsteve76

 

In addition to USB cable, the board also requires SATA power in order to work.

The board should arrive pre-programmed, so when you power everything up, the white ACT led should start to blink.

Can you please email [email protected] to open a support ticket and we should be able to resolve this.

I do have the SATA power cable connected and it lights up. I just can't get it to show up in my USB devices. I sent in an email per your request.

  • 2 months later...

Hi, everything worked fine a couple month but now after updating to Unraid 6.12.14 today, the docker wont start because the Device is no longer found

 

Dec 18 2024 16:53:20.421 pid:7 base_logger.py            59 INFO  Logging level: INFO
Dec 18 2024 16:53:20.433 pid:7 config.py                 49 DEBUG Server config:
Dec 18 2024 16:53:20.433 pid:7 config.py                 58 DEBUG {'hostname': 'localhost', 'port': 3000, 'communication_timeout': 1}
Dec 18 2024 16:53:20.433 pid:7 config.py                 60 DEBUG Hardware config:
Dec 18 2024 16:53:20.433 pid:7 config.py                 69 DEBUG {'port': None}
Dec 18 2024 16:53:20.433 pid:7 config.py                 71 DEBUG Fan profile config:
Dec 18 2024 16:53:20.433 pid:7 config.py                 80 DEBUG {'1000 RPM': {'type': 'rpm', 'values': [1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000], 'name': '1000 RPM'}, 'MadMax': {'type': 'PWM', 'values': [100, 100, 100, 100, 100, 100, 100, 100, 100, 100], 'name': 'MadMax'}, '1200RPM': {'type': 'RPM', 'values': [1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200], 'name': '1200RPM'}}
Dec 18 2024 16:53:20.433 pid:7 config.py                 83 DEBUG Fan aliases:
Dec 18 2024 16:53:20.433 pid:7 config.py                 92 DEBUG {0: 'Fan #1', 1: 'Fan #2', 2: 'Fan #3', 3: 'Fan #4', 4: 'Fan #5', 5: 'Fan #6', 6: 'Fan #7', 7: 'Fan #8', 8: 'Fan #9', 9: 'Fan #10'}
Dec 18 2024 16:53:20.433 pid:7 webserver.py             295 INFO  Using COM port `/dev/ttyACM0` (specified in `OPENFANCOMPORT` env variable).
Dec 18 2024 16:53:20.433 pid:7 webserver.py             304 INFO  Fan Controller port: /dev/ttyACM0
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          87 DEBUG Searching for COM port `/dev/ttyACM0`
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          89 DEBUG /dev/ttyS0
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          90 DEBUG       Product: None
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          91 DEBUG       Desc: ttyS0
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          92 DEBUG       SN: None
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          93 DEBUG       VID:None PID:None
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          94 DEBUG       Location: None
Dec 18 2024 16:53:20.436 pid:7 serial_driver.py          95 DEBUG       Interface: None
Dec 18 2024 16:53:20.436 pid:7 webserver.py             373 ERROR OpenFan API service crashed during setup.
Traceback (most recent call last):
  File "/mnt/OpenFan/webserver.py", line 371, in main
    FAN_API_Service().run_forever()
  File "/mnt/OpenFan/webserver.py", line 305, in __init__
    self.fan_commander = FanCommander(self.serialPort)
  File "/mnt/OpenFan/FanCommander.py", line 10, in __init__
    super(FanCommander, self).__init__(port_info, timeout=2)
  File "/mnt/OpenFan/serial_driver.py", line 28, in __init__
    raise TypeError("The port_info must be of type {} (given: {})".format(self.__class__, _lpc.ListPortInfo))
TypeError: The port_info must be of type <class 'FanCommander.FanCommander'> (given: <class 'serial.tools.list_ports_common.ListPortInfo'>)
Dec 18 2024 16:53:29.828 pid:7 base_logger.py            59 INFO  Logging level: INFO
Dec 18 2024 16:53:29.839 pid:7 config.py                 49 DEBUG Server config:
Dec 18 2024 16:53:29.839 pid:7 config.py                 58 DEBUG {'hostname': 'localhost', 'port': 3000, 'communication_timeout': 1}
Dec 18 2024 16:53:29.840 pid:7 config.py                 60 DEBUG Hardware config:
Dec 18 2024 16:53:29.840 pid:7 config.py                 69 DEBUG {'port': None}
Dec 18 2024 16:53:29.840 pid:7 config.py                 71 DEBUG Fan profile config:
Dec 18 2024 16:53:29.840 pid:7 config.py                 80 DEBUG {'1000 RPM': {'type': 'rpm', 'values': [1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000], 'name': '1000 RPM'}, 'MadMax': {'type': 'PWM', 'values': [100, 100, 100, 100, 100, 100, 100, 100, 100, 100], 'name': 'MadMax'}, '1200RPM': {'type': 'RPM', 'values': [1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200], 'name': '1200RPM'}}
Dec 18 2024 16:53:29.840 pid:7 config.py                 83 DEBUG Fan aliases:
Dec 18 2024 16:53:29.840 pid:7 config.py                 92 DEBUG {0: 'Fan #1', 1: 'Fan #2', 2: 'Fan #3', 3: 'Fan #4', 4: 'Fan #5', 5: 'Fan #6', 6: 'Fan #7', 7: 'Fan #8', 8: 'Fan #9', 9: 'Fan #10'}
Dec 18 2024 16:53:29.840 pid:7 webserver.py             295 INFO  Using COM port `/dev/ttyACM0` (specified in `OPENFANCOMPORT` env variable).
Dec 18 2024 16:53:29.840 pid:7 webserver.py             304 INFO  Fan Controller port: /dev/ttyACM0
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          87 DEBUG Searching for COM port `/dev/ttyACM0`
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          89 DEBUG /dev/ttyS0
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          90 DEBUG       Product: None
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          91 DEBUG       Desc: ttyS0
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          92 DEBUG       SN: None
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          93 DEBUG       VID:None PID:None
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          94 DEBUG       Location: None
Dec 18 2024 16:53:29.843 pid:7 serial_driver.py          95 DEBUG       Interface: None
Dec 18 2024 16:53:29.843 pid:7 webserver.py             373 ERROR OpenFan API service crashed during setup.
Traceback (most recent call last):
  File "/mnt/OpenFan/webserver.py", line 371, in main
    FAN_API_Service().run_forever()
  File "/mnt/OpenFan/webserver.py", line 305, in __init__
    self.fan_commander = FanCommander(self.serialPort)
  File "/mnt/OpenFan/FanCommander.py", line 10, in __init__
    super(FanCommander, self).__init__(port_info, timeout=2)
  File "/mnt/OpenFan/serial_driver.py", line 28, in __init__
    raise TypeError("The port_info must be of type {} (given: {})".format(self.__class__, _lpc.ListPortInfo))
TypeError: The port_info must be of type <class 'FanCommander.FanCommander'> (given: <class 'serial.tools.list_ports_common.ListPortInfo'>)

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.