dlarrick / pykumo

Python library to interact with Mitsubishi KumoCloud devices via their local API
MIT License
35 stars 12 forks source link

fan_mode = superQuiet #28

Closed zach-rosen closed 1 year ago

zach-rosen commented 2 years ago

Not sure if this is a pykumo bug or Kumo limitation, but I am not able to set my MLZs to the lowest fan setting from pykumo or the Kumo Cloud app… only the IR remote.

pykumo shows the fan modes as [quiet, low, powerful, auto] but the current fan mode is "superQuiet".

If I set the current mode to auto and then try to set it to "superQuiet" via pykumo I get: [pykumo.pykumo] Attempting to set invalid fan speed superQuiet

Any chance this could work if pykumo added "superQuiet" to the possible modes?

dlarrick commented 2 years ago

See https://github.com/dlarrick/pykumo/blob/master/pykumo/py_kumo.py#L152-L173 Your unit is probably reporting a different number of fan speeds than 3 or 5. Does your unit support 'superPowerful'? If not we probably just have to add support for a unit with 4 speeds. You should see that log message printed if this is the case.

If not I think it's possible your unit is, itself, incorrectly reporting that it only supports 3 fan speeds (plus auto). If that's the case maybe we can override this by looking at the model number.

zach-rosen commented 2 years ago

No log message... seems like it's actually just reporting the 3 speeds.

dlarrick commented 2 years ago

I think it's likely this can be made to work. 3 questions and a caveat:

  1. What's your exact model number?
  2. If you go up from 'powerful' with the remote does it report the speed as 'superPowerful' or is "powerful" as high as it will go?
  3. In 'superQuiet' is the fan actually any slower / quieter than in 'quiet'?

The caveat is that I've not has a lot of time to poke at this recently, so if you have any Python skills it might be quicker to give a go at it (or if anyone else who's interested is reading).

zach-rosen commented 2 years ago
  1. MLZ-KP18NA & MLZ-KP09NA
  2. The remotes only cycle from quiet/low/medium/high/auto
  3. Yes (fortunately!)

I should have time next week to give it a try. Thanks!

zach-rosen commented 2 years ago

unit.set_fan_speed("superQuiet") seems to work if I remove the invalid speed check

dlarrick commented 2 years ago

All right, so it seems providing an override could be a good way forward here. Amazingly, at a brief glance I am not seeing the indoor unit's model name reported from the KumoCloud response nor the indoor unit's response. I find it hard to believe it's not there at all, and yet I'm not seeing it.

I guess an alternative could be to provide an override in the settings somehow. Since this isn't a feature I need I'm not all that likely to work on it myself, but maybe someone would pick this up.

dlarrick commented 1 year ago

FYI I am changing the logic to warn, but go ahead and attempt to set a fan speed that's recognized but not reported as supported for this unit. It will still disallow fully unknown fan speeds.