|
本帖最后由 lgs2007m 于 2023-1-9 16:43 编辑
前排感谢237176253大佬的红米AX6000闭源OP固件~https://www.right.com.cn/forum/thread-8261104-1-1.html
又更新:感谢universal大佬,大佬早就提醒我用mhz获取CPU频率,我愚笨不懂,现在才发现hanwckf大佬的闭源OP中用的是mhz命令来查看CPU频率!!!
更新:237176253大佬和hanwckf大佬的闭源OP固件已经加入温度显示,不用自己改了
大佬闭源OP刷了之后是ImmortalWrt,经咨询大佬,闭源驱动的WiFi温度是通过iwpriv ra0 stat查看。
需要修改的朋友打开/sbin/cpuinfo文件,找到 cpu_temp="$(awk '{printf("%.1f掳C", $0 / 1000)}' /sys/class/thermal/thermal_zone0/temp)" ,然后按如下修改:
- else
- [ -e "/sys/class/thermal/thermal_zone0/temp" ] && \
- cpu_temp="$(awk '{printf("%.1f掳C", $0 / 1000)}' /sys/class/thermal/thermal_zone0/temp)"
- wifi_temp1="$(iwpriv ra0 stat | grep "CurrentTemperature" | head -n1 | awk -F '= ' '{print $2}')掳C" #增加这行,获取2.4G WiFi温度。注:获取到的是整数,没有小数点
- wifi_temp2="$(iwpriv rai0 stat | grep "CurrentTemperature" | head -n1 | awk -F '= ' '{print $2}')掳C" #增加这行,获取5G WiFi温度。
- fi
- if [ -z "${cpu_freq}" ] && [ -z "${cpu_temp}" ]; then
- echo -n "${cpu_arch} x ${cpu_cores}"
- elif [ -z "${cpu_temp}" ] || grep -Eq "ipq|mt7622" "/etc/openwrt_release"; then
- echo -n "${cpu_arch} x ${cpu_cores} (${cpu_freq})"
- elif [ -z "${cpu_freq}" ]; then
- echo -n "${cpu_arch} x ${cpu_cores} (CPU:${cpu_temp}, 2.4G:${wifi_temp1}, 5G:${wifi_temp2})" #修改这一行,以便在概览显示WiFi温度,如ARMv8 Processor rev 4 (v8l) x 4 (CPU:43.8°C, 2.4G:51°C, 5G:49°C)
复制代码 修改后保存,刷新概览就可以看到温度了:
---------------------------------------------------------------------------------------------------------------------------
Lean源OpenWrt温度显示参照网上的温度显示修改了下,可以用,分享给大家参考。
打开/sbin/cpuinfo文件,找到 if grep -q "filogic" "/etc/openwrt_release"; then ,然后按如下修改:
- if grep -q "filogic" "/etc/openwrt_release"; then
- cpu_temp="$(awk '{ printf("%.1f掳C", $0 / 1000) }' /sys/class/thermal/thermal_zone0/temp)" #CPU温度
- wifi_temp0="$(awk '{ printf("%.1f掳C", $0 / 1000) }' /sys/class/ieee80211/phy0/hwmon0/temp1_input)" #2.4G WiFi温度
- wifi_temp1="$(awk '{ printf("%.1f掳C", $0 / 1000) }' /sys/class/ieee80211/phy1/hwmon1/temp1_input)" #5G WiFi温度
- echo -n "${cpu_arch} x ${cpu_cores} (CPU:${cpu_temp}, 2.4G:${wifi_temp0}, 5G:${wifi_temp1})"
复制代码 修改后保存,刷新概览就可以看到温度了:
根据237176253大佬所述,7986没有电源管理,不支持CPU频率调节,所以一直跑在2.0GHz。
发现hanwckf大佬的闭源OP中显示了CPU频率,用的是mhz命令来查看CPU频率的!!!- root@ImmortalWrt:~# mhz
- count=413212 us50=10338 us250=51711 diff=41373 cpu_MHz=1997.496
复制代码 最后cpu_MHz就是CPU频率。下面是hanwckf大佬闭源OP的cpuinfo文件,大佬也将温度单独显示了,所以下面主要是显示CPU架构及温度:
- #!/bin/sh
- . /etc/openwrt_release
- CPUINFO_PATH="/proc/cpuinfo"
- CPUFREQ_PATH="/sys/devices/system/cpu/cpufreq"
- THERMAL_PATH="/sys/class/thermal"
- cpu_arch="$(awk -F ': ' '/model name/ {print $2}' "$CPUINFO_PATH" | head -n1)"
- [ -n "${cpu_arch}" ] || cpu_arch="?"
- case "$DISTRIB_TARGET" in
- "x86"/*)
- cpu_cores="$(grep "core id" "$CPUINFO_PATH" | sort -u | wc -l)C $(grep -c "processor" "$CPUINFO_PATH")T" ;;
- *)
- cpu_cores="$(grep -c "processor" "$CPUINFO_PATH")" ;;
- esac
- case "$DISTRIB_TARGET" in
- "bcm27xx"/*)
- cpu_freq="$(( $(vcgencmd measure_clock arm | awk -F '=' '{print $2}') / 1000000 ))Mhz" ;;
- "bcm53xx"/*)
- cpu_freq="$(nvram get clkfreq | awk -F ',' '{print $1}')MHz" ;;
- "mediatek"/*|"mvebu"/*)
- cpu_freq="$(mhz | awk -F 'cpu_MHz=' '{printf("%.fMHz",$2)}')" ;; ##【获取CPU频率】
- "mvebu/cortexa72")
- cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
- big_cpu_freq="$(awk '{printf("%.fMHz ", $0 / 1000)}' "$CPUFREQ_PATH/policy2/cpuinfo_cur_freq")"
- ;;
- "rockchip"/*)
- cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
- [ ! -e "$CPUFREQ_PATH/policy4/cpuinfo_cur_freq" ] || \
- big_cpu_freq="$(awk '{printf("%.fMHz ", $0 / 1000)}' "$CPUFREQ_PATH/policy4/cpuinfo_cur_freq")"
- ;;
- "x86"/*)
- cpu_freq="$(awk -F ': ' '/MHz/ {print $2}' "$CPUINFO_PATH" | head -n1)MHz" ;;
- *)
- [ ! -e "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq" ] || \
- cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
- ;;
- esac
- case "$DISTRIB_TARGET" in
- "bcm27xx"/*)
- cpu_temp="$(vcgencmd measure_temp | awk -F '=' '{print $2}' | awk -F "'" '{print $1}')°C" ;;
- "x86"/*)
- if grep -q "GenuineIntel" "/proc/cpuinfo"; then
- cpu_temp="$(sensors "coretemp-*" 2>"/dev/null" | grep -E "(Package id |Core )" | grep -Eo "\+[0-9.]*°C" | head -n1 | tr -d "+")"
- elif grep -q "AuthenticAMD" "/proc/cpuinfo"; then
- cpu_temp="$(sensors "k*temp-*" 2>"/dev/null" | awk '/Tdie/ {print $2}' | head -n1 | tr -d "+")"
- fi
- ;;
- *)
- [ ! -e "$THERMAL_PATH/thermal_zone0/temp" ] || \
- cpu_temp="$(awk '{printf("%.1f°C", $0 / 1000)}' "$THERMAL_PATH/thermal_zone0/temp")"
- ;;
- esac
- if [ -z "$big_cpu_freq$cpu_freq" ] && [ -n "$cpu_temp" ]; then
- echo -n "$cpu_arch x $cpu_cores ($cpu_temp)"
- elif [ -z "$cpu_temp" ] && [ -n "$big_cpu_freq$cpu_freq" ] || \
- grep -Eq "ipq|mediatek" "/etc/openwrt_release"; then
- echo -n "$cpu_arch x $cpu_cores ($big_cpu_freq$cpu_freq)" ##【输出CPU架构及频率】
- elif [ -n "$cpu_temp" ] && [ -n "$big_cpu_freq$cpu_freq" ]; then
- echo -n "$cpu_arch x $cpu_cores ($big_cpu_freq$cpu_freq, ${cpu_temp})"
- else
- echo -n "$cpu_arch x $cpu_cores"
- fi
复制代码
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|