Banana pi R3 fan with PWM

WTF is that ?! I have the official rad/fan, my fan is configured to start @50°c, it never started runing this summer, I’ve never reached this temperature.

This is actualy my temps in a 20°c room.

I’ve never had to make extra holes in my case. In fact, just the radiator is enough, the fan is really if you live in the middle of the Sahara. :sweat_smile:

Haha, I am not that good with cutting metal, I badly butchered the case in the process and then had to use .5 mm copper plate to cover up the mess. :grinning: For me at room temperature of 25°C my BPi-R3 calls for the fan, all guns blazing, in about 15 minutes and from then on the fan keeps turning on and off in little spurts of few seconds to maintain the temperature of 45°C, the fan gets to pause for longer if I set the trip point at 51°. I am not sure why yours is so cool, mine gets hot rather fast. Thats ok though, since I like my stuff hot :stuck_out_tongue_winking_eye:

did you add a radiator on the chips ?

This is my BPI-R3

in my case just the radiator would be enough, as the fan never start…

yup, 60 x 60 x 10mm Black Anodised Aluminum Heatsink Cooler Radiator, that covers the main chips except for WiFi chips which have smaller Raspberry pi radiators of their own. eMMc chip is partially covered by the 60mm sink. BPi-R3_Inside_View

How can you lower the temperature from 60º to 45º for example? I mean, what’s the file to change in OpenWRT for a pwm fan?

1 Like

echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_4_temp
echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_3_temp
echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_2_temp
echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_1_temp

This will activate the fan at 50°c, for 45°c change the value to 45000

as mentioned in the screenshot, the file is : /etc/rc.local

1 Like

I also tested the “new” echos for changing trip_point values.

My setup is a 55mm fan (PLD06010B12HH 12V 0.40A). The fan is capable of handling 5V and 12V. With 5V it runs slower. But I resoldered the 0Ω resistor on the bottom from R317 to R318. So it runs with 12V.

As the picture shows, i use the “normal” 3 pin port with PWM for running the fan.

My R3 runs the last stable openWRT firmware:

My results:

Yes, it is possible to set different values which effected the fan speed. I “read” how much work this was! :+1: :+1: :+1: I really like reading and working on the fan topic.

But for me nothing changed. The fan runs the whole time and I can NOT turn the fan off :rage:. It is quiet and on the border to be hearable. With one or two meter distance, I would accept this at night (trip_point_1 & trip_point_4)!

During the useage of trip_point_2 & trip_point_3 the fan is too loud. And for the temperature I did not need it. For case usage, I would prefer to do much more holes in the case. Only the last choice would be turn on trip_point_3.

What I need would be manipulating the fan speed of the trip_points or that the fan turns off and on (lowest level <trip_point_1 & trip_point_4>).

If the future brings no advanced possibilities, I will may go back to 5V (fan runs lower) or try to use a resistor instead of 0 Ω resistor (R317 to R318) to lower the speed.

1 Like

why did you use echo 05000 instead of 50000 ?? it means the fan will start at 5°C :thinking:

My cooling system.

1 Like

Hello Rooot,

“my results” only show the summary of my attempts. The question was how to find out what every trip_point causes. I don’t want spend more time than i have to on this topic. So I had to found a temperature that activated only one trip_point per try.

The temperature of my CPU is 23°C.

Example for trip_point_4:

I’m hoping you understand it now. The other trip points are at 99,999°C and will not be activated. I could also take 10000 (10°C) or 20000 (20°C) → the purpose was to activete trip_point_4.

For presenting the results I have done the followed:

first:

second:


@Rooot @NsinghP

Why are you using the same temperature for trip_point_1-4:

My tests showed that the fan runs faster during the active trip_point_2 and lower at trip_point_3 (lowest was 1&4). I also find out, in case if you use the same temperature trip_point_2 will be activated!!!

Why not doing this?:

If the temperature is getting faster the fan will run faster!


Hi.

Do you have thermal pads over each chip under the official fan?

Thanks in advance.

I recently bought this self-adhesive thermal pad in combination with Skived Heat Sink which I still got to cut to dimensions. Worth to note that I 3D printed a case where all three parts, especially when it comes to ensuring the heat sink doesn’t fall off causing damage to the board, must be adjusted accordingly.

https://de.aliexpress.com/item/1005004023326782.html

The offical fan should be delieverd with thermal pads. I do not have one, but looked on aliexpress:

grafik

https://de.aliexpress.com/item/1005005767853969.html?spm=a2g0o.productlist.main.3.26e4u24iu24i4A&algo_pvid=36ddb290-5519-4dd7-9a16-142942dc61a0&algo_exp_id=36ddb290-5519-4dd7-9a16-142942dc61a0-1&pdp_npi=4%40dis!CHF!9.59!4.79!!!10.84!5.42!%402101fb0917059424479955684ecd4a!12000034280798901!sea!CH!0!AB&curPageLogUid=WxV3n3YuFLJ3&utparam-url=scene%3Asearch|query_from%3A

Please use thermal pads :+1:

1 Like

not on the wifi chips, there are only 2 pads in the kit…anyway my temp is always below 50°c and my fan never start…or it starts but I never hear it even though it’s 1 meter away from my head

as you can see below, even with no thermal pad, and no contact between the wifi chips and the radiator, the temp never reach 50°c, My office is actually at 20°c

1 Like

Ok. I have put thermal pads over each chip under the official fan. Cpu is running with a stable 44/45 º C. Mt7915_phy0 shows a wrong temperature, but I can live with it :slight_smile:

1 Like

Thanks for those commands! The first only workable/easy solution I found here and elsewhere… those were my temps before running them:

root@OpenWrt:~# sensors
mt7915_phy0-isa-18000000
Adapter: ISA adapter
temp1:        +53.0°C  (high = +120.0°C, crit = +110.0°C)

cpu_thermal-virtual-0
Adapter: Virtual device
temp1:        +54.4°C  (crit = +125.0°C)

mt7915_phy1-isa-18000000
Adapter: ISA adapter
temp1:        +86.0°C  (high = +120.0°C, crit = +110.0°C)

And after letting the system go for a little while with no load nor connections (just starting to provision my BPI-R3 now):

root@OpenWrt:~# sensors
mt7915_phy0-isa-18000000
Adapter: ISA adapter
temp1:        +45.0°C  (high = +120.0°C, crit = +110.0°C)

cpu_thermal-virtual-0
Adapter: Virtual device
temp1:        +44.6°C  (crit = +125.0°C)

mt7915_phy1-isa-18000000
Adapter: ISA adapter
temp1:        +78.0°C  (high = +120.0°C, crit = +110.0°C)

I think it’s a shame that more conservative defaults are not applied since the case was fairly warm to the touch and could have damaged my system eventually… in other words: out of the box configs should not self-destruct the router :confused:

i’m the only one with a mt7915_phy1-isa-18000000 reporting 15°c ??

is +78.0°C a correct value ??

Sorry, i made a mistake when upstreaming the r3 thermal part dts due to my 3rd party pwm was not working with r3.

But you should be aware that mainline software support is done by only a few people,mainly daniel (also openwrt),wifi/hw offloading from lorenzo and some basic parts from me. These are development boards :slight_smile:

Argh, sorry for my harsh word actually, “shame” is a bit too strong in this context, I should have used “pity”. If you show me how to modify the dts, I’d be happy to PR the changes to OpenWRT as penitence :wink:

Thanks Frank and others to maintain/fix those systems, I totally appreciate the efforts… I bought that board, so at least, I hope that helped somehow :stuck_out_tongue_winking_eye:

I’d definitely wouldn’t take those 78degC too seriously…

1 Like