Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
SparkAltBatteryBoard — 针对DJI Spark逆向工程的I2C/SMBus电池接口板,用标准3S LiPo替代原厂智能电池。包含协议分析、定制PCB和ATmega328P固件,用于实时通信仿真。 | Kitploit
工具/GitHubGitHub/fahreddinaykut/sparkaltbatteryboard
嵌入式系统安全逆向工程硬件黑客硬件安全学习与教育固件分析
GitHubfahreddinaykut/sparkaltbatteryboard

SparkAltBatteryBoard

针对DJI Spark逆向工程的I2C/SMBus电池接口板,用标准3S LiPo替代原厂智能电池。包含协议分析、定制PCB和ATmega328P固件,用于实时通信仿真。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
14282个月前尚未审核

SparkAltBatteryBoard

一个面向研究的定制电池接口和遥测板,适用于 DJI Spark 平台,基于标准 3S LiPo 电池包,取代了已停产、难以找到的原厂智能电池。

本项目记录了一个逆向工程的 I2C/SMBus 智能电池通信接口,最初是为了研究 DJI Spark 飞控如何与电池包通信而开发的。该板位于标准 3S 电池包和无人机之间,读取真实的电芯电压和电流,并复现该通信接口。

DJI Spark 在 SparkAltBatteryBoard 上飞行

工作原理

  1. 拆解了原装 DJI Spark 智能电池,并使用 Saleae 逻辑分析仪捕获了其与飞控之间的 I2C/SMBus 通信。
  2. 对该通信进行解码,还原了 SBS 及 DJI 专有命令集(认证握手、电芯电压、PEC/CRC-8 等)——参见 Docs/I2C_BMS_PROTOCOL.md。
  3. 定制 PCB 复刻了原厂电池的外形和连接器,带有用于每个电芯电压检测的电阻分压器和 INA199 电流分流放大器。
  4. 板上的 ATmega328P 实时复现了智能电池通过 I2C 的通信接口——动态计算 PEC 并在必要时进行时钟拉伸。完整的协议实现见 Firmware/README.md。

用于逆向工程而拆解的原装 DJI Spark 电池

仓库结构

文件夹内容
Hardware/KiCad 项目:原理图、PCB 布局、3D 连接器模型、Gerber 文件、BOM
Firmware/ATmega328P I2C/SMBus 电池仿真器的 PlatformIO 项目
Mechanical/电池支架 3D 模型 (STEP)
Docs/原理图 PDF、协议逆向工程笔记、原始嗅探 I2C 会话、参考照片/视频

硬件

顶部底部布局
PCB 顶部 3DPCB 底部 3DPCB 布局
  • MCU: ATmega328P — 特意选用因为其硬件 TWI 外设可靠地支持 I2C 时钟拉伸,这是 DJI 飞控轮询所要求的(参见 Firmware/README.md 了解为什么 ESP32 在此不适用)。
  • 传感: 三路电阻分压网络用于每个电芯电压抽头,INA199 分流放大器用于电池包电流。
  • 完整原理图: Docs/SparkAltBatteryBoardV1.pdf
  • 制造输出: BOM · Gerber 文件
  • 电池支架: Mechanical/batterymount.stp

PCB 设计/制造说明

该 PCB 版本是作为面向制造的 KiCad 项目准备的,而不仅仅是概念验证的原理图。

设计考虑包括:

  • 层次化原理图结构
  • 分离的 MCU、电源、传感和连接器模块
  • 3.3 V I2C/SMBus 逻辑接口
  • ADC 缩放的电芯电压检测输入
  • 模拟测量线路上的 RC 滤波
  • INA199 高端电流检测前端
  • 开尔文式分流测量布线方法
  • 降压稳压的 3.3 V 系统电源轨
  • I2C 上拉电阻
  • 外部通信线路上的 ESD/TVS 保护
  • AVR ICSP 编程/调试接口
  • 电池电流路径的宽铜走线/多边形策略
  • 准备的制造输出:BOM 和 Gerber 文件包

固件

针对 ATmega328P(Arduino Uno/Nano 引脚布局)的 PlatformIO 项目。处理 I2C 从机逻辑、ADC 读取、CRC-8 PEC 计算以及所有 SBS/DJI 命令响应。

root@kitploit:~
pio run -e uno
pio run -e uno -t upload

完整的引脚映射、支持的命令表和已知限制:参见 Firmware/README.md。

协议逆向工程

用于解码协议的原始逻辑分析仪捕获文件包含在此供参考:

  • Docs/sniffedsession2.csv
  • Docs/sniffedsession3.csv
  • 完整文档: Docs/I2C_BMS_PROTOCOL.md

旧版原型飞行测试

下面的视频展示了一个约 4 年前测试的早期原型。它不代表本仓库中重新设计的 PCB 版本的飞行测试。

您的浏览器无法播放嵌入的视频 — 在此观看/下载.

免责声明

这是一个爱好者逆向工程项目,出于教育目的分享。使用改装电池/BMS 飞行风险自负——飞行前请自行验证电芯电压、电流限制和接线。与 DJI 无关联,亦未获其认可。

原始原型在过去曾进行过飞行测试。本仓库中重新设计的 PCB 版本尚未进行飞行测试,因为原测试无人机后来在一次坠机中受损。

许可证

源代码可供个人、教育和研究使用。未经书面许可,不得用于商业用途。参见 LICENSE(MIT with Commons Clause)。

下载工具