Open SwiCago opened 7 years ago
Had immediate success with two MSZ-GL06 units and one MSZ-GL12. No downtime, instability, or other issues in the weeks that they have been connected.
Like many others, I just used the Wemos D1 mini, the Revolectric pre-made connector, @geoffdavis's ESPHome integration, ESPHome, and Home Assistant.
Unfortunately, the units did not work with a SVZ-KP18 indoor air handler, despite the unit having a CN105 connector. I could find no evidence online of anyone else getting this project working with an SVZ unit. So I caved and bought an official Kumo Cloud unit, and connected it to Home Assistant with @dlarrick's Kumo integration. That works well, but is much more expensive and a little less responsive than these lovely little ESP gizmos.
Update, July 2023: The three MSZ units have been running flawlessly for 2 years. Additionally, @elmoret noted in April 2022 that he had luck communicating with an SVZ unit after setting the baud rate to 2400. I used the same setup as with my MSZ units, but setting the baud rate to 2400, and everything has been running very well. I was glad to disconnect the Kumo unit after it had become increasingly unstable.
Hi, now I can tell you that following EU units below are working: MSZ-AP20VG MSZ-AP25VG MSZ-AP35VG Inside the Units are Wemos D1 and a Huzzah directly connected no external resistors or levelshifter. I use the Controlling via MQTT, but the Library is from SwiCago: https://github.com/gysmo38/mitsubishi2MQTT
Sweden, MSZ-FH35VE, nodemcuv2, ESP8266 - Working
Works perfectly with this MSZ-HR35VF on wemos d1 with mqtt and home assistent. The trickier part was to remove the front panel
Il gio 5 ago 2021, 12:02 nrehn @.***> ha scritto:
Sweden, MSZ-FH35VE, nodemcuv2, ESP8266 - Working
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/SwiCago/HeatPump/issues/13#issuecomment-893330343, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACCIWEJ6LWQ72Q5FMCUX2P3T3JOTDANCNFSM4DARN4FQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .
USA, Just install 6 units. Can confirm that MSZ-FS09NA works perfectly. I expect the MSZ-FS12NA and MSZ-FS18NA to be the same, will confirm when the installation is done.
Using the D1 Mini clone found here:
https://www.amazon.com/gp/product/B076F52NQD/ref=ppx_yo_dt_b_asin_title_o04_s00?ie=UTF8&psc=1
IZOKEE Development Board for ESP8266 ESP-12F 4M Bytes WLAN WiFi Internet Development Board Compatible with Arduino (Pack of 5)
MSZ-FS12NA and MSZ-FS18NA also work perfectly.
Hi all from Italy! I just tested succesfully my first prototype based on a D1 clone on a ducted SEZ-KD35VAL using a boud rate of 9600.
EDIT: I used the ESP home implementation offered by @geoffdavis
Hi From Antibes, France ,
Successfully tested on an MSZ AP 15 VF, using a nodeMCU, and HomeAsssistant.
I Had to remove the 470 ohm resistor between the CP2102 and RXD0 on the nodeMCU board :
Belgium, tested with 4 units: MSZ-SF25VE & MFZ-KA50VA
*3 Mitsubishi MSZ-SF25VE**
*1 Mitsubishi MFZ-KA50VA**
All using AliExpress Wemos D1 Mini, no pullup nor PCB mods, only adding capacitor for power
Works with a MSZ-GE24NA and 3 MSZ-GE06NA-8 in the US all using the ESP-01S and recommended breakout board.
Works with PEY SERIES (PEY-SM36JA(L)2) in U.A.E.
Using esp32 dev board and espeasy
Directly connected to pins
New Zealand - MSZ-AP25VGKD. D1Mini, no pullup resistors or level shifting.
@wtadler I had success with a SVZ-KP24NA, baud rate needed to be 2400.
MSZ-GE09NA - Works on Wemos Mini D1, and HiLetgo NodeMCU CP2102 ESP-12E. Directly connected, no pullups resistors or level shifting.
Great library, please add a donation button.
Europe: MSZ-LN35VG2W confirmed working, used a ESP32-DevKitC with no resistors or anything, just straight connected to CN105.
instructions to remove the cover and get to the CN105 pin can be found here.
Great library, thanks.
I have four MSZ-FS06NA working perfectly.
I used Lolin (Wemos) S2 Minis (NOT D1 Minis), which worked perfectly without any pullups, capacitors, etc. I used Serial1 (TX17/RX18 by default) instead of Serial0 (not mapped by default) to avoid having to remap Serial0.
While flashing the S2 Minis they worked fine and connected to WiFi on reset. Once they were plugged into the heatpumps, they booted but didn't connect to WiFi until they were reset once with the button. Adding a delay on boot before connecting to WiFi fixed this issue so I didn't dig into it too much. (Just added a delay(10000)
before the WiFi init since it's not like I turn the power off often enough for it to matter)
Working with two internal units on a single compressor system. ESP32, 9600 baud rate, 10k pullup resistors were required. MSZ-GA25VA MSZ-GA71VA Aus
Just got this working today with my unit: Indoor: PVA-A18AA7 Outdoor: PUZ-A18NKA7 North America (USA)
I first tried with some ESP-12E development boards that have an integrated USB/serial converter, but it turned out the RX pin on these is crippled, so while it can send packets it can't receive. Switched to using an ESP-01S and it worked perfectly!
Confirmed working on
Directly wired with the PAP-05V-S plug on CN105 port and a Wemos D1. No external power needed.
Had lots of issues with plugs that 'should work' but ended up cutting and extending the wires on these plugs: https://nl.aliexpress.com/item/1005003232354177.html
Also working with Mitsubishi2MQTT: https://github.com/gysmo38/mitsubishi2MQTT
MSZ-FD25 (Probably Scandinavian version) works most of the time with following:
MSZ-LN35 (VGW) (Probably also Scandinavian version) works with following:
Europe (germany) I use a ESP8266-12E with 3V3 voltage regulator and 10k pullups on the RX/TX lines. Compiled ESPEASY, with the plugin, without any changes. Works fine with MSZ-SF35VE2 (cn105 connector)
Europe (Belgium)
Flashed to a D1 Wemos v3 and did the PCB mod by cutting 2nd trace (see https://community.home-assistant.io/t/mitsubishi-ac-with-wemos-d1-mini-pro/107007/145 )
Installed in the following models: mfz-kj25ve, msz-ef42ve2b, msz-sf20va and msz-sf25va
All tested and everything is working.
pcbmod is required, without cutting the trace, the unit is marked as disconnected.
Europe (germany) I use a ESP8266-12E with 3V3 voltage regulator and 10k pullups on the RX/TX lines. Compiled ESPEASY, with the plugin, without any changes. Works fine with MSZ-SF35VE2 (cn105 connector)
Any chance you could post a few images of the setup?? Had a nightmare with the Wemo D1 so going down the ESP01 route.
Sure thing. I'm using a PCB from eBay (ludwig.it, not affiliated in any way), solder the SMD components and two caps (C1/2= 33uF@16V, C3/4 100nF@25Vcer, R1/2 1k-10k, Ureg HT7333 and an ESP8266MOD. It is a standard breakout board, so you have to add the 10k pullups on the TX/RX lines. Since the ESP is supposted to be 5V compliant on the TX/RX lines, no level shifter (and no problems so far). Add the cable and CN105 connector and hide everything in the inverter unit.
I compiled ESPEASY using the plugin for Mitsubishi heatpumps. Works right out of the box.
I opted for the ESP8266MOD over the ESP01 because it is a neater setup without the need for an external Ureg. Everything is nice on the board. There is no USB2Serial interface, so I use a 3D printed, spring loaded 'programmer', connected to an FTDI adapter for initial flashing.
MSZ-HR25VF unit (Spain Version) working fine. Using:
At first, I tried to use mitsubishi2MQTT (https://github.com/gysmo38/mitsubishi2MQTT) but I was not able to make it work: when I tried to configure MQTT config, wemos D1 got stucked in a reset loop, launching stracktrace with ctx: sys. Reflash of the unit was needed to recover. I've tried several times, compiling lastest version of the code, but same result. Looking at the issues, someone had the same problem: https://github.com/gysmo38/mitsubishi2MQTT/issues/14.
Finally, I tried esphome implementation (https://github.com/geoffdavis/esphome-mitsubishiheatpump) and working out-of-the-box with the following climate configuration:
climate:
- platform: mitsubishi_heatpump
name: whatevernameuwant
update_interval: 500ms
hardware_uart: UART0
Unit works like a charm! Without problems and Home-Assistant is refreshing state correctly.
Pictures:
MSZ-HR25VF (Italia) works fine (slow response but ok)
Using the https://github.com/geoffdavis/esphome-mitsubishiheatpump ESPHome implementation using the following config that references an external temperature sensor in my Home Assistant:
climate:
- platform: mitsubishi_heatpump
id: msz_hr25vf_hp
name: "${friendly_devicename}"
update_interval: 500ms
hardware_uart: UART0
supports:
mode: [HEAT_COOL, HEAT, COOL, DRY, FAN_ONLY]
fan_mode: [AUTO, DIFFUSE, LOW, MEDIUM, MIDDLE, HIGH]
swing_mode: ['OFF', VERTICAL]
visual:
min_temperature: 13
max_temperature: 36
temperature_step: 0.5
- platform: homeassistant
name: "ESPresence Studio Temperature"
id: espresence_studio_temp
entity_id: sensor.espresense_studio_bme280_temperature
on_value:
then:
- lambda: |-
if(id(espresence_studio_temp).has_state()) {
// use ha sensor temp
id(msz_hr25vf_hp).set_remote_temperature(x);
// ESP_LOGW("temperature", "using rmeote temp %.2f", x);
} else {
// use internal temp
id(msz_hr25vf_hp).set_remote_temperature(0);
ESP_LOGW("temperature", "using internal temp");
}
Home Assistant udates the states but with delay.
(I swear I will put it in a little box 😉 )
ciao
Daniele
Europe/Finland:
"Works fine. Except air flow horizontal adjusment does not work, up-down works."
Europe/Czechia
Working: MSZ-AP20VGK-E2 MSZ-AP35VGK-E3
Both are most recent models, installed 08/2022
ESP-01S with breakout and pre-made pigtails. Jumpers can be pulled and rearranged using a sharp tool.
Tested with latest ESPHome lib.
USA - MSZ-FE18NA confirmed working, direct wire CN105 to Adafruit ESP8266 breakout (part #2471)
MSZ-HR35VF confirmed working. I used a normal JST connector, metal pins removed from the JST connector, and put a heatshrink on every pin individually, and pushed on the correct pin.
Confirmed works with MSZ-GL12NA, MSZ-GL06NA. Generic ESP8266 dev kit. Also, I have some extra CN105 connectors (no pins just connectors) if anyone wants some, they can pay for shipping.
MSZ-GL12NA working with a D1 mini clone, needed to remove the resistor from the device on the RX pin. No other mods needed.
Tried many things with level shifters, pullups, desoldering Pin 2 on the CH340C chip, etc. Stumbled on this review and everything worked immediately.
Response time with Home Assistant is quite slow. Not sure if it's the ESP8266 or HA. Going to test with an ESP32 or ESP32-S2 in a few days.
Edit: Response from the web portal on the MCU is instant regardless of the chipset. Seems to be issues preventing mode
changes via HA or MQTT when using the latest release of this library with HA and Mitsubishi2MQTT right now. See this issue
Confirmed works with msz-ge24na and msz-gs36na. https://amazon.com/dp/B09C8GWDM8 are the modules I used, and I had to flip the CN105 pinout.
I can report that it is working with MSZ-EF42VGK (sold in Germany) with ESP-01S and an adapter. This particular model (VGK) includes a wifi module connected to a port named CN110. A few centimeters next to it is the normal CN105 port.
For simplicity, I have disconnected and removed the wifi module. Now there is enough space to mount the ESP-01S with its adapter beneath the panel where I can access it without having to open the device again. Opening the flimsy plastic housing is by far the most difficult part... BTW: To properly route the cable in the housing I needed about 50cm of cable which I crimped myself (JST on one end, Dupont on the other).
Thanks for this library!
Australia - MSZ-AP60VGD - Working using esphome-mitsubishiheatpump software. Integrates well with home assistant and is very responsive. IR Remote Control actions feedback to home assistant quickly.
Attached via CN105 port.
Got this working on two MSZ-EF35VG units in the UK.
France- used with an esp32-VROOM az-delivery miniD1
MSZ-EF42VEB works with 10K pullups (without pollups there in no state return)
MSZ-GE35VA works without pullups
MSZ-HJ25VA No CN105 only CN104 for windows contact
Europe Model: MFZ-KJ25VE2 esp32dev board without pullups using gysmo38/mitsubishi2MQTT via cn105
Working in general. Reverse vane not controlable but this is likely related to mitsubishi2MQTT limitations.
France Model : MSZ-HR25VF and MSZ-HR35VF ESP32 with github://geoffdavis/esphome-mitsubishiheatpump via cn105 following this tutorial : https://forum.hacf.fr/t/piloter-sa-pompe-a-chaleur-mitsubishi-en-local-avec-une-sonde-deportee/8544
Everything work like a charm.
Here is my configuration with external temperature sensor :
substitutions:
name: clim-salon
friendly_name: Clim salon
esphome:
name: ${name}
platform: ESP8266
board: esp01_1m
# Boards tested: ESP-01S (ESP8266), Wemos D1 Mini (ESP8266); ESP32 Wifi-DevKit2
wifi:
# Éditer le ssid et le password dans la page principale de ESPHome
ssid: !secret wifi_ssid
password: !secret wifi_password
power_save_mode: none
# Vous pouvez choisir une IP Fixe. Changer les valeurs static_ip et gateway par l’IP choisie et celle de la box internet
#manual_ip:
#static_ip: 192.168.1.100
#gateway: 192.168.1.254
#subnet: 255.255.255.0
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "${friendly_name} Fallback Hotspot"
password: "93K0PbrcEpJ9"
# Note: if upgrading from 1.x releases of esphome-mitsubishiheatpump, be sure
# to remove any old entries from the `libraries` and `includes` section.
#libraries:
# Remove reference to SwiCago/HeatPump
#includes:
# Remove reference to src/esphome-mitsubishiheatpump
captive_portal:
# Enable logging
logger:
# ESP8266 only - disable serial port logging, as the HeatPump component
# needs the sole hardware UART on the ESP8266
baud_rate: 0
# Enable Home Assistant API
api:
ota:
password: "XXXXXX"
# Enable Web server.
web_server:
port: 80
# Sync time with Home Assistant.
time:
- platform: homeassistant
id: homeassistant_time
# Text sensors with general information.
text_sensor:
# Expose ESPHome version as sensor.
- platform: version
name: ${name} ESPHome Version
# Expose WiFi information as sensors.
- platform: wifi_info
ip_address:
name: ${name} IP
ssid:
name: ${name} SSID
bssid:
name: ${name} BSSID
climate:
- platform: mitsubishi_heatpump
name: "${friendly_name}"
id: hp
update_interval: 500ms
# ESP32 only - change UART0 to UART1 or UART2 and remove the
# logging:baud_rate above to allow the built-in UART0 to function for
# logging.
hardware_uart: UART0
# Sensors with general information.
sensor:
# Uptime sensor.
- platform: uptime
name: ${name} Uptime
# WiFi Signal sensor.
- platform: wifi_signal
name: ${name} WiFi Signal
update_interval: 60s
# Vous pouvez choisir une sonde extérieure depuis Home Assistant.
# Remplacer la valeur entity_id par votre sensor de température.
- platform: homeassistant
name: "Capteur de temperature du salon"
id: esp_salon_temp
entity_id: sensor.capteur_temperature_salon_temperature
on_value:
then:
- lambda: |-
if(id(esp_salon_temp).has_state()) {
id(hp).set_remote_temperature(x);
} else {
// use internal temp
id(hp).set_remote_temperature(0);
ESP_LOGW("temperature", "using internal temp");
}
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
USA Model : NAXWST18A112AA
Wemos D1 Mini (Clone) (no modifications needed) - https://www.amazon.com/dp/B08RWTF74S?psc=1&ref=ppx_yo2ov_dt_b_product_details
Cable from Ali-Express - https://www.aliexpress.us/item/3256804311315637.html?spm=a2g0o.order_detail.order_detail_item.4.40e9f19c4xvP7A&gatewayAdapt=glo2usa&_randl_shipto=US
via cn105 using configs from https://github.com/geoffdavis/esphome-mitsubishiheatpump and knowledge scraped from https://community.home-assistant.io/t/mitsubishi-ac-with-wemos-d1-mini-pro/107007/80
Everything just worked!
Europe- MSZ-FH50VE works perfect with D1 mini V2 Mini NodeMcu 4M bytes Lua WIFI development ESP8266 by WeMos from this link https://www.aliexpress.com/item/32805747230.html?spm=a2g0o.order_list.order_list_main.22.33001802JwLyLX without any additional resistors etc. This is the code:
substitutions:
name: mesp
friendly_name: Mitsubishi
esphome:
name: mesp
esp8266:
board: esp01_1m
# Enable logging
logger:
baud_rate: 0
# Enable Home Assistant API
api:
encryption:
key: "YOUR_ENCRIPTION_KEY"
ota:
password: "YOUR_OTA_PASSWORD"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "${friendly_name} Fallback Hotspot"
password: "YOUR-FALLBACK_PASSWORD"
captive_portal:
# Sync time with Home Assistant.
time:
- platform: homeassistant
id: homeassistant_time
switch:
- platform: gpio
name: "${friendly_name}-Onboard-LED"
pin: 2
inverted: True
- platform: restart
name: ${friendly_name}-restart
id: restart_switch
# Text sensors with general information.
text_sensor:
# Expose ESPHome version as sensor.
- platform: version
name: ${name} ESPHome Version
# Expose WiFi information as sensors.
- platform: wifi_info
ip_address:
name: ${name} IP
ssid:
name: ${name} SSID
bssid:
name: ${name} BSSID
sensor:
# Uptime sensor.
- platform: uptime
name: ${name} Uptime
# WiFi Signal sensor.
- platform: wifi_signal
name: ${name} WiFi Signal
update_interval: 60s
# Useexternal temp sensor.
- platform: homeassistant
name: "Temperature Sensor From Home Assistant"
entity_id: sensor.livingroom_temperature_2
id: esp_livingroom_temp
on_value:
then:
- lambda: |-
if(id(esp_livingroom_temp).has_state()) {
id(mesp).set_remote_temperature(x);
} else {
// use internal temp
id(mesp).set_remote_temperature(0);
ESP_LOGW("temperature", "using internal temp");
}
filters:
- heartbeat: 20s
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
climate:
- platform: mitsubishi_heatpump
name: "${friendly_name}"
id: mesp
update_interval: 500ms
supports:
mode: ["HEAT_COOL", "COOL", "HEAT", "DRY", "FAN_ONLY"]
fan_mode: ["AUTO", "DIFFUSE", "LOW", "MEDIUM", "MIDDLE", "HIGH"]
swing_mode: ["OFF", "VERTICAL"]
# ESP32 only - change UART0 to UART1 or UART2 and remove the
# logging:baud_rate above to allow the built-in UART0 to function for
# logging.
hardware_uart: UART0
visual:
min_temperature: 16
max_temperature: 31
temperature_step: 0.5
North America - additional confirmation that this library works with PVA-A30AA7, should work with all PVA-A
North America, the following models work (ish) with a WeMos D1 mini v2 clone with no additional resistors. The connection is pretty unstable though, two of the five units didn't work initially and spontaneously started working several weeks later, but all frequently drop connection for some reason.
North America, the following models work (ish) with a WeMos D1 mini v2 clone with no additional resistors. The connection is pretty unstable though, two of the five units didn't work initially and spontaneously started working several weeks later, but all frequently drop connection for some reason.
- NAXWST06A112AA
- MSZ-GL12NA
- NAXWST09A112AB
- NAXWST06A112AB
- NAXWST24A112AA
Looks like they are compatible but there is issue with wiring and/or WiFi coverage
North America was able to get these two models working: MSZ-GL09NA MFZ-KJ18NA
Using esphome with some generic esp 8266 I got off amazon
Had to set baud rate to 2400
Also confirming NA models MSZ-GL06NA/MSZ-GL09NA, I used a m5stamp Pico (pico32 platform w/ esphome) and created a CN105 connector and it worked right out of the box, no need for pull-up resistors or anything else.
Confirmed that the following units work with this WeMos clone from Amazon: SVZ-KP30NA basement air handler MSZ-GL09NA and MSZ-GL06NA wall units
No pullups or cutting traces required. h/t to @fastbike for this comment, I did indeed swap TX and RX on the first board I soldered 🤦
Confirming MSZ-GL15NA on a Lolin Wemos S2 Mini. Required setting baud rate to 2400. For some reason, I could only data from the unit with pin 39 (RX). I used 40 for TX since it was the neighbor. No pullups or trace cutting required.
PUMY-P60NKMU3 outdoor unit PVFY-P54NAMU-E1-1 indoor unit
North America - MSZ-GL18NA
Notes: Only successful with UART0 on my esp32dev and forcing 2400 baud Likely since ESP32, the baud rate must be defined in climate section, otherwise continuous reboot (used EDPHOME 2023.2.x)
climate:
New Zealand MSZ-LN18-60VG Series, Black Diamond High Wall Units. PUZ-ZM125 Ducted Unit
THIS IS NOT A THREAD TO ASK FOR HELP! USE GITTER CHAT FOR HELP
Hi guys, I would like to use this area to list unit types that are know to work with this library. Exact number(as in tonnage) not necessary, as all units of the same type would work, if confirmed for one. Please state Region and models that you have personally tested with. If you can provide weblink of unit that would help. I'll start North America - MSZ-FH (Wall unit) North America - SEZ-KD (Horizontal Ducted unit) Mini split on shared compressor North America - MXZ-8C48NAHZ (8 zone outdoor unit)
Linked this list to readme, until we have a big enough list. Then I'll create a compatability list. The following webpage may help find your exact unit type http://meus1.mylinkdrive.com/index.html
THIS IS NOT A THREAD TO ASK FOR HELP! USE GITTER CHAT FOR HELP