Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 4e5dcd7

Browse files
committed
Add "Sommer Winter Umschaltung"
1 parent 4f3579e commit 4e5dcd7

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

custom_components/weishaupt_modbus/number.py

+44
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ async def async_setup_entry(
4242
HK_Raum_Soll_Normal(host, port),
4343
HK_Raum_Soll_Absenk(host, port),
4444
HK_Heizkennlinie(host, port),
45+
HK_SommerWinterUmschaltung(host, port),
4546
],
4647
update_before_add=True,
4748
)
@@ -398,3 +399,46 @@ def device_info(self) -> DeviceInfo:
398399
return {
399400
"identifiers": {(DOMAIN, "Heizkreis")},
400401
}
402+
403+
404+
class HK_SommerWinterUmschaltung(NumberEntity):
405+
"""Representation of a WEM Portal number."""
406+
407+
_attr_name = "HK Sommer Winter Umschaltung"
408+
_attr_unique_id = DOMAIN + _attr_name
409+
_attr_native_value = 0
410+
_attr_should_poll = True
411+
_attr_native_min_value = 3
412+
_attr_native_max_value = 30
413+
_attr_native_step = 0.5
414+
_attr_native_unit_of_measurement = UnitOfTemperature.CELSIUS
415+
416+
def __init__(self, host, port) -> None:
417+
"""Init."""
418+
self._host = host
419+
self._port = port
420+
# whp = wp.heat_pump(host, port)
421+
# whp.connect()
422+
# self._attr_native_value = whp.WW_Absenk
423+
# self.async_write_ha_state()
424+
425+
async def async_set_native_value(self, value: float) -> None:
426+
"""Update the current value."""
427+
whp = wp.heat_pump(self._host, self._port)
428+
whp.connect()
429+
whp.HK_SommerWinterUmschaltung = value
430+
self._attr_native_value = whp.HK_SommerWinterUmschaltung
431+
self.async_write_ha_state()
432+
433+
async def async_update(self) -> None:
434+
"""Update Entity Only used by the generic entity update service."""
435+
whp = wp.heat_pump(self._host, self._port)
436+
whp.connect()
437+
self._attr_native_value = whp.HK_SommerWinterUmschaltung
438+
439+
@property
440+
def device_info(self) -> DeviceInfo:
441+
"""Information about this entity/device."""
442+
return {
443+
"identifiers": {(DOMAIN, "Heizkreis")},
444+
}

custom_components/weishaupt_modbus/wp.py

+9
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,15 @@ def HK_Heizkennlinie(self):
363363
def HK_Heizkennlinie(self, value):
364364
self.WWP.write_register(41108, int(value * 100), slave=1)
365365

366+
@property
367+
def HK_SommerWinterUmschaltung(self):
368+
"""Test."""
369+
return self.WWP.read_holding_registers(41109, slave=1).registers[0] / 10
370+
371+
@HK_SommerWinterUmschaltung.setter
372+
def HK_SommerWinterUmschaltung(self, value):
373+
self.WWP.write_register(41109, int(value * 10), slave=1)
374+
366375
#####################
367376
# Warm Water #
368377
#####################

0 commit comments

Comments
 (0)