home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
73.68k stars 30.8k forks source link

Turning off a specific Rachio Zone turns off any currently running zones #123325

Closed mattmelgard closed 3 months ago

mattmelgard commented 3 months ago

The problem

Attempting to stop the watering for a specific named zone in Rachio results in any currently running schedule or quick run, even if the zone being turned off wasn't part of the quick run or schedule that is currently running

For example, if I manually start my grass watering schedule by triggering the backyard_grass zone via quick run, and then call the switch service to turn off the watering for my vegetable_garden zone soon afterward (see example below), the quick run for the backyard_grass is canceled despite not being the zone I was intending to target with the command

service: switch.turn_off
data: {}
target:
  entity_id:
    - switch.vegetable_garden

What version of Home Assistant Core has the issue?

core-2024.7.3

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Rachio

Link to integration documentation on our website

https://www.home-assistant.io/integrations/rachio/

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

home-assistant[bot] commented 3 months ago

Hey there @bdraco, @rfverbruggen, mind taking a look at this issue as it has been labeled with an integration (rachio) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `rachio` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign rachio` Removes the current integration label and assignees on the issue, add the integration domain after the command. - `@home-assistant add-label needs-more-information` Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue. - `@home-assistant remove-label needs-more-information` Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


rachio documentation rachio source (message by IssueLinks)

brg468 commented 3 months ago

I’m confused. You have 2 zones running at the same time on the same controller?

edit: never mind, I see now what you’re doing is just to prove the point.

brg468 commented 3 months ago

That is a limitation of the Rachio API. There is no way to turn off just one zone, the only option is to stop all watering on a controller. So every zone/schedule switch’s turn_off method calls stop_watering on the controller. I don’t think there’s any other way it can be done unless Rachio changes their API.

mattmelgard commented 3 months ago

Ah okay, that's unfortunate then, well, if it's a limitation of the API then I guess there's not much that can be done on this side.

Basically my use case here is that I have misters that run on my chicken coop and I'd like to be able to stop them at certain times of the day or based on temperature without interrupting any schedules happening elsewhere, and so I was running into this limitation due to that. I have a workaround though. Thanks for the assistance 👋.