clumsyCoder00 / Sunton-ESP32-8048S043

A minimal configuration for this board.
GNU General Public License v2.0
0 stars 0 forks source link

Linking fails #1

Open KLelong opened 1 week ago

KLelong commented 1 week ago

Hi, Is there anything you forgot to mention with your setup ? I copied your repo and downloaded the libraries. Visual Studio Code compiles it fine, but the linking fails. This is the error I get :

Indexing .pio/build/ESP32S3-8048S043/libFrameworkArduino.a
Linking .pio/build/ESP32S3-8048S043/firmware.elf
/home/userx/.platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: /home/userx/.platformio/packages/framework-arduinoespressif32@src-ac8b0a8c9d4f983d374ebd56d0ad32c2/tools/sdk/esp32s3/lib/libwpa_supplicant.a(sha256-internal.c.obj): in function `sha256_init':
/home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/wpa_supplicant/src/crypto/sha256-internal.c:128: multiple definition of `sha256_init'; .pio/build/ESP32S3-8048S043/libb8f/libeez-framework.a(sha256.c.o):/home/userx/ownCloud/documents/devel/platformio/lvgl-test0/Sunton-ESP32-8048S043-main/Sunton-ESP32-8048S043/lib/eez-framework/src/eez/libs/sha256/sha256.c:88: first defined here
collect2: error: ld returned 1 exit status
*** [.pio/build/ESP32S3-8048S043/firmware.elf] Error 1

Adding a build-flag in platformio.ini: '-D EEZ_FOR_LVGL_SHA256_OPTION=0' fixed the linking. I then uploaded the code to my device, but what is it supposed to do ? All I get is a cycle of white, red, green, blue and black screens. When I touch the screen, I get data via the serial-console, so that is good. TIA

KLelong commented 1 week ago

Maybe this helps : the serial-output at startup.

Arduino_GFX LVGL_Arduino example v9
Hello Arduino! V9.1.1
Init Display
TFT_BL
[Info]  (0.000, +0)      lv_init: begin lv_init.c:146
[Info]  (0.220, +220)    lv_obj_create: begin lv_obj.c:106
[Info]  (0.220, +220)    lv_obj_create: begin lv_obj.c:106

[Info]  (0.233, +13)     lv_obj_create: begin lv_obj.c:106
[Info]  (0.233, +13)     lv_obj_create: begin lv_obj.c:106

[Info]  (0.244, +11)     lv_obj_create: begin lv_obj.c:106
[Info]  (0.244, +11)     lv_obj_create: begin lv_obj.c:106

[Info]  (0.254, +10)     lv_obj_create: begin lv_obj.c:106
[Info]  (0.254, +10)     lv_obj_create: begin lv_obj.c:106

[Info]  (0.264, +10)     lv_sysmon_create: begin lv_sysmon.c:81
[Info]  (0.264, +10)     lv_sysmon_create: begin lv_sysmon.c:81

[Info]  (0.275, +11)     lv_label_create: begin lv_label.c:84
[Info]  (0.275, +11)     lv_label_create: begin lv_label.c:84

[Info]  (0.288, +13)     lv_obj_create: begin lv_obj.c:106
[Info]  (0.288, +13)     lv_obj_create: begin lv_obj.c:106

[Info]  (0.299, +11)     lv_label_create: begin lv_label.c:84
[Info]  (0.299, +11)     lv_label_create: begin lv_label.c:84

[Info]  (0.310, +11)     lv_button_create: begin lv_button.c:50
[Info]  (0.310, +11)     lv_button_create: begin lv_button.c:50

[Info]  (0.322, +12)     lv_obj_create: begin lv_obj.c:106
[Info]  (0.322, +12)     lv_obj_create: begin lv_obj.c:106

[Info]  (0.332, +10)     lv_button_create: begin lv_button.c:50
[Info]  (0.332, +10)     lv_button_create: begin lv_button.c:50

[Info]  (0.344, +12)     lv_label_create: begin lv_label.c:84
[Info]  (0.344, +12)     lv_label_create: begin lv_label.c:84

Setup done

It seems some labels and buttons are created, but I don't see them, only the colored screens.

clumsyCoder00 commented 6 days ago

If you're still getting the cycle of solid colored screens, this code is not running on the device. This project is two white screens with simple buttons on them to simply toggle between them and demonstrate a fully functional bare bones implementation of LVGL on this hardware. I'll add some photos to the main page to give a better idea for what the expected interface should look like. Let me know if you have any other issues!

screen 1 screen 2

KLelong commented 6 days ago

OK, I manually erased the flash and uploaded again. Now I get a solid white screen, but nothing else. The serial monitor gives the output of the touchscreen.

I still wonder why I had to include that build-flag to get the code linked. Maybe that build-flag is the reason I don't see anything on the screen ?

That cycle of full-screen colors was a remnant of the demo on the board I think, but why did that run when I flashed new code on the board ? Together with the new code !