Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
SparkAltBatteryBoard — Обратно спроектированная плата интерфейса батареи I2C/SMBus для DJI Spark, заменяющая оригинальную умную батарею на стандартный 3S LiPo. Включает анализ протокола, пользовательскую PCB и прошивку ATmega328P для эмуляции связи в реальном времени. | Kitploit
Инструменты/GitHubGitHub/fahreddinaykut/sparkaltbatteryboard
Безопасность встроенных системОбратная инженерияАппаратный ХакингАппаратная БезопасностьОбучение и ОбразованиеАнализ Прошивок
GitHubfahreddinaykut/sparkaltbatteryboard

SparkAltBatteryBoard

Обратно спроектированная плата интерфейса батареи I2C/SMBus для DJI Spark, заменяющая оригинальную умную батарею на стандартный 3S LiPo. Включает анализ протокола, пользовательскую PCB и прошивку ATmega328P для эмуляции связи в реальном времени.

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
1411 месяц назадЕщё не проверено

SparkAltBatteryBoard

Плата интерфейса и телеметрии аккумулятора для платформы DJI Spark, созданная для исследовательских целей. Использует стандартный LiPo-аккумулятор 3S вместо снятого с производства и труднодоступного оригинального интеллектуального аккумулятора.

В этом проекте документируется обратно разработанный интерфейс связи I2C/SMBus с интеллектуальным аккумулятором, изначально созданный для изучения того, как полётный контроллер DJI Spark общается с аккумуляторной батареей. Плата устанавливается между стандартным аккумулятором 3S и дроном, считывает реальные напряжения элементов и ток, а затем воспроизводит этот интерфейс связи.

DJI Spark, летающий на SparkAltBatteryBoard

Как это работает

  1. Оригинальный интеллектуальный аккумулятор DJI Spark был разобран, а его трафик I2C/SMBus с полётным контроллером был захвачен с помощью логического анализатора Saleae.
  2. Этот трафик был декодирован для восстановления набора команд SBS и проприетарных команд DJI (аутентификационное рукопожатие, напряжения элементов, PEC/CRC-8 и т.д.) — см. Docs/I2C_BMS_PROTOCOL.md.
  3. Специализированная печатная плата копирует форм-фактор и разъём оригинального аккумулятора, используя резисторные делители для измерения напряжения каждого элемента и усилитель тока INA199.
  4. Микроконтроллер ATmega328P на плате в реальном времени воспроизводит интерфейс связи интеллектуального аккумулятора по I2C — вычисляя PEC на лету и применяя растяжение тактового сигнала при необходимости. Полная реализация протокола описана в Firmware/README.md.

Оригинальный аккумулятор DJI Spark, разобранный для обратной разработки

Структура репозитория

Аппаратное обеспечение

СверхуСнизуТопология
3D-вид сверху ПП3D-вид снизу ППТопология ПП
  • МК: ATmega328P — выбран специально, потому что его аппаратный периферийный модуль TWI надёжно поддерживает растяжение тактового сигнала I2C, что требуется для опроса полётным контроллером DJI (см. Firmware/README.md, почему ESP32 здесь не подходит).
  • Измерение: Сеть из 3 резистивных делителей для измерения напряжения каждого элемента, усилитель тока INA199 для тока батареи.
  • Полная схема: Docs/SparkAltBatteryBoardV1.pdf
  • Выходные данные для производства: Спецификация · Герберы
  • Крепление аккумулятора: Mechanical/batterymount.stp

Замечания по проектированию/производству ПП

Ревизия ПП была подготовлена как производственно-ориентированный проект KiCad, а не только как концептуальная схема.

При проектировании учитывались следующие аспекты:

  • Иерархическая структура схемы
  • Раздельные блоки МК, питания, измерения и разъёмов
  • Интерфейс логики I2C/SMBus на 3,3 В
  • Входы измерения напряжения элементов с масштабированием через АЦП
  • RC-фильтрация аналоговых линий измерения
  • Измерительный фронтенд тока на INA199 с измерением на верхней стороне
  • Подход к разводке шунта по схеме Кельвина
  • Шина питания системы 3,3 В с понижающим стабилизатором
  • Подтягивающие резисторы I2C
  • Защита от ESD/TVS на внешних линиях связи
  • Разъём для программирования/отладки AVR ICSP
  • Широкие медные дорожки/полигоны для тракта тока батареи
  • Подготовлены производственные выходные данные: BOM и пакет Gerber

Прошивка

Проект PlatformIO, нацеленный на ATmega328P (распиновка Arduino Uno/Nano). Реализует логику ведомого I2C, чтение АЦП, вычисление 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 лет назад. Оно не представляет полевой тест переработанной ревизии ПП из этого репозитория.

Ваш браузер не может воспроизвести встроенное видео — посмотрите или скачайте его здесь.

Отказ от ответственности

Это любительский проект по обратной разработке, опубликованный в образовательных целях. Полёты с модифицированным аккумулятором/BMS выполняются на свой страх и риск — перед полётом самостоятельно проверяйте напряжения элементов, токовые ограничения и соединения. Проект не связан с DJI и не одобрен компанией.

Исходный прототип был испытан в полёте в прошлом. Переработанная ревизия ПП в этом репозитории ещё не была испытана в полёте, так как оригинальный тестовый дрон позже был повреждён в аварии.

Лицензия

Исходный код доступен для личного, образовательного и исследовательского использования. Коммерческое использование запрещено без письменного разрешения. См. LICENSE (MIT с оговоркой Commons Clause).

Скачать инструмент
ПапкаСодержимое
Hardware/Проект KiCad: схемы, топология печатной платы, 3D-модели разъёмов, файлы Gerber, спецификация
Firmware/Проект PlatformIO для эмулятора аккумулятора по I2C/SMBus на ATmega328P
Mechanical/3D-модель крепления аккумулятора (STEP)
Docs/PDF-схема, заметки по обратной разработке протокола, необработанные сессии I2C, справочные фото/видео