Mitsubishi AC with Wemos D1 Mini Pro

As for these three extra features, they were working for me from the remote ir control, but if I remember correctly, not from MELCloud, so I don’t think they can be added via ESPHome.
I wanted to investigate these points, but unfortunately, I didn’t have time. Maybe I will in the future, but I’m not sure.

The “Air Purifier” mode should correspond to the “Plasma Quad Plus Filter.”

Regarding the modes, I had only set:
mode: ["COOL", "HEAT", "FAN_ONLY"],
but they should actually be:
mode: ["COOL", "HEAT", "FAN_ONLY", "DRY", "HEAT_COOL"].
“HEAT_COOL” should correspond to the “AUTOMATIC” mode.

As for the fan speeds, the names are a bit misleading, but they should be:
Auto, 1, 2, 3, 4, 5
["AUTO", "DIFFUSE", "LOW", "MEDIUM", "MIDDLE", "HIGH"]
in that order.

For the temperature sensor, I managed to connect a remote sensor provided by Home Assistant.

I’m attaching my ESPHome configuration file. Unfortunately, I can’t help you with integrating a remote MQTT sensor.

I still hope this has been helpful to you.

esphome:
  name: air-conditioner-camerina
  platformio_options:
    build_unflags:
      - "-std=gnu++11"
    build_flags:
      - "-std=gnu++17"
  on_boot:
    priority: -100
    then:
      - delay: 5s

esp8266:
  board: esp01_1m

logger:
  baud_rate: 0
  logs:
    component: ERROR

api:
  password: ""

ota:
  platform: esphome
  password: ""

wifi:
  ssid: "***"
  password: "***"
  use_address: 192.168.0.249

web_server:
  port: 80

switch:
  - platform: restart
    name: "AIR-CONDITIONER-CAMERINA-REBOOT"

external_components:
  - source: github://geoffdavis/esphome-mitsubishiheatpump

climate:
  - platform: mitsubishi_heatpump
    id: air_conditioner_camerina
    name: "AIR-CONDITIONER-CAMERINA"
    update_interval: 1000ms
    supports:
      mode: ["COOL", "HEAT", "FAN_ONLY"]
      fan_mode: ["AUTO", "DIFFUSE", "LOW", "MEDIUM", "MIDDLE", "HIGH"]
      swing_mode: ["OFF"]
    horizontal_vane_select:
      name: Horizontal Vane
    vertical_vane_select:
      name: Vertical Vane
    visual:
      min_temperature: 19
      max_temperature: 31
      temperature_step:
        target_temperature: 0.5
        current_temperature: 0.5
    remote_temperature_operating_timeout_minutes: 120
    remote_temperature_idle_timeout_minutes: 240
    remote_temperature_ping_timeout_minutes: 30

sensor:
  - platform: homeassistant
    name: "HASS-TEMP-CAMERINA"
    entity_id: sensor.shelly_blu_h_t_camerina_temperature_with_offset
    on_value:
      then:
        - lambda: 'id(air_conditioner_camerina).set_remote_temperature(x+0.0);'
    filters:
      - heartbeat: 60s
1 Like

My unit is probally oversized but i’m seeing 20 degrees from the remote temperature sensor and my setpoint is 19 however it is still blowing hot air.
Is there a way the submode/stage can go to idle when the temperature has been reached?

EDIT:
Seems the unit is going to Idle when the temperature reached 20.5

I tried to tackle this last year, ordered the ESP Boards and the Cables but then never got anywhere. The plug just didn’t fit on my MSZ-AP25VGK Unit and I didn’t want to risk damaging the AC by plugging something incorrectly.

Now, a year later I am checking back in to see if there is some kind of more “Plug and Play” solution to this. Unfortunately it appears the answer is “mostly no” if I read correctly…:man_shrugging:

Do you have any photos of the board where the cable wouldn’t plug in?
The website mentions “built-in Wi-Fi Energy Monitoring”… often the Mitsubishi wifi controllers will be plugged into the same port we use for the ESP.

I tried to use the port the WiFi Dongle was plugged into. It has the right shape, but not the “indentations” the aliexpress plugs have.
I will have to check if I took any photos of the board last year.


There is a plug-and-play solution with many more features(native wireless sensor support), working with Home Assistant:

This version just plugs into the port of the MSZ-AP25. It also allows you to plugin the original mitsubishi wifi adapter so you can keep using melcloud if you want.

2 Likes

Interesting. Does the linked Device act as a room temperature sensor for the AC then? That’s the most important thing for me, since the internal Sensor tends to be… unhelpful…

Edit: Sorry…I found the information in the text for the AC Control Thingy now. It looks really interesting and I will order it, if they ship to Germany.

Edit2: They do. I ordered and look forward to testing it?

2 Likes

Yeah, it takes over the internal sensor and measures temperature wirelessly. Should solve all the uncomfortable short-cycling issues.

Let us know when you get it! :slight_smile:

1 Like

