It depends what you are after,
I am happy to share the entities I use. This is what my setup looks like for my S1255-6
It depends what you are after,
I am happy to share the entities I use. This is what my setup looks like for my S1255-6
That looks like a good start. Had worked out a couple of those entities, but not all. Please could you share code for the card?
A couple of things that would be particularly useful that I canât find at all:
Also, I understand that there is a way to toggle the SG interface switches (ie: the aux functions) through the modbus, but canât work that one out. Found the tech info here:
but not sure how to instigate it.
And I am curious, is there anyone who has managed to get the energy input from an S1255? I can see some of you can get it from S2125. But there seems to be a problem with the S1255. I can see the energy in the display, but it does not seem to be in a MODBUS-register.
I am also interested in that
For the S1155 PC it seems that BT25 is not working (unknown) and BT71 is missing.
Would it be possible to manually add these next to the normal Nibe integration?
The integration has failed after I upgraded the Nibe firmware on my VVM S320 to 2.22.6 yesterday ( https://www.nibe.eu/webdav/files/myuplink_changelog/nibe-n.pdf )
I get the following error
2023-10-21 09:02:44.072 ERROR (MainThread) [homeassistant.components.nibe_heatpump] Unexpected error fetching Nibe Heat Pump data: Failed to decode temperature-overload-pool-40001 coil from raw: 0000, exception: Raw value 0 is out of range for coil temperature-overload-pool-40001
Anyone else seeing this?
Replying to myself - the issue has already been reported. More info here [Errno 104] Connection reset by peer and [Errno 111] Connect call failed after updating heat pump to 2.22.6 · Issue #102385 · home-assistant/core · GitHub
@toem I had that issue too. I added the device again to the integration (you have to enter the hostname / ip address again) and everything came back. Actually, more entities seem to work now.
A bit echoey in hereâŠ
I have an s1155. Tons of entities are available for it, but there are two really basic things that I would like to do, which I donât seem to be able to do with any of these entities.
It seems incredible to me that it is not possible to do these two things.
If anybody has had any luck doing these two things with any system, please tell me the entity names.
There has been a lot of mention how to obtain the full list available modbusbus registers by Nibe heat pump model. If you donât have the heat pump (yet, like me) you can find a recent list in the Nibe linbrary on github (thank you yozik04): Nibe modbus registers by heat pump model
This may also help to discover why some registers donât work for your model. At the time of writing this list was updated 2 months ago for the model Iâm expecting by the end of this year (S1255PC). In particular I will be interested to see whether register 2291 is available for COP calculations (mentioned above). This register is not in the list for S1255PC (nor S2125) so it may not be complete.
Thank you. I have seen these Modbus Registers before and I can spot the entities that should do what I want, but for some reason, some of them just donât work - settings at the heat pump donât change when you change them in HA. Other entities (fan speed, hot water demand, operating mode for example) work fine and I can control them through HA.
Oh well, guess Iâm at a dead end and will have to pay to renew the premium NIBE app to allow me control away from home (how stingy is that of NIBE? Only paid thousands of pounds for a HP that geos wrong every time I do a firmware update, and they still want more moneyâŠ)
Iâm hoping there is someone in this topic who could help me with a script for the following.
I have an S2125 with a VVMS320 connected to HA via modbus. Recently entities/sensors for energy usage and production have appeared, such as these:
sensor.energy_log_energy_used_for_heat_during_past_hour_32292
sensor.energy_log_energy_produced_for_heat_during_past_hour_32284
Now I have been able to calculate the COP based on those, but the only thing is that these sensors log per hour and this means that I only get the COP per hour and I would like to monitor per day/week/month/year to also get the sCOP. Can anyone help me with how I should script this?
Making some progress with my S1155. I can now adjust the main room thermostat set point through HA! Hereâs how I did it, if itâs of any use to anyone:
We just have one thermostat / room sensor, which is âclimate_system_1â. Your system may be different of course and youâll need to do the same for the relevant climate system/s.
Now Iâm going to have a look at holiday mode and see if I can work that one out, knowing that it may be a two stage process.
The same happened to me and my SMO S40.
Any solution already at the horizon, also I cannot activate âword swapâ as the item 5.3. isnât available on the menu.
Cheers
Hi @wijsman and @alfabetagama
Thanks for your example config regarding the COP calculations. I have modified your code slightly to fit my S1155 unit. The utility meters are working fine (contains data). However the COP calulations are «unavailable».
HereÂŽs my code in configuration.yaml (IÂŽm quite new to this so the error might be obvious, sorryđ):
modbus:
- name: "NibeS1155"
type: tcp
host: 192.168.1.104
port: 502
sensors:
- name: "S1155 External Supply Temp BT25"
unique_id: "nibe_s1155_ext_supply_temp_bt25"
data_type: int16 # int8
address: 39
input_type: input # R/W
scale: 0.1
precision: 1
state_class: measurement
device_class: temperature
unit_of_measurement: "C"
slave: 1
scan_interval: 30
- name: "IN - Nibe S1155 used energy floorheat last hour"
unique_id: "nibe_s1155_in_energy_heating"
data_type: int16 # int8
address: 2291
input_type: input # R/W
scale: 0.01
precision: 2
state_class: measurement
unit_of_measurement: "kWh"
slave: 1
scan_interval: 900
- name: "OUT - Nibe S1155 produced energy floorheat last hour"
unique_id: "nibe_s1155_out_energy_heating"
data_type: int16 # int8
address: 2283
input_type: input # R/W
scale: 0.01
precision: 2
state_class: measurement
unit_of_measurement: "kWh"
slave: 1
scan_interval: 900
- name: "IN - Nibe S1155 used energy hot water last hour"
unique_id: "nibe_s1155_in_energy_hot_water"
data_type: int16 # int8
address: 2293
input_type: input # R/W
scale: 0.01
precision: 2
state_class: measurement
unit_of_measurement: "kWh"
slave: 1
scan_interval: 900
- name: "OUT - Nibe S1155 produced energy hot water last hour"
unique_id: "nibe_s1155_out_energy_hot_water"
data_type: int16 # int8
address: 2285
input_type: input # R/W
scale: 0.01
precision: 2
state_class: measurement
unit_of_measurement: "kWh"
slave: 1
scan_interval: 900
template:
- sensor:
- name: "Nibe S1155 COP Total"
unique_id: "nibe_s1155_cop_energy"
unit_of_measurement: ""
state: >
{% set nibe_s1155_out_energy_cop = states('sensor.nibe_s1155_out_energy_heating') | float + states('sensor.nibe_s1155_out_energy_hot_water') | float %}
{% set nibe_s1155_in_energy_cop = states('sensor.nibe_s1155_in_energy_heating') | float + states('sensor.nibe_s1155_in_energy_hot_water') | float %}
{{ (nibe_s1155_out_energy_cop / nibe_s1155_in_energy_cop) | float | round(2) }}
- sensor:
- name: "Nibe S1155 COP Heating"
unique_id: "nibe_s1155_cop_energy_heating"
unit_of_measurement: ""
state: >
{% set nibe_s1155_out_heating = states('sensor.nibe_s1155_out_energy_heating') | float %}
{% set nibe_s1155_in_heating = states('sensor.nibe_s1155_in_energy_heating') | float %}
{{ (nibe_s1155_out_heating / nibe_s1155_in_heating) | float | round(2) }}
- sensor:
- name: "Nibe S1155 COP Hot water"
unique_id: "nibe_s1155_cop_energy_hot_water"
unit_of_measurement: ""
state: >
{% set nibe_s1155_out_hot_water = states('sensor.nibe_s1155_out_energy_hot_water') | float %}
{% set nibe_s1155_in_hot_water = states('sensor.nibe_s1155_in_energy_hot_water') | float %}
{{ (nibe_s1155_out_hot_water / nibe_s1155_in_hot_water) | float | round(2) }}
Following this thread with excitement. I would like to have this one also for my S1155. I got the same status âUnavailableâ. My HA knowledge is just building up so trying to learn step by step.
The sensors names that are refered to in the template sensor are probably named differently.
In my environment the
name: âNibe S1155 COP Totalâ
unique_id: ânibe_s1155_cop_energyâ
will result in a sensor entity sensor.nibe.s1155_cop_total instead of sensor.nibe_s1155_cop_energy.
So it seems a derivative of ânameâ is used instead of âunique_idâ . Just have a look at the entity names in Settings-> Devices to find the correct names.
Also if the heatpump did not produce any heat or hot water in that hour, the in_energy values will be 0. And it seems a division by zero results in an âunavailableâ value.
Thanks @mirakels,
That solved the issue. Is there a way to solve the «unavailable» value when no hot water produced last hour? Maybe the last recorded cop calulation could be shown instead of just «unavailable».
It would be really nice if you could share the code for that card - looks like youÂŽve got the most important entities configured nicely. Thanks
@Cregeland thanks! Not all perfect, but you can find the code I used and shared on this thread
https://community.home-assistant.io/t/how-do-i-config-modbus-tcp-for-nibe-s1255/353874/86