diy solar

diy solar

18KPV Follow Up with JK Inverter BMS

Henderson

Solar Enthusiast
Joined
Jan 9, 2022
Messages
335
Hi all. It’s been several months since I posted my review of the 18KPV inverter entitled “My Experience with the 18K PV Part 1 https://diysolarforum.com/threads/my-18k-pv-experience-part-1.70933/

Sine that original post, the 18KPV continues to work with zero problems. As stated in my previous review, I have been using the 18KPV in lead acid mode with my DIY battery (a single 2P16S setup using 32 CATL 302Ah cells for approx 30KWh of capacity). This setup was being used with a Daly 500A BMS. The 18KPV in lead acid mode works flawlessly.

I had promised that my follow up review would’ve dealt with the 18KPV communicating with a DIY battery using Daly and the JK inverter BMS.

Well, there’s not much to say about the Daly. The Daly simply did not communicate with the 18K PV despite my best efforts and trying to get support from Daly. The Daly folks tried to be helpful but the Daly BMS just wasn’t doing it. I’m sure there is someway for this to work with communication but that way simply escaped me. And what makes matters worse is that Daly provides almost non-existent useful documentation on their products. Even their youtube videos are not detailed enough for the DIYers.

I recently added an additional 30KWh DIY battery for a total of 60KWh capacity, so I now have 2x 2P16S DIY packs each with 32x CATL 302Ah cells.

I have a 200A JK inverter BMS connected to each of the 2 DIY packs wired in parallel. The JK BMS simply worked…first time with no headaches. The 2 JKs in parallel works well together with the JK master doing all the necessary calculations for the entire battery bank and communicating that to the inverter.

The JKs are loaded with firmware version 15.17. In this firmware version I’m seeing LuxpowerTek being supported in addition to Pylon. I’m not sure if earlier versions had the Luxpower support but 15.17 certainly does. Both Luxpower and Pylon protocols on the JK work with the 18KPV, which is not surprising given that the 18KPV is a Luxpower device and Pylon is broadly supported by many different brands of inverters. For the 18KPV, I chose option 6 under Lithium when LuxpowerTek was selected at the JK and option 2 when Pylon was selected at the JK.

I was hoping that I would see individual cell information on the 18KPV screen or via the web portal but I am only seeing summary information in terms of total KWh capacity and what remains. The 18KPV also reports what the total charging and discharging maximums for both JKs and the amount of power currently being charged or discharged. Seeing the individual cell info on the inverter isn’t a big deal but it would’ve been nice. I’m not sure if the limitation is the 18KPV or the JK sending the information to the 18KPV or even if it’s at all possible.

I’m really happy with this 18KPV and JK combination. Next step will be to add Solar Assistant so I can have access to the JKs remotely. I got a bit spoilt with web remote access to the BMS when I was using the Daly with their wifi dongle. I think wifi is the only thing the JKs are missing. Other than that, the JKs are working really well.
 
I think wifi is the only thing the JKs are missing.
You can easily solve even this with like $10 in components you can order online.

look into this:
And

Screenshot of my setup in Home Assistant:
1716367420719.png
 
Last edited:
You can easily solve even this with like $10 in components you can order online.

look into this:
And

Screenshot of my setup in Home Assistant:
View attachment 216940
The new JK PM BMS is not yet supported by these solutions, my JK PB BMS is on 15.17 and I connect to it via Wifi using a HiFlying EW11 with a Virtual Serial port on the PC so I can connect and monitor the batteries anywhere on the local Lan. Once one of your solutions adds the JK PB BMS I will try them out. They are working on a solution but have not released it formally.

When JK introduced the PB BMS series they changed RS485 protocols and the Uart port acts differently too.

 
You can easily solve even this with like $10 in components you can order online.

look into this:
And

Screenshot of my setup in Home Assistant:
View attachment 216940
Thanks
 
The new JK PM BMS is not yet supported by these solutions, my JK PB BMS is on 15.17 and I connect to it via Wifi using a HiFlying EW11 with a Virtual Serial port on the PC so I can connect and monitor the batteries anywhere on the local Lan. Once one of your solutions adds the JK PB BMS I will try them out. They are working on a solution but have not released it formally.

When JK introduced the PB BMS series they changed RS485 protocols and the Uart port acts differently too.

Thanks for the feedback. For the Daly solution, there's actually an app that you have on your phone that allows you to control the BMS. Looking for something like this but your solution can work as well.
 
I would love to see what the 18KPV screen looks like when paired with the EG4 power pro batteries, in terms of what information is being displayed on the 18K PV screen, the mobile app and the web portal. This would be a really cool comparison to see how a DIY battery compares to the power pro EG4 native batteries.
 
Thanks for the feedback. For the Daly solution, there's actually an app that you have on your phone that allows you to control the BMS. Looking for something like this but your solution can work as well.
The JK PB has an android app vis Bluetooth and a windows app via rs485, other JK bms use the same apps.
 
