Acerca de JK Preset Studio
JK Preset Studio es una herramienta gratuita y abierta para quienes mantienen bancos de baterías con placas JK BMS (la serie de inversor JK-PB, como la JK-PB2A16S20P, y las placas B2A con el mismo protocolo). Se conecta al BMS por Bluetooth directamente desde el navegador, así que puedes revisar y cambiar cada ajuste en un ordenador o un teléfono Android sin la app JK. Los archivos exportados desde la app JK también funcionan.
Conexión directa por Bluetooth
El navegador habla con el BMS mediante Web Bluetooth usando el mismo protocolo JK02 que la app JK (servicio 0xFFE0, característica 0xFFE1). Para leer, pide al BMS su trama de ajustes y su trama de información del dispositivo; juntas son exactamente el contenido de un archivo .jkcfg.
AA 55 90 EB reg len value (u32 LE) 00 × 9 CS write, 20 bytes AA 55 90 EB C8 01 01 | 00 | 02 …… accepted | refused | no such setting
Los cambios se escriben un ajuste cada vez. El firmware comprueba cada valor frente a lo que tiene en ese momento, así que el editor divide tus cambios en pasos que se aceptan en cualquier orden y vuelve a leer el BMS después de cada paso.
El BMS responde a cada escritura: aceptada, rechazada porque el valor choca con otro ajuste, o rechazada porque el modelo no tiene ese ajuste. Nada más conectar, el editor vuelve a escribir el valor actual de cada ajuste opcional para saber cuáles tiene tu BMS; no cambia nada. El resultado se guarda en este navegador para ese BMS.
Web Bluetooth funciona en Chrome y Edge en Windows, macOS, ChromeOS y Android a través de HTTPS. Cierra la app JK antes de conectar: el BMS acepta solo una conexión Bluetooth a la vez.
El formato .jkcfg
Un archivo .jkcfg tiene 600 bytes: dos tramas de 300 bytes del protocolo Bluetooth JK02 guardadas una tras otra.
55 AA EB 90 01 xx …… settings …… CS bytes 0–299 55 AA EB 90 03 xx …… device info … CS bytes 300–599
La trama 1 (tipo 0x01) contiene los ajustes: valores little-endian de 32 bits para tensiones en mV, corrientes en mA y temperaturas en 0.1 °C, seguidos de la resistencia del cable de cada celda, la dirección del dispositivo y un campo de bits con interruptores.
La trama 2 (tipo 0x03) contiene la información del dispositivo: modelo, versión de hardware y de firmware, número de serie, contraseñas, protocolos de comunicación y temporizadores de carga.
El último byte de cada trama es una suma de verificación: la suma de los 299 bytes anteriores módulo 256. El editor la recalcula al exportar.
Privacidad
Los ajustes leídos por Bluetooth y los archivos que abres se quedan en tu navegador: no hay subida ni cuenta. La lista de ajustes que tu BMS no tiene se guarda solo en este navegador, asociada al número de serie del BMS. El sitio usa Google Analytics para estadísticas de uso. Sin tu consentimiento solo recibe pings anónimos sin cookies (sin cookies ni identificador); con tu consentimiento también usa cookies de analítica para contar visitas recurrentes. Qué se envía: páginas vistas, el modelo de BMS, la versión de firmware y la química de la batería de una configuración cargada, si llegó por Bluetooth o desde un archivo, los nombres de los parámetros modificados, los códigos de las reglas de validación, los códigos de error de Bluetooth y las acciones de la interfaz (presets, escrituras, descargas, idioma, tema). Nunca se envían: nombres de archivo, contenido de los archivos, valores de los ajustes ni números de serie. Puedes cambiar tu elección en cualquier momento.
Aviso legal
Créditos
Los desplazamientos de los campos se basan en el trabajo de ingeniería inversa de syssi/esphome-jk-bms. Las recomendaciones proceden de los manuales de JK, las hojas de datos de las celdas, Battery University y la comunidad DIY Solar; cada parámetro indica sus fuentes.