找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888广告投放联系QQ68610888
广告投放联系QQ68610888广告投放联系QQ68610888
查看: 752|回复: 2

RAX3000ME iStore首页不显示CPU温度的问题

[复制链接]
发表于 2026-4-11 22:49 | 显示全部楼层 |阅读模式
本帖最后由 ukpkmkk 于 2026-4-11 22:49 编辑

起因是我在Kwrt自己编译了一版固件,发现首页不显示cpu温度,之前用H大的固件也是不显示温度,所以就问AI打了个补丁之后就可以显示了,重启后也不会失效.(AI太好用了你知道吗)


#以下是AI总结的步骤

Kwrt 路由器 (RAX3000ME) 首页 CPU 温度显示 0°C 修复方案



一、问题背景
在 Kwrt 固件中,首页仪表盘(Quickstart 插件)的 CPU 温度长期显示为 0°C。

根本原因: 闭源的后端状态获取程序无法正确识别 MT7981B 芯片的温度传感器路径,导致前端 JavaScript 接收不到数据,最终触发默认容错机制显示 0°C。




二、解决方案概述
采用「旁路获取 + 前端劫持」策略:
  • 后端旁路: 利用 OpenWrt 原生 Lua 框架创建一个轻量私有 API,直接读取内核温度文件。
  • 前端劫持: 修改首页 JavaScript 渲染逻辑,让它自动调用我们创建的 API 获取真实温度。





三、实施步骤(SOP)
请通过 SSH(终端)登录路由器后台,依次执行以下命令。

步骤 1:创建私有温度 API
  1. cat << 'EOF' > /usr/lib/lua/luci/controller/my_temp.lua
  2. module("luci.controller.my_temp", package.seeall)
  3. function index()
  4.     entry({"api", "get_temp"}, call("action_get_temp"), nil).sysauth = false
  5. end
  6. function action_get_temp()
  7.     local f = io.open("/sys/class/thermal/thermal_zone0/temp", "r")
  8.     local t = f and f:read("*n") or 0
  9.     if f then f:close() end
  10.     luci.http.prepare_content("text/plain")
  11.     luci.http.write(string.format("%.1f", t/1000))
  12. end
  13. EOF
复制代码


步骤 2:备份并修改前端 JS 逻辑
  1. # 1. 备份原文件(防止出错)
  2. cp /www/luci-static/quickstart/index.js /www/luci-static/quickstart/index.js.bak

  3. # 2. 清理缓存
  4. rm -rf /tmp/luci-modulecache/* /tmp/luci-indexcache/*

  5. # 3. 注入前端温度获取逻辑(更安全的写法)
  6. sed -i '/cpuTemperature/ s/||0/||(function(){try{var x=new XMLHttpRequest();x.open("GET","/cgi-bin/luci/api/get_temp",false);x.send(null);var t=parseFloat(x.responseText);return isNaN(t)?0:t}catch(e){return 0}})()/g' /www/luci-static/quickstart/index.js
复制代码





四、验证方法
1. 验证后端 API 是否正常
  1. curl -s [url]http://127.0.0.1/cgi-bin/luci/api/get_temp[/url]
复制代码

正常应输出类似 48.5 的温度值。

2. 验证首页温度显示
- 电脑端:按 F12 → 右键刷新按钮 → 选择「清空缓存并硬性重新加载」
- 手机端:使用无痕模式重新打开路由器首页




五、压测验证(可选)
执行以下命令可快速升高 CPU 温度,观察首页是否正常显示:
  1. dd if=/dev/urandom of=/dev/null bs=1M count=200
复制代码





本方案已在 RAX3000ME + Kwrt 固件上实测有效。
重启路由器后依然生效。
如升级系统或恢复出厂设置,需重新执行以上步骤。

本帖子中包含更多资源

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

×
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
发表于 2026-4-11 23:29 来自手机 | 显示全部楼层
不用KWRT不就好了 BUG一堆 又没自身维护

点评

用哪个比较好?  详情 回复 发表于 2026-4-11 23:34
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

发表于 2026-4-11 23:34 | 显示全部楼层
iamyangyi 发表于 2026-4-11 23:29
不用KWRT不就好了 BUG一堆 又没自身维护

用哪个比较好?
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

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

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /2 下一条

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

GMT+8, 2026-8-24 01:53

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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

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