geoffdavis / esphome-mitsubishiheatpump

ESPHome Climate Component for Mitsubishi Heatpumps using direct serial connection
BSD 2-Clause "Simplified" License
583 stars 156 forks source link

Wemos D1 Mini compile errors #3

Closed matthew-larner closed 4 years ago

matthew-larner commented 4 years ago

I'm getting a bunch of compile errors on a Wemos D1 Mini:

`INFO Reading configuration config/aircon.yaml... INFO Generating C++ source... INFO Compiling app... INFO Running: platformio run -d config/aircon Processing aircon (board: d1_mini; framework: arduino; platform: espressif8266@2.2.3)

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_logprintf(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_logprintf(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 =========================`

DeltaAngle commented 4 years ago

Your compile error is due to using the wrong version of ESPHome. You'll need to use the Dev version of ESPHome and compile again.

You can find instructions for getting the latest Dev version here, https://esphome.io/guides/faq.html#how-do-i-use-the-latest-bleeding-edge-version

jamescadd commented 4 years ago

Any indication which release of ESPHome this will be included in? Would rather not install dev if I can avoid it.

mihalski commented 4 years ago

FYI you can have both the normal and dev versions of the add-on installed side by side and use the dev one exclusively for this.

jamescadd commented 4 years ago

@mihalski it would be ideal to have both versions installed, any info on how to use the dev version just for the heat pump? There was a mention about port conflicts in the docs somewhere that made me hesitate to try this.

mihalski commented 4 years ago

@jamescadd The way I have done it is simply to install both adding and go to the sidebar tab of the dev one only when managing devices I want on the dev branch.

geoffdavis commented 4 years ago

I haven't seen anyone post a dev timeline on the Esphome project, and the Discord channel was pretty cagey about timing.

I had to pin ESPHome to an [older commit|https://github.com/esphome/esphome/commit/8b92456ded97c236846e959fb3797f51b9dda4fc] due to a recent breaking change, and need to revisit that.

geoffdavis commented 4 years ago

Looks like my need to pin a commit is no longer an issue. I'm back on mainline "Dev" again.