Closed ryssel closed 1 year ago
I can report the same errors on HA v2022.10.4, ESPHome add-on v2022.9.4.
This is an ESP32 I had already set up with both Airthings Wave and the Danfoss Eco in previous versions (can't remember exactly, but think ESPhome was around 2022.4 last time I compiled), but wanting to make a few changes, I could no longer compile in the new ESPHome version.
I get this error trying to install esphome-danfoss-eco. It has been working perfectly i think it broke with Home Assistant 2022.10.0
src/esphome/components/danfoss_eco/properties.cpp: In member function 'bool esphome::danfoss_eco::DeviceProperty::read_request(esphome::ble_client::BLEClient)': src/esphome/components/danfoss_eco/properties.cpp:29:59: error: 'class esphome::ble_client::BLEClient' has no member named 'gattc_if' auto status = esp_ble_gattc_read_char(client->gattc_if, ^ src/esphome/components/danfoss_eco/properties.cpp:30:59: error: 'class esphome::ble_client::BLEClient' has no member named 'conn_id' client->conn_id, ^ In file included from src/esphome/components/climate/climate.h:7:0, from src/esphome/components/danfoss_eco/properties.cpp:1: src/esphome/components/danfoss_eco/properties.cpp: In member function 'bool esphome::danfoss_eco::WritableProperty::write_request(esphome::ble_client::BLEClient, uint8_t, uint16_t)': src/esphome/components/danfoss_eco/properties.cpp:41:148: warning: 'std::__cxx11::string esphome::hexencode(const uint8_t, uint32_t)' is deprecated: hexencode() is deprecated, use format_hex_pretty() instead. [-Wdeprecated-declarations] ESP_LOGD(TAG, "[%s] writerequest: handle=%#04x, data=%s", this->component->get_name().c_str(), this->handle, hexencode(data, data_len).c_str()); ^ src/esphome/core/log.h:92:89: note: in definition of macro 'esph_log_d' esp_logprintf(ESPHOME_LOG_LEVEL_DEBUG, tag, LINE, ESPHOME_LOG_FORMAT(format), ##VA_ARGS) ^ src/esphome/components/danfoss_eco/properties.cpp:41:13: note: in expansion of macro 'ESP_LOGD' ESP_LOGD(TAG, "[%s] writerequest: handle=%#04x, data=%s", this->component->get_name().c_str(), this->handle, hexencode(data, data_len).c_str()); ^ In file included from src/esphome/components/climate/climate.h:5:0, from src/esphome/components/danfoss_eco/properties.cpp:1: src/esphome/core/helpers.h:654:20: note: declared here inline std::string hexencode(const uint8_t data, uint32_t len) { return format_hex_pretty(data, len); } ^ src/esphome/components/danfoss_eco/properties.cpp:43:60: error: 'class esphome::ble_client::BLEClient' has no member named 'gattc_if' auto status = esp_ble_gattc_write_char(client->gattc_if, ^ src/esphome/components/danfoss_eco/properties.cpp:44:60: error: 'class esphome::ble_client::BLEClient' has no member named 'conn_id' client->conn_id, ^ src/esphome/components/danfoss_eco/device.cpp: In member function 'virtual void esphome::danfoss_eco::Device::setup()': src/esphome/components/danfoss_eco/device.cpp:22:36: error: 'class esphome::ble_client::BLEClient' has no member named 'address' copy_address(this->parent()->address, this->parent()->remote_bda); ^ src/esphome/components/danfoss_eco/device.cpp:22:61: error: 'class esphome::ble_client::BLEClient' has no member named 'remote_bda' copy_address(this->parent()->address, this->parent()->remote_bda); ^ src/esphome/components/danfoss_eco/device.cpp: In member function 'virtual void esphome::danfoss_eco::Device::gattc_event_handler(esp_gattc_cb_event_t, esp_gatt_if_t, esp_ble_gattc_cb_param_t)': src/esphome/components/danfoss_eco/device.cpp:99:63: error: 'class esphome::ble_client::BLEClient' has no member named 'remote_bda' if (memcmp(param->connect.remote_bda, this->parent()->remote_bda, 6) != 0) ^ In file included from src/esphome/components/climate/climate.h:7:0, from src/esphome/components/danfoss_eco/device.h:4, from src/esphome/components/danfoss_eco/device.cpp:1: src/esphome/components/danfoss_eco/device.cpp: In member function 'virtual void esphome::danfoss_eco::Device::set_secret_key(uint8_t*, bool)': src/esphome/components/danfoss_eco/device.cpp:268:108: warning: 'std::cxx11::string esphome::hexencode(const uint8_t*, uint32_t)' is deprecated: hexencode() is deprecated, use format_hex_pretty() instead. [-Wdeprecated-declarations] ESP_LOGD(TAG, "[%s] secret_key bytes: %s", this->get_name().c_str(), hexencode(key, SECRET_KEY_LENGTH).c_str()); ^ src/esphome/core/log.h:92:89: note: in definition of macro 'esph_log_d' esp_logprintf(ESPHOME_LOG_LEVEL_DEBUG, tag, LINE, ESPHOME_LOG_FORMAT(format), ##VA_ARGS__) ^ src/esphome/components/danfoss_eco/device.cpp:268:7: note: in expansion of macro 'ESP_LOGD' ESP_LOGD(TAG, "[%s] secret_key bytes: %s", this->get_name().c_str(), hexencode(key, SECRET_KEY_LENGTH).c_str()); ^ In file included from src/esphome/core/automation.h:5:0, from src/esphome/components/esp32_ble_tracker/esp32_ble_tracker.h:4, from src/esphome/components/esp32_ble_client/ble_client_base.h:5, from src/esphome/components/ble_client/ble_client.h:3, from src/esphome/components/danfoss_eco/device.h:3, from src/esphome/components/danfoss_eco/device.cpp:1: src/esphome/core/helpers.h:654:20: note: declared here inline std::string hexencode(const uint8_t *data, uint32_t len) { return format_hex_pretty(data, len); } ^ Compiling /data/wemos-esp32/.pioenvs/wemos-esp32/src/esphome/components/socket/bsd_sockets_impl.cpp.o [/data/wemos-esp32/.pioenvs/wemos-esp32/src/esphome/components/danfoss_eco/properties.cpp.o] Error 1 [/data/wemos-esp32/.pioenvs/wemos-esp32/src/esphome/components/danfoss_eco/device.cpp.o] Error 1