How do I config modbus tcp for Nibe S1255?

@Albastraoz
This is what I’ve created for COP calculation. Maybe you can use some entities from here to get what you want:


  - name: "Nibe Pump COP Total"
    unique_id: "nibe_pump_cop_energy"
    unit_of_measurement: "%"
    state_class: measurement 
    icon: "mdi:gauge"
    state: >
      {% set nibe_pump_out_energy_cop = states('sensor.energy_log_produced_energy_for_heating_over_the_past_hour_32284') | float + states('sensor.energy_log_produced_energy_for_hot_water_over_the_past_hour_32286') | float %}
      {% set nibe_pump_in_energy_cop = states('sensor.energy_log_used_energy_for_heating_over_the_past_hour_32292') | float + states('sensor.energy_log_used_energy_for_hot_water_over_the_past_hour_32294') | float %}

      {% if nibe_pump_out_energy_cop >= 0 and nibe_pump_in_energy_cop > 0 %}
       {{ (nibe_pump_out_energy_cop / nibe_pump_in_energy_cop) | float | round(2) }}
       {% else %}
         0
      {% endif %}
    

  - name: "Nibe Pump COP Heating"
    unique_id: "nibe_pump_cop_energy_heating"
    unit_of_measurement: "%"
    state_class: measurement 
    icon: "mdi:gauge"
    state: >
      {% set nibe_pump_out_heating = states('sensor.energy_log_produced_energy_for_heating_over_the_past_hour_32284') | float %}
      {% set nibe_pump_in_heating = states('sensor.energy_log_used_energy_for_heating_over_the_past_hour_32292') | float %}

      {% if nibe_pump_out_heating >= 0 and nibe_pump_in_heating > 0 %}
       {{ (nibe_pump_out_heating / nibe_pump_in_heating) | float | round(2) }}
       {% else %}
         0
      {% endif %}

  - name: "Nibe Pump COP Hot water"
    unique_id: "nibe_pump_cop_energy_hot_water"
    unit_of_measurement: "%"
    state_class: measurement 
    icon: "mdi:gauge"
    state: >
      {% set nibe_pump_out_hot_water = states('sensor.energy_log_produced_energy_for_hot_water_over_the_past_hour_32286') | float %}
      {% set nibe_pump_in_hot_water = states('sensor.energy_log_used_energy_for_hot_water_over_the_past_hour_32294') | float %}

      {% if nibe_pump_out_hot_water >= 0 and nibe_pump_in_hot_water > 0 %}
       {{ (nibe_pump_out_hot_water / nibe_pump_in_hot_water) | float | round(2) }}
       {% else %}
         0
      {% endif %}
      - type: entities
        title: COP calculation
        entities:
          - sensor.nibe_pump_cop_total
          - sensor.nibe_pump_cop_heating
          - sensor.nibe_pump_cop_hot_water 

2 Likes