element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
element14 presents
  • Challenges & Projects
  • More
element14 presents
Off-Grid MakerShop Solar Battery Bank Monitor Project
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join element14 presents to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: KalebTheMaker
  • Date Created: 30 Jul 2024 3:29 PM Date Created
  • Views 2574 views
  • Likes 6 likes
  • Comments 14 comments
  • bluetooth
  • battery
  • solar power
  • off-grid
  • arduino
  • canbus
Related
Recommended

Solar Battery Bank Monitor Project

KalebTheMaker
KalebTheMaker
30 Jul 2024

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

  • Sign in to reply
  • dougw
    dougw over 2 years ago in reply to KalebTheMaker

    I was just referring to the MQTT broker on android.

    Can you get the BT protocol from the battery manufacturer?

    We have a full blown BT sniffer at work although I am not the expert on it. From what I have seen, it could certainly be used to figure out the whole protocol.

    It wasn't cheap.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • KalebTheMaker
    KalebTheMaker over 2 years ago in reply to dougw

    I have an Android tablet and followed some recipes to put it into BTLE promiscuous mode and look for traffic. It found devices, but no traffic when I connected to the battery with my phone. 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • KalebTheMaker
    KalebTheMaker over 2 years ago in reply to dougw

    Hey Doug, 

    Is the program you are thinking of an app from the google play store? Or something I would write? The issue is that I cant see any packets to sniff to try and intercept/decode.

    -Kaleb

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • dougw
    dougw over 2 years ago

    Maybe you could get a cheap android "set-top" box (or TV box) and run a little program to sequentially connect to each battery via Bluetooth - then send the data to an MQTT broker. There is an android app for an MQTT broker....

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
<
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube