开源电池信息(Open Battery Information):BMS 误锁诊断与电池修复,三步从接线到解锁跑通
【免费下载链接】open-battery-information项目地址: https://gitcode.com/GitHub_Trending/op/open-battery-information
工具箱里那块 18V 电池突然无法上电:指示灯亮了一秒就灭,电钻也不启动。多数时候电芯没坏,是 BMS 误锁后拒绝工作。Open Battery Information(OBI)用一小块接口板连上电池 BMS,做 BMS 诊断、读数据、复位误锁。本文带你从接线到第一次读取完整走一遍。
🔋 一句话搞懂 OBI 能做什么
OBI(Open Battery Information)是一个开源电池修复工具:BMS 因误报或暂时性故障锁死电池时,用它读出故障状态并复位,而不是把整包电池扔掉。技术路径很简单:Arduino Uno 或 ESP32-C3 加三个电阻,构成 OneWire 单总线接口,与电池 BMS 按字节通信;浏览器里的 OBI-1 工具负责交互,通过 Web Serial 连接开发板,固件也能直接从浏览器烧录(旧的 Python 桌面版已弃用,新搭建直接用浏览器工具即可)。面向有基础电路和串口知识的 DIY 爱好者与维修技师。下图是接口电路的完整接法。
🧰 开工前:你需要准备什么
硬件物料清单
| 物料 | 规格 / 选型 | 数量 |
|---|---|---|
| 控制器 | Arduino Uno(推荐) | 1 |
| 控制器(备选) | ESP32-C3 SuperMini | 1 |
| 电阻 | 10kΩ | 2 |
| 电阻 | 4.7kΩ | 1 |
| 线材 | 杜邦线 + USB 数据线(Uno 为 Type-B) | 若干 |
软件环境,两条路线
- 快速路线:浏览器工具,免安装。Chrome 或 Edge 打开 OBI-1 web 工具,通过 Web Serial 连到开发板;同一浏览器里可用固件上传器直接烧录固件,也可以从项目 Releases 下载预编译固件 uno.hex / esp32.bin 自行烧写。
- 开发者路线:源码 + PlatformIO。VS Code 装好 PlatformIO 扩展后打开 ArduinoOBI 目录(固件源码在
src/main.cpp),克隆仓库:
git clone https://gitcode.com/GitHub_Trending/op/open-battery-information⚠️ 使用 ESP32-C3 时,上拉电阻必须接 3.3V 引脚,而不是 5V,接错会烧掉 GPIO。C3 SuperMini 默认 ENABLE = GPIO 0、ONEWIRE = GPIO 1,可在
platformio.ini里改ESP_EN_PIN/ESP_OW_PIN;Uno 上 ONEWIRE 用 6 脚、ENABLE 用 8 脚。
🔌 三步跑通:从接线到第一次读取
① 接线与固件烧录
按接线图把 VBAT+ / VBAT- 接到电池端子,ENABLE 与 ONEWIRE 按
【免费下载链接】open-battery-information项目地址: https://gitcode.com/GitHub_Trending/op/open-battery-information
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考