Skip to content

[BUG] Initialization problem ESP32-S3-EYE v2.2 + ST7789 SPI (240x240 16 bits) #138

@Kochise

Description

@Kochise

Hello, trying your library but the documentation is non intuitive.

// LCD:			LCD		ST7789	240x240		1.3"
//				IO		TP2		J9.4		GPIO0
// 				IO		TP3		J9.6		GPIO3
// 				SPI		SCLK	J8.7		GPIO21
// 				SPI		DC		J8.9		GPIO43
// 				SPI		CS		J8.5		GPIO44
// 				IO		TP4		J9.8		GPIO45
// 				IO		TP5		J9.10		GPIO46
// 				SPI		SDA		J8.3		GPIO47
// 				IO		BLK		J8.1		GPIO48

// LCD settings
#define cLCD_SPI_HARD		(1)
#define cLCD_SPI_RST		(-1)
#define cLCD_SPI_DC			(43)
#define cLCD_SPI_CS			(44)
#define cLCD_SPI_SCL		(21)
#define cLCD_SPI_SDIN		(47)
#define cLCD_SPI_BLK		(48)
#define cLCD_SPI_PORT		(VSPI_HOST)

// LCD SPI
#include <lcdgfx.h>

DisplayST7789_240x240x16_CustomSPI lcd(-1, cLCD_SPI_DC, { -1, { cLCD_SPI_CS }, cLCD_SPI_DC, 0, cLCD_SPI_SCL, cLCD_SPI_SDIN });

I get :

