geoffdavis / esphome-mitsubishiheatpump Goto Github PK
View Code? Open in Web Editor NEWESPHome Climate Component for Mitsubishi Heatpumps using direct serial connection
License: BSD 2-Clause "Simplified" License
ESPHome Climate Component for Mitsubishi Heatpumps using direct serial connection
License: BSD 2-Clause "Simplified" License
Hi
I'm trying to use this component with an ESP32 like this https://www.az-delivery.de/es/collections/mikrocontroller/products/esp32-d1-mini
Compilation and upload through ESPHome-Flasher is ok, but once uploaded the module is constantly rebooting
Here is an example of logs:
Showing logs:
[21:10:43]E (10294) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
[21:10:43]E (10294) task_wdt: - loopTask (CPU 1)
[21:10:43]E (10294) task_wdt: Tasks currently running:
[21:10:43]E (10294) task_wdt: CPU 0: IDLE0
[21:10:43]E (10294) task_wdt: CPU 1: IDLE1
[21:10:43]E (10294) task_wdt: Aborting.
[21:10:43]abort() was called at PC 0x4015fbd8 on core 0
[21:10:43]
[21:10:43]ELF file SHA256: 0000000000000000
[21:10:43]
[21:10:43]Backtrace: 0x40088ac8:0x3ffbf820 0x40088d45:0x3ffbf840 0x4015fbd8:0x3ffbf860 0x40087205:0x3ffbf880 0x40177b77:0x3ffbc160 0x401614e3:0x3ffbc180 0x4008b505:0x3ffbc1a0 0x40089d56:0x3ffbc1c0
[21:10:43]
[21:10:43]Rebooting...
[21:10:43]ets Jun 8 2016 00:22:57
[21:10:43]
[21:10:43]rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
[21:10:43]configsip: 0, SPIWP:0xee
[21:10:43]clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
[21:10:43]mode:DIO, clock div:2
[21:10:43]load:0x3fff0018,len:4
[21:10:43]load:0x3fff001c,len:1044
[21:10:43]load:0x40078000,len:8896
[21:10:43]load:0x40080400,len:5828
[21:10:43]entry 0x400806ac
[21:10:44][I][logger:214]: Log initialized
[21:10:44][C][ota:461]: There have been 1 suspected unsuccessful boot attempts.
[21:10:44][D][esp32.preferences:114]: Saving preferences to flash...
[21:10:44][I][app:029]: Running through setup()...
[21:10:44][D][text_sensor:067]: 'heatpump-test ESPHome Version': Sending state '2022.2.0 Feb 16 2022, 21:05:11'
[21:10:44][I][MitsubishiHeatPump:063]: ESPHome MitsubishiHeatPump version 2.3.2
[21:10:44][C][MitsubishiHeatPump:416]: Setting up UART...
[21:10:44][C][MitsubishiHeatPump:428]: Intializing new HeatPump object.
[21:10:44][C][MitsubishiHeatPump:455]: hw_serial(0x3ffc1adc) is &Serial(0x3ffc1af8)? NO
[21:10:44][C][MitsubishiHeatPump:457]: Calling hp->connect(0x3ffc1adc)
[21:10:49]E (10294) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
[21:10:49]E (10294) task_wdt: - loopTask (CPU 1)
[21:10:49]E (10294) task_wdt: Tasks currently running:
[21:10:49]E (10294) task_wdt: CPU 0: IDLE0
[21:10:49]E (10294) task_wdt: CPU 1: IDLE1
[21:10:49]E (10294) task_wdt: Aborting.
[21:10:49]abort() was called at PC 0x4015fbd8 on core 0
[21:10:49]
[21:10:49]ELF file SHA256: 0000000000000000
[21:10:49]
[21:10:49]Backtrace: 0x40088ac8:0x3ffbf820 0x40088d45:0x3ffbf840 0x4015fbd8:0x3ffbf860 0x40087205:0x3ffbf880 0x40177b77:0x3ffbc160 0x401614e3:0x3ffbc180 0x4008b505:0x3ffbc1a0 0x40089d56:0x3ffbc1c0
[21:10:49]
[21:10:49]Rebooting...
[21:10:49]ets Jun 8 2016 00:22:57
[21:10:49]
[21:10:49]rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
[21:10:49]configsip: 0, SPIWP:0xee
[21:10:49]clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
[21:10:49]mode:DIO, clock div:2
[21:10:49]load:0x3fff0018,len:4
[21:10:49]load:0x3fff001c,len:1044
[21:10:49]load:0x40078000,len:8896
[21:10:49]load:0x40080400,len:5828
[21:10:49]entry 0x400806ac
[21:10:49][I][logger:214]: Log initialized
[21:10:49][C][ota:461]: There have been 2 suspected unsuccessful boot attempts.
[21:10:49][D][esp32.preferences:114]: Saving preferences to flash...
[21:10:49][I][app:029]: Running through setup()...
[21:10:49][D][text_sensor:067]: 'heatpump-test ESPHome Version': Sending state '2022.2.0 Feb 16 2022, 21:05:11'
[21:10:49][I][MitsubishiHeatPump:063]: ESPHome MitsubishiHeatPump version 2.3.2
[21:10:49][C][MitsubishiHeatPump:416]: Setting up UART...
[21:10:49][C][MitsubishiHeatPump:428]: Intializing new HeatPump object.
[21:10:49][C][MitsubishiHeatPump:455]: hw_serial(0x3ffc1adc) is &Serial(0x3ffc1af8)? NO
[21:10:49][C][MitsubishiHeatPump:457]: Calling hp->connect(0x3ffc1adc)
[21:10:54]E (10294) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
[21:10:54]E (10294) task_wdt: - loopTask (CPU 1)
[21:10:54]E (10294) task_wdt: Tasks currently running:
[21:10:54]E (10294) task_wdt: CPU 0: IDLE0
[21:10:54]E (10294) task_wdt: CPU 1: IDLE1
[21:10:54]E (10294) task_wdt: Aborting.
[21:10:54]abort() was called at PC 0x4015fbd8 on core 0
[21:10:54]
[21:10:54]ELF file SHA256: 0000000000000000
[21:10:54]
[21:10:54]Backtrace: 0x40088ac8:0x3ffbf820 0x40088d45:0x3ffbf840 0x4015fbd8:0x3ffbf860 0x40087205:0x3ffbf880 0x40177b77:0x3ffbc160 0x401614e3:0x3ffbc180 0x4008b505:0x3ffbc1a0 0x40089d56:0x3ffbc1c0
[21:10:54]
[21:10:54]Rebooting...
[21:10:55]ets Jun 8 2016 00:22:57
[21:10:55]
[21:10:55]rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
[21:10:55]configsip: 0, SPIWP:0xee
[21:10:55]clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
[21:10:55]mode:DIO, clock div:2
[21:10:55]load:0x3fff0018,len:4
[21:10:55]load:0x3fff001c,len:1044
[21:10:55]load:0x40078000,len:8896
[21:10:55]load:0x40080400,len:5828
[21:10:55]entry 0x400806ac
[21:10:55][I][logger:214]: Log initialized
[21:10:55][C][ota:461]: There have been 3 suspected unsuccessful boot attempts.
This is my ESPHome configuration file for this device:
substitutions:
name: heatpump-test
friendly_name: Test Heatpump
esphome:
name: ${name}
esp32:
board: esp32dev
framework:
type: arduino
# Enable logging
logger:
# Enable Home Assistant API
api:
ota:
password: ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
fast_connect: true
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "${friendly_name} Fallback Hotspot"
password: ap_password
captive_portal:
# Enable Web server.
web_server:
port: 80
# MQTT
mqtt:
broker: 192.168.10.211
port: 1883
topic_prefix: ${name}
# 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
# 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
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
climate:
- platform: mitsubishi_heatpump
name: "${friendly_name}"
# 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: UART1
Any Idea?
Thanks in advance!
NOTE: Same code with UART0 works in an ESP8266, obviously changing the type of board used
hi i use this with great success (on esp01), works great, only isue that hvac_action is always 'off'
Hi, first of all, great update!!
I was excited to try out the new 2.1 release, and here's what I got (seems like a conflict with esphome's native code for esp8266 chips?!):
In file included from /root/.platformio/packages/framework-arduinoespressif8266/libraries/ESP8266WiFi/src/CertStoreBearSSL.h:26:0,
from /root/.platformio/packages/framework-arduinoespressif8266/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:30,
from /root/.platformio/packages/framework-arduinoespressif8266/libraries/ESP8266WiFi/src/WiFiClientSecure.h:41,
from /root/.platformio/packages/framework-arduinoespressif8266/libraries/ESP8266WiFi/src/WiFiServerSecure.h:20,
from /root/.platformio/packages/framework-arduinoespressif8266/libraries/ESP8266WiFi/src/ESP8266WiFi.h:41,
from src/esphome/components/wifi/wifi_component.h:18,
from src/esphome.h:58,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
/root/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/FS.h: In static member function 'static time_t fs::FS::_defaultTimeCB()':
/root/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/FS.h:243:49: error: reference to 'time' is ambiguous
static time_t _defaultTimeCB(void) { return time(NULL); }
^
In file included from /root/.platformio/packages/framework-arduinoespressif8266/tools/sdk/libc/xtensa-lx106-elf/include/wchar.h:4:0,
from /root/.platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/cwchar:44,
from /root/.platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/bits/postypes.h:40,
from /root/.platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/bits/char_traits.h:40,
from /root/.platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/string:40,
from src/esphome/core/component.h:3,
from src/esphome/components/api/api_connection.h:3,
from src/esphome.h:2,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
/root/.platformio/packages/framework-arduinoespressif8266/tools/sdk/libc/xtensa-lx106-elf/include/../include/time.h:53:18: note: candidates are: time_t time(time_t*)
time_t _EXFUN(time, (time_t *_timer));
^
In file included from src/esphome/components/homeassistant/time/homeassistant_time.h:4:0,
from src/esphome.h:21,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
src/esphome/components/time/real_time_clock.h:11:16: note: namespace esphome::time { }
namespace time {
^
External sensor not working on esphome 2022.8.3.
everything works on esphome 2022.3.1
`
time:
text_sensor:
# Uptime sensor.
external_components:
climate:
Vane swing mode works on MS-GL09NA, but I don't see an option for vane position in Home Assistant in the details card. Is it possible to add this or is it an ESPHome limitation?
Hi Geoff.
I now managed to get the heatpump up and running with ESPHOME - thanks alot for putting your effort in to getting this to work:D
I experience some kind of long responsivness when i change temperature, modes. I see you write instant responsivness in your readme. How fast does your system response?
The next thing i came to think of is if it possible to get a feedback on the state of the heatpump in the UI. It always says it is off, when the heatpump is actually running / heating.
Before mowing to ESPHOME i used the code made by gysmo38. It is also a very nice code, but i had some issues with it. In his code it is possible to set the fan to other states - like QUIET and so on. I cant see this in this integration - it goes from Auto, low medium middle and high.
The same thing is with the VANE. In gysmos code there was different modes and also a SWING mode.
Is it something that needs to be put in the code or does ESPHOME not support it?
All the best
Jacob from denmark
I was looking at the ESPHome UART implementation and noticed that it now has support for EVEN
parity (https://github.com/esphome/esphome/blob/5026bc7a780919cb88e510b82acd5883417e730c/esphome/components/uart/uart_component_esp8266.cpp#L237). It looks like it was added ~2 years ago, so maybe right after you wrote this project (don't you love when that happens?). Do you recall if there were any other blockers besides the parity to using Software UART? If not, would you consider a PR?
Previously I was on 2022.2.0 where it worked as expected
Updating /config/heatpump-etage.yaml
------------------------------------------------------------
INFO Reading configuration /config/heatpump-etage.yaml...
INFO Updating https://github.com/geoffdavis/esphome-mitsubishiheatpump.git@None
INFO Generating C++ source...
INFO Compiling app...
Processing heatpump-etage (board: huzzah; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Dependency Graph
|-- <ESPAsyncTCP-esphome> 1.2.3
|-- <ESPAsyncWebServer-esphome> 2.1.0
| |-- <ESPAsyncTCP-esphome> 1.2.3
| |-- <Hash> 1.0
| |-- <ESP8266WiFi> 1.0
|-- <DNSServer> 1.1.1
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
|-- <ArduinoJson> 6.18.5
|-- <HeatPump> 1.0.0+sha.4c3e51f
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/api_connection.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/api_frame_helper.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/api_pb2.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/api_pb2_service.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/api_server.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/list_entities.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/proto.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/subscribe_state.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/api/user_services.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/climate/climate.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/climate/climate_mode.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/climate/climate_traits.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/esp8266/core.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/esp8266/gpio.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/esp8266/preferences.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/homeassistant/sensor/homeassistant_sensor.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/homeassistant/time/homeassistant_time.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/json/json_util.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/logger/logger.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/md5/md5.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/mdns/mdns_component.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/mdns/mdns_esp32_arduino.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/mdns/mdns_esp_idf.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/network/util.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/ota/ota_component.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/sensor/automation.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/sensor/filter.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/sensor/sensor.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/socket/bsd_sockets_impl.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/socket/socket.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/text_sensor/filter.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/text_sensor/text_sensor.cpp.o
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::setup()':
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:459:64: error: no matching function for call to 'HeatPump::connect(HardwareSerial*, int&, int, int)'
459 | if (hp->connect(this->get_hw_serial_(), this->baud_, -1, -1)) {
| ^
In file included from src/esphome/components/mitsubishi_heatpump/espmhp.h:23,
from src/esphome.h:30,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
.piolibdeps/heatpump-etage/HeatPump/src/HeatPump.h:191:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*)'
191 | bool connect(HardwareSerial *serial);
| ^~~~~~~
.piolibdeps/heatpump-etage/HeatPump/src/HeatPump.h:191:10: note: candidate expects 1 argument, 4 provided
.piolibdeps/heatpump-etage/HeatPump/src/HeatPump.h:192:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*, int)'
192 | bool connect(HardwareSerial *serial, int bitrate);
| ^~~~~~~
.piolibdeps/heatpump-etage/HeatPump/src/HeatPump.h:192:10: note: candidate expects 2 arguments, 4 provided
Compiling .pioenvs/heatpump-etage/src/esphome/components/time/automation.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/time/real_time_clock.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/uptime/uptime_sensor.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/version/version_text_sensor.cpp.o
Compiling .pioenvs/heatpump-etage/src/esphome/components/web_server/list_entities.cpp.o
*** [.pioenvs/heatpump-etage/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o] Error 1
========================= [FAILED] Took 12.86 seconds =========================
=========== [ERROR] /config/heatpump-etage.yaml ===========
substitutions:
devicename: heatpump-etage
friendly_name: Värmepump
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
esphome:
name: ${devicename}
platform: ESP8266
board: huzzah
# Boards tested: ESP-01S (ESP8266), Wemos D1 Mini (ESP8266); ESP32 Wifi-DevKit2
<<: !include templates/wifi-settings-1.yaml
# 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:
services:
- service: set_remote_temperature
variables:
temperature: float
then:
- lambda: 'id(heatpump_etage).set_remote_temperature(temperature);'
- service: use_internal_temperature
then:
- lambda: 'id(heatpump_etage).set_remote_temperature(0);'
ota:
# Enable Web server.
web_server:
port: 80
# Sync time with Home Assistant.
time:
- platform: homeassistant
id: homeassistant_time
timezone: Europe/Stockholm
# Text sensors with general information.
text_sensor:
# Expose ESPHome version as sensor.
- platform: version
name: ${devicename} ESPHome Version
# Expose WiFi information as sensors.
- platform: wifi_info
ip_address:
name: ${devicename} IP
ssid:
name: ${devicename} SSID
bssid:
name: ${devicename} BSSID
# Sensors with general information.
sensor:
# Uptime sensor.
- platform: uptime
name: ${devicename} Uptime
# WiFi Signal sensor.
- platform: wifi_signal
name: ${devicename} WiFi Signal
update_interval: 60s
- platform: homeassistant
name: "Temperature Sensor From Home Assistant"
entity_id: sensor.klimatsensorng_etage_bme280_temperatur
on_value:
then:
- lambda: 'id(heatpump_etage).set_remote_temperature(x);'
- logger.log:
format: "The temperature sensor reports value %.1f"
args: [ x ]
climate:
- platform: mitsubishi_heatpump
name: "${friendly_name}"
id: "heatpump_etage"
# 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
Does anybody have a sample config showing how to use MQTT to set config (target temp, mode, etc)? I’m assuming esphome climate does the heavy lifting and I can subscribe to topics with no issues but I just cannot figure out the topics needed to set values.
any pointers gratefully received.
A couple of weeks ago we started needing heat in Seattle, up until then I'd been running the MSZ-GL09NA head units (3 of them) on cool mode all summer without issue. I've made it a rule to generally avoid auto mode as I like to manually choose heat or cool.
After changing them to heat mode with the Home Assistant UI (using the simple thermostat lovelace element from HACS) they begin blowing hot air. However at some point after this, it could be several hours, they revert to cool mode and start blowing very cold air. I have yet to repro and manually review the logs at this time but will update when I do.
I have also tried turning the head unit to heat with the remote and not touching Home Assistant, but with the same result that it ends up blowing cold air at some later point, possibly hours after I set it to heat. I've never had them turn on by themselves, this only happens once I've started them in heat mode.
Side note: In the logs for a couple of the head units I've noticed that the "saved auto" temp is set to -1. I wouldn't have manually intended to set them so low but I also don't know how to force that value (with HA or a remote) to be something more reasonable to rule it out.
Disclaimer: I'm filing this under the "so strange I must be doing something wrong" category and hoping to update the issue with an embarrassing story about IR from my Harmony remote doing something strange to the head unit. I am also not on the latest ESPHome as I stayed on 2021.9.3 after seeing the issues compiling with newer versions (Home Assistant & OS are up to date).
Compiling .pioenvs/heatpump/src/esphome-mitsubishiheatpump/espmhp.cpp.o
Compiling .pioenvs/heatpump/src/main.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()>)'
);
^
In file included from src/esphome-mitsubishiheatpump/espmhp.h:21:0,
from src/esphome-mitsubishiheatpump/espmhp.cpp:18:
.piolibdeps/heatpump/HeatPump/src/HeatPump.h:232:10: note: candidate: void HeatPump::setSettingsChangedCallback(void (*)())
void setSettingsChangedCallback(SETTINGS_CHANGED_CALLBACK_SIGNATURE);
^
.piolibdeps/heatpump/HeatPump/src/HeatPump.h:232:10: note: no known conversion for argument 1 from 'MitsubishiHeatPump::setup()::<lambda()>' to 'void (*)()'
src/esphome-mitsubishiheatpump/espmhp.cpp:427:5: error: no matching function for call to 'HeatPump::setStatusChangedCallback(MitsubishiHeatPump::setup()::<lambda(heatpumpStatus)>)'
);
^
In file included from src/esphome-mitsubishiheatpump/espmhp.h:21:0,
from src/esphome-mitsubishiheatpump/espmhp.cpp:18:
.piolibdeps/heatpump/HeatPump/src/HeatPump.h:233:10: note: candidate: void HeatPump::setStatusChangedCallback(void (*)(heatpumpStatus))
void setStatusChangedCallback(STATUS_CHANGED_CALLBACK_SIGNATURE);
^
.piolibdeps/heatpump/HeatPump/src/HeatPump.h:233:10: note: no known conversion for argument 1 from 'MitsubishiHeatPump::setup()::<lambda(heatpumpStatus)>' to 'void (*)(heatpumpStatus)'
*** [.pioenvs/heatpump/src/esphome-mitsubishiheatpump/espmhp.cpp.o] Error 1
The issue seems to be that you can not cast a lambda function with a non-empty capture to a void fn pointer. This seems non-trivial to overcome, lots of posts about using templates however beyond my understanding.
ESPHome has changed AUTO to HEAT_COOL
AUTO still exists, but it now has a new meaning and should not be used until AUTO support for ESPHome is added to Home Assistant
Hey there,
thank you so much for the great integration in Home Assistant!
Currently I‘m missing the option to set the fan swing modes of my heatpump.
Mine currently supports a vertical and a horizontal direction in different steps. As I found in the original source code, there are options to customize these kind of settings:
heatpumpSettings settings = {
"ON", /* ON/OFF */
"FAN", /* HEAT/COOL/FAN/DRY/AUTO */
26, /* Between 16 and 31 */
"4", /* Fan speed: 1-4, AUTO, or QUIET */
"3", /* Air direction (vertical): 1-5, SWING, or AUTO —> how to set these in HA? */
"|" /* Air direction (horizontal): <<, <, |, >, >>, <>, or SWING —> how to set these in HA? */
};
As far as I understand, I‘m currently only able to set this setting: swing_mode: [OFF, VERTICAL]
Is there a way to integrate these settings via HA?
Hi,
First thanks for all the great work you have put into this! But for some reason I'm unable to get this running properly. I get repeated Home Assistant disconnections and I don't find a reason for it. It's connecting, updating other values to HA (but client component is missing details) but then it disconnects. After few seconds it reconnects and same happens again.
I have now tried two different ESP32 boards connected to CN105 and also without connection to heatpump. It builds up just fine without problems. First I was with beta version of ESPHome 1.15.x and now with official release 1.15.2.
Could you check and advice how to troubleshoot this? Is there something missing in my configuration? Or how to find the real issue in this?
Log:
[12:45:11][D][time:040]: Synchronized time: Wed Sep 23 12:45:11 2020
[12:45:12][D][api:067]: Disconnecting Home Assistant 0.115.2 (192.168.1.240)
[12:45:12][D][api.connection:604]: Client 'Home Assistant 0.115.2 (192.168.1.240)' connected successfully!
[12:45:12][D][time:040]: Synchronized time: Wed Sep 23 12:45:12 2020
[12:45:12][D][api:067]: Disconnecting Home Assistant 0.115.2 (192.168.1.240)
[12:45:12][D][api.connection:604]: Client 'Home Assistant 0.115.2 (192.168.1.240)' connected successfully!
[12:45:12][D][time:040]: Synchronized time: Wed Sep 23 12:45:12 2020
[12:45:12][D][api:067]: Disconnecting Home Assistant 0.115.2 (192.168.1.240)
[12:45:12][D][api.connection:604]: Client 'Home Assistant 0.115.2 (192.168.1.240)' connected successfully!
[12:45:13][D][time:040]: Synchronized time: Wed Sep 23 12:45:12 2020
[12:45:13][D][api:067]: Disconnecting Home Assistant 0.115.2 (192.168.1.240)
[12:45:13][D][api.connection:604]: Client 'Home Assistant 0.115.2 (192.168.1.240)' connected successfully!
Short part of Very Verbose log:
[21:26:35][VV][api.service:131]: send_text_sensor_state_response: TextSensorStateResponse {
key: 2119287227
state: '1.15.0b4 Sep 12 2020, 21:24:38'
missing_state: NO
}
[21:26:35][VV][api.service:131]: send_text_sensor_state_response: TextSensorStateResponse {
key: 1752637618
state: '192.168.1.248'
missing_state: NO
}
[21:26:35][VV][api.service:181]: send_climate_state_response: ClimateStateResponse {
key: 1293927233
mode: CLIMATE_MODE_OFF
current_temperature: nan
target_temperature: -1.69474e+38
target_temperature_low: 0
target_temperature_high: 0
away: NO
action: CLIMATE_ACTION_OFF
fan_mode: UNKNOWN
swing_mode: UNKNOWN
}
[21:26:35][D][api:067]: Disconnecting Home Assistant 0.114.4 (192.168.1.240)
[21:26:38][VV][api.service:192]: on_hello_request: HelloRequest {
client_info: 'Home Assistant 0.114.4'
}
[21:26:38][V][api.connection:588]: Hello from client: 'Home Assistant 0.114.4 (192.168.1.240)'
[21:26:38][VV][api.service:012]: send_hello_response: HelloResponse {
api_version_major: 1
api_version_minor: 3
server_info: 'mitsubishiheatpump (esphome v1.15.0b4)'
}
Notice how target_temperature is weird value at least in the log. And disconnection happens right after that. I didn't find any interesting logs from Home Assistant side that would correlate with these.
My code:
substitutions:
devicename: mitsubishiheatpump
upper_devicename: MitsubishiHeatpump
description: https://github.com/geoffdavis/esphome-mitsubishiheatpump
# cd src
# git clone https://github.com/geoffdavis/esphome-mitsubishiheatpump.git
esphome:
name: $devicename
platform: ESP32
board: esp-wrover-kit
comment: $description
libraries:
- SwiCago/HeatPump
# tried this library also, but that didn't compile without errors and seems to be included in SwiCago now
# - https://github.com/geoffdavis/HeatPump#init_fix
includes:
- src/esphome-mitsubishiheatpump
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: $devicename
password: !secret esphome_backup_ap_password
#captive_portal:
# Enable logging, but disable for uart
logger:
baud_rate: 0
# level: VERY_VERBOSE
# Web server can be removed after enabling HA API
#web_server:
# port: 80
# Sync time with Home Assistant.
time:
- platform: homeassistant
id: homeassistant_time
# Enable Home Assistant API
api:
password: !secret esphome_api_password
ota:
password: !secret ota_password
id: otapw
sensor:
- platform: uptime
name: uptime
- platform: wifi_signal
name: wifi_signal
update_interval: 120s
text_sensor:
- platform: version
name: version
- platform: wifi_info
ip_address:
name: ip
climate:
# ESP32 only - change &Serial to &Serial1 or &Serial2 and remove the
# logging:baud_rate above to allow the built-in UART0 to function for
# logging.
- platform: custom
lambda: |-
auto my_heatpump = new MitsubishiHeatPump(&Serial);
App.register_component(my_heatpump);
return {my_heatpump};
climates:
- name: "Heat Pump"
I have also tried &Serial1 and &Serial2 but those didn't have any effect on the issue.
Hi,
I tried to upgrade esphome to latest release in my esp01 in my heatpump by I got issues at compile time.
I deleted old folder with old files but the issue came up again. Here below the full log of esphome dashboard.
No issues with past release of esphome.
I think the issue is a conflict due to a double declaration of function delay() in two different librearies.
HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
Library Manager: Installing ottowinter/ESPAsyncTCP-esphome @ 1.2.3
Downloading [------------------------------------] 0%
Downloading [#######-----------------------------] 20%
Downloading [##############----------------------] 40%
Downloading [#####################---------------] 60%
Downloading [############################--------] 80%
Downloading [####################################] 100%
Unpacking [------------------------------------] 0%
Unpacking [#-----------------------------------] 3%
Unpacking [##----------------------------------] 6%
Unpacking [###---------------------------------] 9%
Unpacking [####--------------------------------] 12%
Unpacking [#####-------------------------------] 15%
Unpacking [######------------------------------] 18%
Unpacking [#######-----------------------------] 21%
Unpacking [#########---------------------------] 25%
Unpacking [##########--------------------------] 28%
Unpacking [###########-------------------------] 31%
Unpacking [############------------------------] 34%
Unpacking [#############-----------------------] 37%
Unpacking [##############----------------------] 40%
Unpacking [###############---------------------] 43%
Unpacking [################--------------------] 46%
Unpacking [##################------------------] 50%
Unpacking [###################-----------------] 53%
Unpacking [####################----------------] 56%
Unpacking [#####################---------------] 59%
Unpacking [######################--------------] 62%
Unpacking [#######################-------------] 65%
Unpacking [########################------------] 68%
Unpacking [#########################-----------] 71%
Unpacking [###########################---------] 75%
Unpacking [############################--------] 78%
Unpacking [#############################-------] 81%
Unpacking [##############################------] 84%
Unpacking [###############################-----] 87%
Unpacking [################################----] 90%
Unpacking [#################################---] 93%
Unpacking [##################################--] 96%
Unpacking [####################################] 100%
Library Manager: ESPAsyncTCP-esphome @ 1.2.3 has been installed!
Library Manager: Installing esphome/ESPAsyncWebServer-esphome @ 2.0.0
Unpacking [------------------------------------] 0%
Unpacking [#-----------------------------------] 2%
Unpacking [##----------------------------------] 5%
Unpacking [###---------------------------------] 8%
Unpacking [####--------------------------------] 11%
Unpacking [#####-------------------------------] 14%
Unpacking [######------------------------------] 17%
Unpacking [#######-----------------------------] 20%
Unpacking [########----------------------------] 22%
Unpacking [#########---------------------------] 25%
Unpacking [##########--------------------------] 28%
Unpacking [###########-------------------------] 31%
Unpacking [############------------------------] 34%
Unpacking [#############-----------------------] 37%
Unpacking [##############----------------------] 40%
Unpacking [###############---------------------] 42%
Unpacking [################--------------------] 45%
Unpacking [#################-------------------] 48%
Unpacking [##################------------------] 51%
Unpacking [###################-----------------] 54%
Unpacking [####################----------------] 57%
Unpacking [#####################---------------] 60%
Unpacking [######################--------------] 62%
Unpacking [#######################-------------] 65%
Unpacking [########################------------] 68%
Unpacking [#########################-----------] 71%
Unpacking [##########################----------] 74%
Unpacking [###########################---------] 77%
Unpacking [############################--------] 80%
Unpacking [#############################-------] 82%
Unpacking [##############################------] 85%
Unpacking [###############################-----] 88%
Unpacking [################################----] 91%
Unpacking [#################################---] 94%
Unpacking [##################################--] 97%
Unpacking [####################################] 100%
Library Manager: ESPAsyncWebServer-esphome @ 2.0.0 has been installed!
Library Manager: Installing dependencies...
Library Manager: ESPAsyncTCP-esphome @ 1.2.3 is already installed
Library Manager: Installing esphome/AsyncTCP-esphome
Unpacking [------------------------------------] 0%
Unpacking [##----------------------------------] 6%
Unpacking [####--------------------------------] 12%
Unpacking [######------------------------------] 18%
Unpacking [#########---------------------------] 25%
Unpacking [###########-------------------------] 31%
Unpacking [#############-----------------------] 37%
Unpacking [###############---------------------] 43%
Unpacking [##################------------------] 50%
Unpacking [####################----------------] 56%
Unpacking [######################--------------] 62%
Unpacking [########################------------] 68%
Unpacking [###########################---------] 75%
Unpacking [#############################-------] 81%
Unpacking [###############################-----] 87%
Unpacking [#################################---] 93%
Unpacking [####################################] 100%
Library Manager: AsyncTCP-esphome @ 1.2.2 has been installed!
Library Manager: Installing Hash
Library Manager: Installing ottowinter/AsyncMqttClient-esphome @ 0.8.6
Unpacking [------------------------------------] 0%
Unpacking [------------------------------------] 2%
Unpacking [#-----------------------------------] 4%
Unpacking [##----------------------------------] 6%
Unpacking [###---------------------------------] 9%
Unpacking [####--------------------------------] 11%
Unpacking [#####-------------------------------] 13%
Unpacking [#####-------------------------------] 16%
Unpacking [######------------------------------] 18%
Unpacking [#######-----------------------------] 20%
Unpacking [########----------------------------] 23%
Unpacking [#########---------------------------] 25%
Unpacking [##########--------------------------] 27%
Unpacking [##########--------------------------] 30%
Unpacking [###########-------------------------] 32%
Unpacking [############------------------------] 34%
Unpacking [#############-----------------------] 37%
Unpacking [##############----------------------] 39%
Unpacking [###############---------------------] 41%
Unpacking [###############---------------------] 44%
Unpacking [################--------------------] 46%
Unpacking [#################-------------------] 48%
Unpacking [##################------------------] 51%
Unpacking [###################-----------------] 53%
Unpacking [####################----------------] 55%
Unpacking [####################----------------] 58%
Unpacking [#####################---------------] 60%
Unpacking [######################--------------] 62%
Unpacking [#######################-------------] 65%
Unpacking [########################------------] 67%
Unpacking [#########################-----------] 69%
Unpacking [#########################-----------] 72%
Unpacking [##########################----------] 74%
Unpacking [###########################---------] 76%
Unpacking [############################--------] 79%
Unpacking [#############################-------] 81%
Unpacking [##############################------] 83%
Unpacking [##############################------] 86%
Unpacking [###############################-----] 88%
Unpacking [################################----] 90%
Unpacking [#################################---] 93%
Unpacking [##################################--] 95%
Unpacking [###################################-] 97%
Unpacking [####################################] 100%
Library Manager: AsyncMqttClient-esphome @ 0.8.6 has been installed!
Library Manager: Installing dependencies...
Library Manager: ESPAsyncTCP-esphome @ 1.2.3 is already installed
Library Manager: AsyncTCP-esphome @ 1.2.2 is already installed
Library Manager: Installing ottowinter/ArduinoJson-esphomelib @ 5.13.3
Downloading [------------------------------------] 0%
Downloading [#####-------------------------------] 14%
Downloading [##########--------------------------] 28%
Downloading [###############---------------------] 42%
Downloading [####################----------------] 57%
Downloading [#########################-----------] 71%
Downloading [##############################------] 85%
Downloading [####################################] 100%
Unpacking [------------------------------------] 0%
Unpacking [------------------------------------] 1%
Unpacking [------------------------------------] 2%
Unpacking [#-----------------------------------] 3%
Unpacking [#-----------------------------------] 4%
Unpacking [##----------------------------------] 5%
Unpacking [##----------------------------------] 6%
Unpacking [##----------------------------------] 7%
Unpacking [##----------------------------------] 8%
Unpacking [###---------------------------------] 8%
Unpacking [###---------------------------------] 9%
Unpacking [###---------------------------------] 10%
Unpacking [####--------------------------------] 11%
Unpacking [####--------------------------------] 12%
Unpacking [####--------------------------------] 13%
Unpacking [#####-------------------------------] 14%
Unpacking [#####-------------------------------] 15%
Unpacking [#####-------------------------------] 16%
Unpacking [######------------------------------] 16%
Unpacking [######------------------------------] 17%
Unpacking [######------------------------------] 18%
Unpacking [######------------------------------] 19%
Unpacking [#######-----------------------------] 20%
Unpacking [#######-----------------------------] 21%
Unpacking [########----------------------------] 22%
Unpacking [########----------------------------] 23%
Unpacking [########----------------------------] 24%
Unpacking [#########---------------------------] 25%
Unpacking [#########---------------------------] 26%
Unpacking [#########---------------------------] 27%
Unpacking [##########--------------------------] 28%
Unpacking [##########--------------------------] 29%
Unpacking [###########-------------------------] 30%
Unpacking [###########-------------------------] 31%
Unpacking [###########-------------------------] 32%
Unpacking [###########-------------------------] 33%
Unpacking [############------------------------] 33%
Unpacking [############------------------------] 34%
Unpacking [############------------------------] 35%
Unpacking [#############-----------------------] 36%
Unpacking [#############-----------------------] 37%
Unpacking [#############-----------------------] 38%
Unpacking [##############----------------------] 39%
Unpacking [##############----------------------] 40%
Unpacking [##############----------------------] 41%
Unpacking [###############---------------------] 41%
Unpacking [###############---------------------] 42%
Unpacking [###############---------------------] 43%
Unpacking [###############---------------------] 44%
Unpacking [################--------------------] 45%
Unpacking [################--------------------] 46%
Unpacking [#################-------------------] 47%
Unpacking [#################-------------------] 48%
Unpacking [#################-------------------] 49%
Unpacking [##################------------------] 50%
Unpacking [##################------------------] 51%
Unpacking [##################------------------] 52%
Unpacking [###################-----------------] 53%
Unpacking [###################-----------------] 54%
Unpacking [####################----------------] 55%
Unpacking [####################----------------] 56%
Unpacking [####################----------------] 57%
Unpacking [####################----------------] 58%
Unpacking [#####################---------------] 58%
Unpacking [#####################---------------] 59%
Unpacking [#####################---------------] 60%
Unpacking [######################--------------] 61%
Unpacking [######################--------------] 62%
Unpacking [######################--------------] 63%
Unpacking [#######################-------------] 64%
Unpacking [#######################-------------] 65%
Unpacking [#######################-------------] 66%
Unpacking [########################------------] 66%
Unpacking [########################------------] 67%
Unpacking [########################------------] 68%
Unpacking [########################------------] 69%
Unpacking [#########################-----------] 70%
Unpacking [#########################-----------] 71%
Unpacking [##########################----------] 72%
Unpacking [##########################----------] 73%
Unpacking [##########################----------] 74%
Unpacking [###########################---------] 75%
Unpacking [###########################---------] 76%
Unpacking [###########################---------] 77%
Unpacking [############################--------] 78%
Unpacking [############################--------] 79%
Unpacking [#############################-------] 80%
Unpacking [#############################-------] 81%
Unpacking [#############################-------] 82%
Unpacking [#############################-------] 83%
Unpacking [##############################------] 83%
Unpacking [##############################------] 84%
Unpacking [##############################------] 85%
Unpacking [###############################-----] 86%
Unpacking [###############################-----] 87%
Unpacking [###############################-----] 88%
Unpacking [################################----] 89%
Unpacking [################################----] 90%
Unpacking [################################----] 91%
Unpacking [#################################---] 91%
Unpacking [#################################---] 92%
Unpacking [#################################---] 93%
Unpacking [#################################---] 94%
Unpacking [##################################--] 95%
Unpacking [##################################--] 96%
Unpacking [###################################-] 97%
Unpacking [###################################-] 98%
Unpacking [###################################-] 99%
Unpacking [####################################] 100%
Library Manager: ArduinoJson-esphomelib @ 5.13.3 has been installed!
Library Manager: Installing git+https://github.com/SwiCago/HeatPump
git version 2.25.1
Clone in '/root/.platformio/.cache/tmp/pkg-installing-cvdg7aat' in corso...
Library Manager: HeatPump @ 1.0.0+sha.4c3e51f has been installed!
Dependency Graph
|-- 1.2.3
| |-- 1.0
|-- 2.0.0
| |-- 1.2.3
| | |-- 1.0
| |-- 1.0
| |-- 1.0
| |-- 5.13.3
|-- 1.0
|-- 0.8.6
| |-- 1.2.3
| | |-- 1.0
|-- 5.13.3
|-- 1.0.0+sha.4c3e51f
|-- 1.2
| |-- 1.0
|-- 1.1.1
| |-- 1.0
Compiling .pioenvs/heatpump-camera/src/esphome/components/binary_sensor/automation.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/binary_sensor/binary_sensor.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/binary_sensor/filter.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/climate/climate.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/climate/climate_mode.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/climate/climate_traits.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/dht/dht.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/esp8266/core.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/esp8266/gpio.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/esp8266/preferences.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/json/json_util.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/logger/logger.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/md5/md5.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mdns/mdns_component.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mdns/mdns_esp32_arduino.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mdns/mdns_esp_idf.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mqtt/custom_mqtt_device.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mqtt/mqtt_binary_sensor.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mqtt/mqtt_client.cpp.o
Compiling .pioenvs/heatpump-camera/src/esphome/components/mqtt/mqtt_climate.cpp.o
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'void MitsubishiHeatPump::hpSettingsChanged()':
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:261:17: error: call of overloaded 'delay(int)' is ambiguous
delay(10);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:261:17: note: candidates are:
In file included from .piolibdeps/heatpump-camera/ESPAsyncWebServer-esphome/src/ESPAsyncWebServer.h:24:0,
from src/esphome/components/web_server_base/web_server_base.h:9,
from src/esphome/components/captive_portal/captive_portal.h:10,
from src/esphome.h:5,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
/root/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:190:6: note: void delay(long unsigned int)
void delay(unsigned long);
^
In file included from src/esphome/components/binary_sensor/automation.h:7:0,
from src/esphome.h:2,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
src/esphome/core/hal.h:39:6: note: void esphome::delay(uint32_t)
void delay(uint32_t ms);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::setup()':
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:472:39: error: request for member 'make_preference' in 'esphome::global_preferences', which is of pointer type 'esphome::ESPPreferences*' (maybe you meant to use '->' ?)
cool_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 1);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:472:62: error: expected primary-expression before '>' token
cool_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 1);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:473:39: error: request for member 'make_preference' in 'esphome::global_preferences', which is of pointer type 'esphome::ESPPreferences*' (maybe you meant to use '->' ?)
heat_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 2);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:473:62: error: expected primary-expression before '>' token
heat_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 2);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:474:39: error: request for member 'make_preference' in 'esphome::global_preferences', which is of pointer type 'esphome::ESPPreferences*' (maybe you meant to use '->' ?)
auto_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 3);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:474:62: error: expected primary-expression before '>' token
auto_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 3);
^
Compiling .pioenvs/heatpump-camera/src/esphome/components/mqtt/mqtt_component.cpp.o
*** [.pioenvs/heatpump-camera/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o] Error 1
========================= [FAILED] Took 13.80 seconds =========================`
Thx for your time
Hi, I'm having a problem with 2 of my Wemos D1 Minis.
I'm not seeing any target temperature in HA.
I have it working with 3 units, but 2 units aren't working.
Could this be a difference between my ESP8266?
The 3 that work perfectly are these:
IZOKEE Development Board for ESP8266 ESP-12F 4M Bytes WLAN WiFi Internet Development Board Compatible with Arduino (Pack of 3) https://smile.amazon.com/dp/B076F53B6S/ref=cm_sw_r_cp_api_glt_fabc_6EJMYZJHQGA6H46PY2SW?_encoding=UTF8&psc=1
And the 2 that aren't working are these:
WLAN WiFi Internet Development Board D1 Mini NodeMcu Lua 4M Bytes Development Module Base on ESP8266 ESP-12F for Arduino Compatible with WeMos D1 Mini (2PCS) https://smile.amazon.com/dp/B07W8ZQY62/ref=cm_sw_r_cp_api_glt_fabc_NXM7W75RCKJ4QFZ9SYWT?_encoding=UTF8&psc=1
I'm not seeing any difference between these, but maybe that's the problem?
Thanks!
how can i change the precision to get decimal of temperature sensor?
ESPHome v1.15.0-dev
is mentioned in the docs as required for this project to function, but after reviewing both the releases and tags of the ESPHome repository I can't seem to find this pre-release. I also reviewed all branches, including the dev branch for any indication of v1.15.0-dev
and couldn't find anything.
While the links above point at the ESPHome repository, itself, I also checked the ESPHome Hassio Add-On repository for the same, and came up empty.
It looks like you added the requirement for v1.15.0-dev
back in March, and since then ESPHome has released v1.14.4 (5 June 2020) and v1.14.5 (23 June 2020).
Do either of these releases contain the unreleased features that you mention this library depends on, in the README?
Greetings,
varmepumpe.yaml:
substitutions:
name: varmepumpe
friendly_name: Varmepumpe
esphome:
name: ${name}
platform: ESP8266
board: d1_mini_pro
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
domain: !secret domain
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "${friendly_name} Fallback Hotspot"
password: !secret wifi_password
captive_portal:
# Enable logging
logger:
baud_rate: 0
# Enable Web server.
web_server:
port: 80
# Sync time with Home Assistant.
time:
- platform: homeassistant
id: homeassistant_time
# Enable Home Assistant API
api:
password: !secret api_password
ota:
password: !secret ota_password
# Text sensors with general information.
text_sensor:
# Expose ESPHome version as sensor.
- platform: version
name: ${name} ESPHome Version
# Sensors with general information.
sensor:
# Uptime sensor.
- platform: uptime
name: ${name} Uptime
# Use external Home Assistant Sensor
- platform: homeassistant
name: "Temperature Sensor From Home Assistant"
entity_id: sensor.under_tv_temperature
on_value:
then:
- lambda: 'id(${name}).set_remote_temperature(x);'
climate:
- platform: mitsubishi_heatpump
name: ${friendly_name}
id: ${name}
# 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
With esphome 2021.9.0, everything works
podman run --rm -v "${PWD}":/config -it docker.io/esphome/esphome:2021.9.0 run varmepumpe.yaml
INFO Reading configuration varmepumpe.yaml...
INFO Detected timezone 'UTC' with UTC offset 0
INFO Generating C++ source...
INFO Compiling app...
INFO Running: platformio run -d varmepumpe
Processing varmepumpe (board: d1_mini_pro; framework: arduino; platform: platformio/[email protected])
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 16MB Flash
PACKAGES:
- framework-arduinoespressif8266 3.20704.0 (2.7.4)
- tool-esptool 1.413.0 (4.13)
- tool-esptoolpy 1.20800.0 (2.8.0)
- toolchain-xtensa 2.40802.200502 (4.8.2)
Library Manager: Installing Update
Library Manager: Already installed, built-in library
Dependency Graph
|-- <ESPAsyncTCP-esphome> 1.2.3
| |-- <ESP8266WiFi> 1.0
|-- <ESPAsyncWebServer-esphome> 1.3.0
| |-- <ESPAsyncTCP-esphome> 1.2.3
| | |-- <ESP8266WiFi> 1.0
| |-- <Hash> 1.0
| |-- <ESP8266WiFi> 1.0
| |-- <ArduinoJson-esphomelib> 5.13.3
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
| |-- <ESP8266WiFi> 1.0
|-- <ArduinoJson-esphomelib> 5.13.3
|-- <HeatPump> 1.0.0+sha.4c3e51f
|-- <noise-c> 0.1.1
|-- <DNSServer> 1.1.1
| |-- <ESP8266WiFi> 1.0
Compiling .pioenvs/varmepumpe/src/main.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/ESP8266WiFiGeneric.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/ESP8266WiFiSTA.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/ESP8266WiFiScan.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/WiFiClient.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/WiFiClientSecureAxTLS.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/WiFiClientSecureBearSSL.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/WiFiServer.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/WiFiServerSecureAxTLS.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/WiFiServerSecureBearSSL.cpp.o
Compiling .pioenvs/varmepumpe/lib4d9/ESP8266WiFi/WiFiUdp.cpp.o
Compiling .pioenvs/varmepumpe/lib189/ESPAsyncTCP-esphome/AsyncPrinter.cpp.o
Compiling .pioenvs/varmepumpe/lib189/ESPAsyncTCP-esphome/ESPAsyncTCP.cpp.o
Compiling .pioenvs/varmepumpe/lib189/ESPAsyncTCP-esphome/ESPAsyncTCPbuffer.cpp.o
Compiling .pioenvs/varmepumpe/lib189/ESPAsyncTCP-esphome/SyncClient.cpp.o
Compiling .pioenvs/varmepumpe/lib189/ESPAsyncTCP-esphome/tcp_axtls.c.o
Compiling .pioenvs/varmepumpe/lib6f5/Hash/Hash.cpp.o
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/AsyncEventSource.cpp.o
Archiving .pioenvs/varmepumpe/lib4d9/libESP8266WiFi.a
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/AsyncWebSocket.cpp.o
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/SPIFFSEditor.cpp.o
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/WebAuthentication.cpp.o
Archiving .pioenvs/varmepumpe/lib6f5/libHash.a
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/WebHandlers.cpp.o
Archiving .pioenvs/varmepumpe/lib189/libESPAsyncTCP-esphome.a
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/WebRequest.cpp.o
In file included from /root/.platformio/lib/ESPAsyncWebServer-esphome/src/SPIFFSEditor.cpp:1:0:
/root/.platformio/lib/ESPAsyncWebServer-esphome/src/SPIFFSEditor.h:16:101: warning: 'SPIFFS' is deprecated (declared at /root/.platformio/packages/framework-arduinoespressif8266/cores/esp8266/FS.h:269): SPIFFS has been deprecated. Please consider moving to LittleFS or other filesystems. [-Wdeprecated-declarations]
SPIFFSEditor(const String& username=String(), const String& password=String(), const fs::FS& fs=SPIFFS);
^
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/WebResponses.cpp.o
Compiling .pioenvs/varmepumpe/lib768/ESPAsyncWebServer-esphome/WebServer.cpp.o
Compiling .pioenvs/varmepumpe/lib0d3/ESP8266mDNS/ESP8266mDNS.cpp.o
Compiling .pioenvs/varmepumpe/lib0d3/ESP8266mDNS/ESP8266mDNS_Legacy.cpp.o
Compiling .pioenvs/varmepumpe/lib0d3/ESP8266mDNS/LEAmDNS.cpp.o
Compiling .pioenvs/varmepumpe/lib0d3/ESP8266mDNS/LEAmDNS_Control.cpp.o
Compiling .pioenvs/varmepumpe/lib0d3/ESP8266mDNS/LEAmDNS_Helpers.cpp.o
Compiling .pioenvs/varmepumpe/lib0d3/ESP8266mDNS/LEAmDNS_Structs.cpp.o
Archiving .pioenvs/varmepumpe/lib768/libESPAsyncWebServer-esphome.a
Compiling .pioenvs/varmepumpe/lib0d3/ESP8266mDNS/LEAmDNS_Transfer.cpp.o
Compiling .pioenvs/varmepumpe/lib865/HeatPump/HeatPump.cpp.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/openssl/cipher-aesgcm.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/ref/cipher-aesgcm.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/ref/cipher-chachapoly.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/ref/dh-curve25519.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/ref/hash-blake2b.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/ref/hash-blake2s.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/ref/hash-sha256.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/sodium/cipher-aesgcm.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/sodium/cipher-chachapoly.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/sodium/dh-curve25519.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/sodium/hash-blake2b.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/backend/sodium/hash-sha256.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/aes/rijndael-alg-fst.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/blake2/blake2b.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/blake2/blake2s.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/chacha/chacha.c.o
Archiving .pioenvs/varmepumpe/lib865/libHeatPump.a
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/donna/curve25519-donna-c64.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/donna/curve25519-donna.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/donna/poly1305-donna.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/sha2/sha256.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/sha2/sha512.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/crypto/x25519/x25519.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/cipherstate.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/dhstate.c.o
Archiving .pioenvs/varmepumpe/lib0d3/libESP8266mDNS.a
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/errors.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/handshakestate.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/hashstate.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/internal.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/names.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/patterns.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/rand_os.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/rand_sodium.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/randstate.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/signstate.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/symmetricstate.c.o
Compiling .pioenvs/varmepumpe/lib39c/noise-c/protocol/util.c.o
Compiling .pioenvs/varmepumpe/lib760/DNSServer/DNSServer.cpp.o
Archiving .pioenvs/varmepumpe/libFrameworkArduinoVariant.a
Compiling .pioenvs/varmepumpe/FrameworkArduino/Crypto.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Esp-frag.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Esp-version.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Esp.cpp.o
Archiving .pioenvs/varmepumpe/lib39c/libnoise-c.a
Compiling .pioenvs/varmepumpe/FrameworkArduino/FS.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/FSnoop.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/FunctionalInterrupt.cpp.o
Archiving .pioenvs/varmepumpe/lib760/libDNSServer.a
Compiling .pioenvs/varmepumpe/FrameworkArduino/HardwareSerial.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/IPAddress.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/MD5Builder.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Print.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Schedule.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/StackThunk.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Stream.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/StreamString.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Tone.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/TypeConversion.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/Updater.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/WMath.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/WString.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/abi.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/base64.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/cbuf.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/cont.S.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/cont_util.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_app_entry_noextra4k.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_eboot_command.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_features.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_flash_quirks.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_flash_utils.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_i2s.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_main.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_noniso.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_phy.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_postmortem.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_si2c.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_sigma_delta.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_spi_utils.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_timer.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_waveform.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_wiring.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_wiring_analog.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_wiring_digital.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_wiring_pulse.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_wiring_pwm.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/core_esp8266_wiring_shift.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/crc32.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/debug.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/flash_hal.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/gdb_hooks.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/heap.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/libb64/cdecode.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/libb64/cencode.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/libc_replacements.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/sntp-lwip2.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/spiffs/spiffs_cache.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/spiffs/spiffs_check.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/spiffs/spiffs_gc.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/spiffs/spiffs_hydrogen.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/spiffs/spiffs_nucleus.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/spiffs_api.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/sqrt32.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/time.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/uart.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/umm_malloc/umm_info.c.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/umm_malloc/umm_integrity.c.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/umm_malloc/umm_local.c.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/umm_malloc/umm_malloc.cpp.o
Compiling .pioenvs/varmepumpe/FrameworkArduino/umm_malloc/umm_poison.c.o
Archiving .pioenvs/varmepumpe/libFrameworkArduino.a
Linking .pioenvs/varmepumpe/firmware.elf
Retrieving maximum program size .pioenvs/varmepumpe/firmware.elf
Checking size .pioenvs/varmepumpe/firmware.elf
RAM: [==== ] 40.4% (used 33124 bytes from 81920 bytes)
Flash: [==== ] 43.5% (used 454764 bytes from 1044464 bytes)
Building .pioenvs/varmepumpe/firmware.bin
Creating BIN file ".pioenvs/varmepumpe/firmware.bin" using "/root/.platformio/packages/framework-arduinoespressif8266/bootloaders/eboot/eboot.elf" and ".pioenvs/varmepumpe/firmware.elf"
================================================================================ [SUCCESS] Took 9.35 seconds ================================================================================
With esphome 2021.10.0, it won't compile.
podman run --rm -v "${PWD}":/config -it docker.io/esphome/esphome:2021.10.0 run varmepumpe.yaml
INFO Reading configuration varmepumpe.yaml...
INFO Detected timezone 'Etc/UTC'
INFO Generating C++ source...
INFO Compiling app...
Processing varmepumpe (board: d1_mini_pro; framework: arduino; platform: platformio/espressif8266 @ 2.6.2)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 16MB Flash
PACKAGES:
- framework-arduinoespressif8266 3.20704.0 (2.7.4)
- tool-esptool 1.413.0 (4.13)
- tool-esptoolpy 1.20800.0 (2.8.0)
- toolchain-xtensa 2.40802.200502 (4.8.2)
Library Manager: Installing ottowinter/ESPAsyncTCP-esphome @ 1.2.3
Unpacking [------------------------------------] 0%
Unpacking [#-----------------------------------] 3%
Unpacking [##----------------------------------] 6%
Unpacking [###---------------------------------] 9%
Unpacking [####--------------------------------] 12%
Unpacking [#####-------------------------------] 15%
Unpacking [######------------------------------] 18%
Unpacking [#######-----------------------------] 21%
Unpacking [#########---------------------------] 25%
Unpacking [##########--------------------------] 28%
Unpacking [###########-------------------------] 31%
Unpacking [############------------------------] 34%
Unpacking [#############-----------------------] 37%
Unpacking [##############----------------------] 40%
Unpacking [###############---------------------] 43%
Unpacking [################--------------------] 46%
Unpacking [##################------------------] 50%
Unpacking [###################-----------------] 53%
Unpacking [####################----------------] 56%
Unpacking [#####################---------------] 59%
Unpacking [######################--------------] 62%
Unpacking [#######################-------------] 65%
Unpacking [########################------------] 68%
Unpacking [#########################-----------] 71%
Unpacking [###########################---------] 75%
Unpacking [############################--------] 78%
Unpacking [#############################-------] 81%
Unpacking [##############################------] 84%
Unpacking [###############################-----] 87%
Unpacking [################################----] 90%
Unpacking [#################################---] 93%
Unpacking [##################################--] 96%
Unpacking [####################################] 100%
Library Manager: ESPAsyncTCP-esphome @ 1.2.3 has been installed!
Library Manager: Installing esphome/ESPAsyncWebServer-esphome @ 1.3.0
Unpacking [------------------------------------] 0%
Unpacking [------------------------------------] 2%
Unpacking [#-----------------------------------] 4%
Unpacking [##----------------------------------] 7%
Unpacking [###---------------------------------] 9%
Unpacking [####--------------------------------] 11%
Unpacking [#####-------------------------------] 14%
Unpacking [######------------------------------] 16%
Unpacking [######------------------------------] 19%
Unpacking [#######-----------------------------] 21%
Unpacking [########----------------------------] 23%
Unpacking [#########---------------------------] 26%
Unpacking [##########--------------------------] 28%
Unpacking [###########-------------------------] 30%
Unpacking [############------------------------] 33%
Unpacking [############------------------------] 35%
Unpacking [#############-----------------------] 38%
Unpacking [##############----------------------] 40%
Unpacking [###############---------------------] 42%
Unpacking [################--------------------] 45%
Unpacking [#################-------------------] 47%
Unpacking [##################------------------] 50%
Unpacking [##################------------------] 52%
Unpacking [###################-----------------] 54%
Unpacking [####################----------------] 57%
Unpacking [#####################---------------] 59%
Unpacking [######################--------------] 61%
Unpacking [#######################-------------] 64%
Unpacking [########################------------] 66%
Unpacking [########################------------] 69%
Unpacking [#########################-----------] 71%
Unpacking [##########################----------] 73%
Unpacking [###########################---------] 76%
Unpacking [############################--------] 78%
Unpacking [#############################-------] 80%
Unpacking [##############################------] 83%
Unpacking [##############################------] 85%
Unpacking [###############################-----] 88%
Unpacking [################################----] 90%
Unpacking [#################################---] 92%
Unpacking [##################################--] 95%
Unpacking [###################################-] 97%
Unpacking [####################################] 100%
Library Manager: ESPAsyncWebServer-esphome @ 1.3.0 has been installed!
Library Manager: Installing dependencies...
Library Manager: Installing AsyncTCP-esphome
Library Manager: Warning! More than one package has been found by AsyncTCP-esphome requirements:
- ottowinter/AsyncTCP-esphome @ 1.2.1
- esphome/AsyncTCP-esphome @ 1.2.2
Library Manager: Please specify detailed REQUIREMENTS using package owner and version (showed above) to avoid name conflicts
Unpacking [------------------------------------] 0%
Unpacking [##----------------------------------] 6%
Unpacking [####--------------------------------] 12%
Unpacking [######------------------------------] 18%
Unpacking [#########---------------------------] 25%
Unpacking [###########-------------------------] 31%
Unpacking [#############-----------------------] 37%
Unpacking [###############---------------------] 43%
Unpacking [##################------------------] 50%
Unpacking [####################----------------] 56%
Unpacking [######################--------------] 62%
Unpacking [########################------------] 68%
Unpacking [###########################---------] 75%
Unpacking [#############################-------] 81%
Unpacking [###############################-----] 87%
Unpacking [#################################---] 93%
Unpacking [####################################] 100%
Library Manager: AsyncTCP-esphome @ 1.2.1 has been installed!
Library Manager: Installing Hash
Library Manager: Already installed, built-in library
Library Manager: Installing Update
Warning! Could not find the package with 'Update' requirements for your system 'linux_x86_64'
Library Manager: Installing ottowinter/ArduinoJson-esphomelib @ 5.13.3
Unpacking [------------------------------------] 0%
Unpacking [------------------------------------] 1%
Unpacking [------------------------------------] 2%
Unpacking [#-----------------------------------] 3%
Unpacking [#-----------------------------------] 4%
Unpacking [##----------------------------------] 5%
Unpacking [##----------------------------------] 6%
Unpacking [##----------------------------------] 7%
Unpacking [##----------------------------------] 8%
Unpacking [###---------------------------------] 8%
Unpacking [###---------------------------------] 9%
Unpacking [###---------------------------------] 10%
Unpacking [####--------------------------------] 11%
Unpacking [####--------------------------------] 12%
Unpacking [####--------------------------------] 13%
Unpacking [#####-------------------------------] 14%
Unpacking [#####-------------------------------] 15%
Unpacking [#####-------------------------------] 16%
Unpacking [######------------------------------] 16%
Unpacking [######------------------------------] 17%
Unpacking [######------------------------------] 18%
Unpacking [######------------------------------] 19%
Unpacking [#######-----------------------------] 20%
Unpacking [#######-----------------------------] 21%
Unpacking [########----------------------------] 22%
Unpacking [########----------------------------] 23%
Unpacking [########----------------------------] 24%
Unpacking [#########---------------------------] 25%
Unpacking [#########---------------------------] 26%
Unpacking [#########---------------------------] 27%
Unpacking [##########--------------------------] 28%
Unpacking [##########--------------------------] 29%
Unpacking [###########-------------------------] 30%
Unpacking [###########-------------------------] 31%
Unpacking [###########-------------------------] 32%
Unpacking [###########-------------------------] 33%
Unpacking [############------------------------] 33%
Unpacking [############------------------------] 34%
Unpacking [############------------------------] 35%
Unpacking [#############-----------------------] 36%
Unpacking [#############-----------------------] 37%
Unpacking [#############-----------------------] 38%
Unpacking [##############----------------------] 39%
Unpacking [##############----------------------] 40%
Unpacking [##############----------------------] 41%
Unpacking [###############---------------------] 41%
Unpacking [###############---------------------] 42%
Unpacking [###############---------------------] 43%
Unpacking [###############---------------------] 44%
Unpacking [################--------------------] 45%
Unpacking [################--------------------] 46%
Unpacking [#################-------------------] 47%
Unpacking [#################-------------------] 48%
Unpacking [#################-------------------] 49%
Unpacking [##################------------------] 50%
Unpacking [##################------------------] 51%
Unpacking [##################------------------] 52%
Unpacking [###################-----------------] 53%
Unpacking [###################-----------------] 54%
Unpacking [####################----------------] 55%
Unpacking [####################----------------] 56%
Unpacking [####################----------------] 57%
Unpacking [####################----------------] 58%
Unpacking [#####################---------------] 58%
Unpacking [#####################---------------] 59%
Unpacking [#####################---------------] 60%
Unpacking [######################--------------] 61%
Unpacking [######################--------------] 62%
Unpacking [######################--------------] 63%
Unpacking [#######################-------------] 64%
Unpacking [#######################-------------] 65%
Unpacking [#######################-------------] 66%
Unpacking [########################------------] 66%
Unpacking [########################------------] 67%
Unpacking [########################------------] 68%
Unpacking [########################------------] 69%
Unpacking [#########################-----------] 70%
Unpacking [#########################-----------] 71%
Unpacking [##########################----------] 72%
Unpacking [##########################----------] 73%
Unpacking [##########################----------] 74%
Unpacking [###########################---------] 75%
Unpacking [###########################---------] 76%
Unpacking [###########################---------] 77%
Unpacking [############################--------] 78%
Unpacking [############################--------] 79%
Unpacking [#############################-------] 80%
Unpacking [#############################-------] 81%
Unpacking [#############################-------] 82%
Unpacking [#############################-------] 83%
Unpacking [##############################------] 83%
Unpacking [##############################------] 84%
Unpacking [##############################------] 85%
Unpacking [###############################-----] 86%
Unpacking [###############################-----] 87%
Unpacking [###############################-----] 88%
Unpacking [################################----] 89%
Unpacking [################################----] 90%
Unpacking [################################----] 91%
Unpacking [#################################---] 91%
Unpacking [#################################---] 92%
Unpacking [#################################---] 93%
Unpacking [#################################---] 94%
Unpacking [##################################--] 95%
Unpacking [##################################--] 96%
Unpacking [###################################-] 97%
Unpacking [###################################-] 98%
Unpacking [###################################-] 99%
Unpacking [####################################] 100%
Library Manager: ArduinoJson-esphomelib @ 5.13.3 has been installed!
Dependency Graph
|-- <ESPAsyncTCP-esphome> 1.2.3
| |-- <ESP8266WiFi> 1.0
|-- <ESPAsyncWebServer-esphome> 1.3.0
| |-- <ESPAsyncTCP-esphome> 1.2.3
| | |-- <ESP8266WiFi> 1.0
| |-- <Hash> 1.0
| |-- <ESP8266WiFi> 1.0
| |-- <ArduinoJson-esphomelib> 5.13.3
|-- <ESP8266WiFi> 1.0
|-- <ArduinoJson-esphomelib> 5.13.3
|-- <HeatPump> 1.0.0+sha.4c3e51f
|-- <ESP8266mDNS> 1.2
| |-- <ESP8266WiFi> 1.0
|-- <noise-c> 0.1.3
| |-- <libsodium> 1.10018.1
|-- <DNSServer> 1.1.1
| |-- <ESP8266WiFi> 1.0
Compiling .pioenvs/varmepumpe/src/esphome/components/api/api_connection.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/api_frame_helper.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/api_pb2.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/api_pb2_service.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/api_server.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/list_entities.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/proto.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/subscribe_state.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/user_services.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/api/util.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/climate/climate.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/climate/climate_mode.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/climate/climate_traits.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/esp8266/core.cpp.o
src/esphome/components/climate/climate.cpp: In constructor 'esphome::climate::Climate::Climate(const string&)':
src/esphome/components/climate/climate.cpp:443:60: warning: 'esphome::climate::Climate::away' is deprecated (declared at src/esphome/components/climate/climate.h:198): away is deprecated, use preset instead [-Wdeprecated-declarations]
Climate::Climate(const std::string &name) : EntityBase(name) {}
^
Compiling .pioenvs/varmepumpe/src/esphome/components/esp8266/gpio.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/esp8266/preferences.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/homeassistant/sensor/homeassistant_sensor.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/homeassistant/time/homeassistant_time.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/json/json_util.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/logger/logger.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/md5/md5.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/mdns/mdns_component.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/mdns/mdns_esp32_arduino.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/mdns/mdns_esp_idf.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/network/util.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/ota/ota_component.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/sensor/automation.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/sensor/filter.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/sensor/sensor.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/socket/bsd_sockets_impl.cpp.o
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'void MitsubishiHeatPump::hpSettingsChanged()':
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:261:17: error: call of overloaded 'delay(int)' is ambiguous
delay(10);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:261:17: note: candidates are:
In file included from .piolibdeps/varmepumpe/ESPAsyncWebServer-esphome/src/ESPAsyncWebServer.h:24:0,
from src/esphome/components/web_server_base/web_server_base.h:9,
from src/esphome/components/captive_portal/captive_portal.h:10,
from src/esphome.h:15,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
/config/.esphome/platformio/packages/framework-arduinoespressif8266/cores/esp8266/Arduino.h:190:6: note: void delay(long unsigned int)
void delay(unsigned long);
^
In file included from src/esphome/components/esp8266/gpio.h:5:0,
from src/esphome.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
src/esphome/core/hal.h:39:6: note: void esphome::delay(uint32_t)
void delay(uint32_t ms);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::setup()':
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:472:39: error: request for member 'make_preference' in 'esphome::global_preferences', which is of pointer type 'esphome::ESPPreferences*' (maybe you meant to use '->' ?)
cool_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 1);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:472:62: error: expected primary-expression before '>' token
cool_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 1);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:473:39: error: request for member 'make_preference' in 'esphome::global_preferences', which is of pointer type 'esphome::ESPPreferences*' (maybe you meant to use '->' ?)
heat_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 2);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:473:62: error: expected primary-expression before '>' token
heat_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 2);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:474:39: error: request for member 'make_preference' in 'esphome::global_preferences', which is of pointer type 'esphome::ESPPreferences*' (maybe you meant to use '->' ?)
auto_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 3);
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:474:62: error: expected primary-expression before '>' token
auto_storage = global_preferences.make_preference<uint8_t>(this->get_object_id_hash() + 3);
^
Compiling .pioenvs/varmepumpe/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/text_sensor/filter.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/text_sensor/text_sensor.cpp.o
Compiling .pioenvs/varmepumpe/src/esphome/components/time/automation.cpp.o
*** [.pioenvs/varmepumpe/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o] Error 1
================================================================================= [FAILED] Took 5.46 seconds =================================================================================
Hi,
A few months ago I used the "esphome-mitsubishiheatpump" example configuration shown in the wiki page to set up a controller for my mitsubishi AC. Everything worked perfectly and still does. Since I was so happy with the result I had another Mitsubishi heatpump installed and wanted to reproduce the setup and make a second ESP32 controller. I have copied the exact same configuration (with the climat component) from the working ESP32 to a new ESP32, but after upload the ESP32 can't connect (Error 111 :WARNING Can't connect to ESPHome API for living-room-ac.local).
The strange thing is that the ESP32 is still online and I can still do OTA updates. To rule out that it is an issue with my ESP32 I installed a config with the Midea Climat component for testing and this worked fine, i.e. after upload the ESP32 connects and I can see the midea climat entity in Home Assistant.
Does anyone have ideas of what the issue could be and how to resolve it? I have updated esphome from 2022.4.2 to 2022.6.2 since I installed the first ESP32 which is still working (with the mitsubishi_heatpump component), however since I have encountered this issue, I have reverted back to 2022.4.2 but same issue persist. Again the first ESP32 set up under 2022.4.2 is still working.
Config and install log below:
esphome:
name: "living-room-ac"
esp32:
board: esp32dev
framework:
type: arduino
# Enable logging
logger:
# Enable Home Assistant API
api:
ota:
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "xxxxxxx"
password: "xxxxxxxx"
captive_portal:
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
climate:
- platform: mitsubishi_heatpump
name: "${friendly_name}"
# 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: UART2
INFO Reading configuration /config/esphome/living-room-ac.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing living-room-ac (board: esp32dev; framework: arduino; platform: platformio/espressif32 @ 3.5.0)
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Library Manager: Installing git+https://github.com/SwiCago/HeatPump
git version 2.30.2
Cloning into '/data/cache/platformio/cache/tmp/pkg-installing-6fhs1nak'...
Library Manager: HeatPump @ 1.0.0+sha.ca4b8f9 has been installed!
Dependency Graph
|-- <AsyncTCP-esphome> 1.2.2
|-- <WiFi> 1.0
|-- <FS> 1.0
|-- <Update> 1.0
|-- <ESPAsyncWebServer-esphome> 2.1.0
| |-- <AsyncTCP-esphome> 1.2.2
|-- <DNSServer> 1.1.0
|-- <ESPmDNS> 1.0
|-- <HeatPump> 1.0.0+sha.ca4b8f9
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/api_connection.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/api_frame_helper.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/api_pb2.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/api_pb2_service.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/api_server.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/list_entities.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/proto.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/subscribe_state.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/api/user_services.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/climate/climate.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/climate/climate_mode.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/climate/climate_traits.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/esp32/core.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/esp32/gpio_arduino.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/esp32/gpio_idf.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/esp32/preferences.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/logger/logger.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/md5/md5.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/mdns/mdns_component.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/mdns/mdns_esp32_arduino.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/mdns/mdns_esp8266.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/mdns/mdns_esp_idf.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/network/util.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/ota/ota_backend_esp_idf.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/ota/ota_component.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/socket/bsd_sockets_impl.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/socket/lwip_raw_tcp_impl.cpp.o
In file included from src/esphome/components/climate/climate.h:7:0,
from src/esphome/core/application.h:31,
from src/esphome/components/api/api_connection.h:4,
from src/esphome.h:3,
from src/esphome/components/mitsubishi_heatpump/espmhp.h:20,
from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20:
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'void MitsubishiHeatPump::hpSettingsChanged()':
src/esphome/core/log.h:105:99: warning: format '%i' expects argument of type 'int', but argument 5 has type 'esphome::optional<esphome::climate::ClimateFanMode>' [-Wformat=]
esp_log_printf_(ESPHOME_LOG_LEVEL_INFO, tag, __LINE__, ESPHOME_LOG_FORMAT(format), ##__VA_ARGS__)
^
src/esphome/core/log.h:150:28: note: in expansion of macro 'esph_log_i'
#define ESP_LOGI(tag, ...) esph_log_i(tag, __VA_ARGS__)
^
src/esphome/components/mitsubishi_heatpump/espmhp.cpp:331:5: note: in expansion of macro 'ESP_LOGI'
ESP_LOGI(TAG, "Fan mode is: %i", this->fan_mode);
^
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/socket/socket.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/web_server_base/web_server_base.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/wifi/wifi_component.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/wifi/wifi_component_esp32_arduino.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/wifi/wifi_component_esp8266.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/components/wifi/wifi_component_esp_idf.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/application.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/color.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/component.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/component_iterator.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/controller.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/entity_base.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/helpers.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/log.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/scheduler.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/esphome/core/util.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/src/main.cpp.o
Generating partitions /data/living-room-ac/.pioenvs/living-room-ac/partitions.bin
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib528/AsyncTCP-esphome/AsyncTCP.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/ETH.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFi.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiAP.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiClient.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/lib528/libAsyncTCP-esphome.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiGeneric.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiMulti.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiSTA.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiScan.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiServer.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib64d/WiFi/WiFiUdp.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib01c/FS/FS.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib01c/FS/vfs_api.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libbc6/Update/HttpsOTAUpdate.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/lib64d/libWiFi.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libbc6/Update/Updater.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libc74/ESPAsyncWebServer-esphome/AsyncEventSource.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libc74/ESPAsyncWebServer-esphome/AsyncWebSocket.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/lib01c/libFS.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libc74/ESPAsyncWebServer-esphome/WebAuthentication.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/libbc6/libUpdate.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libc74/ESPAsyncWebServer-esphome/WebHandlers.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libc74/ESPAsyncWebServer-esphome/WebRequest.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libc74/ESPAsyncWebServer-esphome/WebResponses.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libc74/ESPAsyncWebServer-esphome/WebServer.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib333/DNSServer/DNSServer.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/lib333/libDNSServer.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/lib915/ESPmDNS/ESPmDNS.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/libdd4/HeatPump/HeatPump.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/libFrameworkArduinoVariant.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/Esp.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/libc74/libESPAsyncWebServer-esphome.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/FunctionalInterrupt.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/lib915/libESPmDNS.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/HardwareSerial.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/IPAddress.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/IPv6Address.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/MD5Builder.cpp.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/libdd4/libHeatPump.a
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/Print.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/Stream.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/StreamString.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/WMath.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/WString.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/base64.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/cbuf.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-adc.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-bt.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-cpu.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-dac.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-gpio.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-i2c.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-ledc.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-log.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-matrix.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-misc.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-psram.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-rmt.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-sigmadelta.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-spi.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-time.c.o
/data/cache/platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-spi.c: In function 'spiTransferBytesNL':
/data/cache/platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-spi.c:922:39: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
uint8_t * last_out8 = &result[c_longs-1];
^
/data/cache/platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-spi.c:923:40: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
uint8_t * last_data8 = &last_data;
^
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-timer.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-touch.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/esp32-hal-uart.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/libb64/cdecode.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/libb64/cencode.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/main.cpp.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/stdlib_noniso.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/wiring_pulse.c.o
Compiling /data/living-room-ac/.pioenvs/living-room-ac/FrameworkArduino/wiring_shift.c.o
Archiving /data/living-room-ac/.pioenvs/living-room-ac/libFrameworkArduino.a
Linking /data/living-room-ac/.pioenvs/living-room-ac/firmware.elf
RAM: [= ] 12.6% (used 41212 bytes from 327680 bytes)
Flash: [===== ] 50.2% (used 920430 bytes from 1835008 bytes)
Building /data/living-room-ac/.pioenvs/living-room-ac/firmware.bin
esp32_create_combined_bin(["/data/living-room-ac/.pioenvs/living-room-ac/firmware.bin"], ["/data/living-room-ac/.pioenvs/living-room-ac/firmware.elf"])
Wrote 0xf0be0 bytes to file /data/living-room-ac/.pioenvs/living-room-ac/firmware-factory.bin, ready to flash to offset 0x0
======================== [SUCCESS] Took 117.14 seconds ========================
INFO Successfully compiled program.
INFO Resolving IP address of living-room-ac.local
INFO -> 192.168.8.118
INFO Uploading /data/living-room-ac/.pioenvs/living-room-ac/firmware.bin (920544 bytes)
Uploading: [============================================================] 100% Done...
INFO Waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from living-room-ac.local using esphome API
WARNING Can't connect to ESPHome API for living-room-ac.local: Timeout while connecting to ('192.168.8.118', 6053)
INFO Trying to reconnect to living-room-ac.local in the background
I have been trying to get this working with considerable issues. I have installed on the Wemo D1 Mini V3 then removed the pin described in the Home Assistant. It doesn't appear that the device is getting the serial connection and communicate with the unit.
Any suggestions?
Hi!
I have successfully implemented this project on a Wemos D1 Mini running through TTL level shifter.
I can manage the AC from HA without any problem and the response is very good.
However, although the documentation says that external RF calls are also informed to HA I cannot get this to work and any RF command is not updated
I'm using last versions of HA, ESPHome and libraries
Am I missing something?
Thx in advance!
Please find config file:
substitutions:
name: ac-salon
friendly_name: AC Salon
esphome:
name: ${name}
platform: ESP8266
board: esp01_1m
# Boards tested: ESP-01S (ESP8266), Wemos D1 Mini (ESP8266); ESP32 Wifi-DevKit2
wifi:
ssid: !secret iot_ssid
password: !secret iot_password
fast_connect: true
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "${friendly_name} Fallback Hotspot"
password: !secret ap_password
# 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: !secret ota_password
# Enable Web server.
web_server:
port: 80
# Sync time with Home Assistant.
# Sync time with Home Assistant.
# MQTT
mqtt:
broker: 192.168.1.211
port: 1883
topic_prefix: ${name}
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
# Sensors with general information.
sensor:
# Uptime sensor.
- platform: uptime
name: ${name} Uptime
# WiFi Signal sensor.
- platform: wifi_signal
name: ${name} WiFi Signal
update_interval: 15s
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
climate:
- platform: mitsubishi_heatpump
name: "${friendly_name}"
# Optional
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
I've been trying the different options for fan mode for the units I have (MSZ-GL09NA) and it seems that choosing any setting other than Auto causes them to shut off. I would guess the issue is with the core library but wanted to see if anyone else here sees the same.
ESPhome 0.15.1 is out and with it the extra states that this library uses. The README and installation instructions should be updated.
Hi there
Do you support the setRemoteTemperature option from the SwiCago libraries?
Thanks
David
Melcloud reports the energy usage of my heat pump in 0.1 kWh increments. I expect the actual granularity to be much better locally. Could this be read by an ESP? Do you know if anyone has looked into this? Probably only the newer units have this functionality.
Model SVZ-KP24NA, ESP-01S (also tried Wemos D1), Comms to the heatpump (setting desired temperature) worked fine, once baud rate changed to 2400bps (8E1). Current temperature was always reporting "nan". Used logic analyzer, packets were only being sent to the heatpump when a setting changed in the web interface - no polling was occurring.
Explicitly defined the "optional" update_interval parameter, problem solved.
Thanks for the code, geoffdavis. Happy to buy you a beverage of your choice is you post a donate link?
Everything works until I change fan_mode through esphome. Then it abruptly disconnects from wifi. Here's the end of the log with very_verbose loglevel:
[15:20:51][VV][api.service:519]: on_climate_command_request: ClimateCommandRequest {
key: 680327010
has_mode: NO
mode: CLIMATE_MODE_OFF
has_target_temperature: NO
target_temperature: 0
has_target_temperature_low: NO
target_temperature_low: 0
has_target_temperature_high: NO
target_temperature_high: 0
has_legacy_away: NO
legacy_away: NO
has_fan_mode: YES
fan_mode: CLIMATE_FAN_MEDIUM
has_swing_mode: NO
swing_mode: CLIMATE_SWING_OFF
has_custom_fan_mode: NO
custom_fan_mode: ''
h
[15:20:51][D][climate:010]: 'esphome-mitsubishi' - Setting
[15:20:51][D][climate:023]: Fan: MEDIUM
INFO 10.0.0.221: Ping timed out!
INFO Disconnected from ESPHome API for 192.168.1.221
WARNING Disconnected from API
Checking from Melcloud, the fan_mode doesn't change. The same happens with all speeds.
I am using a nodemcu-v2 / devkitC board without pullup resistors.
Tried both with and without a level shifter in between.
Tried default baud rate and 9600 - which seemed to work better.
I observed the available fan_modes (in esphome log) by stepping through them all (controlling through Melcloud).
All values can be read, and are updated when controlling with IR or Melcloud. Setting temperature and climate mode works with esphome.
Here's my config:
esphome:
name: esphome-mitsubishi
build_path: .esphome/build/esphome-mitsubishi
platformio_options: {}
includes: []
libraries: []
name_add_mac_suffix: false
esp32:
board: nodemcu-32s
framework:
version: 1.0.6
source: ~3.10006.0
platform_version: platformio/espressif32 @ 3.5.0
type: arduino
variant: ESP32
external_components:
- source:
url: https://github.com/geoffdavis/esphome-mitsubishiheatpump.git
type: git
refresh: 1d
components: all
climate:
- platform: mitsubishi_heatpump
name: esphome-mitsubishi
id: hp
hardware_uart: UART0
baud_rate: 9600
supports:
fan_mode:
- AUTO
- HIGH
- MIDDLE
- MEDIUM
- LOW
- DIFFUSE
mode:
- HEAT_COOL
- COOL
- HEAT
- DRY
- FAN_ONLY
swing_mode:
- 'OFF'
- VERTICAL
disabled_by_default: false
visual: {}
update_interval: 500ms
sensor:
- platform: homeassistant
name: Temperature Sensor From Home Assistant
entity_id: sensor.temperature_to_heatpump
on_value:
- then:
- lambda: !lambda |-
id(hp).set_remote_temperature(x);
disabled_by_default: false
force_update: false
accuracy_decimals: 1
state_class: ''
- platform: wifi_signal
name: esphome-mitsubishi RSSI
device_class: signal_strength
state_class: measurement
update_interval: 300s
disabled_by_default: true
entity_category: diagnostic
force_update: false
unit_of_measurement: dBm
accuracy_decimals: 0
wifi:
domain: .lan
reboot_timeout: 15min
output_power: 10.0
power_save_mode: NONE
manual_ip:
static_ip: 192.168.1.221
gateway: 192.168.1.1
subnet: 255.255.255.0
dns1: 192.168.1.1
dns2: 0.0.0.0
ap:
ssid: esphome-mitsubishi AP
password: !secret 'webserver_password'
ap_timeout: 1min
fast_connect: false
networks:
- ssid: !secret 'webserver_username'
password: !secret 'webserver_password'
priority: 0.0
use_address: 192.168.1.221
captive_portal: {}
logger:
baud_rate: 115200
hardware_uart: UART1
level: VERY_VERBOSE
tx_buffer_size: 512
deassert_rts_dtr: false
logs: {}
api:
password: !secret 'esphome_api_password'
port: 6053
reboot_timeout: 15min
ota:
password: !secret 'esphome_api_password'
safe_mode: true
port: 3232
reboot_timeout: 5min
num_attempts: 10
web_server:
port: 80
auth:
username: !secret 'webserver_username'
password: !secret 'webserver_password'
css_url: https://esphome.io/_static/webserver-v1.min.css
js_url: https://esphome.io/_static/webserver-v1.min.js
include_internal: false
ota: true
time:
- platform: homeassistant
id: homeassistant_time
timezone: EET-2EEST,M3.5.0/3,M10.5.0/4
update_interval: 15min
mdns:
disabled: false
button:
- platform: restart
name: Restart
entity_category: config
disabled_by_default: false
device_class: restart
- platform: shutdown
name: Shutdown
entity_category: config
disabled_by_default: false
icon: mdi:power
Hi all, wanted to check if anyone has tried this with a Mitsubishi Flow Temp. Controller? Model PAC-IF062B0E. It has a CN105 Port and I've managed to flash a D1 mini and get it to power from the CN105 Port but not receiving any valid data. Was hoping for basic readings such as temperatures etc.
I'm told it works with MELCloud. It uses the Ecodan FTC5 control panel.
Any thoughts or suggestions greatly appreciated :-D
I tried to flash my D1 mini clones. They are working fine with my other esphome projects
All I get from ESPHome Flasher after flashig was a loop of:
[21:53:57][21:53:57] ets Jan 8 2013,rst cause:4, boot mode:(3,6)
[21:53:57]
[21:53:57]wdt reset
[21:53:57]load 0x4010f000, len 3460, room 16
[21:53:57]tail 4
[21:53:57]chksum 0xcc
[21:53:57]load 0x3fff20b8, len 40, room 4
[21:53:57]tail 4
[21:53:57]chksum 0xc9
[21:53:57]csum 0xc9
[21:53:57]v0006c7f0
[21:53:57]~ld
So I went back and turn on uart logging and get a little bit more info during the loop, each iteration was 15 seconds apart:
[23:32:45][C][MitsubishiHeatPump:449]: h[23:32:45] ets Jan 8 2013,rst cause:4, boot mode:(3,6)
[23:32:45]
[23:32:45]wdt reset
[23:32:45]load 0x4010f000, len 3460, room 16
[23:32:45]tail 4
[23:32:45]chksum 0xcc
[23:32:45]load 0x3fff20b8, len 40, room 4
[23:32:45]tail 4
[23:32:45]chksum 0xc9
[23:32:45]csum 0xc9
[23:32:45]v0006f640
[23:32:45]~ld
[23:32:45][I][logger:214]: Log initialized
[23:32:45][C][ota:461]: There have been 7 suspected unsuccessful boot attempts.
[23:32:45][I][app:029]: Running through setup()...
[23:32:45][I][MitsubishiHeatPump:062]: ESPHome MitsubishiHeatPump version 2.4.0
[23:32:45][C][MitsubishiHeatPump:416]: Setting up UART...
[23:32:45][W][MitsubishiHeatPump:048]: You're using the same serial port for logging and the MitsubishiHeatPump component. Please disable logging over the serial port by setting logger:baud_rate to 0.
[23:32:45][C][MitsubishiHeatPump:428]: Intializing new HeatPump object.
[23:33:00][C][MitsubishiHeatPump:449]: h[23:33:00] ets Jan 8 2013,rst cause:4, boot mode:(3,6)
[23:33:00]
[23:33:00]wdt reset
[23:33:00]load 0x4010f000, len 3460, room 16
[23:33:00]tail 4
[23:33:00]chksum 0xcc
[23:33:00]load 0x3fff20b8, len 40, room 4
[23:33:00]tail 4
[23:33:00]chksum 0xc9
[23:33:00]csum 0xc9
[23:33:00]v0006f640
[23:33:00]~ld
[23:33:00][I][logger:214]: Log initialized
[23:33:00][C][ota:461]: There have been 8 suspected unsuccessful boot attempts.
[23:33:00][I][app:029]: Running through setup()...
[23:33:00][I][MitsubishiHeatPump:062]: ESPHome MitsubishiHeatPump version 2.4.0
[23:33:00][C][MitsubishiHeatPump:416]: Setting up UART...
[23:33:00][W][MitsubishiHeatPump:048]: You're using the same serial port for logging and the MitsubishiHeatPump component. Please disable logging over the serial port by setting logger:baud_rate to 0.
[23:33:00][C][MitsubishiHeatPump:428]: Intializing new HeatPump object.
Any idead on how to fix this?
Hi Geoff.
Im using the latest 1.19.4 esphome addon together with ha.
I get some deprecation warnings - can they be fixed?
All the best
Jacob
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
PACKAGES:
According to the readme in SwiCago/HeatPump, settings made externally to the heat pump settings via the IR remote will be automatically reverted each time sync()
is called unless enableExternalUpdate()
is called to allow it.
Is that the case with this implementation or am I missing something? Thanks so much for your work on this!
Can u include your project inside official esphome?
By creating a custom component that can be used directly with:
climate:
- platform: mitsubishiheatpump
.....
Hello, not sure if this is an actual issue, but when I change mode from off to cool, the machine reacts immediately and the LED turns on showing that the command was successful. However the thermostat UI (I'm using simple thermostat) can take ~15 seconds to reflect that change. Is there a polling interval that can be adjustment to make it more responsive, or could this be an issue with the UI component?
Good morning, I have changed esphome to their repository, since the community repository will be obsolete. I have given to update the wemos that I use for the air conditioning and I get the error that I told you next. the wemos works well, but I imagine that for future updates it could fail and I don't know how to correct it, nor could I clear it myself. A greeting
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::setup()': src/esphome/components/mitsubishi_heatpump/espmhp.cpp:459:56: error: no matching function for call to 'HeatPump::connect(HardwareSerial*, int&)' 459 | if (hp->connect(this->get_hw_serial_(), this->baud_)) { | ^ In file included from src/esphome/components/mitsubishi_heatpump/espmhp.h:23, from src/esphome.h:29, from src/esphome/components/mitsubishi_heatpump/espmhp.h:20, from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20: /data/aire-acondicionado/.piolibdeps/aire-acondicionado/HeatPump/src/HeatPump.h:237:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*)' 237 | bool connect(HardwareSerial *serial); | ^~~~~~~ /data/aire-acondicionado/.piolibdeps/aire-acondicionado/HeatPump/src/HeatPump.h:237:10: note: candidate expects 1 argument, 2 provided /data/aire-acondicionado/.piolibdeps/aire-acondicionado/HeatPump/src/HeatPump.h:238:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*, int, int)' 238 | bool connect(HardwareSerial *serial, int rx, int tx); | ^~~~~~~ /data/aire-acondicionado/.piolibdeps/aire-acondicionado/HeatPump/src/HeatPump.h:238:10: note: candidate expects 3 arguments, 2 provided /data/aire-acondicionado/.piolibdeps/aire-acondicionado/HeatPump/src/HeatPump.h:239:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*, int, int, int)' 239 | bool connect(HardwareSerial *serial, int bitrate, int rx, int tx); | ^~~~~~~ /data/aire-acondicionado/.piolibdeps/aire-acondicionado/HeatPump/src/HeatPump.h:239:10: note: candidate expects 4 arguments, 2 provided Compiling /data/aire-acondicionado/.pioenvs/aire-acondicionado/src/esphome/core/controller.cpp.o *** [/data/aire-acondicionado/.pioenvs/aire-acondicionado/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o] Error 1 ========================= [FAILED] Took 17.18 seconds =========================
I also leave you my configuration in case it helps, but I already said, I have it working perfectly, it only gives me the error when clicking update now
esphome:
name: aire-acondicionado
platform: ESP8266
board: d1_mini
# Enable Home Assistant API
api:
password: !secret api_password
services:
- service: set_remote_temperature
variables:
temperature: float
then:
- lambda: 'id(aire).set_remote_temperature(temperature);'
- service: use_internal_temperature
then:
- lambda: 'id(aire).set_remote_temperature(0);'
#reboot_timeout: 2min
ota:
password: !secret ota_password
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
use_address: aire.lan
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Aire Acondicionado"
password: "rfh9RiL5ZNy9"
mdns:
disabled: true
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 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: Aire Acondicionado ESPHome Version
# Expose WiFi information as sensors.
- platform: wifi_info
ip_address:
name: Aire Acondicionado IP
ssid:
name: Aire Acondicionado SSID
bssid:
name: Aire Acondicionado BSSID
external_components:
- source: github://geoffdavis/esphome-mitsubishiheatpump
climate:
- platform: mitsubishi_heatpump
name: "Aire Acondicionado"
id: aire
#baud_rate: 9600
# 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
update_interval: 500ms
# Sensors with general information.
sensor:
# Uptime sensor.
- platform: uptime
name: Aire Acondicionado Uptime
# WiFi Signal sensor.
- platform: wifi_signal
name: Aire Acondicionado WiFi Signal
update_interval: 60s
- platform: homeassistant
name: "Temperatura Media de Casa"
entity_id: sensor.temperatura_media_casa
on_value:
then:
- lambda: 'id(aire).set_remote_temperature(x);'
force_update: true
accuracy_decimals: 2`
```
Sorry for my English, I'm Spanish and I use a translator
Line 93 of climate.py indicates a specific version of the underlying SwiCago/HeatPump library to use. Is there a good reason for this? The library has had a few communication-improving commits recently in the last two months which, due to this version-locking, aren't reflected in esphome-based heat-pump controllers.
It looks like the SwiCago/HeatPump library has been updated a bit, and is now at a 1.0.0 release. We should support that version. There are API changes, so some work will need to be done to this library.
I followed the new instructions to use external temperature sensor, works great, but i believe it extremely important to add to instructions that if you are using a HA sensor and your HA is set to use Fahrenheit as mine is, you have to convert the ha value before passing it to HeatPump
as
- lambda: 'id(hp).set_remote_temperature((x-32) * 5/9);'
instead of
- lambda: 'id(hp).set_remote_temperature(x);'
however, even after conversation, I still ha r some issue, the current temperature reported, keeps switching back and forth from external to builtin, I suspect that the rounding may cuase it to get value that set it back, I am now sure though
Firstly, thanks for getting this into esphome.
I get the following using esphome 1.14.3. My setup is per the README.md with my own names substituted for denheatpump. If there is any more info you need, let me know.
INFO Reading configuration /config/bedroom_heat_pump.yaml...
INFO Detected timezone 'NZST' with UTC offset 12 and daylight savings time from 27 September 02:00:00 to 04 April 03:00:00
INFO Generating C++ source...
INFO Core config or version changed, cleaning build files...
INFO Compiling app...
INFO Running: platformio run -d /config/bedroomheatpump
Processing bedroomheatpump (board: esp01_1m; framework: arduino; platform: [email protected])
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
Looking for ESPAsyncTCP-esphome library in registry
LibraryManager: Installing id=6757 @ 1.2.2
ESPAsyncTCP-esphome @ 1.2.2 has been successfully installed!
LibraryManager: Installing HeatPump
git version 2.17.1
Cloning into '/config/bedroomheatpump/.piolibdeps/bedroomheatpump/_tmp_installing-2q2rushb-package'...
HeatPump @ 15467bf has been successfully installed!
Looking for ESPAsyncWebServer-esphome library in registry
LibraryManager: Installing id=6758 @ 1.2.6
Downloading [#####-------------------------------] 16%
Downloading [######------------------------------] 16%
Downloading [######------------------------------] 17%
Downloading [######------------------------------] 18%
Downloading [######------------------------------] 19%
Downloading [#######-----------------------------] 19%
Downloading [#######-----------------------------] 20%
Downloading [#######-----------------------------] 21%
Downloading [#######-----------------------------] 22%
Downloading [########----------------------------] 22%
Downloading [########----------------------------] 23%
Downloading [########----------------------------] 24%
Downloading [#########---------------------------] 25%
Downloading [#########---------------------------] 26%
Downloading [#########---------------------------] 27%
Downloading [##########--------------------------] 27%
Downloading [##########--------------------------] 28%
Downloading [##########--------------------------] 29%
Downloading [##########--------------------------] 30%
Downloading [###########-------------------------] 30%
Downloading [###########-------------------------] 31%
Downloading [###########-------------------------] 32%
Downloading [############------------------------] 33%
Downloading [############------------------------] 34%
Downloading [############------------------------] 35%
Downloading [############------------------------] 36%
Downloading [#############-----------------------] 36%
Downloading [#############-----------------------] 37%
Downloading [#############-----------------------] 38%
Downloading [##############----------------------] 39%
Downloading [##############----------------------] 40%
Downloading [##############----------------------] 41%
Downloading [###############---------------------] 41%
Downloading [###############---------------------] 42%
Downloading [###############---------------------] 43%
Downloading [###############---------------------] 44%
Downloading [################--------------------] 44%
Downloading [################--------------------] 45%
Downloading [################--------------------] 46%
Downloading [#################-------------------] 47%
Downloading [#################-------------------] 48%
Downloading [#################-------------------] 49%
Downloading [##################------------------] 50%
Downloading [##################------------------] 51%
Downloading [##################------------------] 52%
Downloading [###################-----------------] 53%
Downloading [###################-----------------] 54%
Downloading [###################-----------------] 55%
Downloading [####################----------------] 55%
Downloading [####################----------------] 56%
Downloading [####################----------------] 57%
Downloading [####################----------------] 58%
Downloading [#####################---------------] 58%
Downloading [#####################---------------] 59%
Downloading [#####################---------------] 60%
Downloading [######################--------------] 61%
Downloading [######################--------------] 62%
Downloading [######################--------------] 63%
Downloading [#######################-------------] 63%
Downloading [#######################-------------] 64%
Downloading [#######################-------------] 65%
Downloading [#######################-------------] 66%
Downloading [########################------------] 66%
Downloading [########################------------] 67%
Downloading [########################------------] 68%
Downloading [########################------------] 69%
Downloading [#########################-----------] 69%
Downloading [#########################-----------] 70%
Downloading [#########################-----------] 71%
Downloading [#########################-----------] 72%
Downloading [##########################----------] 72%
Downloading [##########################----------] 73%
Downloading [##########################----------] 74%
Downloading [###########################---------] 75%
Downloading [###########################---------] 76%
Downloading [###########################---------] 77%
Downloading [############################--------] 77%
Downloading [############################--------] 78%
Downloading [############################--------] 79%
Downloading [############################--------] 80%
Downloading [#############################-------] 80%
Downloading [#############################-------] 81%
Downloading [#############################-------] 81% 00:00:00
Downloading [#############################-------] 82% 00:00:00
Downloading [##############################------] 83% 00:00:00
Downloading [##############################------] 84% 00:00:00
Downloading [##############################------] 85% 00:00:00
Downloading [##############################------] 86% 00:00:00
Downloading [###############################-----] 86% 00:00:00
Downloading [###############################-----] 87% 00:00:00
Downloading [###############################-----] 88% 00:00:00
Downloading [################################----] 89% 00:00:00
Downloading [################################----] 90% 00:00:00
Downloading [################################----] 91% 00:00:00
Downloading [#################################---] 91% 00:00:00
Downloading [#################################---] 92% 00:00:00
Downloading [#################################---] 93% 00:00:00
Downloading [#################################---] 94% 00:00:00
Downloading [##################################--] 94% 00:00:00
Downloading [##################################--] 95% 00:00:00
Downloading [##################################--] 96% 00:00:00
Downloading [###################################-] 97% 00:00:00
Downloading [###################################-] 98% 00:00:00
Downloading [###################################-] 99% 00:00:00
Downloading [####################################] 100%
ESPAsyncWebServer-esphome @ 1.2.6 has been successfully installed!
LibraryManager: Installing id=6757
Looking for AsyncTCP-esphome library in registry
LibraryManager: Installing id=6798
AsyncTCP-esphome @ 1.1.1 has been successfully installed!
Looking for ArduinoJson-esphomelib library in registry
LibraryManager: Installing id=3837 @ 5.13.3
Downloading [############################--------] 77%
Downloading [############################--------] 79%
Downloading [#############################-------] 81% 00:00:00
Downloading [##############################------] 83% 00:00:00
Downloading [##############################------] 85% 00:00:00
Downloading [###############################-----] 87% 00:00:00
Downloading [################################----] 88% 00:00:00
Downloading [################################----] 90% 00:00:00
Downloading [#################################---] 92% 00:00:00
Downloading [##################################--] 94% 00:00:00
Downloading [##################################--] 96% 00:00:00
Downloading [###################################-] 98% 00:00:00
Downloading [####################################] 100%
ArduinoJson-esphomelib @ 5.13.3 has been successfully installed!
Dependency Graph
|-- <ESPAsyncTCP-esphome> 1.2.2
| |-- <ESP8266WiFi> 1.0
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
| |-- <ESP8266WiFi> 1.0
|-- <HeatPump> 1.0.0 #15467bf
|-- <ESPAsyncWebServer-esphome> 1.2.6
| |-- <ESPAsyncTCP-esphome> 1.2.2
| | |-- <ESP8266WiFi> 1.0
| |-- <Hash> 1.0
| |-- <ESP8266WiFi> 1.0
| |-- <ArduinoJson-esphomelib> 5.13.3
|-- <ArduinoJson-esphomelib> 5.13.3
|-- <DNSServer> 1.1.1
| |-- <ESP8266WiFi> 1.0
Compiling .pioenvs/bedroomheatpump/src/esphome-mitsubishiheatpump/espmhp.cpp.o
Compiling .pioenvs/bedroomheatpump/src/esphome/components/api/api_connection.cpp.o
Compiling .pioenvs/bedroomheatpump/src/esphome/components/api/api_pb2.cpp.o
Compiling .pioenvs/bedroomheatpump/src/esphome/components/api/api_pb2_service.cpp.o
Compiling .pioenvs/bedroomheatpump/src/esphome/components/api/api_server.cpp.o
src/esphome-mitsubishiheatpump/espmhp.cpp: In member function 'virtual esphome::climate::ClimateTraits MitsubishiHeatPump::traits()':
src/esphome-mitsubishiheatpump/espmhp.cpp:72:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_dry_mode'
traits.set_supports_dry_mode(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:73:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_only_mode'
traits.set_supports_fan_only_mode(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:79:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_on'
traits.set_supports_fan_mode_on(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:80:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_off'
traits.set_supports_fan_mode_off(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:81:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_auto'
traits.set_supports_fan_mode_auto(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:82:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_focus'
traits.set_supports_fan_mode_focus(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:83:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_diffuse'
traits.set_supports_fan_mode_diffuse(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:84:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_low'
traits.set_supports_fan_mode_low(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:85:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_medium'
traits.set_supports_fan_mode_medium(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:86:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_middle'
traits.set_supports_fan_mode_middle(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:87:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_high'
traits.set_supports_fan_mode_high(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:88:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_off'
traits.set_supports_swing_mode_off(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:89:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_both'
traits.set_supports_swing_mode_both(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:90:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_vertical'
traits.set_supports_swing_mode_vertical(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:91:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_horizontal'
traits.set_supports_swing_mode_horizontal(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::control(const esphome::climate::ClimateCall&)':
src/esphome-mitsubishiheatpump/espmhp.cpp:116:18: error: 'CLIMATE_MODE_DRY' is not a member of 'esphome::climate'
case climate::CLIMATE_MODE_DRY:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:126:18: error: 'CLIMATE_MODE_FAN_ONLY' is not a member of 'esphome::climate'
case climate::CLIMATE_MODE_FAN_ONLY:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:149:14: error: 'const class esphome::climate::ClimateCall' has no member named 'get_fan_mode'
if (call.get_fan_mode().has_value()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:152:22: error: 'const class esphome::climate::ClimateCall' has no member named 'get_fan_mode'
switch(*call.get_fan_mode()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:153:18: error: 'CLIMATE_FAN_OFF' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_OFF:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:157:18: error: 'CLIMATE_FAN_DIFFUSE' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_DIFFUSE:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:161:18: error: 'CLIMATE_FAN_LOW' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_LOW:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:165:18: error: 'CLIMATE_FAN_MEDIUM' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_MEDIUM:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:169:18: error: 'CLIMATE_FAN_MIDDLE' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_MIDDLE:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:173:18: error: 'CLIMATE_FAN_HIGH' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_HIGH:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:177:18: error: 'CLIMATE_FAN_ON' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_ON:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:178:18: error: 'CLIMATE_FAN_AUTO' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_AUTO:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:187:14: error: 'const class esphome::climate::ClimateCall' has no member named 'get_swing_mode'
if (call.get_swing_mode().has_value()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:191:22: error: 'const class esphome::climate::ClimateCall' has no member named 'get_swing_mode'
switch(*call.get_swing_mode()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:192:18: error: 'CLIMATE_SWING_OFF' is not a member of 'esphome::climate'
case climate::CLIMATE_SWING_OFF:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:196:18: error: 'CLIMATE_SWING_VERTICAL' is not a member of 'esphome::climate'
case climate::CLIMATE_SWING_VERTICAL:
^
src/esphome-mitsubishiheatpump/espmhp.cpp: In member function 'void MitsubishiHeatPump::hpSettingsChanged()':
src/esphome-mitsubishiheatpump/espmhp.cpp:235:26: error: 'CLIMATE_MODE_DRY' is not a member of 'esphome::climate'
this->mode = climate::CLIMATE_MODE_DRY;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:239:26: error: 'CLIMATE_MODE_FAN_ONLY' is not a member of 'esphome::climate'
this->mode = climate::CLIMATE_MODE_FAN_ONLY;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:261:15: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_DIFFUSE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:261:26: error: 'CLIMATE_FAN_DIFFUSE' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_DIFFUSE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:263:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_LOW;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:263:30: error: 'CLIMATE_FAN_LOW' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_LOW;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:265:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_MEDIUM;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:265:30: error: 'CLIMATE_FAN_MEDIUM' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_MEDIUM;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:267:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_MIDDLE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:267:30: error: 'CLIMATE_FAN_MIDDLE' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_MIDDLE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:269:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_HIGH;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:269:30: error: 'CLIMATE_FAN_HIGH' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_HIGH;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:271:15: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_AUTO;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:271:26: error: 'CLIMATE_FAN_AUTO' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_AUTO;
^
In file included from src/esphome/components/api/api_server.h:6:0,
from src/esphome/components/api/api_connection.h:7,
from src/esphome.h:2,
from src/esphome-mitsubishiheatpump/espmhp.h:18,
from src/esphome-mitsubishiheatpump/espmhp.cpp:15:
src/esphome-mitsubishiheatpump/espmhp.cpp:273:44: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
ESP_LOGI(TAG, "Fan mode is: %i", this->fan_mode);
^
src/esphome/core/log.h:101:88: note: in definition of macro 'esph_log_i'
esp_log_printf_(ESPHOME_LOG_LEVEL_INFO, tag, __LINE__, ESPHOME_LOG_FORMAT(format), ##__VA_ARGS__)
^
src/esphome-mitsubishiheatpump/espmhp.cpp:273:5: note: in expansion of macro 'ESP_LOGI'
ESP_LOGI(TAG, "Fan mode is: %i", this->fan_mode);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:282:15: error: 'class MitsubishiHeatPump' has no member named 'swing_mode'
this->swing_mode = climate::CLIMATE_SWING_VERTICAL;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:282:28: error: 'CLIMATE_SWING_VERTICAL' is not a member of 'esphome::climate'
this->swing_mode = climate::CLIMATE_SWING_VERTICAL;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:285:15: error: 'class MitsubishiHeatPump' has no member named 'swing_mode'
this->swing_mode = climate::CLIMATE_SWING_OFF;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:285:28: error: 'CLIMATE_SWING_OFF' is not a member of 'esphome::climate'
this->swing_mode = climate::CLIMATE_SWING_OFF;
^
In file included from src/esphome/components/api/api_server.h:6:0,
from src/esphome/components/api/api_connection.h:7,
from src/esphome.h:2,
from src/esphome-mitsubishiheatpump/espmhp.h:18,
from src/esphome-mitsubishiheatpump/espmhp.cpp:15:
src/esphome-mitsubishiheatpump/espmhp.cpp:287:46: error: 'class MitsubishiHeatPump' has no member named 'swing_mode'
ESP_LOGI(TAG, "Swing mode is: %i", this->swing_mode);
^
src/esphome/core/log.h:101:88: note: in definition of macro 'esph_log_i'
esp_log_printf_(ESPHOME_LOG_LEVEL_INFO, tag, __LINE__, ESPHOME_LOG_FORMAT(format), ##__VA_ARGS__)
^
src/esphome-mitsubishiheatpump/espmhp.cpp:287:5: note: in expansion of macro 'ESP_LOGI'
ESP_LOGI(TAG, "Swing mode is: %i", this->swing_mode);
^
Compiling .pioenvs/bedroomheatpump/src/esphome/components/api/list_entities.cpp.o
*** [.pioenvs/bedroomheatpump/src/esphome-mitsubishiheatpump/espmhp.cpp.o] Error 1
========================= [FAILED] Took 21.05 seconds =========================
Since the release of esphome 2021.12 the homeassistant time platform has to be removed in order to get heatpump firmware to build. It would appear something needs to be namespace qualified.
Compiling .pioenvs/hptest/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o Compiling .pioenvs/hptest/src/esphome/components/network/util.cpp.o Compiling .pioenvs/hptest/src/esphome/components/ota/ota_backend_arduino_esp32.cpp.o Compiling .pioenvs/hptest/src/esphome/components/ota/ota_backend_arduino_esp8266.cpp.o Compiling .pioenvs/hptest/src/esphome/components/ota/ota_backend_esp_idf.cpp.o Compiling .pioenvs/hptest/src/esphome/components/ota/ota_component.cpp.o In file included from /piolibs/ESPAsyncWebServer-esphome/src/ESPAsyncWebServer.h:27:0, from src/esphome/components/web_server_base/web_server_base.h:9, from src/esphome/components/web_server/web_server.h:7, from src/esphome.h:52, from src/esphome/components/mitsubishi_heatpump/espmhp.h:20, from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20: /config/.esphome/platformio/packages/framework-arduinoespressif8266/cores/esp8266/FS.h: In static member function 'static time_t fs::FS::_defaultTimeCB()': /config/.esphome/platformio/packages/framework-arduinoespressif8266/cores/esp8266/FS.h:243:49: error: reference to 'time' is ambiguous static time_t _defaultTimeCB(void) { return time(NULL); } ^ In file included from /config/.esphome/platformio/packages/framework-arduinoespressif8266/tools/sdk/libc/xtensa-lx106-elf/include/wchar.h:4:0, from /config/.esphome/platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/cwchar:44, from /config/.esphome/platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/bits/postypes.h:40, from /config/.esphome/platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/bits/char_traits.h:40, from /config/.esphome/platformio/packages/toolchain-xtensa/xtensa-lx106-elf/include/c++/4.8.2/string:40, from src/esphome/core/component.h:3, from src/esphome/components/api/api_connection.h:3, from src/esphome.h:2, from src/esphome/components/mitsubishi_heatpump/espmhp.h:20, from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20: /config/.esphome/platformio/packages/framework-arduinoespressif8266/tools/sdk/libc/xtensa-lx106-elf/include/../include/time.h:53:18: note: candidates are: time_t time(time_t*) time_t _EXFUN(time, (time_t *_timer)); ^ In file included from src/esphome/components/homeassistant/time/homeassistant_time.h:4:0, from src/esphome.h:24, from src/esphome/components/mitsubishi_heatpump/espmhp.h:20, from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20: src/esphome/components/time/real_time_clock.h:11:16: note: namespace esphome::time { } namespace time { ^ Compiling .pioenvs/hptest/src/esphome/components/sensor/automation.cpp.o Compiling .pioenvs/hptest/src/esphome/components/sensor/filter.cpp.o Compiling .pioenvs/hptest/src/esphome/components/sensor/sensor.cpp.o *** [.pioenvs/hptest/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o] Error 1 ========================= [FAILED] Took 23.74 seconds =========================
I'm getting a bunch of compile errors on a Wemos D1 Mini:
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
Looking for ESPAsyncTCP-esphome library in registry
LibraryManager: Installing id=6757 @ 1.2.2
ESPAsyncTCP-esphome @ 1.2.2 has been successfully installed!
LibraryManager: Installing HeatPump
git version 2.17.1
Cloning into '/home/ubuntu/config/aircon/.piolibdeps/aircon/tmp_installing-3vo3y5bm-package'...
HeatPump @ abe6343 has been successfully installed!
Looking for ESPAsyncWebServer-esphome library in registry
LibraryManager: Installing id=6758 @ 1.2.6
ESPAsyncWebServer-esphome @ 1.2.6 has been successfully installed!
LibraryManager: Installing id=6757
Looking for AsyncTCP-esphome library in registry
LibraryManager: Installing id=6798
AsyncTCP-esphome @ 1.1.1 has been successfully installed!
Looking for AsyncMqttClient-esphome library in registry
LibraryManager: Installing id=6759 @ 0.8.4
AsyncMqttClient-esphome @ 0.8.4 has been successfully installed!
LibraryManager: Installing id=6757 @ ^1.2.2
LibraryManager: Installing id=6798 @ ^1.1.1
Looking for ArduinoJson-esphomelib library in registry
LibraryManager: Installing id=3837 @ 5.13.3
ArduinoJson-esphomelib @ 5.13.3 has been successfully installed!
Dependency Graph
|-- 1.2.2
| |-- 1.0
|-- 1.0
|-- 1.2
| |-- 1.0
|-- 1.0.0 #abe6343
|-- 1.2.6
| |-- 1.2.2
| | |-- 1.0
| |-- 1.0
| |-- 1.0
| |-- 5.13.3
|-- 0.8.4
| |-- 1.2.2
| | |-- 1.0
|-- 5.13.3
|-- 1.1.1
| |-- 1.0
Compiling .pioenvs/aircon/src/esphome-mitsubishiheatpump/espmhp.cpp.o
Compiling .pioenvs/aircon/src/esphome/components/captive_portal/captive_portal.cpp.o
Compiling .pioenvs/aircon/src/esphome/components/climate/climate.cpp.o
Compiling .pioenvs/aircon/src/esphome/components/climate/climate_mode.cpp.o
Compiling .pioenvs/aircon/src/esphome/components/climate/climate_traits.cpp.o
Compiling .pioenvs/aircon/src/esphome/components/json/json_util.cpp.o
Compiling .pioenvs/aircon/src/esphome/components/logger/logger.cpp.o
src/esphome-mitsubishiheatpump/espmhp.cpp: In member function 'virtual esphome::climate::ClimateTraits MitsubishiHeatPump::traits()':
src/esphome-mitsubishiheatpump/espmhp.cpp:72:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_dry_mode'
traits.set_supports_dry_mode(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:73:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_only_mode'
traits.set_supports_fan_only_mode(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:79:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_on'
traits.set_supports_fan_mode_on(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:80:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_off'
traits.set_supports_fan_mode_off(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:81:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_auto'
traits.set_supports_fan_mode_auto(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:82:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_focus'
traits.set_supports_fan_mode_focus(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:83:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_diffuse'
traits.set_supports_fan_mode_diffuse(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:84:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_low'
traits.set_supports_fan_mode_low(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:85:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_medium'
traits.set_supports_fan_mode_medium(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:86:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_middle'
traits.set_supports_fan_mode_middle(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:87:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_fan_mode_high'
traits.set_supports_fan_mode_high(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:88:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_off'
traits.set_supports_swing_mode_off(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:89:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_both'
traits.set_supports_swing_mode_both(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:90:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_vertical'
traits.set_supports_swing_mode_vertical(true);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:91:12: error: 'class esphome::climate::ClimateTraits' has no member named 'set_supports_swing_mode_horizontal'
traits.set_supports_swing_mode_horizontal(false);
^
src/esphome-mitsubishiheatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::control(const esphome::climate::ClimateCall&)':
src/esphome-mitsubishiheatpump/espmhp.cpp:116:18: error: 'CLIMATE_MODE_DRY' is not a member of 'esphome::climate'
case climate::CLIMATE_MODE_DRY:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:126:18: error: 'CLIMATE_MODE_FAN_ONLY' is not a member of 'esphome::climate'
case climate::CLIMATE_MODE_FAN_ONLY:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:149:14: error: 'const class esphome::climate::ClimateCall' has no member named 'get_fan_mode'
if (call.get_fan_mode().has_value()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:152:22: error: 'const class esphome::climate::ClimateCall' has no member named 'get_fan_mode'
switch(*call.get_fan_mode()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:153:18: error: 'CLIMATE_FAN_OFF' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_OFF:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:157:18: error: 'CLIMATE_FAN_DIFFUSE' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_DIFFUSE:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:161:18: error: 'CLIMATE_FAN_LOW' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_LOW:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:165:18: error: 'CLIMATE_FAN_MEDIUM' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_MEDIUM:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:169:18: error: 'CLIMATE_FAN_MIDDLE' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_MIDDLE:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:173:18: error: 'CLIMATE_FAN_HIGH' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_HIGH:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:177:18: error: 'CLIMATE_FAN_ON' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_ON:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:178:18: error: 'CLIMATE_FAN_AUTO' is not a member of 'esphome::climate'
case climate::CLIMATE_FAN_AUTO:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:187:14: error: 'const class esphome::climate::ClimateCall' has no member named 'get_swing_mode'
if (call.get_swing_mode().has_value()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:191:22: error: 'const class esphome::climate::ClimateCall' has no member named 'get_swing_mode'
switch(*call.get_swing_mode()) {
^
src/esphome-mitsubishiheatpump/espmhp.cpp:192:18: error: 'CLIMATE_SWING_OFF' is not a member of 'esphome::climate'
case climate::CLIMATE_SWING_OFF:
^
src/esphome-mitsubishiheatpump/espmhp.cpp:196:18: error: 'CLIMATE_SWING_VERTICAL' is not a member of 'esphome::climate'
case climate::CLIMATE_SWING_VERTICAL:
^
src/esphome-mitsubishiheatpump/espmhp.cpp: In member function 'void MitsubishiHeatPump::hpSettingsChanged()':
src/esphome-mitsubishiheatpump/espmhp.cpp:235:26: error: 'CLIMATE_MODE_DRY' is not a member of 'esphome::climate'
this->mode = climate::CLIMATE_MODE_DRY;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:239:26: error: 'CLIMATE_MODE_FAN_ONLY' is not a member of 'esphome::climate'
this->mode = climate::CLIMATE_MODE_FAN_ONLY;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:261:15: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_DIFFUSE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:261:26: error: 'CLIMATE_FAN_DIFFUSE' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_DIFFUSE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:263:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_LOW;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:263:30: error: 'CLIMATE_FAN_LOW' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_LOW;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:265:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_MEDIUM;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:265:30: error: 'CLIMATE_FAN_MEDIUM' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_MEDIUM;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:267:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_MIDDLE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:267:30: error: 'CLIMATE_FAN_MIDDLE' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_MIDDLE;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:269:19: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_HIGH;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:269:30: error: 'CLIMATE_FAN_HIGH' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_HIGH;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:271:15: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
this->fan_mode = climate::CLIMATE_FAN_AUTO;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:271:26: error: 'CLIMATE_FAN_AUTO' is not a member of 'esphome::climate'
this->fan_mode = climate::CLIMATE_FAN_AUTO;
^
In file included from src/esphome/components/logger/logger.h:4:0,
from src/esphome.h:9,
from src/esphome-mitsubishiheatpump/espmhp.h:17,
from src/esphome-mitsubishiheatpump/espmhp.cpp:15:
src/esphome-mitsubishiheatpump/espmhp.cpp:273:44: error: 'class MitsubishiHeatPump' has no member named 'fan_mode'
ESP_LOGI(TAG, "Fan mode is: %i", this->fan_mode);
^
src/esphome/core/log.h:101:88: note: in definition of macro 'esph_log_i'
esp_log_printf(ESPHOME_LOG_LEVEL_INFO, tag, LINE, ESPHOME_LOG_FORMAT(format), ##VA_ARGS)
^
src/esphome-mitsubishiheatpump/espmhp.cpp:273:5: note: in expansion of macro 'ESP_LOGI'
ESP_LOGI(TAG, "Fan mode is: %i", this->fan_mode);
^
src/esphome-mitsubishiheatpump/espmhp.cpp:282:15: error: 'class MitsubishiHeatPump' has no member named 'swing_mode'
this->swing_mode = climate::CLIMATE_SWING_VERTICAL;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:282:28: error: 'CLIMATE_SWING_VERTICAL' is not a member of 'esphome::climate'
this->swing_mode = climate::CLIMATE_SWING_VERTICAL;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:285:15: error: 'class MitsubishiHeatPump' has no member named 'swing_mode'
this->swing_mode = climate::CLIMATE_SWING_OFF;
^
src/esphome-mitsubishiheatpump/espmhp.cpp:285:28: error: 'CLIMATE_SWING_OFF' is not a member of 'esphome::climate'
this->swing_mode = climate::CLIMATE_SWING_OFF;
^
In file included from src/esphome/components/logger/logger.h:4:0,
from src/esphome.h:9,
from src/esphome-mitsubishiheatpump/espmhp.h:17,
from src/esphome-mitsubishiheatpump/espmhp.cpp:15:
src/esphome-mitsubishiheatpump/espmhp.cpp:287:46: error: 'class MitsubishiHeatPump' has no member named 'swing_mode'
ESP_LOGI(TAG, "Swing mode is: %i", this->swing_mode);
^
src/esphome/core/log.h:101:88: note: in definition of macro 'esph_log_i'
esp_log_printf_(ESPHOME_LOG_LEVEL_INFO, tag, LINE, ESPHOME_LOG_FORMAT(format), ##VA_ARGS)
^
src/esphome-mitsubishiheatpump/espmhp.cpp:287:5: note: in expansion of macro 'ESP_LOGI'
ESP_LOGI(TAG, "Swing mode is: %i", this->swing_mode);
^
*** [.pioenvs/aircon/src/esphome-mitsubishiheatpump/espmhp.cpp.o] Error 1
========================= [FAILED] Took 24.53 seconds =========================`
Hi,
I performed the official upgrade of ESPHome core library to last version in subject and immediately after the entities are not anymore available for the device integrated in HomeAssitant.
What is strange is that during the compiling a lot fo WARNING for deprecated methods are risen in addition to the CHANGE LOG related to this new version or ESPHome some changes on HeatPump management have been included.
Can you please check it ?
thx
I'm running ESPHome on a random D1 Mini Pro.
Every time I update it, rebuild the firmware, and upload to the controller, it loses the ability to communicate with Mitsu.
A manual reset at this point always fixes things.
I bodged up a switch to do it, like
switch:
- platform: restart
name: Mitsubishi AC Controller Reset
so it's no longer a problem. And I can maybe later add some hook to firmware update, so I don't have to remember.
But raising this here in case anyone has ideas or wants to share their experience.
Hello
First of all thanks for your work :)
I have managed to make it work in a duct machine, everything works except that the temperature of the room comes out as "Current Temperature: nan°C"
Do you know if there is any way to solve this and take the value of the machine???
In Home assistant I don't get the temperature of the room either.
I've tried with the service in home assistant, but I can't get anything, I'm sure I'm doing something wrong....
api:
services:
- service: use_internal_temperature
then:
- lambda: 'id(hp).set_remote_temperature(0);'
This is the climate I use:
climate:
Thank you very much :)
I have noticed an issue where if you turn a unit on then immediately turn it off then it appears to go off but if you check 20 or 30 secs later you see it changes back on. This is very undesirable to a user because, e.g. he sees that he has turned the unit off via the HA Android app, but in fact he has not so it continues to operate (and will later re-display back to on but only after he has left the app). I think this issue arises due to PR #7 (from issue #6) which "fakes" the state change to the anticipated target state before the unit has actually done it but in many cases if you do the change quickly the unit just ignores it. I think it is better to always represent the actual unit state to the user, even if it means the UI response is somewhat slow. Ultimately, the slow response is just how the heat pump works so there is little you can do about that.
I see when configuring the component, I can specify UART0, UART1 or UART2 in the YAML. So I can do something like:
climate:
# TX GPIO17
# RX GPIO16
- platform: mitsubishi_heatpump
name: attic
hardware_uart: UART2
update_interval: 500ms
And I'm hoping it will use GPIO pins 16 and 17 since that seems to be the default mapping, at least based on the diagram of the module pin-outs and other trivia I've seen on the internets.
But is there a way to explicitly specify the pins? It seems like you can do this on the ESPHome uart
component... but I didn't see any means there to indicate which UART the configuration was intended for? I'm trying to ensure that I get at least this part correct before I open up the mini-split system and start connecting things. Debugging is going to be difficult since serial I/O not working just causes watchdog timer reboots.
And its seems these days that the ESPHome serial stuff knows how to do even parity, so wouldn't it be great if the ESPHome UART component could be used, rather than calling the Arduino drivers inside the library. If the serial port isn't connected, I get endless watchdog errors and reboots
[11:42:18][I][MitsubishiHeatPump:063]: ESPHome MitsubishiHeatPump version 2.4.0
[11:42:18][C][MitsubishiHeatPump:416]: Setting up UART...
[11:42:18][C][MitsubishiHeatPump:428]: Intializing new HeatPump object.
[11:42:18][C][MitsubishiHeatPump:455]: hw_serial(0x3ffc1c40) is &Serial(0x3ffc1c78)? NO
[11:42:18][C][MitsubishiHeatPump:457]: Calling hp->connect(0x3ffc1c40)
[11:42:23]E (10418) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
[11:42:23]E (10418) task_wdt: - loopTask (CPU 1)
[11:42:23]E (10418) task_wdt: Tasks currently running:
[11:42:23]E (10418) task_wdt: CPU 0: IDLE0
[11:42:23]E (10418) task_wdt: CPU 1: IDLE1
[11:42:23]E (10418) task_wdt: Aborting.
which is going to make debugging difficult.. I suppose "fixing" this means re-factoring the library that's used to abstract out the serial I/O code somehow..
Hi
I just implemented this today and the HA <-> D1 side of things is fine. But no comms between the d1 and the mitsi, is there something that needs to be enabled on the mitsi itself to enable the serial comms? I couldn't see any jumpers or dipswitches on the pcb, but just checking.
I couldn't find a suitable connector so had to solder to the back of the cn105 connector and I have continuity on each conductor and no shorts between conductors. I tried to hook up a logic analyser to the rx/tx pins but couldn't see anything but this is also first time using it so I 'm probably doing it completely wrong, and it's just one of those cheap kingst units.
If there is nothing that needs to be enabled on the mitsi itself, my next step will be to try and locate the correct connector, and then use the pullups and a logic level shifter, but others have reported that that's not necessary with the d1 mini, and I'm using a genuine lolin wemos d1 mini.
Any help would be greatly appreciated. Cheers
`
lounge_ac Uptime | 3176 s | |
---|---|---|
lounge_ac WiFi Signal | -60 dB | |
lounge_ac ESPHome Version | 1.15.3 Jan 1 2021, 10:40:08 | |
lounge_ac IP | 10.1.0.51 | |
lounge_ac SSID | Tasmota_WAP | |
lounge_ac BSSID | 64:66:B3:A2:DF:72 |
[D][MitsubishiHeatPump:231]: control - Was HeatPump updated? YES�
[D][climate:262]: 'Lounge AC' - Sending state:�
[D][climate:265]: Mode: COOL�
[D][climate:267]: Action: IDLE�
[D][climate:270]: Fan Mode: AUTO�
[D][climate:273]: Swing Mode: OFF�
[D][climate:276]: Current Temperature: nan°C�
[D][climate:282]: Target Temperature: 24.50°C�
[D][sensor:092]: 'lounge_ac WiFi Signal': Sending state -61.00000 dB with 0 decimals of accuracy�
[D][sensor:092]: 'lounge_ac Uptime': Sending state 175.96899 s with 0 decimals of accuracy�
[D][sensor:092]: 'lounge_ac WiFi Signal': Sending state -61.00000 dB with 0 decimals of accuracy�
[D][sensor:092]: 'lounge_ac Uptime': Sending state 235.96899 s with 0 decimals of accuracy�
[D][sensor:092]: 'lounge_ac WiFi Signal': Sending state -50.00000 dB with 0 decimals of accuracy�
[D][sensor:092]: 'lounge_ac Uptime': Sending state 295.96201 s with 0 decimals of accuracy�
[D][sensor:092]: 'lounge_ac WiFi Signal': Sending state -55.00000 dB with 0 decimals of accuracy�
[D][sensor:092]: 'lounge_ac Uptime': Sending state 355.96201 s with 0 decimals of accuracy�`
Hi,
yesteraday was made a commit (SwiCago/HeatPump@b5ebb61) that removed the following function:
bool HeatPump::connect(HardwareSerial *serial, int bitrate)
Now, trying to install we got the following errors:
src/esphome/components/mitsubishi_heatpump/espmhp.cpp: In member function 'virtual void MitsubishiHeatPump::setup()': src/esphome/components/mitsubishi_heatpump/espmhp.cpp:459:56: error: no matching function for call to 'HeatPump::connect(HardwareSerial*, int&)' 459 | if (hp->connect(this->get_hw_serial_(), this->baud_)) { | ^ In file included from src/esphome/components/mitsubishi_heatpump/espmhp.h:23, from src/esphome.h:18, from src/esphome/components/mitsubishi_heatpump/espmhp.h:20, from src/esphome/components/mitsubishi_heatpump/espmhp.cpp:20: .piolibdeps/heatpump-camera/HeatPump/src/HeatPump.h:237:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*)' 237 | bool connect(HardwareSerial *serial); | ^~~~~~~ .piolibdeps/heatpump-camera/HeatPump/src/HeatPump.h:237:10: note: candidate expects 1 argument, 2 provided .piolibdeps/heatpump-camera/HeatPump/src/HeatPump.h:238:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*, int, int)' 238 | bool connect(HardwareSerial *serial, int rx, int tx); | ^~~~~~~ .piolibdeps/heatpump-camera/HeatPump/src/HeatPump.h:238:10: note: candidate expects 3 arguments, 2 provided .piolibdeps/heatpump-camera/HeatPump/src/HeatPump.h:239:10: note: candidate: 'bool HeatPump::connect(HardwareSerial*, int, int, int)' 239 | bool connect(HardwareSerial *serial, int bitrate, int rx, int tx); | ^~~~~~~ .piolibdeps/heatpump-camera/HeatPump/src/HeatPump.h:239:10: note: candidate expects 4 arguments, 2 provided Compiling .pioenvs/heatpump-camera/src/esphome/components/uptime/uptime_sensor.cpp.o *** [.pioenvs/heatpump-camera/src/esphome/components/mitsubishi_heatpump/espmhp.cpp.o] Error 1
Thx
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.