Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions custom_components/gree/climate.py
Original file line number Diff line number Diff line change
Expand Up @@ -647,12 +647,16 @@ async def SyncState(self, acOptions={}):
# stale gateway read-back on the next poll(s) doesn't
# revert the UI before the change propagates. Merge with
# any still-unconfirmed options from earlier commands.
self._pending_options.update(acOptions)
self._pending_expiry = time.monotonic() + self._pending_ttl
# Schedule a quick follow-up read so the UI confirms the
# change within a couple of seconds instead of waiting
# for the next scan interval (up to 60s).
self._schedule_pending_refresh()
# Only VRF sub-units are held. A standalone unit that
# corrects a value it cannot take (e.g. an unsupported
# swing mode) should show the corrected value at once.
if self._sub_mac_addr != self._mac_addr:
self._pending_options.update(acOptions)
self._pending_expiry = time.monotonic() + self._pending_ttl
# Schedule a quick follow-up read so the UI confirms the
# change within a couple of seconds instead of waiting
# for the next scan interval (up to 60s).
self._schedule_pending_refresh()
else:
# loop used once for Gree Climate initialisation only
self._firstTimeRun = False
Expand Down