esphome / issues

Issue Tracker for ESPHome
https://esphome.io/
290 stars 36 forks source link

[esp32-c3-devkitm-1][FastLED] fastpin_esp32.h:69:24: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1'; did you mean 'out'? #4376

Closed lboue closed 1 year ago

lboue commented 1 year ago

The problem

Issue

When adding an RGB LED in the configuration file, the compilation fails.

esp32:
  board: esp32-c3-devkitm-1
  framework:
    type: arduino

light:
  - platform: fastled_clockless
    chipset: WS2812B
    pin: 7
    num_leds: 1
    rgb_order: GRB
    id: status_led
    name: ESP32 Light
    effects:
      - random:
      - flicker:
      - addressable_rainbow:

Which version of ESPHome has the issue?

2023.3.2

What type of installation are you using?

Home Assistant Add-on

Which version of Home Assistant has the issue?

2023.3.6

What platform are you using?

ESP8266

Board

esp32-c3-devkitm-1

Component causing the issue

WS2812B

Example YAML snippet

esp32:
  board: esp32-c3-devkitm-1
  framework:
    type: arduino

light:
  - platform: fastled_clockless
    chipset: WS2812B
    pin: 7
    num_leds: 1
    rgb_order: GRB
    id: status_led
    name: ESP32 Light
    effects:
      - random:
      - flicker:
      - addressable_rainbow:

Anything in the logs that might be useful for us?

INFO Reading configuration /config/esphome/c3-pico-hp-1dc59c.yaml...
WARNING GPIO8 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
WARNING GPIO8 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
WARNING GPIO9 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Generating C++ source...
INFO Compiling app...
Processing c3-pico-hp-1dc59c (board: esp32-c3-devkitm-1; framework: arduino; platform: platformio/espressif32 @ 5.2.0)
--------------------------------------------------------------------------------
Removing unused dependencies...
Library Manager: Installing fastled/FastLED @ 3.3.2
INFO Installing fastled/FastLED @ 3.3.2
Unpacking  [####################################]  100%
Library Manager: FastLED@3.3.2 has been installed!
INFO FastLED@3.3.2 has been installed!
HARDWARE: ESP32C3 160MHz, 320KB RAM, 4MB Flash
 - toolchain-riscv32-esp @ 8.4.0+2021r2-patch3
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Dependency Graph
|-- WiFi @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- Update @ 2.0.0
|-- noise-c @ 0.1.4
|   |-- libsodium @ 1.10018.1
|-- Wire @ 2.0.0
|-- FastLED @ 3.3.2
Compiling /data/c3-pico-hp-1dc59c/.pioenvs/c3-pico-hp-1dc59c/libb79/FastLED/FastLED.cpp.o
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/clockless_rmt_esp32.h:95,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:8,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/esp_intr.h:8:2: warning: #warning esp_intr.h is deprecated, please include esp_intr_alloc.h instead [-Wcpp]
 #warning esp_intr.h is deprecated, please include esp_intr_alloc.h instead
  ^~~~~~~
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:3,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static void _ESPPIN<PIN, MASK>::hi()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:16:17: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1_w1ts'; did you mean 'out_w1ts'?
       else GPIO.out1_w1ts.val = MASK;
                 ^~~~~~~~~
                 out_w1ts
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static void _ESPPIN<PIN, MASK>::lo()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:21:17: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1_w1tc'; did you mean 'out_w1tc'?
       else GPIO.out1_w1tc.val = MASK;
                 ^~~~~~~~~
                 out_w1tc
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static void _ESPPIN<PIN, MASK>::set(_ESPPIN<PIN, MASK>::port_t)':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:26:17: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1'; did you mean 'out'?
       else GPIO.out1.val = val;
                 ^~~~
                 out
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static void _ESPPIN<PIN, MASK>::toggle()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:32:31: error: no match for 'operator^=' (operand types are 'volatile gpio_dev_s::<unnamed union>' and 'long unsigned int')
       if(PIN < 32) { GPIO.out ^= MASK; }
                      ~~~~~~~~~^~~~~~~
In file included from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/soc/esp32c3/include/soc/dport_access.h:19,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/esp32c3/include/hal/cpu_ll.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/cpu_hal.h:16,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/esp_cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/spinlock.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/port/riscv/include/freertos/portmacro.h:38,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/portable.h:51,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/FreeRTOS.h:63,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:33,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/led_sysdefs.h:48,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:41,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:132:25: note: candidate: 'touch_pad_intr_mask_t& operator^=(touch_pad_intr_mask_t&, touch_pad_intr_mask_t)'
 FORCE_INLINE_ATTR TYPE& operator^=(TYPE& a, TYPE b) { a = a ^ b; return a; } \
                         ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:132:25: note:   no known conversion for argument 1 from 'volatile gpio_dev_s::<unnamed union>' to 'touch_pad_intr_mask_t&'
 FORCE_INLINE_ATTR TYPE& operator^=(TYPE& a, TYPE b) { a = a ^ b; return a; } \
                         ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:3,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:33:19: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1'; did you mean 'out'?
       else { GPIO.out1.val ^=MASK; }
                   ^~~~
                   out
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static _ESPPIN<PIN, MASK>::port_t _ESPPIN<PIN, MASK>::hival()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:41:37: error: no match for 'operator|' (operand types are 'volatile gpio_dev_s::<unnamed union>' and 'long unsigned int')
       if (PIN < 32) return GPIO.out | MASK;
                            ~~~~~~~~~^~~~~~
In file included from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/soc/esp32c3/include/soc/dport_access.h:19,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/esp32c3/include/hal/cpu_ll.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/cpu_hal.h:16,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/esp_cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/spinlock.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/port/riscv/include/freertos/portmacro.h:38,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/portable.h:51,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/FreeRTOS.h:63,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:33,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/led_sysdefs.h:48,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:41,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:125:34: note: candidate: 'constexpr touch_pad_intr_mask_t operator|(touch_pad_intr_mask_t, touch_pad_intr_mask_t)'
 FORCE_INLINE_ATTR constexpr TYPE operator| (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a | (INT_TYPE)b); } \
                                  ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:125:34: note:   no known conversion for argument 1 from 'volatile gpio_dev_s::<unnamed union>' to 'touch_pad_intr_mask_t'
 FORCE_INLINE_ATTR constexpr TYPE operator| (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a | (INT_TYPE)b); } \
                                  ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/controller.h:9,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:47,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/pixeltypes.h:839:13: note: candidate: 'CRGB operator|(const CRGB&, const CRGB&)'
 inline CRGB operator|( const CRGB& p1, const CRGB& p2)
             ^~~~~~~~
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/pixeltypes.h:839:13: note:   no known conversion for argument 1 from 'volatile gpio_dev_s::<unnamed union>' to 'const CRGB&'
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:3,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:42:24: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1'; did you mean 'out'?
       else return GPIO.out1.val | MASK;
                        ^~~~
                        out
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static _ESPPIN<PIN, MASK>::port_t _ESPPIN<PIN, MASK>::loval()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:46:37: error: no match for 'operator&' (operand types are 'volatile gpio_dev_s::<unnamed union>' and 'long unsigned int')
       if (PIN < 32) return GPIO.out & ~MASK;
                            ~~~~~~~~~^~~~~~~
In file included from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/soc/esp32c3/include/soc/dport_access.h:19,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/esp32c3/include/hal/cpu_ll.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/cpu_hal.h:16,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/esp_cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/spinlock.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/port/riscv/include/freertos/portmacro.h:38,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/portable.h:51,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/FreeRTOS.h:63,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:33,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/led_sysdefs.h:48,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:41,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:126:34: note: candidate: 'constexpr touch_pad_intr_mask_t operator&(touch_pad_intr_mask_t, touch_pad_intr_mask_t)'
 FORCE_INLINE_ATTR constexpr TYPE operator& (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a & (INT_TYPE)b); } \
                                  ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:126:34: note:   no known conversion for argument 1 from 'volatile gpio_dev_s::<unnamed union>' to 'touch_pad_intr_mask_t'
 FORCE_INLINE_ATTR constexpr TYPE operator& (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a & (INT_TYPE)b); } \
                                  ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/controller.h:9,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:47,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/pixeltypes.h:831:13: note: candidate: 'CRGB operator&(const CRGB&, const CRGB&)'
 inline CRGB operator&( const CRGB& p1, const CRGB& p2)
             ^~~~~~~~
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/pixeltypes.h:831:13: note:   no known conversion for argument 1 from 'volatile gpio_dev_s::<unnamed union>' to 'const CRGB&'
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:3,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:47:24: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1'; did you mean 'out'?
       else return GPIO.out1.val & ~MASK;
                        ^~~~
                        out
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static volatile uint32_t* _ESPPIN<PIN, MASK>::port()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:51:34: error: cannot convert 'volatile gpio_dev_s::<unnamed union>*' to '_ESPPIN<PIN, MASK>::port_ptr_t' {aka 'volatile long unsigned int*'} in return
       if (PIN < 32) return &GPIO.out;
                                  ^~~
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:52:25: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1'; did you mean 'out'?
       else return &GPIO.out1.val;
                         ^~~~
                         out
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static volatile uint32_t* _ESPPIN<PIN, MASK>::sport()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:56:34: error: cannot convert 'volatile gpio_dev_s::<unnamed union>*' to '_ESPPIN<PIN, MASK>::port_ptr_t' {aka 'volatile long unsigned int*'} in return
       if (PIN < 32) return &GPIO.out_w1ts;
                                  ^~~~~~~~
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:57:25: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1_w1ts'; did you mean 'out_w1ts'?
       else return &GPIO.out1_w1ts.val;
                         ^~~~~~~~~
                         out_w1ts
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static volatile uint32_t* _ESPPIN<PIN, MASK>::cport()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:61:34: error: cannot convert 'volatile gpio_dev_s::<unnamed union>*' to '_ESPPIN<PIN, MASK>::port_ptr_t' {aka 'volatile long unsigned int*'} in return
       if (PIN < 32) return &GPIO.out_w1tc;
                                  ^~~~~~~~
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:62:25: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1_w1tc'; did you mean 'out_w1tc'?
       else return &GPIO.out1_w1tc.val;
                         ^~~~~~~~~
                         out_w1tc
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h: In static member function 'static bool _ESPPIN<PIN, MASK>::isset()':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:68:37: error: no match for 'operator&' (operand types are 'volatile gpio_dev_s::<unnamed union>' and 'long unsigned int')
       if (PIN < 32) return GPIO.out & MASK;
                            ~~~~~~~~~^~~~~~
