Mitsubishi AirCon

Hi Guys,
I have only been using HA for about 2 weeks now, and I love it. Thanks for all of the hard work that has been done so far!

I have ordered some TPLink HT100 units to play with.

I am hoping to use my AirCon split system which is a Mitsubishi, it isn’t listed yet. The system has a iphone/android app which I currently use.


This is Australia/NZ based, but I hope someone in the HA community might be able to help.

It looks like some others have done some of the heavy lifting to reverse engineer the protocol.


Would someone be able to code up a component based on this info?

Using HA 0.60 via Docker (hosted on UnRAID), but also have a RPi3 that I could use to help test.

PS - I have the MAC-558/559

Thanks in advance,
kortina

Vote here to have this feature implemented.

1 Like

Hi,

You can find a first implementation of this feature here :

I will try to push it to the home assistant mainline asap.

1 Like

Those Mitsubishi wifi units are VERY expensive. For a lot less you can make your own.

It is already communicating with MQTT so I think implementation should be possible. (I was going to say easy, but that word should never be used by non programmers).

1 Like

Hi everyone, I have written an implementation targeting the MAC-568IF-E Wi-Fi adaptor.
It does not require connectivity to the MELVIEW or MELCLOUD services, and instead uses the local ECHONET-lite feature available on the module. This module works on Home Assistant v0.96 or later.

Getting Started

Installation - if previously installed versions prior to 3.0.1 (mitsubishi component)

  1. Delete ‘mitsubishi’ from your ‘custom_components’ directory
  2. Remove references to ‘mitsubishi’ from ‘configuration.yaml’

Installation - Home Assistant

  1. Using the tool of choice open the directory (folder) for your HA configuration (where you find configuration.yaml).

  2. If you do not have a custom_components directory (folder) there, you need to create it.

  3. In the custom_components directory (folder) create a new folder called echonetlite.

  4. Download all the files from the custom_components/echonetlite/ directory (folder) in this repository.

  5. Place the files you downloaded in the new directory (folder) you created.

  6. Restart Home Assistant and clear your browser cache

  7. Go to configuration → integrations → ADD INTEGRATION.

  8. Select the echonetlite integration. Enter your IP address in the host field, and give the platform a name.

  9. Platform should automatically configure ‘climate’, and depending on your system will automatically configure ‘sensor’ and ‘select’.

  10. If you have additional HVACs to configure then repeat step 4.

  11. Make sure you enable the ECHONET Lite service in the official Mitsubishi AU/NZ Wifi App.

And Voila!
Mitsubishi

4 Likes

This is great news and good work. Regrettably, I don’t think those of us on the MelCloud Mitsubishi system can make it work. I was using o0Zz component until he apparently gave up on development, and it does not work anymore for me.

I’m not sure those of us in Europe with Ecodans, MrSlims, etc, using Mitsubishi’s WiFi adapter on the Melcloud ecosystem, can even activate Echonet Lite service (truth be told, I don’t even know what Echonet is). Anyway, I tried and failed. Just in case it can be of any help, here’s the error log when I point your platform to one of my A/C Melcloud Wifi systems. Thanks!

Error while setting up platform mitsubishi
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 128, in _async_setup_platform
    SLOW_SETUP_MAX_WAIT, loop=hass.loop)
  File "/usr/local/lib/python3.6/asyncio/tasks.py", line 358, in wait_for
    return fut.result()
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/climate/mitsubishi.py", line 28, in setup_platform
    None, None, None, 'cool', None, None, None, None)
  File "/config/custom_components/climate/mitsubishi.py", line 71, in __init__
    self._target_temperature = data['set_temperature']
KeyError: 'set_temperature'

Do you know what sort of Wifi Adaptor your system has?

In the Mitsubishi application on my phone, I had to explicitly enable the ECHONET lite service. ECHONET is an old-school Japanese control protocol which runs on the LAN. Ill send a screen capture of my app setting I had to enable on ‘Mitsubishi WiFi control’

