It it helps…
I too have a Solis Hybrid inverter, and am pulling almost all of the inverter readings via modbus, as well as snooping the CANbus, and reading the Pylontech battery comms directly.
My experience with the Solis is that the power readings can be out by around 100-300W for several reasons.
In general, since energy can be neither created nor destroyed,
Solar PV + Battery Discharge + Grid Import = Load (main & backup) + Battery Charge + Grid Export.
Load for me being the house, not the backup. I have the backup circuit wired in, but not used. The inverter UI screen shows backup power of +5 - 7 W from time to time (just noise in the monitoring circuit). During strong solar PV this summer, I occasionally saw up to 70W reported (on an open circuit - so presumably a lot of noise).
Of note is that, whilst the solar, grid power, and battery power is monitored, directly connect load is not, so the inverter must calculate this from everything else. Timing issues (the grid power is read via the meter which samples at 1 second intervals) mean grid power in/out and hence load is not always correct.
Also, the inverter takes power for itself, around 40 W, or 60W when the UI screen is ‘on’. During solar PV generation this seems to be deducted prior to reporting solar power. Otherwise it is consumed from the battery/grid, and effectively added to the load, but not always. In talking with Solis last year the technician I spoke with insisted that all inverters power themselves from the DC side, hence non-hybrid shut down at night, and hybrid power from the battery. I have tested this fully, to the point of cutting off the battery, and hey presto, my hybrid inverter carries on running off the AC side. Either that or it has its own battery/generator. As the ‘load’ calculation seems to vary between adding in or not adding in the inverter self-consumed power, the load will be out by 40-60 W just from that.
My biggest issue has been with the battery BMS. I have two generations of battery, one with a tendency to continue to discharge when at the over-discharge SOC. At this point the battery BMS reports an outflow of 0.25 amp at 48 v (12 W by three units =36W) which I can corroborate against the battery SOC discharge rate overnight. The CANbus reports this (current * voltage) correctly, but the inverter insists on recording this as being around 120 W, which it dutifully tracks during the night. This inverter BMS power figure increases as the solar PV begins to fire up in the morning, so clearly there is either cross-talk between the various monitoring circuits, or the software is getting in a muddle.
For myself
- I have not used the backup circuit for real, but I would expect noisy readings. This is a circuit effectively floating free depending on what, exactly, gets tied back down to ‘earth’.
- I allow for the load calculation imbalance and write this off to noise/timing/inverter self consumption (see picture below)
- I do not trust the inverter recorded BMS readings (particularly the BMS current) and use the CANbus readings directly
You can see that this morning I have around 150 W going somewhere other than load/battery/grid. I put this down to measurement error (~30W), the inverter self-power (~60W), losses in the battery discharge (~50W) and timing/rounding errors (~10W).
You will see that I am drawing zero from the grid.
For accuracy I have cross referenced my smart meter (I am in the UK and we have ‘smart’ meters that track the electricity meter every 15 seconds) with the Modbus power meter (using CT clamp on the grid connection) with the inverter readings. Yup, they mostly agree, most of the time. It is also worth noting that most of these monitoring actions require a CT clamp or large resistor somewhere, all of which work nicely when measuring a large voltage / current / power flow, but become inaccurate for very small readings. With zero grid flow (which happens a lot for Solar PV / battery support) the power readings could be +/- 10 W just from noise. I have to take my smart meter reading as the ‘true’ value, regardless of what my inverter reports, and I find that the inverter grid figures (both import and export) are a good 10% out over a full year.
Your other points regarding the exact registers will depend on your inverter model. Several of the registers are used for settings and not readings, so they will remain mostly constant.