I don’t switch my heatpump off. I just like to increase the thermostat setpoint during the day to buffer heat inside the house so I need less electricity during the night to keep the house warm.
Things I like to achieve are:
Heat the DHW boiler when there is enough solar. Now it’s a fixed timer that does it every day at 12h00.
Do a legionella run about once per week when there is enough solar. Now it’s a fixed schedule every Monday at 12h00
Increase the temperature in the house during the day by using solar energy. Now that is also a timer. I keep the thermostat on 20°C during the night and from 11-22h I raise the requested temperature to 21°C. When it’s not freezing outside, the heatpump usually stays off during the night. Now that the days are getting longer, there is already enough solar around 9h30-10h to start raising the temperature so I would like to make this dynamic.
Set the charging speed of the EV to maximise solar power consumption.
I have a lot of solar panels on our roof. I pay about 3-4 times the price to purchase electricity than what I get to send energy to the grid. I know in certain countries they look at the net used energy during a year and then you can generate solar in the summer and get it back for free in the winter, but that’s not how it works in Belgium unfortunately. We need to maximise our self consumption to benefit from solar panels.
Same situation here - our feed in tariff is very low compared to the purchase price (Spain).
We have the Samsung heat-pump so we don’t have as much control as you appear to (we can trigger a “solar” contact which boosts the temp a set number of degrees, but we can’t trigger the DHW or legionella run remotely.
Your other use-cases I think you will be fine with, they don’t really rely on the integration with the Huawei too much - there’s a forecasting capability for the solar which is independant of the inverter, but is a more reliable way of determining daily production than looking at the current solar output.
(I’m assuming you also have a battery for storage?)
No, no battery. The difference between the purchase price and feed in is too small to justify a 10kWh battery that will last about 10 years. A battery would save me around 400-450euro/year, but costs me around 8k. At least that’s what my forecasted simulations say. I will redo the exercise once I have lived with the solar panels for 1 year.
I have a Vaillant heatpump and it’s also quite limited, but with an unofficial EBUS module I can just send EBUS commands that set the thermostat temperature, set boiler temperature, trigger the boiler, change the legionella schedule, enable noise reduction, …
And maybe monitoring the Huawei inverter is less important as well. It might be better to monitor the feed in from P1 meter and the solar forecast.
Yup, my calculations on a battery are similar, I figure they’ll last longer than 10 years though, more like 15 but with some reduced capacity.
(We have a battery as we have issues with grid reliability and it justifies itself from that perspective, but it does also help us maximise our usage of the solar, especially in summer when it means we’re not needing to buy anything from the grid)
Totally agree with re-assessing in a while too, I calculated things up-front and got it totally wrong, you never know until you’ve lived with it for a while
I would disagree, the Huawei SDongleA works 100% reliable for local tcp/ip modbus communication, either with wifi or lan connection. It is also more reliable when used with battery backup. I don’t see any reason to prefer serial modbus over tcp modbus with SDongleA. tcp modbus with the included wifi adapter is not as reliable as with the SDongleA.
Well, your experience is N=1 while I’ve been fending support requests for the last two years I can’t recommend the SDongleA when it’s 5x more expensive and has yielded a lot of bug reports because it has been throwing a lots of SlaveFailure and even IllegalAddress modbus exceptions (for some users) while reading from the inverter.
What is the smallest polling period others could achieve? I am able to reach 10s, but not lower (directly connected to inverter). Somebody does better?
I had my next power outage (managed to blow the street side fuse), and I was happily surprised to see that the integrations is reporting its statistics wile on battery power. Running 1.2.6b1.
I have installed a Huawei Inverter SUN2000 with a Dongle and one Power Meter DTSU666.
Everthing is working fine, but how can I add a second Power Meter on the easiest way, because in FusionSolar I can only add one Power Meter.
I have a second floor in my house which energy consumption I need to know as well.
Maybe someone has the same problem?
Hi,
A few days ago I had to restart my Home Assistat.
Since then, my energy panel and my Grafana graphs had stoped showing data. I think this is due to a name change of the sensors.
Could anyone tell which sensor do I need to put in the Energy panel?
Also, i had this template to know the energy used by the house:
I have a TCP to Modbus RTU converter directly connected to the second Power Meter.
But I do not know how it should be the Modbus Register config in Home Assistant for the Huawei DTSU-666H?
Please, anyone knows which sensor or template is needed to know the consumption of the installation, independently if the energy comes from the inverter or the grid?
template:
- sensor:
- name: Grid to Battery
device_class: power
state_class: measurement
unit_of_measurement: W
state: >
{% set inv = states('sensor.inverter_active_power')|int(default=0) %}
{% if inv < 0 %} {{ 0 - inv | int }}
{% else %} 0
{% endif %}
- name: Grid to House
device_class: power
state_class: measurement
unit_of_measurement: W
state: >
{% set inv = states('sensor.inverter_active_power')|int(default=0) %}
{% set grid = states('sensor.power_meter_active_power')|int(default=0) %}
{% if grid < 0 %}
{% if inv < 0 %} {{ inv - grid | int }}
{% else %} {{ 0 - grid | int }}
{% endif %}
{% else %} 0
{% endif %}
- name: Solar to Battery
device_class: power
state_class: measurement
unit_of_measurement: W
state: >
{% set inv = states('sensor.inverter_input_power')|int(default=0) %}
{% set bat = states('sensor.battery_charge_discharge_power')|int(default=0) %}
{% set out = states('sensor.inverter_active_power')|int(default=0) %}
{% if bat > 0 %}
{% if out < 0 %} {{ inv }}
{% else %} {{ bat }}
{% endif %}
{% else %} 0
{% endif %}
- name: Solar to House
device_class: power
state_class: measurement
unit_of_measurement: W
state: >
{% set grid = states('sensor.power_meter_active_power')|int(default=0) %}
{% set out = states('sensor.inverter_active_power')|int(default=0) %}
{% set bat = states('sensor.battery_charge_discharge_power')|int(default=0) %}
{% if out > 0 %}
{% if grid > 0 %}
{% if bat > 0 %} {{ out - grid }}
{% else %} {{ out + bat - grid | abs }}
{% endif %}
{% else %}
{% if bat > 0 %} {{ out }}
{% else %} {{ out + bat | abs }}
{% endif %}
{% endif %}
{% else %} 0
{% endif %}
- name: Solar to Grid
device_class: power
state_class: measurement
unit_of_measurement: W
state: >
{% set grid = states('sensor.power_meter_active_power')|int(default=0) %}
{% set out = states('sensor.inverter_active_power')|int(default=0) %}
{% if out > 0 and grid > 0 %} {{ grid }}
{% else %} 0
{% endif %}
- name: Battery to Grid
device_class: power
state_class: measurement
unit_of_measurement: W
state: >
{% set inv = states('sensor.inverter_active_power')|int(default=0) %}
{% set bat = states('sensor.battery_charge_discharge_power')|int(default=0) %}
{% set grid = states('sensor.power_meter_active_power')|int(default=0) %}
{% if grid > 0 and bat < 0 and inv > grid %}
{% if grid - inv - bat >= 0 %} {{ grid - inv - bat }}
{% else %} 0
{% endif %}
{% else %} 0
{% endif %}
- name: Battery to House
device_class: power
state_class: measurement
unit_of_measurement: W
state: >
{% set bat = states('sensor.battery_charge_discharge_power')|int(default=0) %}
{% set togrid = states('sensor.battery_to_grid')|int(default=0) %}
{% if bat < 0 %} {{ togrid - bat | int }}
{% else %} 0
{% endif %}
Thank you, I’ve added the info from your post to Visualisations · wlcrs/huawei_solar Wiki · GitHub so that it can be found more easily. Otherwise I fear it will be buried as one of the thousands of posts in this topic.