I think MELCloud must be their current remote service. My adaptor is MAC-568IF-E. Look in the settings under your wifi app and see if you have an options like this:

Also the PyPi library is live now, so you should be able to run ‘pip install mitsubishi-echonet’. Still early days!

The WiFi adaptors I use for MelCloud are model MAC-567IF-E.

I thing the whole system is cloud-based. In fact, when you change any setting, there is a small delay until the unit receives the command. The app makes no mention of Echonet. Any thoughts?

Yeah I did some more digging and it looks like the ECHONET feature is only available on in MAC-568IF-E series. I’ll look into this MELCLOUD thing some more. It sucks they make folk to go to the cloud to control their co-located home HVAC systems, they should give people the option of local control as well. At least if my internet dies I can still control it from my Wifi anywhere in the house… :thinking:

Also, I had a look at the MELCloud service too, my Australian account would not allow me to authenticate so it looks like Mitsubishi uses totally different APIs depending on what region you are in… Crazy!

PM me if you want access to my account so you can take a look.

I’ll clean up the library so it’s a bit more robust, and I’ll let you know if I have the time. It could be that the API has been updated so older python libraries won’t work anymore. MELCLOUD is definitely not available in AU/NZ so I will play around with the existing libraries some more… Hopefully you wont need to share you credentials :smile:

I created a fake account and could definitely log into the API. What is the issue you are having with the current app? You are using the o0Zz library right?

Yes, I was using o0Zz library and it actually worked well for a while, when I had only two a/c units in the house. Then I added three more units and an Ecodan for hot water/radiators, and o0Zz plugin never worked again. The Ecodan is also perfectly managed by Melcloud with the same basic functions: water on, heating on, temp, etc. Here’s the error log I get when I try to run it:

2018-11-28 07:01:39 ERROR (MainThread) [homeassistant.components.climate] Error while setting up platform melcloud
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 128, in _async_setup_platform
    SLOW_SETUP_MAX_WAIT, loop=hass.loop)
  File "/usr/local/lib/python3.6/asyncio/tasks.py", line 358, in wait_for
    return fut.result()
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/climate/melcloud.py", line 574, in setup_platform
    devices = mc.getDevicesList()
  File "/config/custom_components/climate/melcloud.py", line 389, in getDevicesList
    devices.append( MelCloudDevice(device["DeviceID"], device["BuildingID"], device["DeviceName"], self._authentication) )
  File "/config/custom_components/climate/melcloud.py", line 151, in __init__
    self._refresh_device_info()
  File "/config/custom_components/climate/melcloud.py", line 179, in _refresh_device_info
    self._temp_list.append(self._json["RoomTemperature"])
KeyError: 'RoomTemperature'

Thank you for taking a look at this.

Scotty, are you sure about MELVIEW not being available in AU/NZ? I had my aircons installed last week and I use the MELVIEW app. I can’t register a MELCLOUD account (AU/NZ not available when trying to register MELCLOUD) (I’m in NZ)

Yeah I was confusing the two. You are right - MELVIEW is the AU/NZ app, whereas MELCLOUD is the EU based service… I haven’t looked into either of them much because I got the local Echonet-lite service running which means I didn’t need to talk to a cloud-based API. Having said that I am interested in continuing to develop my library - what AC/Wifi Combo do you use?

@scotty as requested:

  • WiFi Modules: MAC-568IF-E
  • AC 1: MSZ-GL50VGD
  • AC 2: MSZ-GL35VGD

If I can help in any way please let me know.

PM sent. I was working on autodiscovery and support for multiple systems - might use your systems as the test bed!

Does that mean you’ll take a look at possible Melcloud/Melview integration?
Thanks!

Cheers for that!
Would you be able to help clarify how to set that up from scratch for hass.io?

I have followed instructions and ended up with
|-config
…|-custom_components/
…|…|- mitsubishi_echonet/
…|…|- climate/
…|…|…|-mitsubishi.py

I hope that’s right?

When restarting, I get the following error:

Anything obvious?

1 Like