Add silent command support via Buzzer_ON_OFF - #15
Closed
rasmusbe wants to merge 6 commits into
Closed
Conversation
Some units reply to discovery with a V1-style envelope but only accept bind over AES-GCM. Match greeclimate by aligning wire-format details and falling back from V1 to V2 bind on the same UDP session.
Retry encrypted requests on the alternate protocol version when the stored version times out or fails to decrypt, then write the working version back to the config entry so existing setups upgrade without re-adding the device.
Expose sleep, turbo, quiet, X-fan, health, display light, energy save, and fresh air as switches when the device reports the param in status. Extend probe.py with status/set subcommands for hardware testing.
Add status/set subcommands with auto protocol-version fallback, and test that unsupported switch params are omitted from mock status replies.
Home Assistant can suppress the unit beep per config entry (options, default on). probe set gains --silent for manual testing.
Some Gree units return opt/p on res packets instead of opt/val, which caused set_state to fail after a successful command.
Author
|
Closing: Buzzer_ON_OFF silent mode did not work on tested hardware. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Buzzer_ON_OFF=1to eachcmdpacket when silent mode is enabled so the unit applies changes without beeping.tools/probe.py setwith--silent(opt-in; default keeps the confirmation beep for manual testing).Blocked by
Do not merge until #13 and #14 are merged. This branch is stacked on the hybrid-firmware fix and switch entities. After those land, I will rebase so the diff shows the silent-command commit only.
Design notes
silent_commands)Buzzer_ON_OFFin samecmdas otheropt/p1= silentprobe.py set … --silentBuzzer_ON_OFFentirely when silent mode is off (do not send=0on every command).set_state()returns only keys the caller passed; transport param is not surfaced to entities.Test plan
pytest tests/— 52 passedpython3 tools/probe.py set <ip> --key … --mac … Quiet=1— beeps (default)python3 tools/probe.py set <ip> --key … --mac … --silent Quiet=1— no beep