-
Notifications
You must be signed in to change notification settings - Fork 0
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
Kumo Emulation Mode #30
Conversation
8431a04
to
a171a6f
Compare
I think this is the case, but just want to clarify: the goal with this PR is to convince the MHK2 that it's connected to a Kumo (and thereby squeeze some extra functionality out of it) not emulate the upstream behavior of a Kumo, right? I.e. this should only be changing how we communicate with thermostats, rather than changing behavior of the ESP itself. |
Broadly speaking, yes. There are certain things that I'm running into that will require behavioral changes to the library to some degree, but I'm still trying to evaluate what they are and how they work (with priority being given to "make everything work from the user perspective as it did before"). For example, there's some oddity with setpoints now where the MHK and Home Assistant will seemingly disagree, since the setpoint fields in packets 0xA8 and 0xA9 seem to have additional meaning and we need to track what's being sent to the MHK. This is especially obvious when using auto mode, since the MHK still attempts to claim control unexpectedly, leading it to somehow desynchronize with itself. At present, this entire branch should be treated as proof-of-concept and more of an experimental reverse engineering project than it is a proper proposal. |
- Rename extended connect to Identify
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor naming things mostly.
esphome/components/mitsubishi_itp/mitsubishi_uart-packetprocessing.cpp
Outdated
Show resolved
Hide resolved
esphome/components/mitsubishi_itp/mitsubishi_uart-climatecall.cpp
Outdated
Show resolved
Hide resolved
esphome/components/mitsubishi_itp/mitsubishi_uart-packetprocessing.cpp
Outdated
Show resolved
Hide resolved
esphome/components/mitsubishi_itp/mitsubishi_uart-packetprocessing.cpp
Outdated
Show resolved
Hide resolved
- Remove Kumo references almost everywhere - Route packet normally when enhanced protocol mode is disabled - Fix logic error in schema validation for time source - Rename a few things - More gracefully handle NaN values
Other than that one change, looks great. Going to flash it on one of my controllers now. Could you also please run the ESPHome linting/formatting scripts so this doesn't immediately break the CI tests over on the PR? (I don't fully understand how the tests are meant to be run, unfortunately. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Needs time
added to AUTO_LOAD
, but also with a new understanding of what DEPENDCIES
are, probably:
AUTO_LOAD = [
"climate",
"select",
"sensor",
"binary_sensor",
"button",
"text_sensor",
"time",
]
DEPENDENCIES = [
"uart",
"climate",
]
Testing CI |
Caution
This code is not production ready. Certain values are hardcoded to observed states with no knowledge on what those hardcoded values actually mean or do.
This code has only been tested with two specific units (
MSZ-FS06NA
andSVZ-KP30NA
) on MHK2 firmware version 01.00.01.As such, I have included a disabled-by-default flag to the config to explicitly enable this mode for interested users.
This pull request aims to add Kumo emulation support to the mUART stack, and expose some Kumo specific information.
A?
packets sent by an MHK. Slot in known data when we have it.This PR still needs:
If desired, we can strip out all the sensors/set functionality and stub everything out for just protocol level support. This would make MHK mode effectively transparent, though I suspect we'd still need to report some parameters.