Comments (11)
It needs to be modified in the instructions in readme.md under the subheading:
"Install this project as a library submodule in your own project"
There it states:
The project root CMakeLists.txt file needs one line added, just before the project to add the extra components directory to the path like this:
#CMakeLists.txt
cmake_minimum_required(VERSION 3.5)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
set(EXTRA_COMPONENT_DIRS externals/lv_port_esp32/components)
project(blink)
But I found I needed to add the following:
set(EXTRA_COMPONENT_DIRS externals/lv_port_esp32/components externals/lv_port_esp32/components/lvgl_esp32_drivers externals/lv_port_esp32/components/lvgl_esp32_drivers/lvgl_touch externals/lv_port_esp32/components/lvgl_esp32_drivers/lvgl_tft)
I'm still having other issues trying to work out how to incorporate littlegvl into my own projects...
from lv_port_esp32.
Sure np problem, I was testing the applications with a ST7789 based display with no touch controller so I didn't tried to run the tpcal application, but I will try with a similar display to yours next weekend (or before if my day job allows it).
I wasn't able to fully understand the terminal application, let me know if I'm wrong but I understand it as it display the data received by the microcontroller via UART?
from lv_port_esp32.
@eddeyonline just updated the instructions on the README about using this repo on user projects, let me know if it works for you.
from lv_port_esp32.
Hi,
Thanks for reporting the issue, they're already added into the CMakeLists.txt in the root of the repo
set(EXTRA_COMPONENT_DIRS components/lvgl_esp32_drivers components/lvgl_esp32_drivers/lvgl_touch components/lvgl_esp32_drivers/lvgl_tft)
Where did you added it?
from lv_port_esp32.
Thanks for the clarification, I will update it asap.
Maybe you can try use this as your project template, just configuring it with menuconfig and commenting out the demo_create
line on the main.c file.
All the feedback is welcome, we been adding some TFT drivers and touch controllers but I don't have them all to test. What driver are you planning to use?
from lv_port_esp32.
Thanks, I'll try commenting out the demo_create line and adding in my own function there.
I'm using a 2.4" 240x320 TFT with an ILI9341 display driver and XPT2046 touch driver, so pretty standard. Using the demo file it worked great. I just needed to make sure I hooked it up as per the readme.md file and deselect "invert Y axis" in menuconfig to get the demo to work perfectly. Thanks for your great work with the library! I'll let you know how I go getting my own code to run.
from lv_port_esp32.
I've been trying out a few of the apps and tutorials and have had some success with some and run into issues with others. For all of them I've used the demo template and have changed the include to the appropriate *.h file, changed the name of the function called in app_main() and adjusted the variables in lv_ex_conf as appropriate. I found the following worked fine:
- demo, with and without slideshow
- benchmark
- lv_test_group
- lv_test_obj
Whichever tutorial I tried to build it failed with the following error:
./components/lv_examples/lv_examples/lv_tutorial/8_animations/lv_tutorial_animations.c:87:6: error: 'lv_anim_t' {aka 'struct _lv_anim_t'} has no member named 'user_data'
a.user_data = NULL;
Commenting out this line resulted in all the tutuorials I tried working fine, though the images one seemed to be missing some source files.
sysmon failed with the following error:
../components/lv_examples/lv_examples/lv_apps/sysmon/sysmon.c: In function 'sysmon_task':
../components/lv_examples/lv_examples/lv_apps/sysmon/sysmon.c:135:13: error: passing argument 1 to restrict-qualified parameter aliases with argument 3 [-Werror=restrict]
sprintf(buf_long, "%s"LV_TXT_COLOR_CMD"%s MEMORY: %d %%"LV_TXT_COLOR_CMD"\n"
^~~~~~~~
../components/lv_examples/lv_examples/lv_apps/sysmon/sysmon.c:140:13:
buf_long,
~~~~~~~~
tpcal failed with following error:
../main/main.c: In function 'app_main':
../main/main.c:115:2: error: implicit declaration of function 'tpcal_create'; did you mean 'lv_arc_create'? [-Werror=implicit-function-declaration]
tpcal_create();
^~~~~~~~~~~~
I double checked ex_conf and the include, so I'm not sure what the issue was here. I got a similar issue with terminal, error message below:
When attempting to use terminal:
../main/main.c: In function 'app_main':
../main/main.c:115:2: error: implicit declaration of function 'terminal_create'; did you mean 'lv_win_create'? [-Werror=implicit-function-declaration]
terminal_create();
^~~~~~~~~~~~~~~
For anyone using the same touchscreen as me, the variables that resulted in the good calibration are as follows:
CONFIG_LVGL_TOUCH_X_MIN=200
CONFIG_LVGL_TOUCH_Y_MIN=120
CONFIG_LVGL_TOUCH_X_MAX=1900
CONFIG_LVGL_TOUCH_Y_MAX=1900
CONFIG_LVGL_TOUCH_INVERT_X=y
CONFIG_LVGL_TOUCH_INVERT_Y is not set
from lv_port_esp32.
Thanks for the update, does the tutorial you're following need or is based on a specific version of lvgl? As far as I know the version used in this project is somewhat old. Maybe that's why some lvgl types aren't available.
Whichever tutorial I tried to build it failed with the following error:
./components/lv_examples/lv_examples/lv_tutorial/8_animations/lv_tutorial_animations.c:87:6: error: 'lv_anim_t' {aka 'struct _lv_anim_t'} has no member named 'user_data'
a.user_data = NULL;
Try editing the lv_conf.h file, search for LV_USE_USER_DATA
and set it to 1:
/*1: Add a `user_data` to drivers and objects*/
#define LV_USE_USER_DATA 1
sysmon failed with the following error:
../components/lv_examples/lv_examples/lv_apps/sysmon/sysmon.c: In function 'sysmon_task':
../components/lv_examples/lv_examples/lv_apps/sysmon/sysmon.c:135:13: error: passing argument 1 to restrict-qualified parameter aliases with argument 3 [-Werror=restrict]
sprintf(buf_long, "%s"LV_TXT_COLOR_CMD"%s MEMORY: %d %%"LV_TXT_COLOR_CMD"\n"
^~~~~~~~
../components/lv_examples/lv_examples/lv_apps/sysmon/sysmon.c:140:13:
buf_long,
To solve this one i think we should update the lv_examples submodule at least up to this: sysmon: fix spintfs commit.
Will keep finding solutions for the other errors you had.
from lv_port_esp32.
With #80 merge you should be able to compile and run the sysmon application, I'm still trying to figure out how to run terminal and tpcal apps.
from lv_port_esp32.
from lv_port_esp32.
This issue or pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
from lv_port_esp32.
Related Issues (20)
- Cannot build project with LVGL as component HOT 1
- SPI display drivers do not play nice with other spi devices
- esp32-s3 invalid dma channel HOT 1
- Portrait mode of demos doesn't display correctly
- The link to the forum when you write a PR/issue is incorrect HOT 1
- build with esp-idf-4.4.3 fails HOT 1
- failed to run idf.py menuconfig HOT 3
- updated LVGL+squareline studio+ ESP32 HOT 2
- Demo on older esp-wrover-kit board ( not v4.1) HOT 2
- Display not showing the correct windows while running this example HOT 2
- Sunton ESP32-8048S070 board HOT 8
- How can I add my own components to the project
- Unable to compile on esp-idf version 5.0 HOT 4
- undefined reference to `lv_obj_set_scroll_propagation'
- Cant turn off LV_USE_FLEX
- Horizontal scrolling HOT 4
- fatal error: Arduino_H7_Video.h: No such file or directory
- ESP32C3 - non-LVGL task (temp reading) causes TFT display to go blank and stay blank on second run of task HOT 1
- ssd1306 driver
- ssd1306
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lv_port_esp32.