Giter Site home page Giter Site logo

tadasdanielius / daikin_altherma Goto Github PK

View Code? Open in Web Editor NEW
70.0 11.0 4.0 285 KB

Daikin Altherma custom component for home assistant

License: MIT License

Python 100.00%
home-assistant home-automation daikin daikin-altherma homeassistant homeassistant-integration homeassistant-custom-component altherma brp069a61 brp069a62

daikin_altherma's People

Contributors

christophcaina avatar robsonke avatar tadasdanielius avatar tadasdanielius1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

daikin_altherma's Issues

ERROR: unable to connect

Hello Im trying to find best integratio for Daikin altherma and integration with HA for automation. I have downloaded your integration, but when Im try to connect by putting IP information is: Unable to connect.

Version of Altherma is: BRP069A78, firmware is 3.2.4 and WiFi module BRP069A78 .

thank you for any suggestions.

Hot Water Tank change Operation

When I change Operation to another variable I get following error

image

image

Also there does not seam to be a way to setup automation to use these Operations or change variables.

Values not refreshing

Hello,
I have a BRP069A62 on a EHBH08DAV6 / ERGA08DAV3 heat pump with an external boiler connected via EKHY3PART.
The values are retrieved only when reloading the integration. Otherwise I get the following error.

Do you know what could cause this?

Logger: homeassistant
Source: custom_components/daikin_altherma/sensor.py:108
Integration: Daikin Altherma HVAC (documentation, issues)
First occurred: April 18, 2023 at 8:24:11 PM (36012 occurrences)
Last logged: 4:40:15 PM

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 193, in _handle_refresh_interval
await self._async_refresh(log_failures=True, scheduled=True)
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 341, in _async_refresh
self.async_update_listeners()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 142, in async_update_listeners
update_callback()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 401, in _handle_coordinator_update
self.async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 568, in async_write_ha_state
self._async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 632, in _async_write_ha_state
state = self._stringify_state(available)
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 574, in _stringify_state
if (state := self.state) is None:
File "/usr/src/homeassistant/homeassistant/components/sensor/init.py", line 470, in state
value = self.native_value
File "/config/custom_components/daikin_altherma/sensor.py", line 108, in native_value
return round(status, 2)
TypeError: type NoneType doesn't define round method

New installation - unit trouble

Hello and first of all thanks for the integration! Great job on that.
Now, here's my question, my unit doesn't have an indoor temperature sensor (afaik), it's a new install. Just got it done today. The installer now left.
Updated the firmware and both the water heater and space heating report unit state - problem. Is that because there's no internal temperature sensor? Or should I be worried?

The Onecta app doesn't report any faults and the indoor unit doesn't either. All the sensors seem to work.

Is that normal behaviour? TIA! <3

Support for gas condensing boiler D2CND with gateway DRGATEWAYAA and room thermostat DOTROOMTHEAA

Hi @tadasdanielius,

Thank you for the awesome job and the effort you put in.

Would you be able to add support for a gas condensing boiler D2CND with gateway DRGATEWAYAA and room thermostat DOTROOMTHEAA?
It is detected in the current state but some entities are unavailable and there are errors in HA thrown every few seconds because LeavingWaterTemperatureCurrent is probably unavailable on my unit.

Based on your troubleshooting recommendations from #28, I've attached the resulting json files zipped.
daikin_altherma_x.zip

image

Log Details (ERROR)
This error originated from a custom integration.
Logger: homeassistant
Source: custom_components/daikin_altherma/sensor.py:81
Integration: Daikin Altherma HVAC (documentation, issues)
First occurred: 11:13:39 (14870 occurrences)
Last logged: 19:29:23

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 151, in _handle_refresh_interval
    await self._async_refresh(log_failures=True, scheduled=True)
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 283, in _async_refresh
    self.async_update_listeners()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 110, in async_update_listeners
    update_callback()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 348, in _handle_coordinator_update
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 532, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 570, in _async_write_ha_state
    state = self._stringify_state(available)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 538, in _stringify_state
    if (state := self.state) is None:
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 388, in state
    value = self.native_value
  File "/config/custom_components/daikin_altherma/sensor.py", line 81, in native_value
    status = sensors[self._sensor]
