JK BMS Sending failure: causas e solução passo a passo
O erro Sending failure do JK BMS, "This parameter does not apply to the connected device. (Sending failure)" (este parâmetro não se aplica ao dispositivo conectado), significa que o firmware recusou um valor. Não é um problema de Bluetooth. O BMS confere cada valor com as configurações que tem naquele exato momento e rejeita qualquer coisa que quebre as suas regras internas.
Na maioria das vezes a causa é uma de quatro: uma cadeia de tensões quebrada, uma ordem de gravação ruim, um valor fora da faixa do seu firmware ou um temporizador de carga acima de 18.2 h. As quatro podem ser encontradas no arquivo antes de você importá-lo.
Por que o Sending failure do JK BMS acontece
O app JK não envia o arquivo inteiro de uma vez. Ele grava as configurações uma por uma. Cada gravação é conferida com os valores que o BMS tem naquele momento, não com os valores do seu arquivo. Um arquivo pode ter um estado final perfeito e mesmo assim falhar no meio do caminho.
O texto do erro é genérico. Ele não diz qual é o parâmetro. Por isso as pessoas procuram "jk bms cell ovp sending failure" ou "jk bms não salva configurações" e não encontram uma resposta clara.
Causa 1: as cadeias de tensão não são estritas
O firmware exige duas cadeias ordenadas de tensões de célula. Cada "menor que" é estrito. Valores iguais também são rejeitados.
| Cadeia | Significado |
|---|---|
| Cell OVP recovery < tensão SOC-100% < Cell RCV | O SOC-100% precisa ficar entre a recuperação de sobretensão e a tensão de solicitação de carga |
| Cell UVP < tensão SOC-0% < Cell UVP recovery | O SOC-0% precisa ficar entre a proteção contra subtensão e a sua recuperação |
Outros pares seguem a mesma regra estrita. A recuperação do Cell OVP precisa ficar abaixo do Cell OVP. A recuperação do Cell UVP precisa ficar acima do Cell UVP. O Cell RFV precisa ficar abaixo do Cell RCV, e o Cell RCV abaixo do Cell OVP. Os valores de recuperação de temperatura também precisam ficar do lado seguro dos respectivos valores de proteção.
Uma armadilha comum é colocar a tensão SOC-100% igual ao Cell RCV, por exemplo as duas em 3.55 V. Parece inofensivo, mas o firmware rejeita. Mude uma delas em 0.01 V.
Essas regras de cadeia foram verificadas numa JK PB2A16S20P real com firmware 19.26. Outros modelos podem ser mais rígidos ou mais flexíveis, então trate-as como o mínimo.
Causa 2: a ordem de gravação cruza um valor existente
Digamos que o seu BMS tenha recuperação do Cell OVP em 3.40 V, tensão SOC-100% em 3.45 V e Cell RCV em 3.50 V. Você quer OVPR 3.50 V, SOC-100% 3.55 V e RCV 3.60 V. O conjunto final é válido.
Se o app gravar primeiro a recuperação do OVP, o BMS compara 3.50 V com a tensão SOC-100% que ainda tem, 3.45 V. A cadeia fica quebrada, então a gravação falha. Subir primeiro a tensão SOC-100% também falharia, porque ela passaria do RCV atual de 3.50 V. A única forma segura é dividir a alteração em etapas.
Não sabemos a ordem exata que o app usa, então o editor planeja etapas que são seguras em qualquer ordem. Ele só coloca uma alteração na mesma etapa que outra quando nenhuma das duas pode quebrar uma regra contra a outra, seja qual for gravada primeiro.
Gravar por Bluetooth no navegador acaba com a adivinhação: o editor envia as etapas uma configuração por vez, relê o BMS após cada etapa e para no primeiro valor recusado, com o nome dele.
Causa 3: um valor fora da faixa do firmware
Alguns campos guardam números diferentes em firmwares diferentes. O caso clássico é o atraso da proteção contra curto-circuito. Arquivos do V15 têm valores como 1500 µs. O firmware V19 e mais recentes guarda um número pequeno (5 por padrão) e rejeita qualquer valor acima de 50. Uma PB2A16S20P com 19.26 rejeita um arquivo com 1500.
Se você importou num BMS novo um arquivo exportado de uma unidade antiga, confira este campo primeiro. A solução segura é manter o atraso que o seu dispositivo já tem, ou defini-lo no app JK em vez de no arquivo. Veja proteção contra sobrecorrente do JK BMS para os campos de SCP.
Causa 4: temporizadores de carga acima de 18.2 h
Os campos RCV time e RFV time aceitam de 0 a 18.2 h. Eles são guardados em segundos num valor de 16 bits, então um número maior não pode ser gravado. Se um preset de fórum usa um temporizador mais longo, reduza-o para 18.2 h ou menos.
Como resolver passo a passo
A solução mais rápida, no Chrome ou no Edge, é dispensar a importação: conecte-se ao BMS no editor, faça as alterações e clique em Gravar no BMS. O editor planeja a ordem, grava e confere cada etapa. Sem Web Bluetooth, use o arquivo:
- Exporte as configurações atuais do BMS no app JK. Este é o arquivo que o seu BMS tem agora.
- Abra-o no editor JK Preset Studio. Nada é enviado, o arquivo fica no seu navegador.
- Faça as suas alterações ou carregue o arquivo que você tentou importar.
- Leia os erros de validação. Cada um indica o campo e o outro campo com que ele conflita. Corrija a cadeia até não sobrar nenhum erro.
- Abra a janela de download. Se as suas alterações precisarem de mais de uma etapa de gravação, ela oferece um arquivo por etapa.
- Importe os arquivos das etapas em ordem. Cada arquivo de etapa inclui as alterações das etapas anteriores, e o último contém tudo. Espere cada importação terminar antes da próxima.
O editor só altera os campos que você mudou e recalcula os checksums, então bytes desconhecidos do seu arquivo ficam como estavam. Veja exportar e importar configurações do JK BMS para o manuseio do arquivo em si.
Erros comuns
- Colocar dois valores encadeados no mesmo número.
- Alterar o Cell OVP e os pontos de SOC na mesma importação sem conferir a ordem.
- Copiar um arquivo de outro modelo ou firmware e importá-lo sem alterações.
- Culpar o Bluetooth e aproximar o celular. O BMS respondeu, só que disse não.
O Detail Log mostra o que o BMS realmente aplica. Abra o log na página de análise de logs para ver as tensões em que as proteções desarmaram e compare com os valores do seu arquivo. Se as tensões de desarme forem diferentes das do arquivo, a importação não pegou. O guia do Detail Log do JK BMS explica como lê-lo, e por que a proteção contra sobrecarga de célula fica desarmando trata do desarme mais comum.
Perguntas frequentes
O Sending failure acontece em todos os modelos de JK BMS?
Não. Depende do firmware e de quão rígidas são as verificações dele. As regras deste artigo foram confirmadas numa PB2A16S20P com firmware 19.26. Firmwares mais antigos podem aceitar valores que os mais novos rejeitam.
É um problema de Bluetooth?
Não. A mensagem volta do BMS, então a conexão funciona. Um problema real de conexão aparece como timeout ou desconexão, não como a recusa clara de um parâmetro. Ao gravar por Bluetooth, o editor recebe essa recusa como código de resultado e nomeia a configuração.
Por que o mesmo arquivo funciona em outro BMS?
O outro BMS provavelmente tem valores atuais diferentes, então a mesma ordem de gravação não cruza nenhuma cadeia. O firmware dele também pode aceitar faixas que o seu não aceita, como o atraso do SCP.
Por que o meu JK BMS não salva as configurações do arquivo?
Se só algumas configurações ficam, a importação parou no primeiro valor rejeitado. Corrija a cadeia, importe de novo e confira os valores no app depois de cada etapa. Para o significado de cada parâmetro, veja a referência de parâmetros e parâmetros do JK BMS explicados.
Conecte seu BMS ou abra o seu .jkcfg no editor para conferir as cadeias e gravar as alterações numa ordem segura.
Guias relacionados
- Exportar e importar configurações do JK BMS: o arquivo .jkcfgComo exportar e importar as configurações do JK BMS pelo app, o que o arquivo .jkcfg contém, por que editar à mão o estraga e como editá-lo com segurança.
- Parâmetros do JK BMS explicados: cada configuração por grupoParâmetros do JK BMS explicados num glossário: cell OVP, OVPR, UVP, UVPR, balanceamento, SOC, RCV e RFV, limites de corrente e temperatura, com faixas LFP.
- Sobrecarga de célula do JK BMS desarmando: causas e soluçãoCell over charge protection do JK BMS desarma e libera a cada minuto? Veja por que um carregador alto demais causa isso, como distinguir de uma célula fraca e corrigir.