本帖最后由 jackmacc 于 2024-3-5 09:40 编辑  
 
安全提示: 下面操作 非专业人员不要操作,后果自负 
 
 
这种方式是使用py脚本修复. 
熟悉 py脚本的可以,用这种方法  
下载脚本地址:(https://github.com/noolex/lenovo_battery_repair/) 
 
注意:仅仅针对 sanyo 固件,联想电池 LNV-45N1175 是 ThinkPad x230 固件(bMS) bq8030 控制器 
 连接电池用  VGA (D-Sub) 接口: 
 
 电池接口: | + | + |   |SCL|SDA|unkn|GND|GND| 
VGA 接口: 5-GND, 12-SDA, 15-SCL  
 安全提示: 不要把 电池的 +极 连接VGA的  SDA  SCL, GND 上.导致烧毁 主板  
 下面是运行脚本的步骤:  
Detecting i2c port using i2c-tools and get port number of VGA I2C device $i2cdetect -l 
 
Detect i2c-hex-address for connected battery. And find bat-address by connect-disconnect battery $i2cdetect -y [portnum] 
 
Get report about battery $python3 bat_report.py [portnum] [i2c-hex-address] 
 
Hack bat for access to eeprom $python3 bat_hack.py [portnum] [i2c-hex-address] 
 
Read eeprom $python3 bat_read_eeprom.py [portnum] [i2c-hex-address] [eeprom-filename] 
 
Correct eeprom, I don't know how.... See below Write eeprom $python3 bat_write_eeprom.py [portnum] [i2c-hex-address] [eeprom-filename] 
 
After that don't forget start battery cntroller $python3 bat_exec.py [portnum] [i2c-hex-address] 
 
Thanks for Viktor: 
这是我前面帖子介绍的两篇暴力破解电池的文章.  
 Correct EEPROM file 
也就是修改了提取的 文件的  501 ,601 偏移位置 
 
 
 
5A8 6A8 我文件中已经是 0 
 
 
 
For my battery I correct eeprom: - reset Charge Cycles:
 
[0x500-0x501] set 0x0000 
[0x600-0x601] set 0x0000 - [0x5A8] change 0x80 -> 0x00
 - [0x668] change 0x80 -> 0x00
 
 
  
 |