Как сохранить настройки JK BMS: экспорт и импорт .jkcfg

Чтобы сохранить настройки JK BMS, используйте функции экспорта и импорта в мобильном приложении JK BMS. Экспорт записывает небольшой файл .jkcfg со всей конфигурацией. Импорт отправляет его обратно в BMS. Храните этот файл как резервную копию и редактируйте его только инструментом, который исправляет контрольные суммы, например редактором JK Preset Studio. Если нужно просто поменять настройки, без файла можно обойтись вовсе и записать их по Bluetooth прямо из браузера.

Что такое файл .jkcfg

Размер файла ровно 600 байт. В нём два кадра по 300 байт, те же, что BMS отправляет по Bluetooth.

  • Кадр 0 хранит настройки: напряжения, токи, баланс, задержки, температуры.
  • Кадр 1 хранит информацию об устройстве: модель, версии железа и прошивки, серийный номер, имя устройства и поля паролей.

Последний байт каждого кадра - контрольная сумма. Это сумма предыдущих 299 байт, обрезанная до одного байта. Если контрольная сумма не совпадает с данными, файл повреждён.

Раскладка взята из открытого проекта syssi/esphome-jk-bms, который описывает протокол JK02_32S. Пример файла в репозитории JK Preset Studio экспортирован из JK-PB2A16S20P на прошивке 19.26.

Как сохранить настройки JK BMS: сначала резервная копия

Названия меню в приложении могут отличаться в разных версиях, поэтому считайте шаги ориентиром.

  1. Подключитесь к BMS в приложении JK BMS.
  2. Откройте экран настроек и найдите пункты экспорта и импорта.
  3. Выберите экспорт и сохраните файл.
  4. Скопируйте его в надёжное место, например в облако или на компьютер.

Куда сохранится файл, зависит от телефона и версии приложения. Следите за диалогом сохранения или отправки, где можно выбрать место. Если файл не найти, поищите на телефоне .jkcfg.

Делайте копию перед каждым обновлением прошивки и перед каждым крупным изменением настроек.

Почему нельзя править файл вручную

Hex-редактор позволяет изменить любой байт, но файл с неверной контрольной суммой считается повреждённым и может быть отклонён. Кроме того, нужно знать смещение, размер и масштаб каждого поля. Напряжения хранятся целыми числами, например 3450 для 3.45 В. Один неверный байт превращает предел в бессмыслицу.

Файл бинарный. Текстовый редактор покажет мусор и испортит файл при сохранении.

Безопасная правка в браузере

  1. Откройте редактор и перетащите на него файл .jkcfg. Ничего не загружается на сервер. Вся работа идёт в браузере.
  2. Измените нужные значения. У каждого параметра есть подсказка и рекомендуемый диапазон.
  3. Прочитайте предупреждения. Редактор проверяет значения по правилам, которые прошивка JK применяет при импорте, например OVPR ниже напряжения SOC-100%, а оно ниже RCV.
  4. При желании начните с готового пресета для вашей химии и режима износа, а потом подправьте.
  5. Скачайте результат.

Редактор накладывает только изменённые вами поля на копию исходных байтов. Неизвестные и зарезервированные байты сохраняются. Затем он пересчитывает обе контрольные суммы. Все поля описаны в справочнике параметров.

Или без файла: запись по Bluetooth

В Chrome или Edge на компьютере или телефоне с Android редактор может подключиться к BMS напрямую. Закройте приложение JK, нажмите «Подключить BMS» и выберите свою BMS. Редактор читает те же два кадра, из которых состоит файл .jkcfg, так что всё описанное выше работает так же.

По кнопке «Записать в BMS» редактор записывает настройки по одной, в порядке, который примет прошивка, и перечитывает BMS после каждого шага. Не нужно импортировать файлы шагов и гадать, какое значение не прошло. Настройки, которых нет в вашей модели, определяются сразу после подключения и пропускаются. Подробно это разобрано в руководстве по Bluetooth.

Файл по-прежнему нужен для резервных копий, для Firefox, Safari и iPhone и для подготовки настроек до сборки батареи.

Импорт файла обратно

  1. Скопируйте отредактированный файл на телефон.
  2. Подключитесь к BMS в приложении.
  3. На экране настроек выберите импорт и укажите файл.
  4. После завершения проверьте значения в приложении.

Приложение записывает настройки по одной, а прошивка проверяет каждую относительно того, что BMS хранит в этот момент. Файл с корректными итоговыми значениями всё равно может сорваться посередине. Поэтому редактор иногда выдаёт несколько пронумерованных файлов шагов. Импортируйте их по порядку или запишите изменения по Bluetooth: там порядком займётся редактор. Если вы видите "This parameter does not apply to the connected device. (Sending failure)", прочитайте руководство по Sending failure.

Сценарии использования

  • Клон на вторую батарею. Экспортируйте из первой BMS и импортируйте во вторую либо откройте файл и запишите его во вторую BMS по Bluetooth. Сначала проверьте число ячеек и модель.
  • Проверенная резервная копия. Держите файл с рабочей настройкой перед обновлением прошивки.
  • Обмен настройками. Отправьте файл другому сборщику. Сначала удалите пароли (см. вопросы ниже).
  • Старт с хороших значений. Типовые диапазоны смотрите в руководстве по настройке LiFePO4.

Частые ошибки

  • Импорт файла на батарею с другим числом ячеек.
  • Импорт итогового файла за один раз, когда редактор выдал несколько шагов.
  • Правка байтов вручную и поломка контрольной суммы.
  • Забыть, что в файле лежат ваши пароли.

Вопросы и ответы

Можно ли править файл в текстовом редакторе?

Нет. Это бинарный файл на 600 байт, текстовый редактор его испортит. Используйте hex-редактор, только если можете исправить обе контрольные суммы, либо браузерный редактор, который делает это сам. Что делает каждое поле, читайте также в статье параметры JK BMS.

Хранит ли файл мой пароль?

Да, может. В кадре информации об устройстве есть поля Пароль устройства и Пароль настроек, каждое до 16 символов. Относитесь к файлу как к приватному и очищайте эти поля перед передачей. Подробнее в статье о пароле.

Импортируется ли файл с другой модели?

Ненадёжно. Прошивка отклоняет значения, которые не подходят подключённому устройству, поэтому различия в числе ячеек, номинале тока или версии прошивки могут вызвать сбои. У некоторых моделей к тому же нет целых функций: у JK-B2A8S20P на прошивке 19.25 нет напряжения float, подогрева и настроек CAN. По Bluetooth редактор находит такие пробелы сразу после подключения и пропускает их. Формат файла проверен на JK-PB2A16S20P с прошивкой 19.26.

Подключите BMS или откройте свой .jkcfg в редакторе, чтобы проверить значения до того, как что-либо будет записано.

Похожие руководства

Все руководства