-
-
Save jakobmoll/96d67a6e3c98b1742230057c5923da63 to your computer and use it in GitHub Desktop.
Nilan Compact P CTS700 package definition
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
nilan: | |
modbus: | |
- name: nilan | |
type: tcp | |
host: 192.168.1.99 | |
port: 502 | |
climates: | |
- name: Genvex | |
slave: 1 | |
target_temp_register: 4746 | |
address: 5154 | |
count: 1 | |
min_temp: 15 | |
max_temp: 30 | |
temp_step: 1 | |
# data_type: int | |
scale: 0.1 | |
precision: 1 | |
switches: | |
- name: nilan_dhw_supplement_enabled | |
slave: 1 | |
address: 3938 | |
command_on: 1 | |
command_off: 0 | |
sensors: | |
- name: nilan_humidity | |
address: 4716 | |
unit_of_measurement: "%" | |
slave: 1 | |
- name: nilan_temperature_outdoor | |
# T1 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5152 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_inlet | |
# T2 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5153 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_room | |
# T3 - Room / extract air | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5154 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_after_heateexchange | |
# T4 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5155 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_after_heatpump | |
# T5 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5156 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_heatpump_evaporator | |
# T6 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5157 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_inlet_after_heater | |
# T7 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5158 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_outdoor_before_preheat | |
# T8 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5159 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_water_after_heater | |
# T9 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5160 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_top_water | |
# T11 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5162 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_temperature_bottom_water | |
# T12 | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5163 | |
scale: 0.1 | |
count: 1 | |
# data_type: int | |
- name: nilan_water_setpoint | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 5548 | |
count: 1 | |
scale: 0.1 | |
- name: nilan_fan_speed_in | |
unit_of_measurement: "%" | |
slave: 1 | |
address: 4699 | |
count: 1 | |
#scale: 0.1 | |
- name: nilan_fan_speed_out | |
unit_of_measurement: "%" | |
slave: 1 | |
address: 4700 | |
count: 1 | |
# scale: 0.1 | |
- name: nilan_air_setpoint | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 4746 | |
count: 1 | |
scale: 0.1 | |
- name: nilan_fan_setpoint | |
#unit_of_measurement: '%' | |
slave: 1 | |
address: 4747 | |
count: 1 | |
offset: -100 | |
- name: nilan_dhw_supplement_active | |
slave: 1 | |
address: 5285 | |
count: 1 | |
- name: nilan_dhw_supplement_enabled | |
slave: 1 | |
address: 3938 | |
count: 1 | |
- name: nilan_dhw_supplement_max | |
# max enable temp for elpatron | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 2828 | |
count: 1 | |
scale: 0.1 | |
- name: nilan_dhw_supplement_min | |
# min enable temp for elpatron | |
unit_of_measurement: "°C" | |
slave: 1 | |
address: 3935 | |
count: 1 | |
scale: 0.1 | |
- name: nilan_air_mode | |
# 0 = Auto mode | |
# 1 = Cooling mode | |
# 2 = heating mode | |
slave: 1 | |
address: 2402 | |
count: 1 | |
# - name: nilan_active_cooling | |
# # 0 = off | |
# # 1 = on | |
# slave: 1 | |
# address: 3284 | |
# count: 1 | |
- name: nilan_mode | |
# 0 = not defined | |
# 1 = Cooling | |
# 2 = Heating | |
# 3 = Ventilation | |
# 4 = Hot water | |
# unit_of_measurement: '°C' | |
slave: 1 | |
address: 5432 | |
count: 1 | |
# scale: 0.1 | |
# ------ | |
# filter | |
- name: nilan_filter_in_limit | |
unit_of_measurement: "days" | |
slave: 1 | |
address: 1326 | |
count: 1 | |
- name: nilan_filter_out_limit | |
unit_of_measurement: "days" | |
slave: 1 | |
address: 1327 | |
count: 1 | |
- name: nilan_filter_in_days | |
unit_of_measurement: "days" | |
slave: 1 | |
address: 1328 | |
count: 1 | |
- name: nilan_filter_out_days | |
unit_of_measurement: "days" | |
slave: 1 | |
address: 1329 | |
count: 1 | |
- name: nilan_filter_compressor_control | |
#unit_of_measurement: 'days' | |
slave: 1 | |
address: 1323 | |
count: 1 | |
# compressor control | |
# 1323 | |
# fourWayState | |
# 4703 | |
- name: nilan_fourway_state | |
slave: 1 | |
address: 4703 | |
count: 1 | |
# bypass1State | |
# 4704 | |
- name: nilan_bypass_1_state | |
slave: 1 | |
address: 4704 | |
count: 1 | |
# bypass1State | |
# 4705 | |
- name: nilan_bypass_2_state | |
slave: 1 | |
address: 4705 | |
count: 1 | |
# water compressor level | |
# 4706 = Compressor1 | |
- name: nilan_water_compressor_1 | |
slave: 1 | |
address: 4706 | |
count: 1 | |
sensor: | |
- platform: template | |
sensors: | |
nilan_current_operation_mode: | |
friendly_name: "nilan mode" | |
value_template: >- | |
{% if is_state('sensor.nilan_mode','1') %} | |
Cooling | |
{% elif is_state('sensor.nilan_mode','2') %} | |
Heating | |
{% elif is_state('sensor.nilan_mode','3') %} | |
Ventilation | |
{% elif is_state('sensor.nilan_mode','4') %} | |
Hot water production | |
{% endif %} | |
icon_template: >- | |
{% if is_state('sensor.nilan_mode','1') %} | |
mdi:snowflake | |
{% elif is_state('sensor.nilan_mode','2') %} | |
mdi:fire | |
{% elif is_state('sensor.nilan_mode','3') %} | |
mdi:fan | |
{% elif is_state('sensor.nilan_mode','4') %} | |
mdi:waves | |
{% endif %} | |
- platform: integration | |
source: sensor.plug_s_1_power | |
name: power_meter_s1 | |
round: 2 | |
unit_prefix: k | |
input_number: | |
climate_air_slider: | |
name: Climate air temperature | |
initial: 21 | |
min: 10 | |
max: 28 | |
step: 1 | |
icon: mdi:gauge | |
# Input slider for water temperatur in Nilan Genvex | |
climate_water_slider: | |
name: Climate water temperature | |
initial: 45 | |
min: 10 | |
max: 65 | |
step: 1 | |
icon: mdi:oil-temperature | |
input_select: | |
# input selector for Nilan mode | |
nilan_air_mode: | |
name: Nilan Air Mode | |
options: | |
- Auto | |
- Cooling | |
- Heating | |
# input selector for Nilan fan speed | |
nilan_fan_speed: | |
name: Nilan Ventilation speed | |
icon: mdi:fan | |
options: | |
- "1" | |
- "2" | |
- "3" | |
- "4" | |
automation: | |
- id: '1562650958991' | |
alias: 'System: Nilan air slider to setpoint' | |
trigger: | |
- entity_id: input_number.climate_air_slider | |
platform: state | |
condition: [] | |
action: | |
- data_template: | |
address: 4746 | |
hub: nilan | |
unit: 1 | |
value: '{{trigger.to_state.state | int * 10 | round(0) }}' | |
service: modbus.write_register | |
- id: '1562651402052' | |
alias: 'System: Nilan air setpoint to slider' | |
trigger: | |
- entity_id: sensor.nilan_air_setpoint | |
platform: state | |
condition: [] | |
action: | |
- data_template: | |
entity_id: input_number.climate_air_slider | |
value: '{{ states.sensor.nilan_air_setpoint.state }}' | |
service: input_number.set_value | |
- id: '125' | |
alias: 'System: Nilan water slider to setpoint' | |
trigger: | |
- entity_id: input_number.climate_water_slider | |
platform: state | |
condition: [] | |
action: | |
- data_template: | |
address: 5548 | |
hub: nilan | |
unit: 1 | |
value: '{{trigger.to_state.state | int * 10 | round(0) }}' | |
service: modbus.write_register | |
- id: '126' | |
alias: 'System: Nilan water setpoint to slider' | |
trigger: | |
- entity_id: sensor.nilan_water_setpoint | |
platform: state | |
condition: [] | |
action: | |
- data_template: | |
entity_id: input_number.climate_water_slider | |
value: '{{ states.sensor.nilan_water_setpoint.state }}' | |
service: input_number.set_value | |
- id: '127' | |
alias: 'System: Nilan mode selector to Nilan' | |
trigger: | |
- entity_id: input_select.nilan_air_mode | |
platform: state | |
condition: [] | |
action: | |
- data_template: | |
address: 2402 | |
hub: nilan | |
unit: 1 | |
value: '{% if is_state("input_select.nilan_air_mode", "Auto") %} 0 {% elif is_state("input_select.nilan_air_mode", | |
"Cooling") %} 1 {% elif is_state("input_select.nilan_air_mode", "Heating") | |
%} 2 {% endif %}' | |
service: modbus.write_register | |
- id: '1562654969950' | |
alias: 'System: Nilan fan selector to Nilan' | |
trigger: | |
- entity_id: input_select.nilan_fan_speed | |
platform: state | |
condition: [] | |
action: | |
- data_template: | |
address: 4747 | |
hub: nilan | |
unit: 1 | |
value: '{{trigger.to_state.state | int + 100 | round(0) }}' | |
service: modbus.write_register | |
- id: '128' | |
alias: 'System: Nilan fan setpoint to selector' | |
trigger: | |
- entity_id: sensor.nilan_fan_setpoint | |
platform: state | |
condition: [] | |
action: | |
- data_template: | |
entity_id: input_select.nilan_fan_speed | |
option: '{{states.sensor.nilan_fan_setpoint.state}}' | |
service: input_select.select_option |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment