Unable to compile / install ESPHome firmware via ESPHome Home Assistant plug in

I just recently installed my Konnected.io GDO blaQ and adopted it to my Home Assistant server.
This all went smoothly, however my unit is running firmware 1.3.3 and I was wanting to update and possibly modify the firmware, however attempting to install either the ESPHome firmware that was auto-populated, or the garage-door-GDOv2-Q.yaml contents from the github, all fail during compiling.

Both attempts are getting hung up with the same error regarding ./components/secplus_gdo/secplus_gdo.cpp.o:

In file included from src/esphome/components/secplus_gdo/secplus_gdo.h:23,
                 from src/esphome/components/secplus_gdo/secplus_gdo.cpp:18:
src/esphome/components/secplus_gdo/select/gdo_select.h: In member function 'void esphome::secplus_gdo::GDOSelect::update_state(gdo_protocol_type_t)':
src/esphome/components/secplus_gdo/select/gdo_select.h:42:57: warning: 'esphome::select::Select::state' is deprecated: Use current_option() instead of .state. Will be removed in 2026.5.0 [-Wdeprecated-declarations]
   42 |                 if (this->has_state() && value != this->state) {
      |                                                         ^~~~~
In file included from src/esphome/components/secplus_gdo/select/gdo_select.h:10:
src/esphome/components/select/select.h:39:15: note: declared here
   39 |   std::string state{};
      |               ^~~~~
src/esphome/components/secplus_gdo/select/gdo_select.h:42:57: warning: 'esphome::select::Select::state' is deprecated: Use current_option() instead of .state. Will be removed in 2026.5.0 [-Wdeprecated-declarations]
   42 |                 if (this->has_state() && value != this->state) {
      |                                                         ^~~~~
src/esphome/components/select/select.h:39:15: note: declared here
   39 |   std::string state{};
      |               ^~~~~
src/esphome/components/secplus_gdo/select/gdo_select.h:42:57: warning: 'esphome::select::Select::state' is deprecated: Use current_option() instead of .state. Will be removed in 2026.5.0 [-Wdeprecated-declarations]
   42 |                 if (this->has_state() && value != this->state) {
      |                                                         ^~~~~
src/esphome/components/select/select.h:39:15: note: declared here
   39 |   std::string state{};
      |               ^~~~~
src/esphome/components/secplus_gdo/secplus_gdo.cpp: In lambda function:
src/esphome/components/secplus_gdo/secplus_gdo.cpp:140:50: warning: implicit capture of 'this' via '[=]' is deprecated in C++20 [-Wdeprecated]
  140 |             this->set_interval("gdo_start", 500, [=]() {
      |                                                  ^
src/esphome/components/secplus_gdo/secplus_gdo.cpp:140:50: note: add explicit 'this' or '*this' capture
src/esphome/components/secplus_gdo/secplus_gdo.cpp: In function 'void __wrap_esp_panic_handler(void*)':
src/esphome/components/secplus_gdo/secplus_gdo.cpp:185:5: error: 'gpio_hal_iomux_func_sel' was not declared in this scope; did you mean 'gpio_hal_func_sel'?
  185 |     gpio_hal_iomux_func_sel(GPIO_PIN_MUX_REG[(gpio_num_t)GDO_UART_TX_PIN], PIN_FUNC_GPIO);
      |     ^~~~~~~~~~~~~~~~~~~~~~~
      |     gpio_hal_func_sel
*** [.pioenvs/konnected-523294/src/esphome/components/secplus_gdo/secplus_gdo.cpp.o] Error 1

I have tried cleaning build files between install attempts, however this does not change the behavior.
I didn’t see anyone else posting about this, which leads me to think I’m doing something wrong but I’ve got other ESPHome devices that compile / install just fine.
Any help would be greatly appreciated!

Thank you :slight_smile:

What version of ESPHome do you have installed?
I haven’t seen this before.

Turns out I was running:

ESPHome Device Builder (dev)
Current version: 2025.11.0-dev20251106

I forgot I had switched to the dev build of the ESPHome addon in an attempt to get another device’s firmware to build/install, but it not help.
I switched back to the non-dev build and was able to deploy the firmware as expected!
That said, this might indicates the file secplus_gdo.cpp will need to be updated in the future?

Thanks for the quick reply and the nudge in the right direction!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.