In file included from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/soc/esp32c3/include/soc/dport_access.h:19,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/esp32c3/include/hal/cpu_ll.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/cpu_hal.h:16,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/esp_cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/cpu.h:14,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_hw_support/include/soc/spinlock.h:11,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/port/riscv/include/freertos/portmacro.h:38,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/portable.h:51,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/freertos/include/freertos/FreeRTOS.h:63,
                 from /data/cache/platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:33,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/led_sysdefs.h:48,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:41,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:126:34: note: candidate: 'constexpr touch_pad_intr_mask_t operator&(touch_pad_intr_mask_t, touch_pad_intr_mask_t)'
 FORCE_INLINE_ATTR constexpr TYPE operator& (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a & (INT_TYPE)b); } \
                                  ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:126:34: note:   no known conversion for argument 1 from 'volatile gpio_dev_s::<unnamed union>' to 'touch_pad_intr_mask_t'
 FORCE_INLINE_ATTR constexpr TYPE operator& (TYPE a, TYPE b) { return (TYPE)((INT_TYPE)a & (INT_TYPE)b); } \
                                  ^~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:136:29: note: in expansion of macro 'FLAG_ATTR_IMPL'
 #define FLAG_ATTR_U32(TYPE) FLAG_ATTR_IMPL(TYPE, uint32_t)
                             ^~~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/esp_common/include/esp_attr.h:137:19: note: in expansion of macro 'FLAG_ATTR_U32'
 #define FLAG_ATTR FLAG_ATTR_U32
                   ^~~~~~~~~~~~~
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/hal/include/hal/touch_sensor_types.h:168:1: note: in expansion of macro 'FLAG_ATTR'
 FLAG_ATTR(touch_pad_intr_mask_t)
 ^~~~~~~~~
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/controller.h:9,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:47,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/pixeltypes.h:831:13: note: candidate: 'CRGB operator&(const CRGB&, const CRGB&)'
 inline CRGB operator&( const CRGB& p1, const CRGB& p2)
             ^~~~~~~~
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/pixeltypes.h:831:13: note:   no known conversion for argument 1 from 'volatile gpio_dev_s::<unnamed union>' to 'const CRGB&'
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:3,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastpin_esp32.h:69:24: error: 'gpio_dev_t' {aka 'volatile struct gpio_dev_s'} has no member named 'out1'; did you mean 'out'?
       else return GPIO.out1.val & MASK;
                        ^~~~
                        out
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:8,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/clockless_rmt_esp32.h: In member function 'void ClocklessController<DATA_PIN, T1, T2, T3, RGB_ORDER, XTRA0, FLIP, WAIT_TIME>::startOnChannel(int)':
/data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/clockless_rmt_esp32.h:399:52: warning: 'esp_err_t rmt_set_pin(rmt_channel_t, rmt_mode_t, gpio_num_t)' is deprecated: use rmt_set_gpio instead [-Wdeprecated-declarations]
         rmt_set_pin(mRMT_channel, RMT_MODE_TX, mPin);
                                                    ^
In file included from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/clockless_rmt_esp32.h:97,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms/esp/32/fastled_esp32.h:8,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/platforms.h:36,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.h:52,
                 from /data/c3-pico-hp-1dc59c/.piolibdeps/c3-pico-hp-1dc59c/FastLED/FastLED.cpp:2:
/data/cache/platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/driver/include/driver/rmt.h:930:11: note: declared here
 esp_err_t rmt_set_pin(rmt_channel_t channel, rmt_mode_t mode, gpio_num_t gpio_num)
           ^~~~~~~~~~~
*** [/data/c3-pico-hp-1dc59c/.pioenvs/c3-pico-hp-1dc59c/libb79/FastLED/FastLED.cpp.o] Error 1
========================= [FAILED] Took 20.78 seconds =========================

Additional information

Log file: logs_c3-pico-hp-1dc59c_run.log

lboue commented 1 year ago

logs_c3-pico-hp-1dc59c_run.log

wezm commented 1 year ago

It seems this is fixed in newer FastLED releases https://github.com/FastLED/FastLED/pull/1320 there is a PR open to update FastLED here: https://github.com/esphome/esphome/pull/4257 it has instructions on how to use the patched fastled component.

lboue commented 1 year ago

Do you think yesterday FastLED 3.6.0 release could fix this issue?

nielsnl68 commented 1 year ago

I will test it shortly, some of the fixes are my doing.

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.