Repository: FastLED/FastLED

Issue #1628: FastLED 3.7.0 compile error
Created: 2024-05-31T09:53:59Z
Hi! I've updated FastLED to new version and I'm getting this when trying to build project.
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp: In member function 'void ESP32RMTController::tx_start()':
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:326:32: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'mem_rd_rst_n'
326 |     RMT.chnconf0[mRMT_channel].mem_rd_rst_n = 1;
|                                ^~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:327:32: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'mem_rd_rst_n'
327 |     RMT.chnconf0[mRMT_channel].mem_rd_rst_n = 0;
|                                ^~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:328:32: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'apb_mem_rst_n'
328 |     RMT.chnconf0[mRMT_channel].apb_mem_rst_n = 1;
|                                ^~~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:329:32: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'apb_mem_rst_n'
329 |     RMT.chnconf0[mRMT_channel].apb_mem_rst_n = 0;
|                                ^~~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:335:32: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'conf_update_n'
335 |     RMT.chnconf0[mRMT_channel].conf_update_n = 1;
|                                ^~~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:336:32: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'tx_start_n'
336 |     RMT.chnconf0[mRMT_channel].tx_start_n = 1;
|                                ^~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp: In static member function 'static void ESP32RMTController::doneOnChannel(rmt_channel_t, void*)':
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:389:27: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'tx_stop_n'
389 |     RMT.chnconf0[channel].tx_stop_n = 1;
|                           ^~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:390:27: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'conf_update_n'
390 |     RMT.chnconf0[channel].conf_update_n = 1;
|                           ^~~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:392:27: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'mem_rd_rst_n'
392 |     RMT.chnconf0[channel].mem_rd_rst_n = 1;
|                           ^~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:393:27: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'mem_rd_rst_n'
393 |     RMT.chnconf0[channel].mem_rd_rst_n = 0;
|                           ^~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:394:27: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'apb_mem_rst_n'
394 |     RMT.chnconf0[channel].apb_mem_rst_n = 1;
|                           ^~~~~~~~~~~~~
c:\Users\niiik\Arduino\libraries\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:395:27: error: 'volatile union rmt_chnconf0_reg_t' has no member named 'apb_mem_rst_n'
395 |     RMT.chnconf0[channel].apb_mem_rst_n = 0;
|                           ^~~~~~~~~~~~~

Duplicate issue #1606: Compiling FastLED blink sketch using FastLED 3.6.0 for an ESP32-C3 with Arduino IDE 1.8.19 seems to fail.
Created: 2024-03-07T11:17:47Z
Trying to build the FastLED blink example for an ESP32-C3 using the Arduino IDE 1.8.19 results in:

rmt.h that must be replaced with rmt_tx.h and/or rmt_rx.h
periph_ctrl.h not being used anymore
Several warnings regarding volatile operands being deprecated
cpu_ll_get_cycle_count() being deprecated
incompatible types

When disabling all warnings, still the following is reported:
...\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp: In member function 'void ESP32RMTController::startOnChannel(int)':
...\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:266:29: error: 'RMTMEM' was not declared in this scope
266 |         mRMT_mem_start = & (RMTMEM.chan[mRMT_channel].data32[0].val);
|                             ^~~~~~
...\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp: In static member function 'static void ESP32RMTController::doneOnChannel(rmt_channel_t, void*)':
...\FastLED\src\platforms\esp\32\clockless_rmt_esp32.cpp:347:5: error: 'gpio_matrix_out' was not declared in this scope; did you mean 'gpio_iomux_out'?
347 |     gpio_matrix_out(pController->mPin, 0x100, 0, 0);
|     ^~~~~~~~~~~~~~~
|     gpio_iomux_out

Closing comment (2024-08-05T16:02:47Z): ESP32-C6 support seems to be tracked here: #1623
RMT issues with arduino-esp32 v3.x / ESP-IDF v5.x seem to be tracked in: #1628 and #1631
Fixes for both seem to be merged in git (not yet released formally)?