Skip to content

Commit 6dc43a2

Browse files
committed
2 parents 2aeb4ab + 2db7028 commit 6dc43a2

File tree

3 files changed

+31
-18
lines changed

3 files changed

+31
-18
lines changed

custom_components/daikin_residential_altherma/climate.py

+28-15
Original file line numberDiff line numberDiff line change
@@ -477,13 +477,20 @@ def swing_mode(self):
477477
h = horizontal["currentMode"]["value"]
478478
if vertical is not None:
479479
v = vertical["currentMode"]["value"]
480-
if h != "stop":
480+
if h == "swing":
481481
swingMode = SWING_HORIZONTAL
482-
if v != "stop":
483-
if h != "stop":
482+
if v == "swing":
484483
swingMode = SWING_BOTH
485484
else:
486485
swingMode = SWING_VERTICAL
486+
if v == "floorHeatingAirflow":
487+
swingMode = "floorHeatingAirflow"
488+
if v == "windNice":
489+
if h == "swing":
490+
swingMode = "Comfort Airflow and Horizontal"
491+
else:
492+
swingMode = "Comfort Airflow"
493+
487494
return swingMode
488495

489496
@property
@@ -501,12 +508,18 @@ def swing_modes(self):
501508
for mode in horizontal["currentMode"]["values"]:
502509
if mode == "swing":
503510
swingModes.append(SWING_HORIZONTAL)
511+
if mode == "floorHeatingAirflow":
512+
swingModes.append(mode)
504513
if vertical is not None:
505514
for mode in vertical["currentMode"]["values"]:
506515
if mode == "swing":
507516
swingModes.append(SWING_VERTICAL)
508-
if horizontal is not None:
509-
swingModes.append(SWING_BOTH)
517+
if horizontal is not None:
518+
swingModes.append(SWING_BOTH)
519+
if mode == "windNice":
520+
swingModes.append("Comfort Airflow")
521+
if horizontal is not None:
522+
swingModes.append("Comfort Airflow and Horizontal")
510523
_LOGGER.info("Support swing modes %s", swingModes)
511524
return swingModes
512525

@@ -521,22 +534,22 @@ async def async_set_swing_mode(self, swing_mode):
521534
horizontal = fanDirection.get("horizontal")
522535
vertical = fanDirection.get("vertical")
523536
if horizontal is not None:
524-
new_hMode = (
525-
"swing"
526-
if swing_mode in (SWING_HORIZONTAL, SWING_BOTH)
527-
else "stop"
528-
)
537+
new_hMode = "stop"
538+
if swing_mode in (SWING_HORIZONTAL, SWING_BOTH, "Comfort Airflow and Horizontal"):
539+
new_hMode = "swing"
529540
res = await self._device.set_path(self._device.getId(), self.embedded_id, "fanControl", f"/operationModes/{operationmode}/fanDirection/horizontal/currentMode", new_hMode)
530541
if res is False:
531542
_LOGGER.warning("Device '%s' problem setting horizontal swing mode to %s", self._device.name, new_hMode)
532543
else:
533544
fanControl["value"]["operationModes"][operationmode]["fanDirection"]["horizontal"]["currentMode"]["value"] = new_hMode
534545
if vertical is not None:
535-
new_vMode = (
536-
"swing"
537-
if swing_mode in (SWING_VERTICAL, SWING_BOTH)
538-
else "stop"
539-
)
546+
new_vMode = "stop"
547+
if swing_mode in (SWING_VERTICAL, SWING_BOTH):
548+
new_vMode = "swing"
549+
if swing_mode in ("floorHeatingAirflow"):
550+
new_vMode = "floorHeatingAirflow"
551+
if swing_mode in ("Comfort Airflow", "Comfort Airflow and Horizontal"):
552+
new_vMode = "windNice"
540553
res &= await self._device.set_path(self._device.getId(), self.embedded_id, "fanControl", f"/operationModes/{operationmode}/fanDirection/vertical/currentMode", new_vMode)
541554
if res is False:
542555
_LOGGER.warning("Device '%s' problem setting horizontal swing mode to %s", self._device.name, new_vMode)

custom_components/daikin_residential_altherma/manifest.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@
1212
"requirements": [
1313
"oic==1.6.0"
1414
],
15-
"version": "3.0.1"
15+
"version": "3.1.0"
1616
}

readme.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
[![](https://img.shields.io/github/release/jwillemsen/daikin_residential_altherma/all.svg?style=for-the-badge)](https://github.com/jwillemsen/daikin_residential_altherma/releases)
2+
<!---
23
[![hacs_badge](https://img.shields.io/badge/HACS-Default-41BDF5.svg?style=for-the-badge)](https://github.com/hacs/integration)
4+
-->
35
[![](https://img.shields.io/badge/MAINTAINER-%40jwillemsen-green?style=for-the-badge)](https://github.com/jwillemsen)
46

57

68
# Daikin Residential including Altherma 3 Heat Pump
79

810
Home Assistant Integration for Daikin devices including Daikin Altherma 3 Heat Pump.
911

10-
This integration is maintained by [@jwillemsen](https://github.com/jwillemsen).
11-
1212
> [!IMPORTANT]
1313
> Starting with v3.0.0 the internal IDs of all entities have changed, please check your automations and energy dashboard whether you need to update these.
1414

0 commit comments

Comments
 (0)