I have a testing station for inverters and batteries and would like to build a device that can monitor various types of inverters & batteries from a single device on a single platform. Something like Solar assistant, but I want to do this on a ESP32. I've done this in the past with a single inverter that worked perfectly, and this gave me the idea for this unit.
I Want to read all the main values i.e.
Grid Voltage
Grid wattage
Grid Hz
PV generation
PV voltage
Load Voltage
Load wattage
Battery SOC
Battery SOH
Sample rate of 5seconds.
inverter brands:
Deye/Sunsynk
Solis
Axpert
Growatt
Luxpower
These are independent of the inverter, so shouldn't be much of a problem.
These would have to be taken from the inverter(s). Apparently they pretty much all use MODBUS, but the data standards may/will vary from type to type. If you have specifications on this, you should be able to set it up for any type you've got the documentation for.
Similarly for BMS, although these are more heterogeneous as I understand w.r.t. communications interfaces, so will be overall more challenging. You may have to resort to several hardware interfaces as well as software protocols.
Load on what/defined as what, at which node(s)?
Overall, it's probably manageable with careful planning. Go for a modular system architecture, both in hardware and software. Start with one BMS and inverter to test with, but keep an eye on the variation in protocol standards etc. so you don't close off any routes you need later on.
That's about as much as I'd have to offer at this point.