The JK PB has an android app vis Bluetooth and a windows app via rs485, other JK bms use the same apps.
Yes agreed, I have the JK bluetooth app on my phone. What I meant was, the app I had from Daly, I can access the BMS from where ever I am. For example, if I'm traveling, I can easily pickup my phone and see what the BMS was doing as the BMS itself has a wifi dongle that allowed me to connect to it from anywhere in the world directly, without having to utilize any remote connectivity options to a PC. It was just really convenient having that type of native access.
 
The new JK PM BMS is not yet supported by these solutions, my JK PB BMS is on 15.17 and I connect to it via Wifi using a HiFlying EW11 with a Virtual Serial port on the PC so I can connect and monitor the batteries anywhere on the local Lan. Once one of your solutions adds the JK PB BMS I will try them out. They are working on a solution but have not released it formally.

When JK introduced the PB BMS series they changed RS485 protocols and the Uart port acts differently too.

Even the latest PB series is confirmed working with the dev branch


also this relavant thread on syssi's repo as well. https://github.com/syssi/esphome-jk-bms/issues/390
 
Even the latest PB series is confirmed working with the dev branch


also this relavant thread on syssi's repo as well. https://github.com/syssi/esphome-jk-bms/issues/390

Hello,

Recently i have buyed another pack o battery and i am planning to switch BMS to 2 pcs PB2A16S20P. Unfortunately for ESP WROOM32 and C3 boards Sleeper85 code is not compile successful and i cannot test. I am waiting for a release version for WROOM or C3 Boars as i have many. His code is optimized for ATOM S3 boards which i don't have.

For JK PB2A16S20P BMS i have tried syssi code and is partially working for me. I can see cells voltages, wire resistance, temp ...but i cannot use switches if you need just that syssi code is fine.

I also have tested Txubelaxu code here and is also working similar to syssi code. Just the infos, i cannot activate or deactivate switches.

All the above test were made with using a ESP32-C3 board



For JK B2A20S20P i am using Sleeper85 code here and is working great for over 3 months using a regular ESP WROOM32 board and a TJA 1050 CAN board connected to my Deye inverter talking under Pylon protocol.
 
@Henderson So this thread confirms the new JK Inverter BMS can have multiple linked in parallel and metrics available to 18kpv. Do you happen to have a diagram on what BMS ports to use when linking if the parallel packs?
 
@Henderson So this thread confirms the new JK Inverter BMS can have multiple linked in parallel and metrics available to 18kpv. Do you happen to have a diagram on what BMS ports to use when linking if the parallel packs?
I use RS485-1 RS485-2 for paralleling two JK PB BMS's


LEDs.jpg
 

Attachments

  • Master BMS.jpg
    Master BMS.jpg
    103.2 KB · Views: 1
  • Slave Battery.jpg
    Slave Battery.jpg
    84.3 KB · Views: 1
Last edited:
My Bad, RS485-2 either socket.

Master photo shows yellow battery coms, black PC comms and orange Canbus.

Slave photo shows yellow battery comms

However you can change the RS485 protocol on RS485-1 to JK Ver 1.01 RS-485 and then it would work.
 

Attachments

  • Master BMS.jpg
    Master BMS.jpg
    103.2 KB · Views: 1
  • Slave Battery.jpg
    Slave Battery.jpg
    84.3 KB · Views: 1
My Bad, RS485-2 either socket.

Master photo shows yellow battery coms, black PC comms and orange Canbus.

Slave photo shows yellow battery comms

However you can change the RS485 protocol on RS485-1 to JK Ver 1.01 RS-485 and then it would work.
@kommando Ok, think I've got it:
Slave RS485-2 -> Master RS485-2 -> CAN RS485-1 -> Inverter (BMS/CAN)

Is the above correct? I've got 4 of these inbound tomorrow to use with 4 105AH packs (replacing non-inverter JK's). I'll just chain the other two on the RS485-2 ports.
 
Yes you are right. No need to worry about which socket to use within the two twins as they are common wired on the board. Just keep Canbus RS485-1 and RS485-2 separate but within each pair the sockets are common. Use RS485-2 to connect to a PC via a USB485 adaptor so you can use the JK Windows app to update the firmware, I would have nothing else connected and the DIP set to 1 for the firmware update. If you set the DIP to anything other than one then you cannot update the firmware. I use firmware 15.17.

The BMS voltage is calibrated at rest, BMS amps is calibrated at charge. Calibration is important for the SOC calc.
 
Unfortunately for ESP WROOM32 and C3 boards Sleeper85 code is not compile successful and i cannot test. I am waiting for a release version for WROOM or C3 Boars as i have many.
I think this has to do with the in-built TWAI (Espressif likes to call CANBus that) peripheral support. ESP32 and ESP32-S3 have TWAI and that's why they work.

What we definitely know that the CANBus code won't work on ESP32-S2 because it lacks one. Regarding C3 or any other variants, you have to figure that out.
Edit: It turns out I was wrong and C3 does have TWAI. So the problem is somewhere else.
But the S2 has it too!
 
Last edited:
Back
Top