KeyError: 'LeavingWaterTemperatureCurrent'

Unit detected - Configuration failed - missed Model Number?

Good Morning Tadas

I've a Daikin Lan Controller BRP069A61 (same as BRP069A62 but no Grid) and tried to activate your custom component. It does recognise the unit and invited me to configure it, what i did. Result (Daikin HVAC controller (173300342) - Configuration failed, ):

ScreenShot 2022-02-01 alle 07 05 36

The following is the error registered:
-START-
Dettagli registro (ERRORE)

Questo errore ha avuto origine da un'integrazione personalizzata.
Logger: homeassistant.config_entries
Source: custom_components/daikin_altherma/init.py:210
Integration: Daikin Altherma HVAC (documentation, issues)
First occurred: 06:53:07 (1 occurrences)
Last logged: 06:53:07

Error setting up entry Daikin HVAC controller (173300342) for daikin_altherma
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 313, in async_setup
result = await component.async_setup_entry(hass, self) # type: ignore
File "/config/custom_components/daikin_altherma/init.py", line 53, in async_setup_entry
hass.data[DOMAIN][entry.entry_id] = api = await setup_api_instance(
File "/config/custom_components/daikin_altherma/init.py", line 32, in setup_api_instance
await api.api_init()
File "/config/custom_components/daikin_altherma/init.py", line 134, in api_init
await self.get_HWT_device_info()
File "/config/custom_components/daikin_altherma/init.py", line 210, in get_HWT_device_info
"model": await hwt.model_number,
AttributeError: 'NoneType' object has no attribute 'model_number'
-END-
Is there anything I can do to overcame the mission model number in the unit?

Your integration seems to make exactly what I need (while in other integration wich recognise the unit as BRP069A62 i can not set the target temperature (as I can in the Altherma App on the iPhone).

Thanks for your support and your component.
Louis

Error BadLogger

Lately I'm receiving this error message in the logs: Bad logger message: Failed to update the device status with error Received message 8:1007 is not str ((TypeError('Received message 8:1007 is not str'),))

Running latest package and HA 2023.9.2.

Failed to setup

Hi Tadasdanielius
Great project. Unfortunately, I can't get the integration running.
I did connect my brp069a62 to the Daikin Hybrid Altherma (EHYHBH type) and connected it to my LAN. The device shows up at: http://altherma.local/. It also is discovered by your integration. And after "configure" (ID number) the integration shows failed to setup. The logs show the following:

2022-05-29 15:38:08 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Daikin HVAC controller (194800260) for daikin_altherma
File "/config/custom_components/daikin_altherma/init.py", line 67, in async_setup_entry
File "/config/custom_components/daikin_altherma/init.py", line 46, in setup_api_instance
File "/config/custom_components/daikin_altherma/init.py", line 147, in api_init

Ok. I found out how it works. I had to update the firmware and wait half an our to initialize. Now the integration is added !!

Responsiveness improvements

Currently almost all sensors have separate DataUpdateCoordinator. The goal is to use only one coordinator for all of the entities. This should improve significantly performance.

Can't set DHW-Temp with Altherma 3 Geo (EGSAH06DA9W

Thanks for the great tool! When I try to set target temperature for DHW Tank, nothing happens.. no error at all. Changing the operation state works as intended.

Official ONECTA android app does the job.

Deprecation warning HA 2022.10

I'm getting the following warning, I think it's since the upgrade to 2022.7:

Logger: homeassistant.components.number
Source: components/number/__init__.py:119
Integration: Number ([documentation](https://www.home-assistant.io/integrations/number), [issues](https://github.com/home-assistant/home-assistant/issues?q=is%3Aissue+is%3Aopen+label%3A%22integration%3A+number%22))
First occurred: 5 August 2022 at 15:43:13 (1 occurrences)
Last logged: 5 August 2022 at 15:43:13

custom_components.daikin_altherma.number::AlthermaUnitTemperatureControl is overriding deprecated methods on an instance of NumberEntity, this is not valid and will be unsupported from Home Assistant 2022.10. Please report it to the custom integration author.

I'll try to create a PR but I'm not that experienced in Python.

Error: Concurrent call to receive() is not allowed

I have some automations that often failes due to following same error messages for space heating and hot water tank Integration device.

Homeassistent 2023.2.2

  1. Space Heater
Logger: homeassistant.components.automation.wp_nachtabsenkung_off
Source: custom_components/daikin_altherma/number.py:177
Integration: Automatisierung (documentation, issues)
First occurred: 06:00:00 (2 occurrences)
Last logged: 06:00:00

WP_Nachtabsenkung_OFF: Error executing script. Unexpected error for device at pos 1: Concurrent call to receive() is not allowed
While executing automation automation.wp_nachtabsenkung_off
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 451, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 692, in _async_device_step
    await device_action.async_call_action_from_config(
  File "/usr/src/homeassistant/homeassistant/components/device_automation/action.py", line 71, in async_call_action_from_config
    await platform.async_call_action_from_config(hass, config, variables, context)
  File "/usr/src/homeassistant/homeassistant/components/number/device_action.py", line 62, in async_call_action_from_config
    await hass.services.async_call(
  File "/usr/src/homeassistant/homeassistant/core.py", line 1787, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1824, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
    await service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 680, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 968, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 720, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/number/__init__.py", line 96, in async_set_value
    await entity.async_set_native_value(native_value)
  File "/config/custom_components/daikin_altherma/number.py", line 177, in async_set_native_value
    await self._api.device.climate_control.call_operation(key, float(value))
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 126, in call_operation
    return await self._connection.request(destination, payload=payload)
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/comm.py", line 46, in request
    response_str = await self._client.receive_str(timeout=self._timeout)
  File "/usr/local/lib/python3.10/site-packages/aiohttp/client_ws.py", line 273, in receive_str
    msg = await self.receive(timeout)
  File "/usr/local/lib/python3.10/site-packages/aiohttp/client_ws.py", line 217, in receive
    raise RuntimeError("Concurrent call to receive() is not allowed")
RuntimeError: Concurrent call to receive() is not allowed
Dieser Fehler wurde von einer benutzerdefinierten Integration verursacht

Logger: custom_components.daikin_altherma
Source: custom_components/daikin_altherma/__init__.py:57
Integration: Daikin Altherma HVAC (documentation, issues)
First occurred: 05:30:00 (4 occurrences)
Last logged: 06:23:43

Bad logger message: Failed to update the device status with error Received message 8:1007 is not str ((TypeError('Received message 8:1007 is not str'),))
  1. Hot water tank
Logger: homeassistant.components.automation.wp_dhw_eco
Source: custom_components/daikin_altherma/water_heater.py:62
Integration: Automatisierung (documentation, issues)
First occurred: 05:30:00 (6 occurrences)
Last logged: 06:23:43

WP_DHW_ECO_werktags: Error executing script. Unexpected error for call_service at pos 1: Concurrent call to receive() is not allowed
While executing automation automation.wp_dhw_eco
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 451, in _async_step
    await getattr(self, handler)()
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 684, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1787, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1824, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
    await service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 680, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 968, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 720, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/water_heater/__init__.py", line 370, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/daikin_altherma/water_heater.py", line 62, in async_set_temperature
    await device.set_domestic_hot_water_temperature_heating(target_temperature)
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 231, in set_domestic_hot_water_temperature_heating
    await self.call_operation('DomesticHotWaterTemperatureHeating', value)
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 126, in call_operation
    return await self._connection.request(destination, payload=payload)
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/comm.py", line 46, in request
    response_str = await self._client.receive_str(timeout=self._timeout)
  File "/usr/local/lib/python3.10/site-packages/aiohttp/client_ws.py", line 273, in receive_str
    msg = await self.receive(timeout)
  File "/usr/local/lib/python3.10/site-packages/aiohttp/client_ws.py", line 217, in receive
    raise RuntimeError("Concurrent call to receive() is not allowed")
RuntimeError: Concurrent call to receive() is not allowed

Using the value of input_number as action field?

Suuuper quick question which I am unable to find the answer for it:
I have a input_number variable that contains an integer which is set by another automation (which works). It contains the Temperature required for the leaving water temperature of the heatpump.

I can set this only as an action → device (not service) as such:

          - device_id: 67472ecafa2092a1b9d0ef6f38173dfe
            domain: number
            entity_id: number.temperature_control
            type: set_value
            value: 38

Now this is static for 38. I want the 38 to be whatever input_number.daikin_ufh_lwt is:

          - device_id: 67472ecafa2092a1b9d0ef6f38173dfe
            domain: number
            entity_id: number.temperature_control
            type: set_value
            data_template:
              value: >-
              {{ states("input_number.daikin_ufh_lwt") | float }}

yields Message malformed: extra keys not allowed @ data['data_template'], while doing a

          - device_id: 67472ecafa2092a1b9d0ef6f38173dfe
            domain: number
            entity_id: number.temperature_control
            type: set_value
            value: >
              {{ states("input_number.daikin_ufh_lwt") | float }}

yields a Message malformed: expected float for dictionary value @ data['value']

The heat curve is perfect. I just need to punch that number in… *But How? :slight_smile:

Thermostat problem

We change the Temp in the thermostat but than change only the state van on to off not change the temp how can we that fix?
IMG_0514
IMG_0518

Host required

Hi all,

After navigating to "Configuration" -> "Integrations," click the "+" icon and search for "Daikin Altherma HVAC." Daikin unit is not automatically detected, I encounter the following prompt:

"Set up Daikin Altherma unit integration.
Host required."

I am entering IP address 192.168.XX.XX

I am getting Unable to connect

Can anybody help?

Power consumption

Hi, i have brp069a61 controller. This work fine and i've just integrated in HA.
I can not find power consumption sensor
Schermata 2022-07-04 alle 21 19 59
Can you help me?!

Not working for BRP069A78 (Altherma 3)

Hi,

I tried installing your component but it doesn't seem to be working for the latest Altherma with a built in network gateway (BRP069A78). Any help on where I should start looking to fix this error?

Screenshot 2022-01-23 at 02 05 38

entities not showing up in overview

Hi,

I was able to install this extension via HACS. My Daikin Heat Pump with BRP069A61 gateway was automatically detected and I was able to configure the integration.
However, none of the entities show up in my overview page, although they are all enabled. I can't seem to find out what I'm doing wrong here? Never had this issue with other integrations.

Kind regards,
johan

Hot Water Tank only binary state sensor is created

Unless I'm missing something (for which I apologies in advance) for the "hot water tank" only the binary state sensor is created. Nothing more.

In space heating I do see all the sensors but one is wrong: "Temperature Control" is at -2°C. From what I can remember, that is an offset that was set on the flow circuit (or something like that, not in front of the thermostat at the moment eg first option is room temp, second tank temp, 3rd is this fine tuning option.

Indoor unit is: EHVX08S26CB9W connected to the Daikin Lan Adapter BRP069A61.

Incorrect DHW operation config

When attaching my Altherma with BRP069A62 and a DHW tank to Home Assistant, I'm getting the following error in the logs:

Logger: homeassistant.components.water_heater
Source: custom_components/daikin_altherma/water_heater.py:97
Integration: Water Heater (documentation, issues)
First occurred: 19:53:57 (2 occurrences)
Last logged: 19:53:57

Error adding entities for domain water_heater with platform daikin_altherma
Error while setting up daikin_altherma platform for water_heater
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 382, in async_add_entities
    await asyncio.gather(*tasks)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 513, in _async_add_entity
    capabilities=entity.capability_attributes,
  File "/usr/src/homeassistant/homeassistant/components/water_heater/__init__.py", line 184, in capability_attributes
    self.hass, self.min_temp, self.temperature_unit, self.precision
  File "/config/custom_components/daikin_altherma/water_heater.py", line 97, in min_temp
    return self._api.water_tank_target_temp_config["minValue"]
KeyError: 'minValue'

This is due to the following dictionary referring to a wrong key (at least in my case):

return self.device.hot_water_tank._unit.operation_config["TargetTemperature"][
"heating"
]

Here's a profile message example for my unit that returns the expected values within DomesticHotWaterTemperatureHeating:

{
   "SyncStatus":"reboot",
   "Sensor":[
      "TankTemperature"
   ],
   "UnitStatus":[
      "ErrorState",
      "InstallerState",
      "WeatherDependentState",
      "WarningState",
      "EmergencyState",
      "TargetTemperatureOverruledState"
   ],
   "Operation":{
      "Power":[
         "on",
         "standby"
      ],
      "OperationMode":[
         "heating"
      ],
      "TargetTemperature":{
         "heating":{
            
         }
      },
      "DomesticHotWaterTemperatureHeating":{
         "maxValue":60.0000000000000000,
         "minValue":30.0000000000000000,
         "stepValue":1.0000000000000000,
         "settable":false
      },
      "powerful":[
         "0",
         "1"
      ]
   },
   "Schedule":{
      "Base":"action",
      "defaultScheduleAvailable":"false",
      "NameAdjustable":"false",
      "List":{
         "heating":[
            {
               "StartTime":{
                  "stepValue":10.0000000000000000,
                  "unit":"minute"
               },
               "TargetTemperature":{
                  "heating":{
                     "maxValue":60.0000000000000000,
                     "minValue":30.0000000000000000,
                     "stepValue":1.0000000000000000
                  }
               },
               "Actions":[
                  "StartTime",
                  "TargetTemperature"
               ],
               "maxActionsAllowed":4
            },
            [
               "monday",
               "tuesday",
               "wednesday",
               "thursday",
               "friday",
               "saturday",
               "sunday"
            ],
            [
               "monday",
               "tuesday",
               "wednesday",
               "thursday",
               "friday",
               "saturday",
               "sunday"
            ],
            [
               "monday",
               "tuesday",
               "wednesday",
               "thursday",
               "friday",
               "saturday",
               "sunday"
            ],
            [
               "monday",
               "tuesday",
               "wednesday",
               "thursday",
               "friday",
               "saturday",
               "sunday"
            ],
            [
               
            ]
         ]
      }
   }
}

I was able to overcome this by changing the lookup to:

return self.device.hot_water_tank._unit.operation_config["DomesticHotWaterTemperatureHeating"]

After this change everything works well (the water heater device is available, reports all the right sensors and controls), but I'm not sure if that's just my unit/firmware/operating mode (schedule+reheat) or everyone.

"Add-on config 'startup' with 'before' is deprecated"

Have this message in the HA Supervisor log: (not sure if it belongs to this integration)

22-03-11 06:00:42 WARNING (SyncWorker_5) [supervisor.addons.validate] Add-on config 'startup' with 'before' is deprecated. Please report this to the maintainer of Daikin MQTT connector
22-03-11 06:00:42 WARNING (SyncWorker_3) [supervisor.addons.validate] Add-on config 'startup' with 'before' is deprecated. Please report this to the maintainer of Daikin MQTT connector

Thanks and enjoy the day.
Louis

Integration is using deprecated `DEVICE_CLASS_*` constants

This custom integration uses deprecated DEVICE_CLASS_* constants in its codebase.

The DEVICE_CLASS_* constants have been deprecated and replaced in Home Assistant Core 2021.12 (over a year ago). I would highly suggest updating/migrating this integration to the new enums.

For example, for the device classes supported by the sensor platform, there is now a SensorDeviceClass enum. So if a sensor previously used the DEVICE_CLASS_ENERGY constant, it should now use SensorDeviceClass.ENERGY. Other platforms (like binary_sensor, and number) provide similar enumerations for their supported device classes.

The migration thus only consists of replacing constants with an enumeration member and is, therefore, very low impact and should be fairly straightforward.

If I can help resolve any questions regarding this change or migration, feel free to ask or respond to this issue. I'm happy to help!

Kindest regards,

../Frenck

First look

Great integration! 👍

I just added it and it seems to work very well. However I noticed that the indoor temperature at some times had a lot of decimals ie 17,799998 (or something similar).

It would also be nice if you could add a climate integration so a standard HA thermostat card could be used to set and read the temperature.

Thanks and keep up the good work!

D2CND Gas boiler becomes unavailable after aprox. 2 days

Hi @tadasdanielius,
Whenever I enable this integration my D2CND Gas boiler becomes unavailable after aprox. 2 days.
The DRGATEWAYAA won't reply to pings and I'd have to power cycle the boiler to get it working.
Could this happen because the integration pulls data from the gateway every 5 seconds?
Would it be possible to adjust the polling times for various sensors?
Thanks in advance for your help.
image

Produced energy

On the pump itself you can see how much produced energy and also how much consumption

Is it possible to create sensors for produced energy? That way we could create a sensor showing COP for the last month etc.. would be interesting statistics

How it works...

Hi!

This is not really an issue, but I'm wondering, how is Home Assistant connecting to Altherma 3?
What protocol does it use, what ports and so on?

I'm not using Home Assistant, but I'm trying to connect using my own program in C#.
I didn't find anything regarding local connection using LAN adapter (BRP069A61).
I was thinking it is not even possible to get direct connection.

Thanks for your help!

Config flow using discovery_info['host'] instead of discovery_info.host

Copy from HA log:
Detected integration that accessed discovery_info['host'] instead of discovery_info.host; this will fail in version 2022.6. Please report issue to the custom component author for daikin_altherma using this method at custom_components/daikin_altherma/config_flow.py, line 72: self.host = discovery_info["host"]

Integration

Hello,
After installed the component with HACS, restart my HA, any new integration with the name "Daikin Altherma HVAC" display. How can I add my new AC with this component ? I didn't find this information on the README

Thanks a lot

HA : 2021.12.5
Daikin Altherma HVAC : 1.1.3

Does it work with the wifi gateway BRP069A78 ?

Hello,

Do you know if the API/integration is available with the wireless gateway BRP069A78 ? I put the IP into your wizard but it didnt work, not sure if that means its not available. The wifi gateway suggests in the app that it does the integrations with google and alexa but I'm not sure if the wired LAN adapter is the only way to access it locally?

Set DHW temperature in ha Automation

Hi, i have been attempting to create an automation to set the domestic hot water target temperature. Unfortunately, I cannot manage to set it or even put the value into a separate sensor. I would be more than happy for any and all assistance.

All entities became unavailable

First of all, thanks for this great integration. One of my most useful integrations which I have enjoyed for weeks now.
Suddenly all entitie became unavailable, without any changes to the system. I have tried to reload the integration, and even restored a backup from when I am 100% certain that everything worked. I have checked the ONECTA Daikin app, and there is data available there from the LAN controller.

Logs:
2022-09-29 06:34:44.215 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration daikin_altherma which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2022-09-29 06:35:05.658 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Daikin HVAC controller (173300356) for daikin_altherma File "/config/custom_components/daikin_altherma/__init__.py", line 68, in async_setup_entry File "/config/custom_components/daikin_altherma/__init__.py", line 33, in setup_api_instance 2022-09-29 06:39:55.076 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Daikin HVAC controller (173300356) for daikin_altherma File "/config/custom_components/daikin_altherma/__init__.py", line 68, in async_setup_entry File "/config/custom_components/daikin_altherma/__init__.py", line 33, in setup_api_instance 2022-09-29 07:01:29.218 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Daikin HVAC controller (173300356) for daikin_altherma File "/config/custom_components/daikin_altherma/__init__.py", line 68, in async_setup_entry File "/config/custom_components/daikin_altherma/__init__.py", line 33, in setup_api_instance 2022-09-29 07:42:38.789 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Daikin HVAC controller (173300356) for daikin_altherma File "/config/custom_components/daikin_altherma/__init__.py", line 68, in async_setup_entry File "/config/custom_components/daikin_altherma/__init__.py", line 33, in setup_api_instance

Concurrent call to receive() is not allowed

When I am using in my automation switch.climate_control for switch on/off

action:
  - service: switch.turn_{{ trigger.to_state.state }}
    target:
      entity_id: switch.climate_control

I receve in logs ERROR (MainThread) [custom_components.daikin_altherma] Unexpected error fetching daikin_altherma_coordinator data: Concurrent call to receive() is not allowed

What can it be?

Do not work with SD-WLAN-Card :(

Tried to connect to my Altherma3 which has this WLAN-Gateway installed. I found the IP but the integration will not connect.
Is there a future implementation to add support for the wlan network gateway?

Calculating COP

Hello,
I am using this integration since a few months and I am very happy with it, works absolutely perfect! I love the fact that it's not using the cloud and through all HA updates, the integration still works.
So I would like to ask for an enhancement. As in this github project documented, the COP can be calculated:

https://github.com/raomin/ESPAltherma

The calculation is already documented, what you need is some additional values from the heat pump. As it seems, the values are exported on the github project with an ESP. I don't know, if the Daikin LAN adapter also exports this information. But if yes, it would be great to see the additional sensor values and a calculated COP.

As I am not a programmer, I am not capable of doing it myself, but would be glad to see this enhancement - if possible.

Regards,
Harald

Missing temperature sensor for water tank

They is no sensor for water tank current temperature and set temperature. Unable to create a graph for it. But it is for indoor and outdoor temperature.
image

And there is some wierd $NULL inside ID.
image

No device shows up

Hi,

After installing it, nothing shows up, I found this in the registry:

_Logger: homeassistant.config_entries
Source: config_entries.py:537
First occurred: 14:28:16 (1 occurrences)
Last logged: 14:28:16

Error occurred loading configuration flow for integration daikin_altherma: cannot import name 'DeviceInfo' from 'homeassistant.helpers.entity' (/usr/src/homeassistant/homeassistant/helpers/entity.py)_

Any help is appreciated,

Iñaki

If connection lost to LAN adapter, history values keep looping old-unknown

Hey!
I noticed that due to network reconf I managed to turn off connection to my Daikin LAN box (no route to host whatsoever).
BUT - the issue is that in HA, the old value before disconnecting keeps looping back and forth with unknown value in history and cards. I would expect unknown value all the time for that period. It's 40sec old value, 20 sec unknown value and looping.
Eg:
image
.. and the same like this for all the values provided by daikin_altherma. In reality there was no connection possible.

Add state sensor

Space Heating and Domestic Hot Water Heater has state parameter which indicates the status of the unit. The goal is to add this to component.

D2CND Gas boiler - EcoMode not switching

Hi @tadasdanielius,

I've noticed that the EcoMode switch of a D2CND Gas boiler is malfunctioning.
You can trigger it but it reverts to its initial state after a couple of seconds.

The only error I could find is the below, but it only appeared once this evening. I've noticed the issue since a few days ago.
I'm currently on v1.3.7 and didn't see the issue in v1.3.4 when you first implemented the EcoMode switch.

Thanks in advance for your help.

This error originated from a custom integration.

Logger: custom_components.daikin_altherma
Source: custom_components/daikin_altherma/__init__.py:190
Integration: Daikin Altherma HVAC (documentation, issues)
First occurred: 20:15:56 (1 occurrences)
Last logged: 20:15:56

Something went wrong while updating data from the device
Traceback (most recent call last):
  File "/config/custom_components/daikin_altherma/__init__.py", line 190, in async_update
    self._status = await self.device.get_current_state()
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 398, in get_current_state
    unit_status = await unit.get_current_state()
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 131, in get_current_state
    states = await self.read_states()
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 79, in read_states
    results[state] = await self.read_state(state)
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 73, in read_state
    resp = await self.read(query_type='UnitStatus', prop=status)
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/controllers.py", line 49, in read
    result = await self._connection.request(destination)
  File "/usr/local/lib/python3.10/site-packages/pyaltherma/comm.py", line 46, in request
    response_str = await self._client.receive_str(timeout=self._timeout)
  File "/usr/local/lib/python3.10/site-packages/aiohttp/client_ws.py", line 273, in receive_str
    msg = await self.receive(timeout)
  File "/usr/local/lib/python3.10/site-packages/aiohttp/client_ws.py", line 217, in receive
    raise RuntimeError("Concurrent call to receive() is not allowed")
RuntimeError: Concurrent call to receive() is not allowed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.