Hi all,
I'm Starting another project here. I would like to be able to monitor the state of each of my batteries. They are Kilovault HLX 3600's and I have 12 of them. There are three banks of four in series/parallel. Each battery has Bluetooth, and I can access all the data I would ever want via Bluetooth. But I have to log into each one of them from my phone while being in Bluetooth range.
The problem:
I need to be able to tell if the batteries are out of balance or not. That is the main thing. It would be really nice to be able to see the State of Charge for each battery, and even cooler to be able to see the SOC and voltage of each cell in the battery. Also nice to see charge and discharge amps.
The best-case scenario would to be able to collect that data in real-time and store it in a time-series database. An acceptable case would be monitoring the voltage on each battery with some external system and collecting that into a time-series database.
I have attempted to sniff the Bluetooth traffic, but I'm really not sure what I am doing right or wrong, it's almost like I can't see any traffic. I picked up the Bluefruit LE sniffer from Adafruit and had Wireshark collect data, but I didn't see any packets that I expected to see from some of the BT sniffing examples I could find. Maybe it's not LE? I'm not sure. What I was hoping to be able to do is send a BTLE signal and have it spill its guts, collect that data and put it in the TSD. After a day and a half of mucking with that, I had zero success.
Another option would be the CANBUS connections on the batteries. There is no documentation from Kilovault on the protocol or anything. I connected the battery to a CANBUS transceiver that was connected to an Arduino, and setup it up from an example to show me any packets. The first time I did this, I saw something, but now when I do it, I don't see anything at all. There is a scenario where I could connect the batteries via CANBUS to my Victron system and it could pull all of the data, but the battery vendor will not tell me anything about the CANBUS capabilities or how to set that up. If I could figure that one out, there would be a TON of people who have similar setup's to mine that would use it.
Does anyone have any experience with Bluetooth sniffing, or CANBUS that could help point me in the right direction?
The last scenario would be using a voltage divider and measuring the voltage on each battery from an analog pin on a microcontroller. That at least would tell me (in a resting state) if any of the batteries are out of balance or not. I could use a table to give me a *very* rough estimate of the state of charge based on the voltage. Currently, this seems the most likely path because of the lack of success with BTLE and CANBUS.
Any thoughts on this last scenario? I'm just thinking of a couple of resistors (7.5k/30k) in a voltage divider, then read that via an analog pin on an ESP32 or something.
Thanks,
-KalebTheMaker