It’s on the way. Should be here Friday if I’m lucky. We have a public holiday here on Thursday.

does it works?

It arrived today and I managed to install it without too many issues. Getting the WiFi configure was a bit tricky since I was doing from my phone, but it works now.

I haven’t managed to get it working in Home Assistant yet though. MQTT discovery works, but then all the entities immediately go Offline. I will have to figure out why later today. I don’t fiddle with mqtt often, so this will be a little trial and error.

So…I left the system alone for a bit and the MQTT Connection appears to have settled down now.
I configured the Climate entity in Home Assistant and everything appears to be working perfectly with very little hassle.

Since we currently have a cold spell here in Germany I won’t actually be using it for a bit (I only use it for cooling usually) but from I can tell it suits the purpose perfectly.
The external temp sensor is tiny and I will easily find a spot to put it.

Can’t say much beyond that yet, but so far I am very happy.
Still have to figure out the Swing Modes, but that was always a bit problematic on my Mitsubishi model. It has horizontal and vertical swing, but Home Assistant usually only shows one of the options.

Update: and there goes MQTT again. It seems the mqtt connection is a bit flaky. All my other mqtt stuff keeps working though, so it must the the Protoart adapter…the WiFi remains connected and stable, but the mqtt keeps dropping randomly.

What are you looking at to determine it is flaky?
They only send an update when there are changes or after several minutes of no changes.

The entities in Home Assistant (MQTT) just go to “unavailable” and then stay that way. Nothing in the logs, no disconnect or anything. Getting it to connect again is a bit like rolling dice.

When you use mqtt explorer, do you keep seeing the data coming in? Perhaps there is a small incompatibility or a conflict with your setup that needs to be fixed.

I have never used mqtt explorer, but will look into it. I will have to figure out where to install it and how to use it and then go from there.

I just saw that a lot of other mqtt Devices froze 5 hours ago, pretty much exactly at the time when I first tried to get the Proto Art adapter integrated into Home Assistant. All ny Zigbee2mqtt stuff sill worked fine, but others were stuck on the last state they had at that point. They didn’t go unavailable but simply froze. So it appears that adding the Protoart adapter did something… or it was coincidence, but my Mosquitto Addon in Home Assistant has been running flawlessly for months.

Edit:
This is quite interesting. All my entities apparently kept sending data, it’s all there after restarting the Addon. So only the view was frozen for 5 hours? Weird, but…OK?

Edit2: I installed mqtt Explorer now and will see how things go. Right now the Hvac adapter is working again and I will have to wait until it fails again (if it does fail again).

Everything has been running perfectly now since last night. So…it appears it was some kind of one-off fluke.

1 Like

Got mine today!!! WORKS Like a Charme !

Thx for sharing this Device :pray::pray::pray:

3 Likes

Yes, it’s reall a great find. Now I am ready for summer to arrive…:sunglasses:

After the 2025.5.1 ESPHome update my Mini-Split has stopped reporting. I can still connect to the device, but no data back to HA. The logs have several errors, but I think this is the most relevant:

Logger: homeassistant.components.mqtt.models
Source: components/mqtt/models.py:366
integration: MQTT (documentation, issues)
First occurred: May 29, 2025 at 6:41:02 PM (6928 occurrences)
Last logged: 8:32:52 PM

Exception raised while updating state of climate.d1m_sr_minisplit, topic: 'd1m-srms/climate/sr_minisplit/target_temperature/state' with payload: b'nan'
Exception raised while updating state of climate.d1m_sr_minisplit, topic: 'd1m-srms/status' with payload: b'online'
Exception raised while updating state of climate.sr_minisplit_sr_minisplit, topic: 'd1m-srms/climate/sr_minisplit/target_temperature/state' with payload: b'nan'
Exception raised while updating state of climate.sr_minisplit_sr_minisplit, topic: 'd1m-srms/status' with payload: b'online'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 366, in process_write_state_requests
    entity.async_write_ha_state()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1019, in async_write_ha_state
    self._async_write_ha_state()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1141, in _async_write_ha_state
    self.__async_calculate_state()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1083, in __async_calculate_state
    if state_attributes := self.state_attributes:
                           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 420, in state_attributes
    data[ATTR_TEMPERATURE] = show_temp(
                             ~~~~~~~~~^
        hass,
        ^^^^^
    ...<2 lines>...
        precision,
        ^^^^^^^^^^
    )
    ^
  File "/usr/src/homeassistant/homeassistant/helpers/temperature.py", line 34, in display_temp
    return round(temperature * 2) / 2.0
           ~~~~~^^^^^^^^^^^^^^^^^
ValueError: cannot convert float NaN to integer

Has anyone had similar issues since the recent update? Or should I just assume the upload failed in some way? I can pull the device and re-flash it if necessary.
Any advice?

I can access the device but it seems to not be updating. Pressing the RESTART button does not seem to work either, so I think the device is not communicating with Home Assistant.

Thanks.