Skip to content

Compile errors in ESPHome 2026.2.0-dev #174

@paulb-fr

Description

@paulb-fr

Thanks for this great project. I had some PCBs made up (at great expense!) but fitting out 2 AC indoor units has still come in less than the cost of a single Panasonic WIFI dongle, and they work great.

I have had to move to the DEV version of ESPHome in order to get access to the esp-idf ac_dimmer component for another project, but this means that I am no longer able to compile my Panasonic controllers. Fortunately HA allows both the production and dev versions of ESPHome to be installed simultaneously, although it makes for some long compile times if you switch back and forth as it has to re-download the entire thing (or so it seems). Once the 2026 release is out though, it will get problematic for anyone coming to this project for the first time.

The errors are:
`In member function 'void esphome::panasonic_ac::PanasonicAC::set_vertical_swing_select(esphome::select::Select*)':
src/esphome/components/panasonic_ac/esppac.cpp:

219:55: error: cannot convert 'esphome::panasonic_ac::PanasonicAC::set_vertical_swing_select(esphome::select::Select*)::<lambda(const std::string&, size_t)>'
to 'std::function<void(unsigned int)>&&'

this->vertical_swing_select_->add_on_state_callback([this](const std::string &value, size_t index) { esphome::panasonic_ac::PanasonicAC::set_vertical_swing_select(esphome::select::Select*)::<lambda(const std::string&, size_t)>

228:57: error: cannot convert 'esphome::panasonic_ac::PanasonicAC::set_horizontal_swing_select(esphome::select::Select*)::<lambda(const std::string&, size_t)>' to 'std::function<void(unsigned int)>&&'

cannot convert 'esphome::StringRef' to 'const char*'
251 | if (strcmp(this->get_custom_preset(), "Normal") != 0) {

256:51: error: cannot convert 'esphome::StringRef' to 'const char*' in initialization
256 | const char *fanMode = call.get_custom_fan_mode();

299:48: error: cannot convert 'esphome::StringRef' to 'const char*' in initialization
299 | const char *preset = call.get_custom_preset();

esppac_wlan.cpp:113:51: error: cannot convert 'esphome::StringRef' to 'const char*' in initialization
113 | const char *fanMode = call.get_custom_fan_mode();

167:48: error: cannot convert 'esphome::StringRef' to 'const char*' in initialization
167 | const char *preset = call.get_custom_preset();`

I would look into it myself, but this is way beyond my capabilities.

Regards,

  • Paul

[EDIT - reduce clutter in error messages]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions