JK BMS не сохраняет настройки: Sending failure и как исправить

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

Чаще всего причина одна из четырёх: нарушенная цепочка напряжений, неудачный порядок записи, значение вне диапазона вашей прошивки или таймер заряда выше 18.2 ч. Все четыре можно найти в файле до импорта.

Почему возникает Sending failure в JK BMS

Приложение JK не отправляет файл целиком. Оно записывает настройки по одной. Каждая запись проверяется относительно значений, которые BMS хранит в этот момент, а не значений из вашего файла. У файла может быть идеальное итоговое состояние, и всё равно импорт оборвётся на полпути.

Текст ошибки общий и не называет параметр. Поэтому люди ищут "jk bms не сохраняет настройки" или "jk bms cell ovp sending failure" и не находят чёткого ответа.

Причина 1: цепочки напряжений не строгие

Прошивка требует двух упорядоченных цепочек напряжений ячеек. Каждый знак "меньше" строгий. Равные значения тоже отклоняются.

ЦепочкаСмысл
Восстановление OVP ячейки < напряжение SOC-100% < RCV ячейкиSOC-100% должно лежать между восстановлением после перенапряжения и запрашиваемым напряжением заряда
UVP ячейки < напряжение SOC-0% < восстановление UVP ячейкиSOC-0% должно лежать между защитой от пониженного напряжения и её восстановлением

Остальные пары подчиняются тому же строгому правилу. Восстановление OVP ячейки должно быть ниже OVP ячейки. Восстановление UVP ячейки должно быть выше UVP ячейки. RFV ячейки должно быть ниже RCV ячейки, а RCV ячейки ниже OVP ячейки. Температуры восстановления тоже должны лежать на безопасной стороне от значений защиты.

Типичная ловушка: напряжение SOC-100% равно RCV ячейки, например оба 3.55 В. Выглядит безобидно, но прошивка это отклонит. Сдвиньте одно из значений на 0.01 В.

Эти правила проверены на реальной JK PB2A16S20P с прошивкой 19.26. Другие модели могут быть строже или мягче, так что считайте их минимумом.

Причина 2: порядок записи пересекает уже сохранённое значение

Допустим, BMS хранит восстановление OVP ячейки 3.40 В, напряжение SOC-100% 3.45 В и RCV ячейки 3.50 В. Вы хотите OVPR 3.50 В, SOC-100% 3.55 В и RCV 3.60 В. Итоговый набор корректен.

Если приложение запишет восстановление OVP первым, BMS сравнит 3.50 В с напряжением SOC-100%, которое всё ещё хранит, то есть 3.45 В. Цепочка нарушена, запись не проходит. Если сначала поднять напряжение SOC-100%, оно тоже не пройдёт, потому что обгонит текущий RCV 3.50 В. Безопасный способ один: разбить изменение на шаги.

Какой порядок использует приложение, мы точно не знаем, поэтому редактор планирует шаги, безопасные при любом порядке. Он ставит правку в один шаг с другой, только если ни одна не может нарушить правило относительно другой, какая бы ни шла первой.

Запись по Bluetooth из браузера избавляет от догадок. Редактор сам отправляет шаги, по одной настройке, перечитывает BMS после каждого шага и останавливается на первом отклонённом значении, называя его.

Причина 3: значение вне диапазона прошивки

В некоторых полях разные прошивки хранят разные числа. Классический случай - задержка защиты от КЗ. Файлы V15 содержат значения вроде 1500 мкс. Прошивка V19 и новее хранит маленькое число (по умолчанию 5) и отклоняет всё выше 50. PB2A16S20P на 19.26 отклоняет файл со значением 1500.

Если вы импортировали в новое устройство файл, экспортированный со старого, сначала проверьте это поле. Безопасное решение: оставить задержку, которая уже есть в устройстве, или задать её в приложении JK, а не через файл. Про поля SCP читайте в статье защита по току JK BMS.

Причина 4: таймеры заряда выше 18.2 ч

Поля Время RCV и Время RFV принимают от 0 до 18.2 ч. Они хранятся в секундах в 16-битном значении, поэтому большее число записать нельзя. Если пресет с форума использует более длинный таймер, уменьшите его до 18.2 ч или меньше.

Как исправить по шагам

Быстрее всего в Chrome или Edge обойтись без импорта: подключитесь к BMS в редакторе, внесите изменения и нажмите «Записать в BMS». Редактор сам спланирует порядок, запишет и проверит каждый шаг. Если в браузере нет Web Bluetooth, идите через файл:

  1. Экспортируйте текущие настройки BMS в приложении JK. Это файл, который BMS хранит сейчас.
  2. Откройте его в редакторе JK Preset Studio. Ничего не загружается на сервер, файл остаётся в браузере.
  3. Внесите изменения или загрузите файл, который вы пытались импортировать.
  4. Прочитайте ошибки проверки. Каждая называет поле и другое поле, с которым оно конфликтует. Исправляйте цепочку, пока ошибок не останется.
  5. Откройте диалог скачивания. Если для ваших изменений нужно больше одного шага записи, он предложит файл на каждый шаг.
  6. Импортируйте файлы шагов по порядку. Каждый файл шага включает изменения предыдущих, а последний содержит всё. Дождитесь окончания каждого импорта перед следующим.

Редактор правит только изменённые вами поля и пересчитывает контрольные суммы, так что неизвестные байты в файле остаются как были. О самой работе с файлом читайте в статье как сохранить и импортировать настройки JK BMS.

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

  • Одинаковое число у двух значений из одной цепочки.
  • Изменение OVP ячейки и точек SOC в одном импорте без проверки порядка.
  • Копирование файла с другой модели или прошивки и импорт без изменений.
  • Поиск причины в Bluetooth и перенос телефона ближе. BMS ответила, просто отказала.

Detail Log показывает, что BMS реально применяет. Загрузите журнал на странице анализа журнала, чтобы увидеть напряжения, при которых сработали защиты, и сравните их со значениями в вашем файле. Если напряжения срабатывания отличаются от файла, импорт не прошёл. Как читать журнал, объясняет руководство по Detail Log JK BMS, а почему защита от перезаряда ячейки срабатывает снова и снова разбирает самое частое срабатывание.

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

Бывает ли Sending failure на всех моделях JK BMS?

Нет. Это зависит от прошивки и строгости её проверок. Правила из статьи подтверждены на PB2A16S20P с прошивкой 19.26. Старая прошивка может принимать значения, которые новая отклоняет.

Это проблема Bluetooth?

Нет. Сообщение приходит от BMS, значит соединение работает. Настоящая проблема связи выглядит как тайм-аут или разрыв, а не чёткий отказ по одному параметру. При записи по Bluetooth редактор видит тот же отказ как код ответа и называет настройку.

Почему тот же файл работает на другой BMS?

Скорее всего, другая BMS хранит иные значения тока, и тот же порядок записи не пересекает ни одну цепочку. Её прошивка также может принимать диапазоны, которые ваша не принимает, например задержку SCP.

Почему JK BMS не сохраняет настройки из файла?

Если сохраняется только часть настроек, импорт остановился на первом отклонённом значении. Исправьте цепочку, импортируйте снова и проверяйте значения в приложении после каждого шага. Что означает каждый параметр, смотрите в справочнике параметров и статье параметры JK BMS.

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

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

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