Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved support for SharpAc. #1094

Merged
merged 9 commits into from
May 5, 2020
Merged

Improved support for SharpAc. #1094

merged 9 commits into from
May 5, 2020

Conversation

crankyoldgit
Copy link
Owner

  • Add support for Swing, Ion (Filter), On/Off Timer, Clean, Turbo (JET), & Econo (Power Safe) settings.
  • Completely re-work how "Power" settings are done .. again!
    • Remove set/getPreviousPower() as it's obsolete and things are funkier than expected with power.
  • Fix a potential issue with Auto & Dry mode.
  • Common A/C API (IRac) update to support swing, filter, turbo, & clean.
  • More comments & Unit tests etc.

Everything except "Clean" & "Timer" modes has been confirmed working by @Charon77

Fixes #1091

* Add code and tests for SwingToggle.
* Add partial code for Turbo. Disabled until the conflict with Power 
settings is resolved.

Note: This needs to be confirmed via testing on a real device.

For #1091
* Add `set/getIon()`
* Update unit tests.
* Prep for Turbo eventually working.

Only 60% confident this will work (Ion)

For #1091
* Add econo & turbo
* Rename Button to Special etc.
* Assume anything not "off" is power on.
  - Remove Previous Power.
For #1091
* Adjust Power display as "special" modes are not power on.
* Make sure turbo gets sent after everything else in common A/C. Should allow it to work correctly on the real device.

For #1091
* Add set/getClean
* Unit tests for clean.
* Fix minor problem when changing to Auto/Dry modes.
* Re-organise constants to the byte section they are for.
* Try to force the A/C to be off before entering clean mode in Common A/C api.

Fixes #1091
@crankyoldgit crankyoldgit added enhancement Pending Confirmation Waiting for confirmation from user labels Apr 30, 2020
@crankyoldgit crankyoldgit self-assigned this Apr 30, 2020
* Change how Turbo & Clean settings work based on user/real device feedback.
* Store saved copies of temp, mode, and fan speed when we go into some special modes/settings.
* Enforce that changes to a number of settings clears Turbo.
  - Add comments/notes/warnings to that effect.
* Add unit tests to verify "clean" setting operation does the correct thing now.

Fixes #1091
Copy link
Collaborator

@sillyfrog sillyfrog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me (one minor typo) - well done for figuring this one out!

@crankyoldgit
Copy link
Owner Author

Looks good to me (one minor typo) - well done for figuring this one out!

Thanks for the review (and spotting the typo).
I think it's far from figured out. Well be back here later I think. :-/

@crankyoldgit crankyoldgit merged commit 2ffe1d3 into master May 5, 2020
@crankyoldgit crankyoldgit deleted the Issue1091 branch May 5, 2020 08:53
crankyoldgit added a commit that referenced this pull request May 19, 2020

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
_v2.7.7 (20200519)_

