In short
- Bluetooth integrations are free and quick, but depend on range and on a Bluetooth adapter or proxy near the pack.
- ESP32 with ESPHome is the most flexible route, if you are happy to wire, flash and maintain YAML.
- A wired RS485 box trades flexibility for a finished, read-only device with a screen, MQTT discovery and history.
Once a JK pack runs your evenings, you want its cells in Home Assistant: automations around the balancer, a notification when a cell drifts, a graph next to your solar production. Three routes are common. None is wrong; they suit different people.
1A Bluetooth integration
JK boards speak Bluetooth to the JK app, and community integrations can read the same data from Home Assistant through a Bluetooth adapter or an ESPHome Bluetooth proxy near the pack. It costs nothing and takes minutes when it works. The limits are physical: metal cabinets and walls cut the range, connections drop, and the BMS usually accepts one Bluetooth client at a time, so the JK app and Home Assistant may fight for it.
2An ESP32 with ESPHome
An ESP32 board, flashed with ESPHome and a community component for JK, reads the BMS over Bluetooth or over a wire through an RS485 or UART adapter. It is the most flexible route: every value becomes a sensor, and you can add your own logic. In exchange you solder or crimp, flash, write and maintain YAML, and keep the component up to date as JK firmware evolves. For people who enjoy that, it is hard to beat.
3A wired RS485 box
JK BMS Monitor takes the wired route without the workshop: an RJ45 cable into a free RS485 socket of a JK inverter BMS, USB-C power, your Wi-Fi. Enter your MQTT broker and Home Assistant creates the device by itself, with one sensor per cell, the cell delta, the balance current, the MOS temperature and the alarms. It never writes to the BMS. It also has its own screen, a local JSON API for Node-RED or Jeedom, and a free Cloud with history and e-mail alerts, which work even if Home Assistant is down.
Which one for you?
| If you want | Choose |
|---|---|
| Free, and the pack is within Bluetooth range | A Bluetooth integration |
| Full control and you like building | ESP32 with ESPHome |
| Plug in, read-only, a screen and history without your own server | A wired RS485 box |
Automations worth setting up, whatever the route
- Cell delta above 40 mV near full charge: a notification to check balance.
- MOS temperature above 55 °C: a fan on a smart plug.
- Lowest cell under 3.05 V at night: shed the heaviest loads before the BMS cuts the pack.
- Balancing finished and the pack above 98 %: switch on the water heater.
The Home Assistant page lists every sensor the box creates, with their names.
Common questions
Can I use the JK app and Home Assistant at the same time?
With a wired RS485 box, yes: the app keeps Bluetooth to itself and the box uses the cable. With a Bluetooth integration, the BMS often accepts only one connection at a time, so the two may take turns.
Does the RS485 box need ESPHome or YAML?
No. It publishes over MQTT with Home Assistant discovery, so the device and its sensors appear by themselves. A local JSON API is there for other tools.