Proper "Adafruit Qualia ESP32-S3 for TTL RGB-666 board" configurations in VsCode ESP-IDF or PlatformIO
Posted: Tue Jan 16, 2024 6:52 pm
Hello everyone,
I'm new to ESP32 and I have little problems coding it. I don't know here is the correct place to share my experience. I've bought Adafruit Qualia ESP32-S3 for TTL RGB-666 Displays, It uses a S3 module with 16 MB of Flash and 8 MB of octal PSRAM. It runs with demo program written in C/C++ in Arduino IDE that is supplied from web page. But IT is too slow, It can show static images, but I want more from it. The Library that they are using is for all LCDs on the Planet, so Library is too heavy. minutes of Build time. Anyway When I search I had an example code from GITHUB. The Author of the code says it runs in PlatformIO on VSCode. So I tried it. It builds without any problem. I could upload the Code without any problem. But I think the IDE/Platform does not know the Qualia Specs, so it does not run properly.
The Main Problem in Arduino IDE with ESP32 coding is I'm waiting the ESP-IDF 3.0 with double buffer RGB LCD coding to use tearless images. Arduino IDE uses ESP32 Boards v2.0.14 and it is some limitations I think. So I went to VsCode to use ESP-IDF. But I cannot select Qualia S3 Board. Platform IO Claims they have the information. And you can select the Board. But after you build it. it gives this error :
so I went to update the sdkconfig file by hand. Changed the Flash Size to 16MB and this warning disappeared.
But after I reboot the Board I check the Serial Terminal to watch and debug the Program. Program starts with "Hello World!"
Here is the problem. I don't think I could manage to configure the builder for the Board Specs. I'm looking for help. I'm all new to VsCode / ESP32 / PlatformIO .
PlatformIO Forums seems dead end. The board is rare and nobody had any experience with them. So Where can I find information how can you help.
Many thanks for now.
I'm new to ESP32 and I have little problems coding it. I don't know here is the correct place to share my experience. I've bought Adafruit Qualia ESP32-S3 for TTL RGB-666 Displays, It uses a S3 module with 16 MB of Flash and 8 MB of octal PSRAM. It runs with demo program written in C/C++ in Arduino IDE that is supplied from web page. But IT is too slow, It can show static images, but I want more from it. The Library that they are using is for all LCDs on the Planet, so Library is too heavy. minutes of Build time. Anyway When I search I had an example code from GITHUB. The Author of the code says it runs in PlatformIO on VSCode. So I tried it. It builds without any problem. I could upload the Code without any problem. But I think the IDE/Platform does not know the Qualia Specs, so it does not run properly.
The Main Problem in Arduino IDE with ESP32 coding is I'm waiting the ESP-IDF 3.0 with double buffer RGB LCD coding to use tearless images. Arduino IDE uses ESP32 Boards v2.0.14 and it is some limitations I think. So I went to VsCode to use ESP-IDF. But I cannot select Qualia S3 Board. Platform IO Claims they have the information. And you can select the Board. But after you build it. it gives this error :
Code: Select all
Processing adafruit_qualia_s3_rgb666 (platform: espressif32; board: adafruit_qualia_s3_rgb666; framework: espidf)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/adafruit_qualia_s3_rgb666.html
PLATFORM: Espressif 32 (6.5.0) > Adafruit Qualia ESP32-S3 RGB666
HARDWARE: ESP32S3 240MHz, 320KB RAM, 16MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-espidf @ 3.50102.0 (5.1.2)
- tool-cmake @ 3.16.4
- tool-esptoolpy @ 1.40501.0 (4.5.1)
- tool-idf @ 1.0.1
- tool-mconf @ 1.4060000.20190628 (406.0.0)
- tool-mkfatfs @ 2.0.1
- tool-mklittlefs @ 1.203.210628 (2.3)
- tool-mkspiffs @ 2.230.0 (2.30)
- tool-ninja @ 1.9.0
- tool-riscv32-esp-elf-gdb @ 11.2.0+20220823
- tool-xtensa-esp-elf-gdb @ 11.2.0+20230208
- toolchain-esp32ulp @ 1.23500.220830 (2.35.0)
- toolchain-riscv32-esp @ 12.2.0+20230208
- toolchain-xtensa-esp32s3 @ 12.2.0+20230208
Reading CMake configuration...
Warning! Flash memory size mismatch detected. Expected 16MB, found 2MB!
Please select a proper value in your `sdkconfig.defaults` or via the `menuconfig` target!
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 3 compatible libraries
Scanning dependencies...
Dependency Graph
|-- MyPCA9554
|-- MyUtils
|-- MyWire
Building in release mode
Retrieving maximum program size .pio\build\adafruit_qualia_s3_rgb666\firmware.elf
Checking size .pio\build\adafruit_qualia_s3_rgb666\firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [ ] 4.0% (used 13136 bytes from 327680 bytes)
Flash: [== ] 23.4% (used 245373 bytes from 1048576 bytes)
Configuring upload protocol...
AVAILABLE: cmsis-dap, esp-bridge, esp-builtin, esp-prog, espota, esptool, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa
CURRENT: upload_protocol = esptool
Looking for upload port...
Auto-detected: COM4
Warning! Flash memory size mismatch detected. Expected 16MB, found 2MB!
so I went to update the sdkconfig file by hand. Changed the Flash Size to 16MB and this warning disappeared.
Code: Select all
#
# Serial flasher config
#
# CONFIG_ESPTOOLPY_NO_STUB is not set
# CONFIG_ESPTOOLPY_OCT_FLASH is not set
CONFIG_ESPTOOLPY_FLASH_MODE_AUTO_DETECT=y
# CONFIG_ESPTOOLPY_FLASHMODE_QIO is not set
# CONFIG_ESPTOOLPY_FLASHMODE_QOUT is not set
CONFIG_ESPTOOLPY_FLASHMODE_DIO=y
# CONFIG_ESPTOOLPY_FLASHMODE_DOUT is not set
CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE_STR=y
CONFIG_ESPTOOLPY_FLASHMODE="dio"
# CONFIG_ESPTOOLPY_FLASHFREQ_120M is not set
CONFIG_ESPTOOLPY_FLASHFREQ_80M=y
# CONFIG_ESPTOOLPY_FLASHFREQ_40M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_20M is not set
CONFIG_ESPTOOLPY_FLASHFREQ_80M_DEFAULT=y
CONFIG_ESPTOOLPY_FLASHFREQ="80m"
# CONFIG_ESPTOOLPY_FLASHSIZE_1MB is not set
#CONFIG_ESPTOOLPY_FLASHSIZE_2MB=y
# CONFIG_ESPTOOLPY_FLASHSIZE_4MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_8MB is not set
CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y # is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_32MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_64MB is not set
# CONFIG_ESPTOOLPY_FLASHSIZE_128MB is not set
CONFIG_ESPTOOLPY_FLASHSIZE="16MB"
# CONFIG_ESPTOOLPY_HEADER_FLASHSIZE_UPDATE is not set
CONFIG_ESPTOOLPY_BEFORE_RESET=y
# CONFIG_ESPTOOLPY_BEFORE_NORESET is not set
CONFIG_ESPTOOLPY_BEFORE="default_reset"
CONFIG_ESPTOOLPY_AFTER_RESET=y
# CONFIG_ESPTOOLPY_AFTER_NORESET is not set
CONFIG_ESPTOOLPY_AFTER="hard_reset"
CONFIG_ESPTOOLPY_MONITOR_BAUD=115200
# end of Serial flasher config
Code: Select all
Hello world!
my_wire_create
Initialising I2C Master: sda=8 scl=18 freq=1000000
MyWire ready!
PCA9554 found
PCA9554 Setup Done!
Panel Create
e[0;31mE (1079) lcd_panel.rgb: lcd_rgb_panel_alloc_frame_buffers(156): no mem for frame buffere[0m
e[0;31mE (1079) lcd_panel.rgb: esp_lcd_new_rgb_panel(285): alloc frame buffers failede[0m
Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC : 0x420034f5 PS : 0x00060730 A0 : 0x82003afe A1 : 0x3fc9a560
A2 : 0x3fc9bdc8 A3 : 0x3c020604 A4 : 0x3c020b34 A5 : 0x00000437
A6 : 0x3c020604 A7 : 0x3c020de4 A8 : 0x00000000 A9 : 0x3fc9a500
A10 : 0x420122b8 A11 : 0x3c020604 A12 : 0x3c020b34 A13 : 0x3fc9a560
A14 : 0x3fc9a540 A15 : 0x0000000c SAR : 0x00000004 EXCCAUSE: 0x0000001c
EXCVADDR: 0x00000000 LBEG : 0x400556d5 LEND : 0x400556e5 LCOUNT : 0xfffffffa
Backtrace: 0x420034f2:0x3fc9a560 0x42003afb:0x3fc9a580 0x4200188f:0x3fc9a5c0 0x420019b0:0x3fc9a690 0x4037de10:0x3fc9a8a0 0x4037da09:0x3fc9a8d0
e[0;31mE (1079) lcd_panel.rgb: lcd_rgb_panel_alloc_frame_buffers(156): no mem for frame buffere[0m
e[0;31mE (1079) lcd_panel.rgb: esp_lcd_new_rgb_panel(285): alloc frame buffers failede[0m
Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.
Here is the problem. I don't think I could manage to configure the builder for the Board Specs. I'm looking for help. I'm all new to VsCode / ESP32 / PlatformIO .
PlatformIO Forums seems dead end. The board is rare and nobody had any experience with them. So Where can I find information how can you help.
Many thanks for now.