**[BREAKING CHANGES]**
- Fix Symphony protocol. (#1107, #1105)
  * Now 12 bits and bits are inverted. All previous codes will no longer work.
- IRMQTTServer: Better handle power & mode operations for Home Assistant. (#1099, #1092)
  * When `MQTT_CLIMATE_HA_MODE` is enabled (default) this will break previous operation mode resumption when power is changed.

**[Bug Fixes]**
- Set correct return type for `.calibrate()` (#1095, #1093)

**[Features]**
- Add basic support for Carrier 40 & 64 bit protocols. (#1125, @1112, #1127)
- Gree: Enable native support for Fahrenheit (#1124, #1121)
- Gree: Add option to control display temp source. (#1120, #1118)
- Add support for Multibrackets protocol. (#1106, #1103)
- Add RawToPronto.py tool & improve `sendPronto()` precision (#1104, #1103)
- Add support for `Doshisha` LED light protocol (#1115)
- Introduce IRrecvDumpV3 with basic OTA update support (#1111)
- Add detailed support for Delonghi A/C (#1098, #1096)
- Improved support for SharpAc. (#1094, #1091)
- Update auto_analyse to use new decode call structure. (#1102, #1097)
- Added Blynk app example (#1090)
@crankyoldgit crankyoldgit mentioned this pull request May 19, 2020
crankyoldgit added a commit that referenced this pull request May 19, 2020
_v2.7.7 (20200519)_

**[BREAKING CHANGES]**
- Fix Symphony protocol. (#1107, #1105)
  * Now 12 bits and bits are inverted. All previous codes will no longer work.
- IRMQTTServer: Better handle power & mode operations for Home Assistant. (#1099, #1092)
  * When `MQTT_CLIMATE_HA_MODE` is enabled (default) this will break previous operation mode resumption when power is changed.

**[Bug Fixes]**
- Set correct return type for `.calibrate()` (#1095, #1093)

**[Features]**
- Add basic support for Carrier 40 & 64 bit protocols. (#1125, @1112, #1127)
- Gree: Enable native support for Fahrenheit (#1124, #1121)
- Gree: Add option to control display temp source. (#1120, #1118)
- Add support for Multibrackets protocol. (#1106, #1103)
- Add RawToPronto.py tool & improve `sendPronto()` precision (#1104, #1103)
- Add support for `Doshisha` LED light protocol (#1115)
- Introduce IRrecvDumpV3 with basic OTA update support (#1111)
- Add detailed support for Delonghi A/C (#1098, #1096)
- Improved support for SharpAc. (#1094, #1091)
- Update auto_analyse to use new decode call structure. (#1102, #1097)
- Added Blynk app example (#1090)

**[Misc]**
- update auto_analyse script to use new param documentation (#1126)
- Improve `raw_to_pronto_code.py` (#1122, #1103)
- Use pattern rules in Makefiles to reduce specific rule (#1110)
- Update list of supported Daikin models. (#1101)
crankyoldgit added a commit that referenced this pull request May 19, 2020
_v2.7.7 (20200519)_

**[BREAKING CHANGES]**
- Fix Symphony protocol. (#1107, #1105)
  * Now 12 bits and bits are inverted. All previous codes will no longer work.
- IRMQTTServer: Better handle power & mode operations for Home Assistant. (#1099, #1092)
  * When `MQTT_CLIMATE_HA_MODE` is enabled (default) this will break previous operation mode resumption when power is changed.

**[Bug Fixes]**
- Set correct return type for `.calibrate()` (#1095, #1093)

**[Features]**
- Add basic support for Carrier 40 & 64 bit protocols. (#1125, #1112, #1127)
- Gree: Enable native support for Fahrenheit (#1124, #1121)
- Gree: Add option to control display temp source. (#1120, #1118)
- Add support for Multibrackets protocol. (#1106, #1103)
- Add RawToPronto.py tool & improve `sendPronto()` precision (#1104, #1103)
- Add support for `Doshisha` LED light protocol (#1115)
- Introduce IRrecvDumpV3 with basic OTA update support (#1111)
- Add detailed support for Delonghi A/C (#1098, #1096)
- Improved support for SharpAc. (#1094, #1091)
- Update auto_analyse to use new decode call structure. (#1102, #1097)
- Added Blynk app example (#1090)

**[Misc]**
- update auto_analyse script to use new param documentation (#1126)
- Improve `raw_to_pronto_code.py` (#1122, #1103)
- Use pattern rules in Makefiles to reduce specific rule (#1110)
- Update list of supported Daikin models. (#1101)
crankyoldgit added a commit that referenced this pull request May 20, 2020
_v2.7.7 (20200519)_

**[BREAKING CHANGES]**
- Fix Symphony protocol. (#1107, #1105)
  * Now 12 bits and bits are inverted. All previous codes will no longer work.
- IRMQTTServer: Better handle power & mode operations for Home Assistant. (#1099, #1092)
  * When `MQTT_CLIMATE_HA_MODE` is enabled (default) this will break previous operation mode resumption when power is changed.

**[Bug Fixes]**
- Set correct return type for `.calibrate()` (#1095, #1093)

**[Features]**
- Add basic support for Carrier 40 & 64 bit protocols. (#1125, #1112, #1127)
- Gree: Enable native support for Fahrenheit (#1124, #1121)
- Gree: Add option to control display temp source. (#1120, #1118)
- Add support for Multibrackets protocol. (#1106, #1103)
- Add RawToPronto.py tool & improve `sendPronto()` precision (#1104, #1103)
- Add support for `Doshisha` LED light protocol (#1115)
- Introduce IRrecvDumpV3 with basic OTA update support (#1111)
- Add detailed support for Delonghi A/C (#1098, #1096)
- Improved support for SharpAc. (#1094, #1091)
- Update auto_analyse to use new decode call structure. (#1102, #1097)
- Added Blynk app example (#1090)

**[Misc]**
- update auto_analyse script to use new param documentation (#1126)
- Improve `raw_to_pronto_code.py` (#1122, #1103)
- Use pattern rules in Makefiles to reduce specific rule (#1110)
- Update list of supported Daikin models. (#1101)
@truongnguyen-amblique
Copy link

@crankyoldgit
Can you add Fan Only mode? Swing also only has 2 modes!
It's perfect to have them. Thanks

@crankyoldgit
Copy link
Owner Author

@crankyoldgit
Can you add Fan Only mode? Swing also only has 2 modes!
It's perfect to have them. Thanks

@truongnguyen-amblique provide the relevant data and analysis in a new issue please, and then, yes I can add them.

Repository owner locked as resolved and limited conversation to collaborators Aug 16, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement Pending Confirmation Waiting for confirmation from user
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Sharp AC continuation
3 participants