Open mrmonteith opened 3 weeks ago
It all seems to be related to the ESP32 code being updated.
Migration from 2.x to 3.0
ledcSetup is removed and ledcDetachPin renamed to ledcDetach.
Arduino-ESP32 LEDC API
bool ledcAttach(uint8_t pin, uint32_t freq, uint8_t resolution);
I was able to compile the code and it uploads fine. I also get the text output to the serial port. But nothing on the display.
@mrmonteith
You should use the arduino esp lib version 2.0.14 to build it.
@mrmonteith The board model used in the Platformio IDE is custom and may differ from the one in the Arduino IDE. If you want to use the board model customized in the Platformio IDE within the Arduino IDE, you need to apply to the Arduino IDE community to add the board model, which may take some time. Therefore, you can currently use other boards as substitutes; in terms of usage, there is almost no difference except for the name.
I did all that. Even reinstalled a clean copy of the Arduino IDE and all. I spent all day today trying to get it to work. I get:
camera init failed with 0xffffffff
.
@mrmonteith
This is indeed an error, caused by not being able to locate the PSRAM. In the program, "config.fb_location = CAMERA_FB_IN_PSRAM;" was called, but actually, the PSRAM was not enabled.
I have corrected the board type [OPI PSRAM] -> [QSPI PSRAM].
Alternatively, you can change "config.fb_location = CAMERA_FB_IN_PSRAM;" to ".fb_location = CAMERA_FB_IN_DRAM" in the program.
IDE and version or firmware
Ardino IDE 2.3.2
Operating System
Windows 10
Description
Multiple GFX errors
In file included from c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_GFX_Library.h:4, from C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\Camera_Screen.ino:16: c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_DataBus.h:167:13: error: 'i80_device_list' has not been declared 167 | LIST_HEAD(i80_device_list, lcd_panel_io_i80_t) | ^
~~~~~~ c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_DataBus.h:167:3: error: ISO C++ forbids declaration of 'LIST_HEAD' with no type [-fpermissive] 167 | LIST_HEAD(i80_device_list, lcd_panel_io_i80_t) | ^~~~~ c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_DataBus.h:167:48: error: expected ';' at end of member declaration 167 | LIST_HEAD(i80_device_list, lcd_panel_io_i80_t) | ^ | ; c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_DataBus.h:168:3: error: 'device_list' does not name a type 168 | device_list; // Head of i80 device list | ^~~c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_DataBus.h:202:3: error: ISO C++ forbids declaration of 'LIST_ENTRY' with no type [-fpermissive] 202 | LIST_ENTRY(lcd_panel_io_i80_t) | ^~~~~~ c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_DataBus.h:202:32: error: expected ';' at end of member declaration 202 | LIST_ENTRY(lcd_panel_io_i80_t) | ^ | ; c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_DataBus.h:203:3: error: 'device_list_entry' does not name a type 203 | device_list_entry; // Entry of i80 device list | ^~~~~ In file included from c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/Arduino_GFX_Library.h:17: c:\Users\micha\OneDrive\Documents\Arduino\libraries\Arduino_GFX-1.3.7\src/databus/Arduino_ESP32RGBPanel.h:43:3: error: 'esp_lcd_rgb_panel_frame_trans_done_cb_t' does not name a type; did you mean 'esp_lcd_panel_io_color_trans_done_cb_t'? 43 | esp_lcd_rgb_panel_frame_trans_done_cb_t on_frame_trans_done; // Callback, invoked after frame trans done | ^~~~~~~~~~~ | esp_lcd_panel_io_color_trans_done_cb_t In file included from C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\Camera_Screen.ino:20: C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\app_httpd.tpp: In function 'void setupLedFlash(int)': C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\app_httpd.tpp:1388:5: error: 'ledcSetup' was not declared in this scope; did you mean 'ledc_stop'? 1388 | ledcSetup(LED_LEDC_CHANNEL, 5000, 8); | ^~~~~ | ledc_stop C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\app_httpd.tpp:1389:5: error: 'ledcAttachPin' was not declared in this scope; did you mean 'ledcAttach'? 1389 | ledcAttachPin(pin, LED_LEDC_CHANNEL); | ^~~~~ | ledcAttach C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\Camera_Screen.ino: In function 'void setup()': C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\Camera_Screen.ino:108:5: error: 'ledcAttachPin' was not declared in this scope; did you mean 'ledcAttach'? 108 | ledcAttachPin(LCD_BL, 1); | ^~~~~ | ledcAttach C:\Users\micha\OneDrive\Documents\Arduino\T-CameraPlus-S3\examples\Camera_Screen\Camera_Screen.ino:109:5: error: 'ledcSetup' was not declared in this scope; did you mean 'ledc_stop'? 109 | ledcSetup(1, 20000, 8); | ^~~~~ | ledc_stopexit status 1
Compilation error: 'ledcSetup' was not declared in this scope; did you mean 'ledc_stop'?
Sketch
Debug Message
Other steps to Reproduce
I totally removed the Arduino IDE when I had this issue initially. I even removed all the AppData information and my Arduino folder and started over. So I followed the steps on the github page. Which is confusing. It says to select Adafruit Feather ESP32-S3 No PSRAM, but then says later to follow the in the platform.io file, which is different. That's not the issue as no matter what is selected I get the same errors. BTW, the latest release of GFX is far ahead of what you have. Any plans to update all of this so there is no juggling of files around?