-
Notifications
You must be signed in to change notification settings - Fork 169
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fan speed - Percentages do not match the speed. #589
Comments
Fan speed % and actual RPM are estimates, and no direct relationships. |
The RPM measurement should be pretty accurate. It would be interesting to get the fan PWM pin on a scope and see what the EMC2101 fan controller is outputing for a given percentage setting. (and/or check the datasheet and make sure we're using it correctly) |
If the signal on the PWM pin of different fans is always different, then the following solution would be preferable. "Default" setting as the current situation and add a field to enter the maximum RPM of your fan according to the data sheet so that the percentage matches RPM +/-. That would be an approach, right? PS: Unfortunately, I can only contribute ideas, not coding parameters. |
That will not work.
If you look at most PC motherboard manufacturers, none of them require users to specify fan type or parameters into their BIOS. They program a minimum PWM% (to make sure fans will spin at a lowest set PWM%), and it ramps up to 100% depending on the temperature reading. Fan RPM is only to display for user to see or monitor, it is not used as part of the fan control logic. You can read this 2005 Intel paper about their requirements for PWM fans.
https://www.intel.com/content/dam/support/us/en/documents/intel-nuc/intel-4wire-pwm-fans-specs.pdf |
So is it not possible to decouple the logic shown, which the user sees with speed and percentage, from the logic of the control, where percentage and current pulses play a role? Should actually be possible, since the user and the control only have one common parameter (here percentage). Parameter A (speed) can have a different rule/logic for percentage information than parameter B (current pulse). Have my thoughts been communicated clearly? PS: Here is the data for the fan on the Argon cooler: https://www.yccfan.com/productdetail/106.html Here is a picture of the fan: https://x.com/BTCDACH21/status/1870956475117637712?t=mYB3GztGVPVY_GFQBs8hFw&s=19 |
First of all, thank you for the detailed explanation. I asked myself the question: If the RPM is specified in the OS, but is wrong according to this version, then we don't have to provide this information, right? Then it would make more sense to specify the required power in amps, wouldn't it? The approach I had above was that if every fan is different according to your version, the user can enter in a separate field what their fan's theoretical maximum RPM is. From these values you could then calculate the steps 100% 70% 50% 30% in RPM. Otherwise I really have to question the added value of the speed specification, as it can then be omitted. |
The most important thing to keep in mind is that fans are only rated at maximum RPM. PWM% to RPM has no direct relationship. Only certain is that at 100% PWM fan will work at max RPM. Other than that, nothing is else is certain. Even if you let user enter max RPM for the fan used, that is also pointless as again there is no direct relationship from PWM% to RPM. For example, the OG fan you first posted reaches max RPM at 75%. This is evident since your RPM at 75% and 100% is the same. if 100% is say 5000 RPM, that does NOT mean 50% is 2500 RPM. There is also no point in using power as reference, as no 2 ASICs will draw the same power. PWM% is useful for those who want to specify a fix fan speed. OEM have more control since they know the performances of their chips, fans and heatsink. For something like Bitaxe where the user can use anything they want, it is impossible to make any software optimization between fan RPM, PWM% and ASIC temperature. |
Understood, but after this implementation, the "automatic fan function" makes no sense and could be removed to streamline the dashboard. If the temperature has reached a critical value in the ASIC and is constantly demanding more from the fan, but the maximum is reached at 75%, the information content is not given because the system and the user think there are still reserves. After this implementation, it would be more logical to let the fan run at 100% in the base and manually throttle it down by the user to reduce the noise, but here the user will automatically be more sensitive to the setting than if they blindly trust the "automatic function". Then, in my opinion, the OS interface should be cleaned up and only the relevant conditions should be available if others do not add any value and rather only provide false information. |
Describe the bug
The percentage of the fan speed does not correspond to the maximum speed of the fan.
From ~73% the maximum speed of ~5000 rpm is reached.
There are problems when selecting the automatic function, as the system no longer has any reserves and would overheat from ~73% as no further cooling can come from the fan.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The percentage is intended to serve as an indication of how much reserve you have for overclocking. In the automatic function, the Bitaxe would overheat at around 73%, as there would no longer be any cooling effect.
If different coolers have different speeds, you should perhaps be able to set this manually under settings or choose from a selection of most fan models.
Screenshots & Photos
Manual and 75% and 5099 U/min
Auto and 58% with 4400 U/min
Manual and 100% and 5079 U/min
Hardware
Additional context
Argon THRML 60mm Radiator Cooler (max. ~5000 U/min)
The text was updated successfully, but these errors were encountered: