Could you share your config where I can see how you triggered max air ( changing value) ? Or you just set boost mode?
Cool, so you just connect the main unit to the LAN and you can communicate over modbus protocol, right?
Does it have any sensor, example for cooking so it turns the vent to the maximum? Or you must turn it on manually?
Yes just connect to the lan. Also you could change paramters via phone app.
I also canât understand how to set maximum value for the vent. Maybe someone will help us
Cool. For the max value: canât you use some network sniffer to check how the app communicates with the main unit?
I donât know if it helps, but I requested modbus protocol from Komfovent:
Thats really nice. Could you please share configuration.yaml and Lovelace?
Max air you can trigger by external wired circuit contact.
I use HA. If light ON, then boost for some time recuperation.
Hi, i used narnaliai setup and just edited it a bit.
configuration.yaml
###
modbus:
name: Komfovent
type: tcp
host: 192.168.1.34
port: 502
###
switch:
- platform: modbus
registers:
- name: "Komfovent Auto Mode"
hub: Komfovent
slave: 1
register: 3
command_on: 1
command_off: 0
- platform: modbus
registers:
- name: "Komfovent Power"
hub: Komfovent
slave: 1
register: 0
command_on: 1
command_off: 0
- platform: modbus
registers:
- name: "Komfovent Eco Mode"
hub: Komfovent
slave: 1
register: 2
command_on: 1
command_off: 0
###
sensor:
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Power"
hub: Komfovent
register: 0
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Eco"
hub: Komfovent
register: 2
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Auto"
hub: Komfovent
register: 3
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Mode"
hub: Komfovent
register: 4
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Shedule"
hub: Komfovent
register: 5
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Supply temperature 'C"
hub: Komfovent
register: 901
register_type: holding
unit_of_measurement: °C
scale: 0.1
precision: 1
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Extract temperature 'C"
hub: Komfovent
register: 902
register_type: holding
scale: 0.1
unit_of_measurement: °C
precision: 1
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Supply Flow '%"
hub: Komfovent
register: 905
count: 2
register_type: holding
precision: 1
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Extract Flow '%"
hub: Komfovent
register: 907
count: 2
register_type: holding
precision: 1
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Supply Fan Intensivity '%"
hub: Komfovent
register: 909
register_type: holding
scale: 0.1
precision: 1
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Extract Fan Intensivity '%"
hub: Komfovent
register: 910
register_type: holding
scale: 0.1
precision: 1
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Outdoor temperature 'C"
hub: Komfovent
register: 903
register_type: holding
unit_of_measurement: °C
scale: 0.1
precision: 1
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Filter Dirt, %"
hub: Komfovent
register: 918
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Filter Dirt, %"
hub: Komfovent
register: 917
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Filter Impurity, %"
hub: Komfovent
register: 916
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Heating power, W"
hub: Komfovent
register: 912
register_type: holding
unit_of_measurement: W
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Power consumption, W"
hub: Komfovent
register: 920
register_type: holding
unit_of_measurement: W
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Heating Recovery Day, kWh"
hub: Komfovent
register: 938
register_type: holding
unit_of_measurement: kWh
count: 2
precision: 1
scale: 0.001
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Heating Recovery Month, kWh"
hub: Komfovent
register: 940
register_type: holding
unit_of_measurement: kWh
count: 2
precision: 2
scale: 0.001
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Heating Recovery Total, kWh"
hub: Komfovent
register: 942
count: 2
register_type: holding
unit_of_measurement: kWh
precision: 2
scale: 0.001
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Heat Recovery, W"
hub: Komfovent
register: 922
register_type: holding
unit_of_measurement: W
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Heat exchanger efficiency, %"
hub: Komfovent
register: 923
register_type: holding
scale: 0.1
precision: 2
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Energy saving, %"
hub: Komfovent
register: 924
register_type: holding
- platform: modbus
scan_interval: 10
registers:
- name: "Komfovent Specific power (SPI)"
hub: Komfovent
register: 925
register_type: holding
scale: 0.001
precision: 2
###
Lovelace:
type: vertical-stack
name: Recuperation
cards:
- type: horizontal-stack
title: TööreĆŸiimid
cards:
- type: button
entity: switch.komfovent_auto_mode
name: Auto
icon: 'mdi:home-floor-a'
hold_action: more_info
- type: button
entity: switch.komfovent_eco_mode
name: Eco
icon: 'mdi:alpha-e-box-outline'
hold_action: more-info
- type: button
entity: switch.komfovent_power
name: Sisse/VĂ€lja
icon: 'mdi:power'
hold_action: more-info
- type: horizontal-stack
cards:
- type: button
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 1
hold_action:
action: none
name: Eemal
show_name: true
icon: 'mdi:home-export-outline'
- type: button
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 2
hold_action:
action: none
name: Kodus
show_name: true
icon: 'mdi:home-account'
- type: button
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 3
hold_action:
action: none
name: KĂŒlalised
show_name: true
icon: 'mdi:fan-plus'
- type: button
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 4
hold_action:
action: none
name: Köök
show_name: true
icon: 'mdi:fan'
- type: horizontal-stack
title: Andurid
cards:
- type: sensor
entity: sensor.komfovent_outdoor_temperature_c
name: VÀlisÔhk
icon: 'mdi:thermometer'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_supply_temperature_c
name: Sissepuhe
icon: 'mdi:home-import-outline'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_extract_temperature_c
name: VÀljatÔmme
icon: 'mdi:home-export-outline'
tap_action:
action: none
hold_action: more-info
- type: horizontal-stack
cards:
- type: sensor
entity: sensor.komfovent_supply_flow
name: SP Vent
icon: 'mdi:fan'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_extract_flow
name: VT Vent
icon: 'mdi:fan'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_filter_impurity
name: Filter
icon: 'mdi:air-filter'
tap_action:
action: none
hold_action: more-info
- type: horizontal-stack
cards:
- type: sensor
entity: sensor.komfovent_heating_recovery_day_kwh
name: 1P Tagastus
icon: 'mdi:atom-variant'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_heat_recovery_w
name: Tagastus
icon: 'mdi:atom-variant'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_power_consumption_w
name: Voolutarve
icon: 'mdi:lightning-bolt-outline'
hold_action: more-info
- type: horizontal-stack
title: Kalendergraafik
cards:
- type: button
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 5
hub: Komfovent
unit: 1
value: 0
hold_action:
action: none
name: Pidevalt kodus
show_name: true
icon: 'mdi:home-outline'
- type: button
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 5
hub: Komfovent
unit: 1
value: 1
hold_action:
action: none
name: TöönÀdal
show_name: true
icon: 'mdi:home-city-outline'
Sorry for my estonian translations, you can edit it at lovelace.
Iâm estonian as well, so all good. Thanks
HI,
How you solved problems with state colors? without colors it is not clear which status
You need to install button-card.
type: vertical-stack
name: Recuperation
cards:
- type: horizontal-stack
title: Recuperation
style:
width: 50%
cards:
- type: button
entity: switch.komfovent_auto_mode
name: Auto
icon: 'mdi:atom-variant'
hold_action: more_info
- type: button
entity: switch.komfovent_eco_mode
name: Eco
icon: 'mdi:snowflake-variant'
hold_action: more-info
- type: horizontal-stack
cards:
- type: 'custom:button-card'
entity: sensor.komfovent_mode
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 1
hold_action:
action: none
name: Away
show_name: true
icon: 'mdi:home-export-outline'
state:
- value: '1'
color: '#b58e31'
- type: 'custom:button-card'
entity: sensor.komfovent_mode
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 2
hold_action:
action: none
name: Normal
show_name: true
icon: 'mdi:home-account'
state:
- value: '2'
color: '#b58e31'
- type: 'custom:button-card'
entity: sensor.komfovent_mode
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 3
hold_action:
action: none
name: Intensive
show_name: true
icon: 'mdi:weather-windy'
state:
- value: '3'
color: '#b58e31'
- type: 'custom:button-card'
entity: sensor.komfovent_mode
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 4
hub: Komfovent
unit: 1
value: 4
hold_action:
action: none
name: Boost
show_name: true
icon: 'mdi:fan'
state:
- value: '4'
color: '#b58e31'
- type: horizontal-stack
cards:
- type: sensor
entity: sensor.komfovent_outdoor_temperature_c
name: 'Outside, C'
icon: 'mdi:thermometer'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_supply_temperature_c
name: 'Supply, C'
icon: 'mdi:home-import-outline'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_extract_temperature_c
name: 'Extract, C'
icon: 'mdi:home-export-outline'
tap_action:
action: none
hold_action: more-info
- type: horizontal-stack
title: Maintenance
cards:
- type: sensor
entity: sensor.komfovent_supply_flow
name: 'Fan, %'
icon: 'mdi:fan'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_extract_flow
name: 'Fan, %'
icon: 'mdi:fan'
tap_action:
action: none
hold_action: more-info
- type: sensor
entity: sensor.komfovent_filter_impurity
name: 'Filter, %'
icon: 'mdi:find-replace'
tap_action:
action: none
hold_action: more-info
- type: button
entity: switch.komfovent_power
name: Power
icon: 'mdi:power'
hold_action: more-info
- type: horizontal-stack
title: Power consumption
cards:
- type: sensor
entity: sensor.komfovent_power_consumption_w
name: 'Power, W'
icon: 'mdi:power-plug'
- type: sensor
entity: sensor.komfovent_heating_power_w
name: 'Heating, W'
icon: 'mdi:radiator'
- type: sensor
entity: sensor.komfovent_heat_exchanger_efficiency
name: 'Efficiency, %'
icon: 'mdi:chart-areaspline'
- type: horizontal-stack
title: Schedule
cards:
- type: 'custom:button-card'
entity: sensor.komfovent_shedule
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 5
hub: Komfovent
unit: 1
value: 0
hold_action:
action: none
name: Stay at Home
show_name: true
icon: 'mdi:home-outline'
state:
- value: '0'
color: '#b58e31'
- type: "custom:button-card"
entity: sensor.komfovent_shedule
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 5
hub: Komfovent
unit: 1
value: 1
hold_action:
action: none
name: Work week
show_name: true
icon: 'mdi:home-city-outline'
state:
- value: '1'
color: '#b58e31'
Hello.
Did anyone figure out how to control temperature (Register name - Setpoint)? I am able to change Supply/Extract flow values from HA but not temperature. Maybe it has something to do with Data type being signed short.
Hi!
Updated to newest home assistan and chekced in the logs. There were several modbus warnings (Sensor configuration is deprecated, will be removed in a future release).
Looks like there is a new style of modbus configuration.
You can now use the new style configuration when configuring the modbus integration. The existing configuration style is kept, allowing you to change gradually.
Remark the existing configuration style will be removed in a couple of releases.
Example of an existing configuration:
modbus:
- name: "hub1"
type: tcp
host: IP_ADDRESS
port: 502
sensor:
platform: modbus
registers:
- name: "Sensor1"
hub: "hub1"
unit_of_measurement: "°C"
slave: 1
register: 100
Same configuration in new style:
modbus:
- name: "hub1"
type: tcp
host: IP_ADDRESS
port: 502
sensors:
- name: "Sensor1"
slave: 1
address: 100
modbus docs: Modbus - Home Assistant
Has anybody already converted the configuration code to new style and can share it?
After latest update buttonsfor power ,eco and auto wend to be not availbleâŠ
Is this a case of ânew styleâ modbus configs ? Are somon already have new and can share
Same here.
I did automation to tackle the lack of settings for summertime use of the ventilation. Komfovent is lacking the ability to dynamically change the ventilation taking account of room temperature. So in the daytime, when itâs hot outside and inside, it blows the hot air inside. Mine has a free cooling functionality, but this can be set only to supply temperature. If you set supply temp to 22 degrees, free flow tries to keep it that way and if room temp is 25 degrees and outside temp is 17 degrees, it does not allow cooler air than 22 degrees to supply. So i have set the supply temp to 5 degrees, to ensure getting as low supply air temp as possible.
Now other thing is that i donât want is normal flow when outside is hot and inside is hot and cool the house when outside temp is low and inside is hot. This happens in the evenings and night. So depending on the inside temp I want to to cool either on normal (65/65) flow or intensive (80/80), when itâs really hot (over 35 degrees).
I game up with a automation I would like to share, so maybe somebody else can tackle the same supper hot issue:
alias: Summer Ventilation automation
description: ''
trigger:
- platform: time_pattern
minutes: "/5" #automation runs every 5 minutes
condition: []
action:
- choose:
- conditions:
- condition: numeric_state
entity_id: sensor.magamituba_current_temperature #my bedroom temp sensor
above: '20'
below: '25'
- condition: numeric_state
entity_id: sensor.komfovent_supply_temperature_c
above: '22'
sequence:
- service: modbus.write_register
data:
address: 4
hub: Komfovent
unit: 1
value: 1 #Set to "away", so that it doesn't blow hot air to already hot room
- conditions:
- condition: numeric_state
entity_id: sensor.magamituba_current_temperature
above: '20'
below: '25'
- condition: numeric_state
entity_id: sensor.komfovent_supply_temperature_c
below: '22'
sequence:
- service: modbus.write_register
data:
address: 4
hub: Komfovent
unit: 1
value: 2 #Set to "normal" to use cooler outside air to cool the room
- conditions:
- condition: numeric_state
entity_id: sensor.magamituba_current_temperature
above: '25'
- condition: numeric_state
entity_id: sensor.komfovent_supply_temperature_c
below: '22'
sequence:
- service: modbus.write_register
data:
address: 4
hub: Komfovent
unit: 1
value: 3 #Set to "intensive" to use cooler outside air to cool the room, if it's really hot inside
- conditions:
- condition: numeric_state
entity_id: sensor.magamituba_current_temperature
above: '25'
- condition: numeric_state
entity_id: sensor.komfovent_supply_temperature_c
above: '22'
sequence:
- service: modbus.write_register
data:
address: 4
hub: Komfovent
unit: 1
value: 1 #Set to "away", so that it doesn't blow hot air to already hot room
default: []
mode: single
New style modbus configuration.yaml code:
modbus:
- name: Komfovent
type: tcp
host: 192.168.1.34
port: 502
switches:
- name: "Komfovent Auto Mode"
slave: 1
address: 3
command_on: 1
command_off: 0
- name: "Komfovent Power"
slave: 1
address: 0
command_on: 1
command_off: 0
- name: "Komfovent Eco Mode"
slave: 1
address: 2
command_on: 1
command_off: 0
sensors:
- name: "Komfovent Power"
address: 0
scan_interval: 10
- name: "Komfovent Eco"
address: 2
scan_interval: 10
- name: "Komfovent Mode"
address: 4
scan_interval: 10
- name: "Komfovent Auto"
address: 3
scan_interval: 10
- name: "Komfovent Shedule"
address: 5
scan_interval: 10
- name: "Komfovent Supply temperature 'C"
address: 901
scan_interval: 10
unit_of_measurement: °C
scale: 0.1
precision: 1
- name: "Komfovent Extract temperature 'C"
address: 902
scan_interval: 10
unit_of_measurement: °C
scale: 0.1
precision: 1
- name: "Komfovent Supply Flow '%"
address: 905
scan_interval: 10
count: 2
unit_of_measurement: '%'
precision: 1
- name: "Komfovent Extract Flow '%"
address: 907
scan_interval: 10
count: 2
unit_of_measurement: '%'
precision: 1
- name: "Komfovent Supply Fan Intensivity '%"
address: 909
scan_interval: 10
unit_of_measurement: '%'
scale: 0.1
precision: 1
- name: "Komfovent Extract Fan Intensivity '%"
address: 910
scan_interval: 10
unit_of_measurement: '%'
scale: 0.1
precision: 1
- name: "Komfovent Outdoor temperature 'C"
address: 903
scan_interval: 10
unit_of_measurement: °C
scale: 0.1
precision: 1
- name: "Komfovent Filter Dirt, %"
address: 918
scan_interval: 10
- name: "Komfovent Filter Dirt, %"
address: 917
scan_interval: 10
- name: "Komfovent Filter Impurity, %"
address: 916
scan_interval: 10
unit_of_measurement: '%'
- name: "Komfovent Heating power, W"
address: 912
scan_interval: 10
unit_of_measurement: W
- name: "Komfovent Power consumption, W"
address: 920
scan_interval: 10
unit_of_measurement: W
- name: "Komfovent Power consumption Month, kWh"
address: 928
scan_interval: 10
unit_of_measurement: kWh
count: 2
precision: 0
scale: 0.001
- name: "Komfovent Heating Recovery Month, kWh"
address: 940
scan_interval: 10
unit_of_measurement: kWh
count: 2
precision: 0
scale: 0.001
- name: "Komfovent Heating Recovery Total, kWh"
address: 942
scan_interval: 10
unit_of_measurement: kWh
count: 2
precision: 0
scale: 0.001
- name: "Komfovent Heat Recovery, W"
address: 922
scan_interval: 10
unit_of_measurement: W
- name: "Komfovent Heat exchanger efficiency, %"
address: 923
scan_interval: 10
scale: 1
precision: 0
unit_of_measurement: '%'
- name: "Komfovent Energy saving, %"
address: 924
scan_interval: 10
- name: "Komfovent Specific power (SPI)"
address: 925
scan_interval: 10
scale: 0.001
precision: 2
Ok ,thanks for th new code .
There is on thing with that , it is not changing th state , whn i change it from controller or via web page. ( So when i turn on Auto in HA it will be always on , even when i turn of from controller)⊠Posible to fix it ?
I uptaded all code
modbus:
- name: komfovent
type: tcp
host: 192.168.50.20
port: 502
switches:
- name: "Komfovent Auto Mode"
slave: 254
address: 3
command_on: 1
command_off: 0
- name: "Komfovent Power"
slave: 254
address: 1
command_on: 1
command_off: 0
- name: "Komfovent Eco Mode"
slave: 254
address: 2
command_on: 1
command_off: 0
sensors:
- name: "Komfovent Power"
scan_interval: 60
address: 0
input_type: holding
- name: "Komfovent Eco"
scan_interval: 60
address: 2
input_type: holding
- name: "Komfovent Auto"
scan_interval: 60
address: 3
input_type: holding
- name: "Komfovent Mode"
scan_interval: 60
address: 4
input_type: holding
- name: "Komfovent Shedule"
scan_interval: 60
address: 5
input_type: holding
- name: "Komfovent Supply temperature 'C"
address: 901
input_type: holding
unit_of_measurement: °C
scale: 0.1
precision: 1
- name: "Komfovent Extract temperature 'C"
scan_interval: 60
address: 902
input_type: holding
scale: 0.1
unit_of_measurement: °C
precision: 1
- name: "Komfovent Supply Flow '%"
scan_interval: 60
address: 905
count: 2
input_type: holding
precision: 1
- name: "Komfovent Extract Flow '%"
scan_interval: 60
address: 907
count: 2
input_type: holding
precision: 1
- name: "Komfovent Supply Fan Intensivity '%"
scan_interval: 60
address: 909
input_type: holding
scale: 0.1
precision: 1
- name: "Komfovent Extract Fan Intensivity '%"
scan_interval: 60
address: 910
input_type: holding
scale: 0.1
precision: 1
- name: "Komfovent Outdoor temperature 'C"
scan_interval: 60
address: 903
input_type: holding
unit_of_measurement: °C
scale: 0.1
precision: 1
- name: "Komfovent Filter Dirt, %"
scan_interval: 60
address: 918
input_type: holding
- name: "Komfovent Filter Dirt, %"
scan_interval: 60
address: 917
input_type: holding
- name: "Komfovent Filter Impurity, %"
scan_interval: 60
address: 916
input_type: holding
- name: "Komfovent Heating power, W"
scan_interval: 60
address: 912
input_type: holding
- name: "Komfovent Power consumption, W"
scan_interval: 60
address: 920
input_type: holding
- name: "Komfovent Heating Recovery Day, kWh"
scan_interval: 60
address: 938
input_type: holding
count: 2
precision: 2
scale: 0.001
- name: "Komfovent Heating Recovery Month, kWh"
scan_interval: 60
address: 940
input_type: holding
count: 2
precision: 2
scale: 0.001
- name: "Komfovent Heating Recovery Total, kWh"
scan_interval: 60
address: 942
count: 2
input_type: holding
precision: 2
scale: 0.001
- name: "Komfovent Heat Recovery, W"
scan_interval: 60
address: 922
input_type: holding
- name: "Komfovent Heat exchanger efficiency, %"
scan_interval: 60
address: 923
input_type: holding
scale: 0.1
precision: 2
- name: "Komfovent Energy saving, %"
scan_interval: 60
address: 924
input_type: holding
- name: "Komfovent Specific power (SPI)"
scan_interval: 60
address: 925
input_type: holding
scale: 0.001
precision: 2