最近更新了家里的R4S软路由,终于可以稳定在40度一下工作了。

R4S 状态页

更新固件

  • 打开 https://openwrt.ai/ 选择自定义固件。

  • 定制软件包,添加自己常用的软件。

    luci-app-accesscontrol luci-app-frpc luci-app-lucky -luci-app-fan luci-app-mosdns luci-app-adguardhome

  • 等待编译,下载,大概2分钟左右。

配置固件

更新风扇配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
1.进入 /etc/init.d 查看是否有fa-fancontrol或者pwm-fan等包含fan字段的脚本,如果有选中删除。

2.分别执行如下命令,逐行copy到命令行后回车即可;
touch /etc/init.d/pwm-fan
chmod 777 /etc/init.d/pwm-fan
touch /usr/bin/pwm-fan.sh
chmod 777 /usr/bin/pwm-fan.sh
/etc/init.d/pwm-fan enable

3. 将以下内容完整copy到/usr/bin/pwm-fan.sh文件中
#!/bin/sh
echo 0 > /sys/class/pwm/pwmchip1/export
echo 0 > /sys/class/pwm/pwmchip1/pwm0/enable
echo 50000 > /sys/class/pwm/pwmchip1/pwm0/period
echo 1 > /sys/class/pwm/pwmchip1/pwm0/enable
echo 46990 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;
sleep 5
echo 49990 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;
while true
do
temp=$(cat /sys/class/thermal/thermal_zone0/temp ) #获取 cpu 温度
if [ $temp -gt 38000 ] ; then # 温度高于 38 风扇开始转, 数值可修改
echo 30000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;
elif [ $temp -le 34000 ] ; then # 温度低于 34 风扇停转, 数值可修改
echo 49990 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle;
fi
sleep 1s; # 1 秒检测一次, 正常使用可以设置为 60s
done


4.将以下内容完整copy到/etc/init.d/pwm-fan文件中
#!/bin/sh /etc/rc.common
START=99
start() {
nohup /usr/bin/pwm-fan.sh &
}
5.登录后台web管理页面,在【系统】--【启动项】--“启动脚本”下面能看到99号优先级名为pwm-fan的脚本,点击第二个【启动】按钮,风扇就开始转了.