I do have a 3 phase meter, that is connected via a P1 port usb cable directly to the Docker container.
That all did work greate until I installed my battery, now some how the "Actual Power Delivery
" is not correct. (The battery is connected to only 1 phase and always delivers something back to the grid)
To my point of vieuw this is not posible and at least one of them should be at 0. As I can not use power from the Grid and also delivering it back.
The p1 meter from Zendure is reporting it correct and is showing that I deliver back arround 50W to the grid.
Did check the logs and it is really reporting this like every 5 seconds. So it is actively reporting this. If I look on the Electricall meter itself it is only showing me Delivering back 50w.
from the Zendure I can see the following: (This is not the same time as the screenshot above, However the delivery is close to the p3 value)
If you enable debug or even trace logging for the DSMR binding you can see the data it gets from the meter. This might give more information if what it actually reports, and if the data is present.
As far as I know this is actually working as intended. I have had solar panels connected to 2 of the 3 phases and then you could see at some moment during the day that both production and delivery (T1/T2 in and T1/T2 out) could be ‘positive’. Therefor you would see that both ‘production’ and ‘delivery’ would hold values (not being 0).
If your meter is working correctly it should sum both before determining your total energy usage / delivery at that moment.
Recently I changed my solar inverters to 1 (3 phase) and added batteries. Furthermore I started calculating my daily usage and delivery and noticed that this is indeed how it is working in my DSMR (though beit an older version, I think it’s 3). If the sum of both means usage: T1/T2 in (as usage) is changed. Same for delivery (T1/T2 out).
Long story short: your power usage and delivery is probably working as expected, have a look at your energy usage. But… that is the way it is working here.
From the logs I see, indeed that DSRM is just showing both
info_circle 08:53:13.779
INFO
openhab.event.ItemStateChangedEvent
Item ‘ElectricityM_Actual_Power_Delivery’ changed from 550 W to 552 W (source: org.openhab.core.thing$dsmr:electricity_v5_0:1f73bf5b8e:0:emeter_actual_delivery)
info_circle 08:53:13.781
INFO
openhab.event.ItemStateChangedEvent
Item ‘ElectricityM_Actual_Power_Production’ changed from 603 W to 590 W (source: org.openhab.core.thing$dsmr:electricity_v5_0:1f73bf5b8e:0:emeter_actual_production)
The intresting part is that on the Meter itself there is a Display and there I will see the home usage that will be delivery or production and there I see the correct value…
Looking for the manual to see If I can get something from there.
I just checked: mine is also a Kaifa but a MA304C (not sure what the difference is). As mentioned: the energy calculation within the DSMR is working correct (as far as I understand) by determining whether there is a usage or delivery (if usage> delivery: you have an effective usage, else you have an effective delivery). Then the energy is calculated. (probably not the easy way as I describe, but just as example).
If you enable more detailed logging (can be done in addon detail screen in main ui) you’ll get the data given by the meter. The binding itself does no calculation, it just passes on the values given by the meter. What could be the case is that If you deliver more energy to the grid on one phase than you consume and on another phase you consume energy your meter will report what you actually deliver and what you actual consume, not the net result of both.
On some meters you can get the power values per phase. See the advanced channels to see if those channels are available in your openHAB meter thing.
A solution for you could be to write a rule that combine both channel results and post the result to new items. Something if delivery - production is negative post to a production item, and else to a delivery item.
From the logs I see, indeed that DSRM is just showing both
info_circle 08:53:13.779
INFO
openhab.event.ItemStateChangedEvent
Item ‘ElectricityM_Actual_Power_Delivery’ changed from 550 W to 552 W (source: org.openhab.core.thing$dsmr:electricity_v5_0:1f73bf5b8e:0:emeter_actual_delivery)
info_circle 08:53:13.781
INFO
openhab.event.ItemStateChangedEvent
Item ‘ElectricityM_Actual_Power_Production’ changed from 603 W to 590 W (source: org.openhab.core.thing$dsmr:electricity_v5_0:1f73bf5b8e:0:emeter_actual_production)
The intrestign part that on the Meter itself there is a Display and there I will see the home usage that will be delivery or production and there I see the correct value…