question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Daikin AC control via homekit scene toggles state instead of enforcing it

See original GitHub issue

The problem

Hello,

When I control my daikin AC (homeassistant.components.daikin) via an Homekit scene it toggles the state instead of setting it. How to reproduce:

  • Create an Homekit scene on IOS to set a Daikin AC to off
  • Force the scene to run (with “test this scene” function)
    • if Daikin AC current state if off, the scene toggle it on
    • if Daikin AC current state if on, the scene toggle it off

I would say that the expected behaviour is to always set AC to off whatever current state.

Here some debug logs:

Daikin AC is off --> I force run the homekit scene that switch it off --> the Daikin AC turn on (KO: not the expected behaviour):

2022-06-10 07:19:38 DEBUG (MainThread) [homeassistant.components.homekit.type_thermostats] Thermostat _set_chars: {'TargetTemperature': 28, 'TargetHeatingCoolingState': 0}
2022-06-10 07:19:39 DEBUG (MainThread) [homeassistant.components.homekit.accessories] New_state: <state climate.salon=cool; hvac_modes=[<HVACMode.FAN_ONLY: 'fan_only'>, <HVACMode.DRY: 'dry'>, <HVACMode.COOL: 'cool'>, <HVACMode.HEAT: 'heat'>, <HVACMode.HEAT_COOL: 'heat_cool'>, <HVACMode.OFF: 'off'>], min_temp=7, max_temp=35, target_temp_step=1, fan_modes=['Auto', 'Silence', '1', '2', '3', '4', '5'], preset_modes=['none', 'away', 'eco', 'boost'], swing_modes=['Off', 'Vertical', 'Horizontal', '3D'], current_temperature=26.0, temperature=28.0, fan_mode=Silence, hvac_action=idle, preset_mode=none, swing_mode=Off, friendly_name=Salon, supported_features=57 @ 2022-06-10T09:19:39.172831+02:00>

Daikin AC is on --> I force run homekit the scene that switch it off --> the Daikin AC turn off (OK: expected behaviour):

2022-06-10 07:20:04 DEBUG (MainThread) [homeassistant.components.homekit.type_thermostats] Thermostat _set_chars: {'TargetTemperature': 28, 'TargetHeatingCoolingState': 0}
2022-06-10 07:20:04 DEBUG (MainThread) [homeassistant.components.homekit.accessories] New_state: <state climate.salon=off; hvac_modes=[<HVACMode.FAN_ONLY: 'fan_only'>, <HVACMode.DRY: 'dry'>, <HVACMode.COOL: 'cool'>, <HVACMode.HEAT: 'heat'>, <HVACMode.HEAT_COOL: 'heat_cool'>, <HVACMode.OFF: 'off'>], min_temp=7, max_temp=35, target_temp_step=1, fan_modes=['Auto', 'Silence', '1', '2', '3', '4', '5'], preset_modes=['none', 'away', 'eco', 'boost'], swing_modes=['Off', 'Vertical', 'Horizontal', '3D'], current_temperature=26.0, temperature=28.0, fan_mode=Silence, hvac_action=off, preset_mode=none, swing_mode=Off, friendly_name=Salon, supported_features=57 @ 2022-06-10T09:20:04.546575+02:00>

Daikin AC is off --> I force run a HomeAssistant scene that switch it off --> Nothing happens (OK: expected behaviour):

2022-06-10 07:35:54 DEBUG (MainThread) [homeassistant.components.homekit.accessories] New_state: <state scene.eteins_ac=2022-06-10T07:35:54.577521+00:00; entity_id=['climate.salon'], id=1654426414993, friendly_name=Eteins AC @ 2022-06-10T09:35:54.577659+02:00>
2022-06-10 07:35:54 DEBUG (MainThread) [homeassistant.components.homekit.type_switches] scene.eteins_ac: Ignore state change, entity is activate only

What version of Home Assistant Core has the issue?

2022.5.5

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant Container

Integration causing the issue

Daikin, Homekit

Link to integration documentation on our website

No response

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

Issue Analytics

  • State:open
  • Created a year ago
  • Comments:6

github_iconTop GitHub Comments

1reaction
exzzcommented, Dec 2, 2022

Hello,

This behaviour also happens when I modify the target temperature of a powered off daikin device in HA WebUI. The problem is not related to homekit but to daikin component code (or pydaikin).

@fredrike can you help us on this point ?

0reactions
KieranWynncommented, Nov 23, 2022

I’m also having this issue When the Homekit scene is run (set device to off), the Homekit tries to set the operating mode and temperature of the entity.

  1. If the operating mode doesn’t match (i.e. device is on), then the homekit plugin sends two commands - one to change the operating mode, one to set the temperature setpoint: log:
Homekit: HomeKit  send command set_temperature to TargetHeatingCoolingState to 0, TargetTemperature to 24°C for Living Room
DaikinAC: Living Room  turned off triggered by HomeKit send command set_temperature to TargetHeatingCoolingState to 0, TargetTemperature to 24°C for  Living Room
  1. If the operating mode already matches (i.e. the unit is already off), then the homekit plugin only sets the temp setpoint. log:
Homekit: HomeKit  send command set_temperature to TargetTemperature to 24°C for Living Room
DaikinAC: Living Room  changed to Heat triggered by HomeKit send command set_temperature to TargetTemperature to 24°C for  Living Room

It seems a command to set the temp alone is interpreted as an implicit turn-on command.

I don’t think this should be the case - setting the temp setpoint should do only that, not infer that you also want to turn it on.

Any input @bdraco?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Daikin AC control via homekit scene toggles state instead of ...
The problem. Hello,. When I control my daikin AC (homeassistant.components.daikin) via an Homekit scene it toggles the state instead of setting it.
Read more >
How To Create A Toggle Switch In Apple HomeKit - LinkdHOME
Here's how to use conditions to make a toggle button in HomeKit. ... changes by tying each Home Control instruction to a Scene...
Read more >
2022.2: Let's start streamlining! - Home Assistant Community
To make the state of a scene more valuable, it will now have the last timestamp of when the scene was activated.
Read more >
Create an On/Off Toggle Switch With Home and Shortcuts
Click on the + icon, and select 'scripting', then 'If' (If might be a ready selectable option).
Read more >
Untitled
Blockchain technology via our API is used to ensure the Rest APIs. the service ... control smart devices connected to the Tuya IoT...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found