Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

error: reference to 'COVER_OPERATION_IDLE' is ambiguous while compiling 1.14.0 #801

Closed
jarcikw opened this issue Nov 2, 2019 · 0 comments · Fixed by esphome/esphome#825

Comments

@jarcikw
Copy link

jarcikw commented Nov 2, 2019

Operating environment/Installation (Hass.io/Docker/pip/etc.):
Python 3.7.3

ESP (ESP32/ESP8266, Board/Sonoff):
Custom board based on ESP12S with dual Relay

ESP12S
Affected component:

Dual relay cover motor control (https://esphome.io/cookbook/dual-r2-cover.html?highlight=cover_operation_idle)

Description of problem:
While compiling (1.14.0) i got an error in logs, please see below (In version 1.13.6 everything works)

Problem-relevant YAML-configuration entries:

substitutions:
  name: 'antoni_jarcik_v6_rolety'
  cover_name: 'Antoni'
  ds18b20: '0x380315A2796A8123'
esphome:
  name: ${name}
  platform: ESP8266
  board: esp01_1m

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_pass

web_server:
  port: 80

# Enable logging
logger:

# Enable Home Assistant API
api:
  password: !secret api_pass
  
ota:
  password: !secret api_pass

binary_sensor:
- platform: gpio
  pin:
    number: GPIO16
    inverted: true
  id: up
  on_state:
    then:
      - lambda: |
          if (id(my_cover).current_operation == COVER_OPERATION_IDLE) {
            // Cover is idle, check current state and either open or close cover.
           id(my_cover).open();
          } else {
            id(my_cover).stop();
          }
- platform: gpio
  pin:
    number: GPIO14
    inverted: true    
  id: down
  on_state:
    then:
      - lambda: |
          if (id(my_cover).current_operation == COVER_OPERATION_IDLE) {

           id(my_cover).close();
          } else {
            // Cover is opening/closing. Stop it.
          id(my_cover).stop();
          }
          
switch:
- platform: gpio
  pin: GPIO12
  interlock: &interlock [open_cover, close_cover]
  id: open_cover
- platform: gpio
  pin: GPIO13
  interlock: *interlock
  id: close_cover

- platform: restart
  name: ${name}_Restart

cover:
- platform: time_based
  device_class: window
  name: ${cover_name}
  id: my_cover
  open_action:
    - switch.turn_on: open_cover
  open_duration: 20s
  close_action:
    - switch.turn_on: close_cover
  close_duration: 20s
  stop_action:
    - switch.turn_off: open_cover
    - switch.turn_off: close_cover

sensor:  
  - platform: uptime
    name: ${name}_Uptime
    icon: mdi:clock-outline
    update_interval: 300s
    unit_of_measurement: days
    filters:
      - multiply: 0.000011574
    
  - platform: wifi_signal
    name: "${name}_wifi_Signal"
    update_interval: 300s    

  - platform: dallas
    address: ${ds18b20}
    name: ${name}_Temp
    
dallas:
  - pin: GPIO2
    update_interval: 60s
    
text_sensor:
  - platform: wifi_info
    ip_address:
      name: ${name}_Adress_IP
  - platform: version
    name: "${name}_ESPHome_Version"  

Logs (if applicable):

INFO Reading configuration /root/config/antoni_jarcik_v6_rolety.yaml...
INFO Generating C++ source...
INFO Compiling app...
INFO Running:  platformio run -d /root/config/antoni_jarcik_v6_rolety
Processing antoni_jarcik_v6_rolety (board: esp01_1m; framework: arduino; platform: espressif8266@2.2.3)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
Looking for ESPAsyncTCP-esphome library in registry
LibraryManager: Installing id=6757 @ 1.2.2
ESPAsyncTCP-esphome @ 1.2.2 has been successfully installed!
Looking for ESPAsyncWebServer-esphome library in registry
LibraryManager: Installing id=6758 @ 1.2.5
ESPAsyncWebServer-esphome @ 1.2.5 has been successfully installed!
LibraryManager: Installing id=6757
Looking for AsyncTCP library in registry
LibraryManager: Installing id=1826
AsyncTCP @ 1.1.1 has been successfully installed!
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
|-- <ESPAsyncTCP-esphome> 1.2.2
|   |-- <ESP8266WiFi> 1.0
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
|   |-- <ESP8266WiFi> 1.0
|-- <ESPAsyncWebServer-esphome> 1.2.5
|   |-- <ESPAsyncTCP-esphome> 1.2.2
|   |   |-- <ESP8266WiFi> 1.0
|   |-- <Hash> 1.0
|   |-- <ESP8266WiFi> 1.0
|   |-- <ArduinoJson-esphomelib> 5.13.3
|-- <ArduinoJson-esphomelib> 5.13.3
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/api_connection.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/api_pb2.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/api_pb2_service.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/api_server.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/list_entities.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/proto.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/subscribe_state.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/user_services.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/api/util.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/binary_sensor/automation.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/binary_sensor/binary_sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/binary_sensor/filter.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/cover/cover.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/dallas/dallas_component.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/dallas/esp_one_wire.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/gpio/binary_sensor/gpio_binary_sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/gpio/switch/gpio_switch.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/json/json_util.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/logger/logger.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/ota/ota_component.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/restart/restart_switch.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/sensor/automation.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/sensor/filter.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/sensor/sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/switch/automation.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/switch/switch.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/text_sensor/text_sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/time_based/time_based_cover.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/uptime/uptime_sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/version/version_text_sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/web_server/web_server.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/web_server_base/web_server_base.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/wifi/wifi_component.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/wifi/wifi_component_esp32.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/wifi/wifi_component_esp8266.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/wifi_info/wifi_info_text_sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/components/wifi_signal/wifi_signal_sensor.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/application.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/component.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/controller.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/esphal.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/helpers.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/log.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/preferences.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/scheduler.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/esphome/core/util.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/src/main.cpp.o
Generating LD script .pioenvs/antoni_jarcik_v6_rolety/ld/local.eagle.app.v6.common.ld
Compiling .pioenvs/antoni_jarcik_v6_rolety/lib4d9/ESP8266WiFi/BearSSLHelpers.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/lib4d9/ESP8266WiFi/CertStoreBearSSL.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/lib4d9/ESP8266WiFi/ESP8266WiFi.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/lib4d9/ESP8266WiFi/ESP8266WiFiAP.cpp.o
src/main.cpp: In lambda function:
src/main.cpp:379:42: error: reference to 'COVER_OPERATION_IDLE' is ambiguous
       if (my_cover->current_operation == COVER_OPERATION_IDLE) {
                                          ^
In file included from src/esphome/components/api/api_connection.h:5:0,
                 from src/esphome.h:2,
                 from src/main.cpp:3:
src/esphome/components/api/api_pb2.h:13:3: note: candidates are: esphome::api::EnumCoverOperation COVER_OPERATION_IDLE
   COVER_OPERATION_IDLE = 0,
   ^
In file included from src/esphome/core/application.h:33:0,
                 from src/esphome/components/api/api_connection.h:4,
                 from src/esphome.h:2,
                 from src/main.cpp:3:
src/esphome/components/cover/cover.h:77:3: note:                 esphome::cover::CoverOperation COVER_OPERATION_IDLE
   COVER_OPERATION_IDLE = 0,
   ^
src/main.cpp: In lambda function:
src/main.cpp:388:42: error: reference to 'COVER_OPERATION_IDLE' is ambiguous
       if (my_cover->current_operation == COVER_OPERATION_IDLE) {
                                          ^
In file included from src/esphome/components/api/api_connection.h:5:0,
                 from src/esphome.h:2,
                 from src/main.cpp:3:
src/esphome/components/api/api_pb2.h:13:3: note: candidates are: esphome::api::EnumCoverOperation COVER_OPERATION_IDLE
   COVER_OPERATION_IDLE = 0,
   ^
In file included from src/esphome/core/application.h:33:0,
                 from src/esphome/components/api/api_connection.h:4,
                 from src/esphome.h:2,
                 from src/main.cpp:3:
src/esphome/components/cover/cover.h:77:3: note:                 esphome::cover::CoverOperation COVER_OPERATION_IDLE
   COVER_OPERATION_IDLE = 0,
   ^
Compiling .pioenvs/antoni_jarcik_v6_rolety/lib4d9/ESP8266WiFi/ESP8266WiFiGeneric.cpp.o
Compiling .pioenvs/antoni_jarcik_v6_rolety/lib4d9/ESP8266WiFi/ESP8266WiFiMulti.cpp.o
*** [.pioenvs/antoni_jarcik_v6_rolety/src/main.cpp.o] Error 1
========================= [FAILED] Took 18.49 seconds =========================


Additional information and things you've tried:

OttoWinter added a commit to esphome/esphome that referenced this issue Nov 2, 2019
OttoWinter added a commit to esphome/esphome that referenced this issue Nov 2, 2019
OttoWinter added a commit to esphome/esphome that referenced this issue Nov 2, 2019
@lock lock bot locked and limited conversation to collaborators Nov 9, 2019
silverchris pushed a commit to silverchris/esphome that referenced this issue May 23, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants