Thank you for the response
I'm using FabGL module. The author has posted this info on github:
Warning! The latest version of the Espressif ESP32 library that FabGL runs on is 2.0.17 (or even earlier). Unfortunately, the latest versions of Espressif leave too little memory free for applications, and a project the size of FabGL can no longer function as intended.
If I use the latest version of the espresssif ESP (3.2.0), the sketch fails to compile. Here is the output:
| ^~~~~~~~~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\serialport.cpp: In member function 'void fabgl::SerialPort::setup(int, uint32_t, int, char, float, fabgl::FlowControl, bool)':
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\serialport.cpp:241:3: error: 'gpio_matrix_in' was not declared in this scope
241 | gpio_matrix_in(m_rxPin, URXD_IN_IDX[m_idx], m_inverted);
| ^~~~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\serialport.cpp:242:3: error: 'gpio_matrix_out' was not declared in this scope; did you mean 'gpio_iomux_out'?
242 | gpio_matrix_out(m_txPin, UTXD_OUT_IDX[m_idx], m_inverted, false);
| ^~~~~~~~~~~~~~~
| gpio_iomux_out
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\serialport.cpp: In member function 'void fabgl::SerialPort::sendBreak(bool)':
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\serialport.cpp:343:5: error: 'gpio_matrix_out' was not declared in this scope; did you mean 'gpio_iomux_out'?
343 | gpio_matrix_out(m_txPin, MATRIX_DETACH_OUT_SIG, m_inverted, false);
| ^~~~~~~~~~~~~~~
| gpio_iomux_out
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\serialport.cpp:347:5: error: 'gpio_matrix_out' was not declared in this scope; did you mean 'gpio_iomux_out'?
347 | gpio_matrix_out(m_txPin, UTXD_OUT_IDX[m_idx], m_inverted, false);
| ^~~~~~~~~~~~~~~
| gpio_iomux_out
In file included from c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:31:
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp: In function 'void fabgl::replace_placeholders(uint32_t, int, bool, gpio_num_t, gpio_num_t, bool, gpio_num_t, gpio_num_t)':
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1049:48: error: 'RTC_GPIO_ENABLE_W1TS_REG' was not declared in this scope; did you mean 'GPIO_ENABLE_W1TS_REG'?
1049 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:333:15: note: in definition of macro 'I_WR_REG'
333 | .addr = ((reg) / sizeof(uint32_t)) & 0xff, \
| ^~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1049:35: note: in expansion of macro 'I_WR_REG_BIT'
1049 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1049:102: error: 'RTC_GPIO_ENABLE_W1TS_S' was not declared in this scope; did you mean 'GPIO_ENABLE_DATA_S'?
1049 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:336:12: note: in definition of macro 'I_WR_REG'
336 | .low = low_bit, \
| ^~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1049:35: note: in expansion of macro 'I_WR_REG_BIT'
1049 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1051:48: error: 'RTC_GPIO_ENABLE_W1TC_REG' was not declared in this scope; did you mean 'GPIO_ENABLE_W1TC_REG'?
1051 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:333:15: note: in definition of macro 'I_WR_REG'
333 | .addr = ((reg) / sizeof(uint32_t)) & 0xff, \
| ^~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1051:35: note: in expansion of macro 'I_WR_REG_BIT'
1051 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1051:102: error: 'RTC_GPIO_ENABLE_W1TC_S' was not declared in this scope; did you mean 'GPIO_ENABLE_DATA_S'?
1051 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:336:12: note: in definition of macro 'I_WR_REG'
336 | .low = low_bit, \
| ^~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1051:35: note: in expansion of macro 'I_WR_REG_BIT'
1051 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, DAT_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1058:48: error: 'RTC_GPIO_ENABLE_W1TS_REG' was not declared in this scope; did you mean 'GPIO_ENABLE_W1TS_REG'?
1058 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:333:15: note: in definition of macro 'I_WR_REG'
333 | .addr = ((reg) / sizeof(uint32_t)) & 0xff, \
| ^~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1058:35: note: in expansion of macro 'I_WR_REG_BIT'
1058 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1058:102: error: 'RTC_GPIO_ENABLE_W1TS_S' was not declared in this scope; did you mean 'GPIO_ENABLE_DATA_S'?
1058 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:336:12: note: in definition of macro 'I_WR_REG'
336 | .low = low_bit, \
| ^~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1058:35: note: in expansion of macro 'I_WR_REG_BIT'
1058 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TS_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TS_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1060:48: error: 'RTC_GPIO_ENABLE_W1TC_REG' was not declared in this scope; did you mean 'GPIO_ENABLE_W1TC_REG'?
1060 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:333:15: note: in definition of macro 'I_WR_REG'
333 | .addr = ((reg) / sizeof(uint32_t)) & 0xff, \
| ^~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1060:35: note: in expansion of macro 'I_WR_REG_BIT'
1060 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1060:102: error: 'RTC_GPIO_ENABLE_W1TC_S' was not declared in this scope; did you mean 'GPIO_ENABLE_DATA_S'?
1060 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:336:12: note: in definition of macro 'I_WR_REG'
336 | .low = low_bit, \
| ^~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1060:35: note: in expansion of macro 'I_WR_REG_BIT'
1060 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_ENABLE_W1TC_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_ENABLE_W1TC_S, 1);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1066:42: error: 'RTC_GPIO_IN_REG' was not declared in this scope; did you mean 'GPIO_IN_REG'?
1066 | *ins = (ulp_insn_t) I_RD_REG(RTC_GPIO_IN_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_IN_NEXT_S, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_IN_NEXT_S);
| ^~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:347:15: note: in definition of macro 'I_RD_REG'
347 | .addr = ((reg) / sizeof(uint32_t)) & 0xff, \
| ^~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1066:87: error: 'RTC_GPIO_IN_NEXT_S' was not declared in this scope
1066 | *ins = (ulp_insn_t) I_RD_REG(RTC_GPIO_IN_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_IN_NEXT_S, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_IN_NEXT_S);
| ^~~~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:350:12: note: in definition of macro 'I_RD_REG'
350 | .low = low_bit, \
| ^~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1072:46: error: 'RTC_GPIO_OUT_REG' was not declared in this scope; did you mean 'GPIO_OUT_REG'?
1072 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_OUT_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_IN_NEXT_S, ins->macro.label);
| ^~~~~~~~~~~~~~~~
C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.4-2f7dcd86-v1\esp32/include/ulp/ulp_fsm/include/esp32/ulp.h:333:15: note: in definition of macro 'I_WR_REG'
333 | .addr = ((reg) / sizeof(uint32_t)) & 0xff, \
| ^~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\comdrivers\ps2controller.cpp:1072:33: note: in expansion of macro 'I_WR_REG_BIT'
1072 | *ins = (ulp_insn_t) I_WR_REG_BIT(RTC_GPIO_OUT_REG, CLK_rtc_gpio_num[ps2port] + RTC_GPIO_IN_NEXT_S, ins->macro.label);
| ^~~~~~~~~~~~
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\dispdrivers\cvbs16controller.cpp: In static member function 'static void fabgl::CVBS16Controller::drawScanlineX1(void*, uint16_t*, int, int)':
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\dispdrivers\cvbs16controller.cpp:552:74: error: 'spi_flash_cache_enabled' was not declared in this scope; did you mean 'spi_flash_cache2phys'?
552 | if (CVBSGenerator::VSync() && !ctrl->m_primitiveProcessingSuspended && spi_flash_cache_enabled() && ctrl->m_primitiveExecTask) {
| ^~~~~~~~~~~~~~~~~~~~~~~
| spi_flash_cache2phys
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\dispdrivers\cvbs16controller.cpp: In static member function 'static void fabgl::CVBS16Controller::drawScanlineX2(void*, uint16_t*, int, int)':
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\dispdrivers\cvbs16controller.cpp:627:74: error: 'spi_flash_cache_enabled' was not declared in this scope; did you mean 'spi_flash_cache2phys'?
627 | if (CVBSGenerator::VSync() && !ctrl->m_primitiveProcessingSuspended && spi_flash_cache_enabled() && ctrl->m_primitiveExecTask) {
| ^~~~~~~~~~~~~~~~~~~~~~~
| spi_flash_cache2phys
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\dispdrivers\cvbs16controller.cpp: In static member function 'static void fabgl::CVBS16Controller::drawScanlineX3(void*, uint16_t*, int, int)':
c:\Users\leecl\Documents\Arduino\libraries\FabGL\src\dispdrivers\cvbs16controller.cpp:699:74: error: 'spi_flash_cache_enabled' was not declared in this scope; did you mean 'spi_flash_cache2phys'?
699 | if (CVBSGenerator::VSync() && !ctrl->m_primitiveProcessingSuspended && spi_flash_cache_enabled() && ctrl->m_primitiveExecTask) {
| ^~~~~~~~~~~~~~~~~~~~~~~
| spi_flash_cache2phys
Using library FabGL at version 1.0.9 in folder: C:\Users\leecl\Documents\Arduino\libraries\FabGL
Using library SPI at version 3.2.0 in folder: C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.2.0\libraries\SPI
Using library WiFi at version 3.2.0 in folder: C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.2.0\libraries\WiFi
Using library Networking at version 3.2.0 in folder: C:\Users\leecl\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.2.0\libraries\Network
exit status 1
Compilation error: exit status 1
type or paste code here