ACC项目在Moto Razr 50 Ultra双电池机型上的电流识别与充电控制问题分析
2025-07-06 02:31:08作者:田桥桑Industrious
背景与问题现象
在Moto Razr 50 Ultra等折叠屏手机中,由于采用双电池设计,ACC(Advanced Charging Controller)模块在电流检测时会出现数值减半的现象。具体表现为:
- 电流检测值仅为实际值的一半
- 无线充电时存在异常发热问题
- 充电控制不稳定(无法正常暂停/自动恢复充电)
技术原理分析
双电池机型通过并联电池组实现大容量供电,但系统上报的电流值通常为单电池数据。ACC默认的电流检测算法基于单电池设计,导致:
- 原始电流值需要乘以系数校正(建议af=250000-500000)
- 电池状态识别异常(需设置batt_status_workaround参数)
- 充电开关控制失效(需手动指定wireless_boost_en开关)
解决方案演进
项目维护者通过多次版本迭代逐步解决问题:
-
基础修正方案
- 增加电流校正系数af参数
- 内置双电池识别逻辑
- 优化充电状态机判定
-
无线充电优化
- 修复无线充电开关控制
- 添加温度保护机制
- 改进充电暂停/恢复逻辑
-
最终稳定方案
- 自动识别双电池配置
- 动态调整充电功率
- 增强异常处理机制
实践建议
针对Moto双电池机型推荐配置:
charging_switch="/sys/class/qcom-battery/wireless_boost_en 0 1"
batt_status_workaround=false
af=250000
temp_max=40
经验总结
- 双电池设计需要特殊电流校准
- 厂商充电管理策略可能影响ACC控制
- 无线快充需特别注意温控
- 建议配合硬件级温度监控使用
该案例揭示了充电控制模块在异构硬件适配中的挑战,也为其他折叠屏设备的ACC配置提供了参考范式。
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0194- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00
项目优选
收起
deepin linux kernel
C
27
12
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
602
4.04 K
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21
Ascend Extension for PyTorch
Python
442
531
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
112
170
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.46 K
825
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
922
770
暂无简介
Dart
847
204
React Native鸿蒙化仓库
JavaScript
321
375
openGauss kernel ~ openGauss is an open source relational database management system
C++
174
249