Anx2k
Solar Enthusiast
At my company we've got a product that uses an off-the-shelf BMS, but we've decided to roll our own for a variety of reasons. I'm hoping that once we finish it, we might make it available to end users as well, so I thought I'd just see what kinds of features people might be interested in, that we either aren't doing or haven't considered. Since we're just in the initial hardware sourcing and schematic stage, it's a good time to get feedback as it's impact will be the smallest. I would expect if we make it available, it would be towards the end of the year, depending on scheduling and availability of parts, etc.
In terms of current features, here's kind of the main ones - and keep in mind most of these are requirements for our internal project, so unlikely we'd change them in any meaningful way. This will also use a software stack we've developed on other devices, so a big chunk of the software side of things is already done.
On the communication side, we're primarily ethernet-based, so it will have both an CAT5 port as well as a single switch port (as we sometimes daisy chain devices). We have a full web RESTful API for all the control of the device which covers 100% of the devices operation, so easy to integrate. We'll also probably add a single CAN and single RS485 ports (both isolated) to allow integration with other systems (although we currently don't use those). We'll also have WiFi on board, but it can be disabled so it's 100% wired.
For basic specs, it will be rated for 300A, and will handle from 3 to 24 cells, and will support both passive (0.1A) and active balancing (2.0A, due to the wire gauge for the current sense cables). It will have all the usual things such as hardware over current/voltage/temp, under voltage/temp (via TI components, I believe) - and we'll have 4 external NTC hookups, as well as several onboard temperature sensors, to monitor the board/environment. In terms of current sense we should comfortably be in the 0.01v range, and will support calibration as well. We actually have a NIST power and temperature calibration lab on-side, although I don't think we'll be using it to calibrate the devices directly, we will be using it to calibrate the components we use in the calibration process, so it should be pretty spot-on.
It will have an onboard RTC, as well as storage for logging of any events that take place, as well as an onboard color LED and piezo buzzer (both with external connectors) to indicate an issue. We already have a SOC tracker that's advanced and fully configurable (uses Peukert exponent, DoD, rules based full charge indication, estimated runtime, load over period, etc). There will also be 2x 12v 4-pin PWM fan headers, to add temperature controlled (or manual) fans for cooling.
On the software side, it's all configured via a web interface - no apps or anything else, so any browser on any device should be fine. We're big believers of this, as it can all happen locally and doesn't require an app store or any other 3rd party components. It has full MQTT support and auto-discovery with Home Assistant, and it can export controls (such as enabled/disabling charge or discharge), but device configuration has to happen all in the web UI. There's also logging functionality built-in, so if you don't have access to something like HA, we can log into a csv on-device and you can just download it and work with it in Excel or whatever you'd like. And firmware updating can be done both locally and via the Internet.
Finally, on the I/O side there will be 4x wet relays - we're still sourcing these, but they should be AC or DC, and should handle around 3A. They won't be dedicated to a particular function, but configurable to use with heating elements, contactors, alarm circuits, etc. There will be 3x isolated inputs and 3x isolated outputs, once again configurable for buttons or whatever. We also have one reset button and one general purpose button that we use for our control, and are already defined.
As you can see from the featureset, it's not going to be a cheap replacement, but we're also hoping that it won't be crazy expensive either - and will have the plus that it was developed in the US (primary) and Europe. That's it! Thanks for taking the time to read everything and look forward to hearing any feedback anyone has!
In terms of current features, here's kind of the main ones - and keep in mind most of these are requirements for our internal project, so unlikely we'd change them in any meaningful way. This will also use a software stack we've developed on other devices, so a big chunk of the software side of things is already done.
On the communication side, we're primarily ethernet-based, so it will have both an CAT5 port as well as a single switch port (as we sometimes daisy chain devices). We have a full web RESTful API for all the control of the device which covers 100% of the devices operation, so easy to integrate. We'll also probably add a single CAN and single RS485 ports (both isolated) to allow integration with other systems (although we currently don't use those). We'll also have WiFi on board, but it can be disabled so it's 100% wired.
For basic specs, it will be rated for 300A, and will handle from 3 to 24 cells, and will support both passive (0.1A) and active balancing (2.0A, due to the wire gauge for the current sense cables). It will have all the usual things such as hardware over current/voltage/temp, under voltage/temp (via TI components, I believe) - and we'll have 4 external NTC hookups, as well as several onboard temperature sensors, to monitor the board/environment. In terms of current sense we should comfortably be in the 0.01v range, and will support calibration as well. We actually have a NIST power and temperature calibration lab on-side, although I don't think we'll be using it to calibrate the devices directly, we will be using it to calibrate the components we use in the calibration process, so it should be pretty spot-on.
It will have an onboard RTC, as well as storage for logging of any events that take place, as well as an onboard color LED and piezo buzzer (both with external connectors) to indicate an issue. We already have a SOC tracker that's advanced and fully configurable (uses Peukert exponent, DoD, rules based full charge indication, estimated runtime, load over period, etc). There will also be 2x 12v 4-pin PWM fan headers, to add temperature controlled (or manual) fans for cooling.
On the software side, it's all configured via a web interface - no apps or anything else, so any browser on any device should be fine. We're big believers of this, as it can all happen locally and doesn't require an app store or any other 3rd party components. It has full MQTT support and auto-discovery with Home Assistant, and it can export controls (such as enabled/disabling charge or discharge), but device configuration has to happen all in the web UI. There's also logging functionality built-in, so if you don't have access to something like HA, we can log into a csv on-device and you can just download it and work with it in Excel or whatever you'd like. And firmware updating can be done both locally and via the Internet.
Finally, on the I/O side there will be 4x wet relays - we're still sourcing these, but they should be AC or DC, and should handle around 3A. They won't be dedicated to a particular function, but configurable to use with heating elements, contactors, alarm circuits, etc. There will be 3x isolated inputs and 3x isolated outputs, once again configurable for buttons or whatever. We also have one reset button and one general purpose button that we use for our control, and are already defined.
As you can see from the featureset, it's not going to be a cheap replacement, but we're also hoping that it won't be crazy expensive either - and will have the plus that it was developed in the US (primary) and Europe. That's it! Thanks for taking the time to read everything and look forward to hearing any feedback anyone has!
