ROCK 3A 7inch with TS LVGL8 / LVGL9 test drive

After testing LVGL on Rock 5B with HDMI (mouse), I compiled and tested LVGL8 and LVGL9 on Rock 3A with a 7-inch LCD and Capacitive touch screen.

Capacitive TS returns the touch point with normalized values, something like (0,800) instead of (0.0,1.0) in a no Desktop environment, like GBM / Wayland CLI. I think LVGL expects a touch point value in the 0.0,1.0 range, the same for SDL. You need to consider it to have the correct point on the screen.

The screen is 800x480. I could test LVGL8 with TS and without the Cursor image (embedded-like), and LVGL9 can draw a cursor image to follow the TS and use the mouse simultaneously.

And forgive the FAT finger… :slight_smile:

LVGL V8 (TS only, cursor hidden)

LVGL V9 (TS and Mouse, cursor drawn by LVGL)

1 Like

The test was done with SW rendering. I managed to use HW rendering which has better performance.
40% ~ 75% CPU usage (SW) vs 20% ~ 55% CPU (HW).

The advantage: run GBM and Weston/Wayland.

Tasks: 152 total,   1 running, 151 sleeping,   0 stopped,   0 zombie
%Cpu(s):  6.0 us,  1.2 sy,  0.0 ni, 92.7 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st
MiB Mem :   3922.1 total,   3375.8 free,    159.8 used,    386.5 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   3513.4 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND  
    978 rock      20   0  412876  56544  38656 S  22.0   1.4   0:48.83 main     
    964 rock      20   0  405012  57136  35180 S   5.9   1.4   0:13.41 weston   
    953 rock      20   0    7392   3192   2600 R   1.6   0.1   0:02.87 top      
    146 root      20   0       0      0      0 S   0.7   0.0   0:04.52 kworker+ 
   1027 root       0 -20       0      0      0 I   0.7   0.0   0:00.30 kworker+ 
     97 root      20   0       0      0      0 I   0.3   0.0   0:01.32 kworker+ 
    180 root      20   0       0      0      0 I   0.3   0.0   0:01.16 kworker+ 
    364 root      20   0  256996  16620  13944 S   0.3   0.4   0:00.60 Network+ 
    913 root       0 -20       0      0      0 I   0.3   0.0   0:01.30 kworker+ 
      1 root      20   0  165944  10136   7424 S   0.0   0.3   0:03.38 systemd  
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.02 kthreadd 
      3 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_gp   
      4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_par+ 
      6 root       0 -20       0      0      0 I   0.0   0.0   0:00.22 kworker+ 
      8 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 mm_perc+ 
      9 root      20   0       0      0      0 S   0.0   0.0   0:00.00 rcu_tas+ 
     10 root      20   0       0      0      0 S   0.0   0.0   0:00.20 ksoftir+