I am not able to update the ESPHOME anymore and receiving following error during compilation:
`INFO ESPHome 2023.10.6
INFO Reading configuration /config/esphome/esphome-web-695195.yaml...
WARNING 'opentherm_gateway': Using the '_' (underscore) character in the hostname is discouraged as it can cause problems with some DHCP and local name services. For more information, see https://esphome.io/guides/faq.html#why-shouldn-t-i-use-underscores-in-my-device-name
INFO Generating C++ source...
INFO Compiling app...
Processing opentherm_gateway (board: d1_mini; framework: arduino; platform: platformio/espressif8266@3.2.0)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
Dependency Graph
|-- ESPAsyncTCP-esphome @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 1.1.1
|-- ESP8266WiFi @ 1.0
|-- ESP8266mDNS @ 1.2
|-- ArduinoJson @ 6.18.5
Compiling .pioenvs/opentherm_gateway/src/main.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/LwipIntfCB.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/MD5Builder.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/Print.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/Schedule.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/StackThunk.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/Stream.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/StreamSend.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/Tone.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/TypeConversion.cpp.o
/config/esphome/esphome-web-695195.yaml: In lambda function:
/config/esphome/esphome-web-695195.yaml:60:68: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [25])'
60 | ot->boiler_water_temp = new Sensor("Boiler Water Temperature");
| ^
In file included from src/esphome/core/controller.h:17,
from src/esphome/components/api/api_server.h:9,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()'
59 | explicit Sensor();
| ^~~~~~
src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)'
57 | class Sensor : public EntityBase, public EntityBase_DeviceClass, public EntityBase_UnitOfMeasurement {
| ^~~~~~
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [25]' to 'const esphome::sensor::Sensor&'
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)'
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [25]' to 'esphome::sensor::Sensor&&'
/config/esphome/esphome-web-695195.yaml:64:57: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [16])'
64 | ot->dhw_temperature = new Sensor("DHW Temperature");
| ^
In file included from src/esphome/core/controller.h:17,
from src/esphome/components/api/api_server.h:9,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()'
59 | explicit Sensor();
| ^~~~~~
src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)'
57 | class Sensor : public EntityBase, public EntityBase_DeviceClass, public EntityBase_UnitOfMeasurement {
| ^~~~~~
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [16]' to 'const esphome::sensor::Sensor&'
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)'
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [16]' to 'esphome::sensor::Sensor&&'
/config/esphome/esphome-web-695195.yaml:68:75: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [25])'
68 | ot->return_water_temperature = new Sensor("Return Water Temperature");
| ^
In file included from src/esphome/core/controller.h:17,
from src/esphome/components/api/api_server.h:9,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()'
59 | explicit Sensor();
| ^~~~~~
src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)'
57 | class Sensor : public EntityBase, public EntityBase_DeviceClass, public EntityBase_UnitOfMeasurement {
| ^~~~~~
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [25]' to 'const esphome::sensor::Sensor&'
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)'
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [25]' to 'esphome::sensor::Sensor&&'
/config/esphome/esphome-web-695195.yaml:72:77: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [26])'
72 | ot->relative_modulation_level = new Sensor("Relative Modulation Level");
| ^
In file included from src/esphome/core/controller.h:17,
from src/esphome/components/api/api_server.h:9,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()'
59 | explicit Sensor();
| ^~~~~~
src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)'
57 | class Sensor : public EntityBase, public EntityBase_DeviceClass, public EntityBase_UnitOfMeasurement {
| ^~~~~~
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [26]' to 'const esphome::sensor::Sensor&'
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)'
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [26]' to 'esphome::sensor::Sensor&&'
/config/esphome/esphome-web-695195.yaml:75:61: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [18])'
75 | ot->ch_water_pressure = new Sensor("CH Water Pressure");
| ^
In file included from src/esphome/core/controller.h:17,
from src/esphome/components/api/api_server.h:9,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()'
59 | explicit Sensor();
| ^~~~~~
src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)'
57 | class Sensor : public EntityBase, public EntityBase_DeviceClass, public EntityBase_UnitOfMeasurement {
| ^~~~~~
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [18]' to 'const esphome::sensor::Sensor&'
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)'
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [18]' to 'esphome::sensor::Sensor&&'
/config/esphome/esphome-web-695195.yaml:80:73: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [24])'
80 | ot->outside_air_temperature = new Sensor("Outside Air Temperature");
| ^
In file included from src/esphome/core/controller.h:17,
from src/esphome/components/api/api_server.h:9,
from src/esphome/components/api/api_connection.h:6,
from src/esphome.h:3,
from src/main.cpp:3:
src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()'
59 | explicit Sensor();
| ^~~~~~
src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)'
57 | class Sensor : public EntityBase, public EntityBase_DeviceClass, public EntityBase_UnitOfMeasurement {
| ^~~~~~
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [24]' to 'const esphome::sensor::Sensor&'
src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)'
src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [24]' to 'esphome::sensor::Sensor&&'
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/Updater.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/WMath.cpp.o
Compiling .pioenvs/opentherm_gateway/FrameworkArduino/WString.cpp.o
*** [.pioenvs/opentherm_gateway/src/main.cpp.o] Error 1
========================== [FAILED] Took 9.28 seconds ==========================`
im using following yaml code"
`esphome:
includes:
- opentherm.h
- opentherm.cpp
- opentherm_gw_climate.h
- opentherm_gw_climate.cpp
name: opentherm_gateway
platform: ESP8266
board: d1_mini
# arduino_version: '2.7.2'
# Enable logging
logger:
# baud_rate: 0
# level: DEBUG
# Enable Home Assistant API
api:
# encryption:
# key: XXXXXX
web_server:
port: 80
ota:
sensor:
binary_sensor:
climate:
- platform: custom
lambda: |-
auto thermostat_in = new esphome::esp8266::ESP8266GPIOPin();
thermostat_in->set_pin(12);
thermostat_in->set_flags(gpio::FLAG_INPUT);
auto thermostat_out = new esphome::esp8266::ESP8266GPIOPin();
thermostat_out->set_pin(13);
thermostat_out->set_flags(gpio::FLAG_OUTPUT);
auto boiler_in = new esphome::esp8266::ESP8266GPIOPin();
boiler_in->set_pin(4);
boiler_in->set_flags(gpio::FLAG_INPUT);
auto boiler_out = new esphome::esp8266::ESP8266GPIOPin();
boiler_out->set_pin(5);
boiler_out->set_flags(gpio::FLAG_OUTPUT);
auto ot = new esphome::opentherm::OpenThermGWClimate(thermostat_in, thermostat_out, boiler_in, boiler_out);
App.register_component(ot);
ot->ch_active = new BinarySensor();
ot->ch_active->set_name("CH Active");
App.register_binary_sensor(ot->ch_active);
ot->dhw_active = new BinarySensor();
ot->dhw_active->set_name("DHW Active");
App.register_binary_sensor(ot->dhw_active);
ot->flame_on = new BinarySensor();
ot->flame_on->set_name("Flame On");
App.register_binary_sensor(ot->flame_on);
ot->diagnostic_event = new BinarySensor();
ot->diagnostic_event->set_name("Diagnostic Event");
App.register_binary_sensor(ot->diagnostic_event);
ot->fault_indication = new BinarySensor();
ot->fault_indication->set_name("Fault Indication");
App.register_binary_sensor(ot->fault_indication);
ot->boiler_water_temp = new Sensor("Boiler Water Temperature");
ot->boiler_water_temp->set_device_class("temperature");
ot->boiler_water_temp->set_unit_of_measurement("°C");
App.register_sensor(ot->boiler_water_temp);
ot->dhw_temperature = new Sensor("DHW Temperature");
ot->dhw_temperature->set_device_class("temperature");
ot->dhw_temperature->set_unit_of_measurement("°C");
App.register_sensor(ot->dhw_temperature);
ot->return_water_temperature = new Sensor("Return Water Temperature");
ot->return_water_temperature->set_device_class("temperature");
ot->return_water_temperature->set_unit_of_measurement("°C");
App.register_sensor(ot->return_water_temperature);
ot->relative_modulation_level = new Sensor("Relative Modulation Level");
ot->relative_modulation_level->set_unit_of_measurement("%");
App.register_sensor(ot->relative_modulation_level);
ot->ch_water_pressure = new Sensor("CH Water Pressure");
ot->ch_water_pressure->set_unit_of_measurement("bar");
ot->ch_water_pressure->set_device_class("pressure");
ot->ch_water_pressure->set_accuracy_decimals(2);
App.register_sensor(ot->ch_water_pressure);
ot->outside_air_temperature = new Sensor("Outside Air Temperature");
ot->outside_air_temperature->set_unit_of_measurement("°C");
ot->outside_air_temperature->set_device_class("temperature");
App.register_sensor(ot->outside_air_temperature);
App.register_climate(ot);
return {ot};
climates:
- name: "OpenTherm Thermostat"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "XXXXXX"
password: "XXXXX"
captive_portal:`
Could someone pls help me to fix this error? thank you.
Hello all,
I am not able to update the ESPHOME anymore and receiving following error during compilation:
im using following yaml code"
Could someone pls help me to fix this error? thank you.