找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 10617|回复: 25

[红米ax6000] 红米AX6000闭源ImmortalWrt和Lean源OpenWrt修改WiFi温度显示

[复制链接]
发表于 2022-10-17 12:45 | 显示全部楼层 |阅读模式
本帖最后由 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)" ,然后按如下修改:
  1. else
  2.         [ -e "/sys/class/thermal/thermal_zone0/temp" ] && \
  3.                 cpu_temp="$(awk '{printf("%.1f掳C", $0 / 1000)}' /sys/class/thermal/thermal_zone0/temp)"
  4.                 wifi_temp1="$(iwpriv ra0 stat | grep "CurrentTemperature" | head -n1 | awk -F '= ' '{print $2}')掳C" #增加这行,获取2.4G WiFi温度。注:获取到的是整数,没有小数点
  5.                 wifi_temp2="$(iwpriv rai0 stat | grep "CurrentTemperature" | head -n1 | awk -F '= ' '{print $2}')掳C" #增加这行,获取5G WiFi温度。
  6. fi

  7. if [ -z "${cpu_freq}" ] && [ -z "${cpu_temp}" ]; then
  8.         echo -n "${cpu_arch} x ${cpu_cores}"
  9. elif [ -z "${cpu_temp}" ] || grep -Eq "ipq|mt7622" "/etc/openwrt_release"; then
  10.         echo -n "${cpu_arch} x ${cpu_cores} (${cpu_freq})"
  11. elif [ -z "${cpu_freq}" ]; then
  12.         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 ,然后按如下修改:
  1. if grep -q "filogic" "/etc/openwrt_release"; then
  2.         cpu_temp="$(awk '{ printf("%.1f掳C", $0 / 1000) }' /sys/class/thermal/thermal_zone0/temp)" #CPU温度
  3.         wifi_temp0="$(awk '{ printf("%.1f掳C", $0 / 1000) }' /sys/class/ieee80211/phy0/hwmon0/temp1_input)" #2.4G WiFi温度
  4.         wifi_temp1="$(awk '{ printf("%.1f掳C", $0 / 1000) }' /sys/class/ieee80211/phy1/hwmon1/temp1_input)" #5G WiFi温度
  5.         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频率的!!!
  1. root@ImmortalWrt:~# mhz
  2. count=413212 us50=10338 us250=51711 diff=41373 cpu_MHz=1997.496
复制代码
最后cpu_MHz就是CPU频率。下面是hanwckf大佬闭源OP的cpuinfo文件,大佬也将温度单独显示了,所以下面主要是显示CPU架构及温度:
  1. #!/bin/sh

  2. . /etc/openwrt_release

  3. CPUINFO_PATH="/proc/cpuinfo"
  4. CPUFREQ_PATH="/sys/devices/system/cpu/cpufreq"
  5. THERMAL_PATH="/sys/class/thermal"

  6. cpu_arch="$(awk -F ': ' '/model name/ {print $2}' "$CPUINFO_PATH" | head -n1)"
  7. [ -n "${cpu_arch}" ] || cpu_arch="?"

  8. case "$DISTRIB_TARGET" in
  9. "x86"/*)
  10.         cpu_cores="$(grep "core id" "$CPUINFO_PATH" | sort -u | wc -l)C $(grep -c "processor" "$CPUINFO_PATH")T" ;;
  11. *)
  12.         cpu_cores="$(grep -c "processor" "$CPUINFO_PATH")" ;;
  13. esac

  14. case "$DISTRIB_TARGET" in
  15. "bcm27xx"/*)
  16.         cpu_freq="$(( $(vcgencmd measure_clock arm | awk -F '=' '{print $2}') / 1000000 ))Mhz" ;;
  17. "bcm53xx"/*)
  18.         cpu_freq="$(nvram get clkfreq | awk -F ',' '{print $1}')MHz" ;;
  19. "mediatek"/*|"mvebu"/*)
  20.         cpu_freq="$(mhz | awk -F 'cpu_MHz=' '{printf("%.fMHz",$2)}')" ;; ##【获取CPU频率】
  21. "mvebu/cortexa72")
  22.         cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
  23.         big_cpu_freq="$(awk '{printf("%.fMHz ", $0 / 1000)}' "$CPUFREQ_PATH/policy2/cpuinfo_cur_freq")"
  24.         ;;
  25. "rockchip"/*)
  26.         cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
  27.         [ ! -e "$CPUFREQ_PATH/policy4/cpuinfo_cur_freq" ] || \
  28.                 big_cpu_freq="$(awk '{printf("%.fMHz ", $0 / 1000)}' "$CPUFREQ_PATH/policy4/cpuinfo_cur_freq")"
  29.         ;;
  30. "x86"/*)
  31.         cpu_freq="$(awk -F ': ' '/MHz/ {print $2}' "$CPUINFO_PATH" | head -n1)MHz" ;;
  32. *)
  33.         [ ! -e "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq" ] || \
  34.                 cpu_freq="$(awk '{printf("%.fMHz", $0 / 1000)}' "$CPUFREQ_PATH/policy0/cpuinfo_cur_freq")"
  35.         ;;
  36. esac

  37. case "$DISTRIB_TARGET" in
  38. "bcm27xx"/*)
  39.         cpu_temp="$(vcgencmd measure_temp | awk -F '=' '{print $2}' | awk -F "'" '{print $1}')°C" ;;
  40. "x86"/*)
  41.         if grep -q "GenuineIntel" "/proc/cpuinfo"; then
  42.                 cpu_temp="$(sensors "coretemp-*" 2>"/dev/null" | grep -E "(Package id |Core )" | grep -Eo "\+[0-9.]*°C" | head -n1 | tr -d "+")"
  43.         elif grep -q "AuthenticAMD" "/proc/cpuinfo"; then
  44.                 cpu_temp="$(sensors "k*temp-*" 2>"/dev/null" | awk '/Tdie/ {print $2}' | head -n1 | tr -d "+")"
  45.         fi
  46.         ;;
  47. *)
  48.         [ ! -e "$THERMAL_PATH/thermal_zone0/temp" ] || \
  49.                 cpu_temp="$(awk '{printf("%.1f°C", $0 / 1000)}' "$THERMAL_PATH/thermal_zone0/temp")"
  50.         ;;
  51. esac

  52. if [ -z "$big_cpu_freq$cpu_freq" ] && [ -n "$cpu_temp" ]; then
  53.         echo -n "$cpu_arch x $cpu_cores ($cpu_temp)"
  54. elif [ -z "$cpu_temp" ] && [ -n "$big_cpu_freq$cpu_freq" ] || \
  55.                 grep -Eq "ipq|mediatek" "/etc/openwrt_release"; then
  56.         echo -n "$cpu_arch x $cpu_cores ($big_cpu_freq$cpu_freq)" ##【输出CPU架构及频率】
  57. elif [ -n "$cpu_temp" ] && [ -n "$big_cpu_freq$cpu_freq" ]; then
  58.         echo -n "$cpu_arch x $cpu_cores ($big_cpu_freq$cpu_freq, ${cpu_temp})"
  59. else
  60.         echo -n "$cpu_arch x $cpu_cores"
  61. fi
复制代码


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
发表于 2022-10-17 13:03 | 显示全部楼层
这个是适用于L大的还是X-wrt的

点评

我是用L大的  详情 回复 发表于 2022-10-17 13:20
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-17 13:20 | 显示全部楼层
651411461 发表于 2022-10-17 13:03
这个是适用于L大的还是X-wrt的

我是用L大的
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-17 18:41 | 显示全部楼层
X86的怎么弄呢。大神。

点评

不是大神哦,这个filogic架构CPU只是有参考修改以下就行了,x86-64架构的不太清楚,你看看/sbin/cpuinfo文件里面有没有什么提示  详情 回复 发表于 2022-10-17 18:47
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-17 18:47 | 显示全部楼层
q360193542 发表于 2022-10-17 18:41
X86的怎么弄呢。大神。

不是大神哦,这个filogic架构CPU只是有参考修改以下就行了,x86-64架构的不太清楚,你看看/sbin/cpuinfo文件里面有没有什么提示
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-17 22:33 | 显示全部楼层
管道 grep "BogoMIPS" 你提取的是 BogoMIPS        : 26.00,不是主频

点评

我知道呀,我不是说了吗  详情 回复 发表于 2022-10-17 23:05
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-17 23:05 | 显示全部楼层
本帖最后由 lgs2007m 于 2022-10-17 23:07 编辑
bg3mdoyuan 发表于 2022-10-17 22:33
管道 grep "BogoMIPS" 你提取的是 BogoMIPS        : 26.00,不是主频

我知道呀,我不是说了吗
命令都是/sbin/cpuinfo有的,我只是试验一下
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-20 19:34 | 显示全部楼层
楼主试试/sys/devices/system/cpu/cpufreq 里面有没有

点评

看了,是空文件夹  详情 回复 发表于 2022-10-20 20:47
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-20 20:47 | 显示全部楼层
universal 发表于 2022-10-20 19:34
楼主试试/sys/devices/system/cpu/cpufreq 里面有没有

看了,是空文件夹
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-21 08:02 来自手机 | 显示全部楼层
这个cpuinfo文件在哪啊

点评

WinScp登录路由器,cpuinfo就在sbin文件夹下面。比较熟悉shell的话直接ssh也可以改 [attachimg]583960[/attachimg]  详情 回复 发表于 2022-11-9 15:58
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-21 09:28 | 显示全部楼层
楼主试试用mhz来算cpu频率
https://github.com/wtarreau/mhz.git
参考下天大的改法
https://github.com/1715173329/im ... 3d67515438a05862c49
最好是直接修改源码而不是修改固件里面的内容

点评

大佬NB呀,我愚笨……今天才发现hanwckf大佬的闭源op也是用mhz来获取CPU频率的,才理解大佬说的,惭愧  详情 回复 发表于 2023-1-9 16:41
根据237176253大佬所述,7986没有电源管理,不支持CPU频率调节,所以一直跑在2.0GHz,感觉也没有必要显示了  详情 回复 发表于 2022-11-9 15:59
大佬找了这么多链接,谢谢 第一个代码看不懂 第二个其实还是改cpuinfo,但是CPUFREQ_PATH="/sys/devices/system/cpu/cpufreq"文件夹是空的,没有东西可以用,我也不知道怎么弄了  详情 回复 发表于 2022-10-21 09:59
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-21 09:59 | 显示全部楼层
universal 发表于 2022-10-21 09:28
楼主试试用mhz来算cpu频率
https://github.com/wtarreau/mhz.git
参考下天大的改法

大佬找了这么多链接,谢谢

第一个代码看不懂
第二个其实还是改cpuinfo,但是CPUFREQ_PATH="/sys/devices/system/cpu/cpufreq"文件夹是空的,没有东西可以用,我也不知道怎么弄了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2022-10-23 11:28 | 显示全部楼层
我编译时手动修改了,但不显示,路由里找不到这个文件

点评

应该有的吧,我用的是L大的固件  详情 回复 发表于 2022-10-23 12:41
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-10-23 12:41 | 显示全部楼层
ramonde 发表于 2022-10-23 11:28
我编译时手动修改了,但不显示,路由里找不到这个文件

应该有的吧,我用的是L大的固件
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2022-11-9 15:58 | 显示全部楼层
本帖最后由 lgs2007m 于 2022-11-9 17:52 编辑
csp273666379 发表于 2022-10-21 08:02
这个cpuinfo文件在哪啊

WinScp登录路由器,cpuinfo就在sbin文件夹下面。比较熟悉shell的话直接ssh也可以改

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

我用的是lean源码,登录进去,sbin文件夹下没cpuinfo文件?  详情 回复 发表于 2023-7-1 09:18
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-19 17:02

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表