Compiling sketch...
"C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp-xs3\\2302/bin/xtensa-esp32s3-elf-g++" -MMD -c "@C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-632e0c2a\\esp32s3/flags/cpp_flags" -Os -Werror=return-type -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD=\"ESP32S3_DEV\"" "-DARDUINO_VARIANT=\"esp32s3\"" -DARDUINO_PARTITION_default "-DARDUINO_HOST_OS=\"windows\"" "-DARDUINO_FQBN=\"esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=4M,PartitionScheme=default,DebugLevel=none,PSRAM=disabled,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default\"" -DESP32=ESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 "@C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-632e0c2a\\esp32s3/flags/defines" "-IF:\\_WENUAM\\_GIT\\iw_vespa_DT0001\\DT0001" -iprefix "C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-632e0c2a\\esp32s3/include/" "@C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-632e0c2a\\esp32s3/flags/includes" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-632e0c2a\\esp32s3/qio_qspi/include" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.7\\cores\\esp32" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.7\\variants\\esp32s3" "-Ic:\\Users\\User\\Documents\\Arduino\\libraries\\lcdgfx\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.7\\libraries\\SPI\\src" "-Ic:\\Users\\User\\Documents\\Arduino\\libraries\\EloquentEsp32cam\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.7\\libraries\\Preferences\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.7\\libraries\\FS\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.7\\libraries\\SD_MMC\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.7\\libraries\\Wire\\src" "@C:\\Users\\User\\AppData\\Local\\arduino\\sketches\\394FE56B5CE6EDDB053B75BDD9667850/build_opt.h" "@C:\\Users\\User\\AppData\\Local\\arduino\\sketches\\394FE56B5CE6EDDB053B75BDD9667850/file_opts" "C:\\Users\\User\\AppData\\Local\\arduino\\sketches\\394FE56B5CE6EDDB053B75BDD9667850\\sketch\\DT0001.ino.cpp" -o "C:\\Users\\User\\AppData\\Local\\arduino\\sketches\\394FE56B5CE6EDDB053B75BDD9667850\\sketch\\DT0001.ino.cpp.o"
In file included from c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/lcdgfx.h:30,
                 from F:\_TST\DT0001.ino:116:
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\string_view: In member function 'constexpr std::basic_string_view<_CharT, _Traits>::size_type std::basic_string_view<_CharT, _Traits>::copy(_CharT*, size_type, size_type) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\string_view: In member function 'constexpr std::basic_string_view<_CharT, _Traits> std::basic_string_view<_CharT, _Traits>::substr(size_type, size_type) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\string_view: In member function 'constexpr int std::basic_string_view<_CharT, _Traits>::compare(std::basic_string_view<_CharT, _Traits>) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\string_view.tcc: In member function 'constexpr std::basic_string_view<_CharT, _Traits>::size_type std::basic_string_view<_CharT, _Traits>::rfind(const _CharT*, size_type, size_type) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.h: In member function 'constexpr int std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::compare(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.h: In member function 'constexpr std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_If_sv<_Tp, int> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::compare(const _Tp&) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.tcc: In member function 'constexpr std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::size_type std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::rfind(const _CharT*, size_type, size_type) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.tcc: In member function 'constexpr int std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::compare(size_type, size_type, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.tcc: In member function 'constexpr int std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::compare(size_type, size_type, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.tcc: In member function 'constexpr int std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::compare(const _CharT*) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.tcc: In member function 'constexpr int std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::compare(size_type, size_type, const _CharT*) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\basic_string.tcc: In member function 'constexpr int std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::compare(size_type, size_type, const _CharT*, size_type) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\streambuf.tcc: In member function 'virtual std::streamsize std::basic_streambuf<_CharT, _Traits>::xsgetn(char_type*, std::streamsize)':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\streambuf.tcc: In member function 'virtual std::streamsize std::basic_streambuf<_CharT, _Traits>::xsputn(const char_type*, std::streamsize)':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\ranges_uninitialized.h: In member function 'std::ranges::uninitialized_copy_result<_Iter, _Out> std::ranges::__uninitialized_copy_fn::operator()(_Iter, _ISent, _Out, _OSent) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\ranges_uninitialized.h: In member function 'std::ranges::uninitialized_copy_n_result<_Iter, _Out> std::ranges::__uninitialized_copy_n_fn::operator()(_Iter, std::iter_difference_t<_Iter>, _Out, _Sent) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\ranges_uninitialized.h: In member function 'std::ranges::uninitialized_move_result<_Iter, _Out> std::ranges::__uninitialized_move_fn::operator()(_Iter, _ISent, _Out, _OSent) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\ranges_uninitialized.h: In member function 'std::ranges::uninitialized_move_n_result<_Iter, _Out> std::ranges::__uninitialized_move_n_fn::operator()(_Iter, std::iter_difference_t<_Iter>, _Out, _Sent) const':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
c:\users\user\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\istream.tcc: In member function 'std::streamsize std::basic_istream<_CharT, _Traits>::readsome(char_type*, std::streamsize)':
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/nano_gfx_types.h:36:19: error: expected unqualified-id before '(' token
   36 | #define min(a, b) ((a) < (b) ? (a) : (b))
      |                   ^
F:\_TST\DT0001.ino: At global scope:
F:\_TST\DT0001.ino:137:125: error: class template argument deduction failed:
  137 | DisplayST7789_240x240x16_CustomSPI lcd(-1, cLCD_SPI_DC, { -1, { cLCD_SPI_CS }, cLCD_SPI_DC, 0, cLCD_SPI_SCL, cLCD_SPI_SDIN });
      |                                                                                                                             ^
F:\_TST\DT0001.ino:137:125: error: no matching function for call to 'DisplayST7789_240x240x16_CustomSPI(int, int, <brace-enclosed initializer list>)'
In file included from c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/v2/lcd/lcdttgo/lcd_ttgo.h:33,
                 from c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/lcdgfx.h:39:
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/v2/lcd/st7789/lcd_st7789.h:348:5: note: candidate: 'template<class I, class ... Args> DisplayST7789_240x240x16_CustomSPI(int8_t, int8_t, Args&& ...)-> DisplayST7789_240x240x16_CustomSPI<I>'
  348 |     DisplayST7789_240x240x16_CustomSPI(int8_t rstPin, int8_t dcPin, Args &&... data)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/v2/lcd/st7789/lcd_st7789.h:348:5: note:   template argument deduction/substitution failed:
F:\_TST\DT0001.ino:137:125: note:   couldn't deduce template parameter 'I'
  137 | DisplayST7789_240x240x16_CustomSPI lcd(-1, cLCD_SPI_DC, { -1, { cLCD_SPI_CS }, cLCD_SPI_DC, 0, cLCD_SPI_SCL, cLCD_SPI_SDIN });
      |                                                                                                                             ^
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/v2/lcd/st7789/lcd_st7789.h:336:26: note: candidate: 'template<class I> DisplayST7789_240x240x16_CustomSPI(DisplayST7789_240x240x16_CustomSPI<I>)-> DisplayST7789_240x240x16_CustomSPI<I>'
  336 | template <class I> class DisplayST7789_240x240x16_CustomSPI: public DisplayST7789_240x240x16<InterfaceST7789<I>>
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\Users\User\Documents\Arduino\libraries\lcdgfx\src/v2/lcd/st7789/lcd_st7789.h:336:26: note:   template argument deduction/substitution failed:
F:\_TST\DT0001.ino:137:125: note:   mismatched types 'DisplayST7789_240x240x16_CustomSPI<I>' and 'int'
  137 | DisplayST7789_240x240x16_CustomSPI lcd(-1, cLCD_SPI_DC, { -1, { cLCD_SPI_CS }, cLCD_SPI_DC, 0, cLCD_SPI_SCL, cLCD_SPI_SDIN });
      |                                                                                                                             ^

Any idea ?

No useful Wiki page found.

Regards.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions