Mitsubishi Wifi Module WF-RAC (Smart M-Air)

Hey,

No problem, it’s always nice to expand the features of Home Assistant.

You are right. At the moment I’m busy to implement the Climate (thermostat) component in the integration.

2 Likes

@jeatheak The (android) app also has an offline-mode. Do you know that operator-id that uses? Maybe there is a default one?

On the side: could you also add the energy-sensor?

@ErikWie Yea I know that was the reason to look into the operator ID.

Because if the app is set on offline modus the operator id cannot be fetched from the remote list.
Therefore I implemented the same way the Android app uses.

They generate a uuid operator id and send that to the airco. When the airco is deleted in the app it also deletes this operator ID. This is that same as I’m doing at moment (its solution 2)

Than I’ll use that method :slight_smile:

Hi ! and thank you for doing this, going to install and use HA Core on synology because of your work!.
if i can test anything please let me know, ill be following this thread closely !

i seem to be unable to locate Home-Assistant\custom_components on my synology nas (HA Core) in any of the systemfolders. any idea ?

Hi,

Nice to hear that you are going to install Hass Core

I think the custom_component folder is not present at default. You need to create it.
Example: homeassistant\custom_components

Hope that helps.

Hera are some links that may help:
Reddit link
Hass Community link

The climate works great! Also in HomeKit! Thanks!

Hi guys,

I did add the climate control to the integration :smiley:

It should be possible to update the existing integration but the sensors unique Id will change.
The best way (I think) is to delete the existing integration(s) then update the integration then restart and then let it discover the airco(s). If it can’t discover them add them manually through the integration menu.

At the moment it will create a operations Id if the first Airco is added and add it also to the remote list. Therefore it will be possible to see in the future which Id is used.

3 Likes

Hi,

Just tested this, and it works GREAT! Thank you so much for this!
Is there any way we can support you for your time you put into this?

Hi,

Nice to hear it is working for you.
I did put a “Buy me a coffee” link on the GitHub Readme page.

2 Likes

Hi @jeatheak in my case (HA Docker Core v2022.4.4 running on a QNAP NAS) I’m unable to start the integration due to these errors:

Logger: homeassistant.config_entries
Source: config_entries.py:745
First occurred: 12:04:41 (1 occurrences)
Last logged: 12:04:41

Error occurred loading configuration flow for integration mitsubishi-wf-rac: cannot import name 'ClimateEntityFeature' from 'homeassistant.components.climate.const' (/usr/src/homeassistant/homeassistant/components/climate/const.py)

and:

Logger: homeassistant
Source: config_entries.py:750
First occurred: 12:04:41 (1 occurrences)
Last logged: 12:04:41

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 743, in async_create_flow
    integration.get_platform("config_flow")
  File "/usr/src/homeassistant/homeassistant/loader.py", line 603, in get_platform
    cache[full_name] = self._import_platform(platform_name)
  File "/usr/src/homeassistant/homeassistant/loader.py", line 620, in _import_platform
    return importlib.import_module(f"{self.pkg_path}.{platform_name}")
  File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/config/custom_components/mitsubishi-wf-rac/__init__.py", line 18, in <module>
    from .const import CONF_AIRCO_ID, DOMAIN, CONF_OPERATOR_ID
  File "/config/custom_components/mitsubishi-wf-rac/const.py", line 4, in <module>
    from homeassistant.components.climate.const import (
ImportError: cannot import name 'ClimateEntityFeature' from 'homeassistant.components.climate.const' (/usr/src/homeassistant/homeassistant/components/climate/const.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/discovery_flow.py", line 74, in _async_process_pending_flows
    await gather_with_concurrency(
  File "/usr/src/homeassistant/homeassistant/util/async_.py", line 192, in gather_with_concurrency
    return await gather(
  File "/usr/src/homeassistant/homeassistant/util/async_.py", line 190, in sem_task
    return await task
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 205, in async_init
    flow, result = await task
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 223, in _async_init
    flow = await self.async_create_flow(handler, context=context, data=data)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 750, in async_create_flow
    raise data_entry_flow.UnknownHandler
homeassistant.data_entry_flow.UnknownHandler

The previous version that had the two temperatures only worked well.

Hi,

As far as I can see you need to have at least version 2022.5.
Because from version 2022.5 the old way has been deprecated.

See change (PR):
Hassio Pull request

image

Thanks, updating to 2022.8 in fact solved the issue and now it’s working properly (updating a Docker image is always a nuisance, but Portainer helped in this case!).

1 Like

@jeatheak Could you also integrate the Energy-sensor?

1 Like

Very interesting to see so much development around the WF-RAC module. I’ve been using the Airco’s without WiFi module by utilizing a Wemos D1 Mini with some small PCB, as described at this github: https://github.com/absalom-muc/MHI-AC-Ctrl

One thing the new WF-RAC module has shown is that more commands seem to be allowed to send via SPI interface. To extend the functionality of the MHI-AC-CTRL project, it would be very helpful if someone with a WF-RAC module can ‘sniff’ signals using the SPI-Logger (Also see https://github.com/absalom-muc/MHI-AC-Ctrl/issues/77)

Any one of you dare to help out? I think a lot of HomeAssistant users with MHI airco would be pleased :slight_smile:

Hey,

Yea thats a good one.
I did have some problems parsing the data but it is definitely on my todo list.

1 Like

Ok I did not know that.

Mayby if I have some time on hand I will try to sniff the spi interface.

I have never done that but I thinks it should be possible with a esp8266 or esp32?

Yeah definitely. There seem to be quite clear instructions plus Absalom-muc is quick in support and response to help out, in my experience.

good job! wow.
can you tell me where can to change max/min temp? aircondition is about 18-30 oC. In integrations is 7-35 (too much). but…really woooow

Thx,

Ow I did not know that. I will try to look into that.

1 Like