Mitsubishi AC with Wemos D1 Mini Pro

JuanMTech’s Youtube video “How to get started with ESPHome and Sonoff” was a big help for me.

It took me a quite while to get all of this worked out. Take a look at my post back in April 2019 where I tried to capture the steps (when I worked it out last time, using 093.2 and MQTT). If someone is really stuck and needs something like this, please let me know and I’ll put one together.

I was able to compile the ESPHome-mitsubishiheatpump version and flash my Wemo D1 mini lite (mine have all worked without any additional hardware). It took a bit but everything finally worked…at least to a point. I’m only about 3 weeks into learning curve of HA and ESPHome. It’s been a challenge.

Anyhow…I now have it showing up as a “Device” but I don’t have any “Entities” showing. And that’s where I’m stuck and not sure where to start.

Edited for update:

I just spotted a naming error I had. Once I fixed that everything started working. Not every control is there (no vane settings and a few other things) but enough to make me happy.

I have 2 units up and running.

Does Wemos D1 Mini Pro work also as a web interface for mitsubishi HVAC without using MQTT? In my “Status” panel both HVAC Status and (obviously) MQTT Status are “disconnected”. I can’t find the “control” panel…

If you write it, you could present a web interface. But the software here does not do so.

Been looking at doing this for some time, got the D1 mini setup and working well with USB power but when I connect to the heatpump its fails to boot. I checked the voltage and its 5v but when I connect to the D1 the voltage drops to 1.2v. I hope I don’t have a faulty board.

In full disclosure I did have the TX and RX swapped around with the 5v and G when I plugged it in the first time. Noob error I know :frowning:

Any ideas?

As a possible workaround I was thinking about using the 12v output and adding the 12V d1 mini hat to get power, but that may also be broken if there is a board issue.

Any help would be greatly appreciated.

After as few days I summed up some courage and recreated a new d1-mini and cable and low and behold its all works now.

One key thing I learned, turning the power of to the AC unit is absolutely required, its not about safety, the AC unit will not see the device if its added carefully while the AC is off but still has power connected. I think this is where my problems started. One down, four to go.

The PITA is that you have to turn it off at the outdoor unit - at least that is the case with split units.

Really? I’ve installed it on 3 units and never powered any of them down. Also can unplug them and replug them in with no issues.

Where and how did you change units of measurement to Fahrenheit?

Thanks,

Did you ever get this corrected?

I originally modified the ESP8266 code to convert the actual values to to Fahrenheit, but the easier way to do it is in yaml.lines 31 &32 as suggested by @ajobbins here: https://gist.github.com/kmdm/29f740e5f36036fb23daba8f2109c359

1 Like

Yeah, I did the yaml lines and it does change the values, but when i use the slider to change temp, it reverts back to Celsius, then after about 5-10 seconds, it will convert the setting back to Fahrenheit. Also, the up and down arrors don’t seem to function when changing the temp after adding those lines. They change the value, but then revert to 88°F.

Was wondering where you changed the values in the Sketch.

I no longer have the ESP8266 deployed and I have deleted the code I had. As I recall, I had to hack the conversion in two places in the code. One is for the temperature sent from the ESP (C to F) and another place converting the Homeassistant value back to the ESP (F to C).

Sorry I can’t be more help.

I have trouble getting this working. If I compile with libraries: - SwiCago/HeatPump then it compiles and runs fine, until I add it to Home Assistant integrations. Then HA API just connects and disconnects after few seconds again and again.

I tried to change it to libraries: - https://github.com/geoffdavis/HeatPump#init_fix but that doesn’t compile for me at all. That gives me errors like

Compiling /data/mitsubishiheatpump/.pioenvs/mitsubishiheatpump/src/esphome/components/api/api_connection.cpp.o
src/esphome-mitsubishiheatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::setup()':
src/esphome-mitsubishiheatpump/espmhp.cpp:421:5: error: no matching function for call to 'HeatPump::setSettingsChangedCallback(MitsubishiHeatPump::setup()::<lambda()>)'
     );

I have checked that all other code is similar to @nickrout example above. Only major difference is that I’m running ESP32 board. Any idea what could help?

When I rebuilt everything using ESPHome it all came up as Fahrenheit.

Got this also finally working. Change from ESP32 to ESP8266 board solved my issues. Now running https://github.com/gysmo38/mitsubishi2MQTT

Next I would like to control by the average temperature of my house. I have buch of Xiaomi BLE sensors (with custom firmware) around house and one ESP32 reading them. And custom component ha-average calculating nice rolling average from them (https://github.com/Limych/ha-average).

First I started by adding x amount of automations for this. And it seems overly complicated. There is this nice Generic Thermostat (https://www.home-assistant.io/integrations/generic_thermostat/) for controlling devices. But that seems to be unable to control AC. Should I then make switch template that controls my AC? Have you guys done this some other way?

Why not publish the temp setting to MQTT and use a MQTT climate https://www.home-assistant.io/integrations/climate.mqtt/

I’m struggling with a Wemos D1 mini 3.0.0 not being able to communicate with my Mitsubishi MSZ-FH35VE. I’ve followed the tutorials I can find I’ve tried 10 kOhm pullups as well as level converter, but no success. I read post by mgrondelaers that the CH340G on the Wemos D1 mini v3.0.0 pulls the line low or high permanently when the module is powered with 5V.

Is this the issue I’m having problems with? Are there any other boards out there with the convenience of USB adapter for easy programming where the Rx and Tx will work without this issue?

I’d really appreciate some guidance because I’m out of ideas on how to proceed.

Warmly, Per

Update: I got it working with a D1 v2 without any problems.