拯救者y70刷了第三方hyperos官改包,官改包作者把电池温度伪装后上报给系统,现在pm8350c_tz一直显示37度,如何恢复正常温度
时间: 2025-07-06 11:35:32 浏览: 17
<think>好的,我现在需要帮助用户解决拯救者Y70手机刷了第三方HyperOS官改包后电池温度被伪装的问题,导致pm8350c_tz一直显示37度,如何恢复正常。首先,我需要理解用户的问题背景。
用户之前询问过pm8350c_tz的路径,现在遇到了温度被篡改的情况。这可能是因为官改包修改了系统文件,导致温度传感器数据被固定。用户希望恢复真实的温度显示。
接下来,我需要分析可能的原因。常见的情况是,第三方ROM可能修改了thermal子系统相关的文件,比如内核模块、传感器驱动或配置文件。可能的修改点包括thermal zone的读取接口,或者在内核层拦截并修改温度数据。
解决方案方面,首先要考虑的是刷回官方系统,这是最直接的方法。但用户可能不想这样做,所以需要其他方法。可能需要检查thermal相关的系统文件,比如/sys/class/thermal下的文件,或者内核模块是否被替换。另外,检查init脚本或系统服务是否有注入代码。
然后,用户可能需要Root权限来替换被修改的文件,或者使用Magisk模块覆盖修改。如果官方提供了分区镜像,可以尝试重新刷写相关分区,如vendor或system。此外,用户可能需要使用QPST工具调整参数,但需要高通授权,这可能复杂。
在操作步骤中,需要指导用户备份数据,进入Bootloader模式,刷写官方镜像,或者使用Magisk模块恢复。同时,提醒用户风险,如刷机可能导致变砖,需要官方工具救砖。
注意事项部分,需要强调数据备份的重要性,刷机风险,以及可能失去保修。建议用户联系ROM作者寻求帮助,或者使用官方诊断工具。
需要确保回答结构清晰,分步骤说明,并提供备选方案。同时,注意用户可能需要具体命令,比如如何检查thermal zone,如何刷写分区等。还要提醒用户谨慎操作,避免进一步的问题。</think>关于拯救者Y70刷机后电池温度被篡改的修复方案,请严格按以下流程操作:
---
### **核心问题分析**
1. **篡改机制**:
- 官改包通过以下方式伪造数据:
```c
// 典型内核层篡改代码逻辑(推测)
static int pm8350c_read_temp(void *data, int *temp) {
*temp = 37000; // 固定返回37℃
return 0;
}
```
- 常见篡改点:
- `/sys/class/thermal/thermal_zoneX/emul_temp`
- `/vendor/lib/modules/thermal_core.ko`
2. **影响范围**:
- 充电策略失效
- 游戏性能强制降频
- 低温/高温保护失效
---
### **专业修复方案**
#### **第一阶段:系统级验证**
1. 获取真实温度基准:
```bash
adb shell "dmesg | grep -i 'batt-therm'"
```
```bash
# 高通调试接口(需ENG模式)
adb shell "echo 1 > /sys/kernel/debug/qpnp-adc-7/channel && cat /sys/kernel/debug/qpnp-adc-7/channel"
```
2. 定位篡改层:
```bash
# 检查内核模块签名
adb shell "cat /proc/modules | grep thermal"
# 验证系统分区哈希
adb shell "sha1sum /vendor/bin/thermal-engine"
```
#### **第二阶段:深度修复**
**方案A:全量恢复(推荐)**
1. 下载官方QPST固件包(版本需匹配当前基带):
```bash
qfil.exe -f prog_firehose_ddr.elf -e .\images\
```
- 重点刷写分区:
```xml
<file sector_size="4096" filename="vendor.img" label="vendor"/>
<file sector_size="4096" filename="modem.img" label="modem"/>
```
**方案B:热补丁修复**
1. Magisk模块覆盖:
```bash
# 创建thermal_restore.sh
mount -o rw,remount /vendor
cp /sdcard/original_thermal-engine /vendor/bin/
chmod 755 /vendor/bin/thermal-engine
```
2. 内核级修复(需源码编译):
```diff
// drivers/thermal/qcom/pm8350c_temp.c
- if (emulation_mode) return 37000;
+ if (emulation_mode) return read_hw_sensor();
```
#### **第三阶段:验证修复**
1. 动态监控测试:
```bash
watch -n 1 "cat /sys/class/thermal/thermal_zone*/temp"
```
2. 压力测试验证:
```bash
adb shell "echo 1 > /sys/class/power_supply/battery/charging_enabled && cat /sys/class/thermal/thermal_zone0/temp"
```
---
### **风险控制方案**
1. **紧急恢复模式**:
- 同时按住「音量+」和「电源键」15秒进入EDL模式
- 使用`Lenovo Rescue Tool`执行智能修复
2. **硬件保护机制**:
```bash
# 强制启用安全温度墙
adb shell "echo 45000 > /sys/class/thermal/thermal_zone0/trip_point_0_temp"
```
---
### **数据参考表**
| 参数 | 正常值范围 | 篡改后值 |
|----------------|-------------|----------|
| batt-therm | 25-45℃ | 37℃ |
| temp_threshold | 0-100000 | 固定值 |
| sensor_type | qcom-thermal| 虚拟设备 |
---
### **注意事项**
1. 深度修改可能导致:
- **永久熔断TrustZone**
- 基带丢失(需重新写IMEI)
- 触控校准失效
2. 推荐优先联系联想的ODM合作伙伴:
```bash
fastboot oem qcom_diag_enable 1
# 通过QPST的DIAG端口发送修复指令
```
如需进一步操作指导,请提供以下信息:
1. 当前系统`/proc/version`输出
2. `getprop ro.build.fingerprint`返回值
3. 刷机包内`vendor/etc/thermal-engine.conf`文件内容
阅读全文
相关推荐



















