Observed UI flickering on ARM target
-
Hi Team,
Could you please let us know what could be the reason for this flickering issue (which is observed very consistently).
Please refer to image and video attachment for reference.
Could you please help us with some pointers.I have compiled a sample application (emitters ) from Qt examples with arm toolchain, and ran the UI binary on the target.
I have seen some flickering at the top right corner of the UI (in eglfs mode).
I do not see such behavior on VNC.Are there any configurations to be set on the target or are there any specific features need to be enabled in Qt configure?
Below is the configure summary that we are using on our targetBuilding on: linux-g++ (x86_64, CPU features: mmx sse sse2)
Building for: devices/linux-arm-g++ (arm, CPU features: neon)
Target compiler: gcc 8.3.0
Configuration: cross_compile enable_new_dtags largefile neon optimize_size shared shared rpath release c++11 c++14 c++17 c++1z concurrent dbus reduce_exports stl
Build options:
Mode ................................... release
Optimize release build for size ........ yes
Building shared libraries .............. yes
Using C standard ....................... C11
Using C++ standard ..................... C++17
Using ccache ........................... no
Using new DTAGS ........................ yes
Relocatable ............................ yes
Using precompiled headers .............. no
Using LTCG ............................. no
Target compiler supports:
NEON ................................. yes
Build parts ............................ libs
Qt modules and options:
Qt Concurrent .......................... yes
Qt D-Bus ............................... yes
Qt D-Bus directly linked to libdbus .... yes
Qt Gui ................................. yes
Qt Network ............................. yes
Qt Sql ................................. yes
Qt Testlib ............................. yes
Qt Widgets ............................. yes
Qt Xml ................................. yes
Support enabled for:
Using pkg-config ....................... yes
udev ................................... yes
Using system zlib ...................... no
Zstandard support ...................... no
Qt Core:
DoubleConversion ....................... yes
Using system DoubleConversion ........ no
GLib ................................... yes
iconv .................................. no
ICU .................................... no
Built-in copy of the MIME database ..... yes
Tracing backend ........................ <none>
Logging backends:
journald ............................. no
syslog ............................... no
slog2 ................................ no
PCRE2 .................................. yes
Using system PCRE2 ................... no
Qt Network:
getifaddrs() ........................... yes
IPv6 ifname ............................ yes
libproxy ............................... no
Linux AF_NETLINK ....................... yes
OpenSSL ................................ yes
Qt directly linked to OpenSSL ........ no
OpenSSL 1.1 ............................ yes
DTLS ................................... yes
OCSP-stapling .......................... yes
SCTP ................................... no
Use system proxies ..................... yes
GSSAPI ................................. no
Qt Gui:
Accessibility .......................... yes
FreeType ............................... yes
Using system FreeType ................ yes
HarfBuzz ............................... yes
Using system HarfBuzz ................ yes
Fontconfig ............................. yes
Image formats:
GIF .................................. yes
ICO .................................. yes
JPEG ................................. yes
Using system libjpeg ............... no
PNG .................................. yes
Using system libpng
Text formats:
HtmlParser ........................... yes
CssParser ............................ yes
OdfWriter ............................ yes
MarkdownReader ....................... yes
Using system libmd4c ............... no
MarkdownWriter ....................... yes
EGL .................................... yes
OpenVG ................................. no
OpenGL:
Desktop OpenGL ....................... no
OpenGL ES 2.0 ........................ yes
OpenGL ES 3.0 ........................ yes
OpenGL ES 3.1 ........................ yes
OpenGL ES 3.2 ........................ yes
Vulkan ................................. no
Session Management ..................... yes
Features used by QPA backends:
evdev .................................. yes
libinput ............................... yes
INTEGRITY HID .......................... no
mtdev .................................. yes
tslib .................................. yes
xkbcommon .............................. yes
X11 specific:
XLib ................................. no
XCB Xlib ............................. no
EGL on X11 ........................... no
xkbcommon-x11 ........................ no
QPA backends:
DirectFB ............................... no
EGLFS .................................. yes
EGLFS details:
EGLFS OpenWFD ........................ no
EGLFS i.Mx6 .......................... no
EGLFS i.Mx6 Wayland .................. no
EGLFS RCAR ........................... no
EGLFS EGLDevice ...................... yes
EGLFS GBM ............................ yes
EGLFS VSP2 ........................... no
EGLFS Mali ........................... no
EGLFS Raspberry Pi ................... no
EGLFS X11 ............................ no
LinuxFB ................................ yes
VNC .................................... yes
Qt Sql:
SQL item models ........................ yes
Qt Widgets:
GTK+ ................................... no
Styles ................................. Fusion Windows
Qt PrintSupport:
CUPS ................................... no
Qt Sql Drivers:
DB2 (IBM) .............................. no
InterBase .............................. no
MySql .................................. no
OCI (Oracle) ........................... no
ODBC ................................... no
PostgreSQL ............................. no
SQLite2 ................................ no
SQLite ................................. yes
Using system provided SQLite ......... no
TDS (Sybase) ........................... no
Qt Testlib:
Tester for item models ................. yes
Qt QML:
QML network support .................... yes
QML debugging and profiling support .... yes
QML just-in-time compiler .............. yes
QML sequence object .................... yes
QML XML http request ................... yes
QML Locale ............................. yes
Qt QML Models:
QML list model ......................... yes
QML delegate model ..................... yes
Qt Quick:
Direct3D 12 ............................ no
AnimatedImage item ..................... yes
Canvas item ............................ yes
Support for Qt Quick Designer .......... yes
Flipable item .......................... yes
GridView item .......................... yes
ListView item .......................... yes
TableView item ......................... yes
Path support ........................... yes
PathView item .......................... yes
Positioner items ....................... yes
Repeater item .......................... yes
ShaderEffect item ...................... yes
Sprite item ............................ yes
QtQuick3D:
Assimp ................................. yes
System Assimp .......................... no
Qt Quick Controls 2:
Styles ................................. Default Fusion Imagine Material Universal
Qt Quick Templates 2:
Hover support .......................... yes
Multi-touch support .................... yes
Qt Tools:
Qt Assistant ........................... yes
Qt Designer ............................ yes
Qt Distance Field Generator ............ yes
kmap2qmap .............................. yes
Qt Linguist ............................ yes
Mac Deployment Tool .................... no
makeqpf ................................ yes
pixeltool .............................. yes
qdbus .................................. yes
qev .................................... yes
Qt Attributions Scanner ................ yes
qtdiag ................................. yes
qtpaths ................................ yes
qtplugininfo ........................... yes
Windows deployment tool ................ no
WinRT Runner Tool ...................... no
Qt Tools:
QDoc ................................... no
-
@SGaist Thank you for your response
I have resolved this issue by changing the graphics driver.
I am attaching the link below for others who are facing this kind of problem. -
Hi,
You need to give more information about your device, its screen, etc.
Also, how are you starting your application ?
Are you using something like Wayland ?
What parameters are you using ? -
Hi,
You need to give more information about your device, its screen, etc.
Also, how are you starting your application ?
Are you using something like Wayland ?
What parameters are you using ?@SGaist Please find below comments
You need to give more information about your device, its screen, etc.
Kernel Version: 4.19.94
Processor: ARM 4378
Resolution: 1024*600
Also, how are you starting your application ? ./ui -platform eglfs
Are you using something like Wayland ? No
What parameters are you using ?
cat /etc/environment
QT_QPA_EGLFS_INTEGRATION=eglfs_kms
EDITOR=vi
HUSHLOGIN=FALSE
QT_WAYLAND_SHELL_INTEGRATION=wl-shell
USER=root
PWD=/home/root
HOME=/home/root
QT_QPA_EGLFS_KMS_CONFIG=/etc/qt5/eglfs_kms_cfg.json
SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
TSLIB_TSDEVICE=/dev/input/touchscreen0
QT_QPA_EGLFS_PHYSICAL_WIDTH=256
MAIL=/var/spool/mail/root
SHELL=/bin/sh
TERM=vt102
TMOUT=900
SHLVL=1
QT_QPA_EGLFS_ALWAYS_SET_MODE=1
LOGNAME=root
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin
PS1=\u@\h:\w$
QT_QPA_EGLFS_PHYSICAL_HEIGHT=150Please let me know if you required any more details. Thank You
-
Are you using a Texas Instruments evaluation board ?
-
@SGaist
We are running Qt on customized TI AM437x boards. Please find below board details and SW componentsKernel Version: 4.19.94
SOC: TI AM4378
Resolution: 1024*600
Screen size: 7" & 10"
GPU: SGX530 Graphics Engine -
Could it be that you have the tty cursor that is blinking through your UI ?
-
@SGaist
I have disabled the tty cursor. Still, I could see flickering on UI.
Below is the code, I have commented
.
-
Would it be possible to see the video of the flickering ?
-
@SGaist
I am not able to attach the video in this forum. I am getting below error
So, I am attaching the image
Please refer to the attached image where the image in top right corner is the image of previous screen. It is displaying in fraction of seconds and goes off., and this flickering happens continuously
-
Is it a widget or Qt quick application ?
-
@SGaist
I am not able to attach the video in this forum. I am getting below error
So, I am attaching the image
Please refer to the attached image where the image in top right corner is the image of previous screen. It is displaying in fraction of seconds and goes off., and this flickering happens continuously
-
@SGaist
It is a Qt Quick application -
Do you have the same issue with a minimal default application ?
-
@SGaist Thank you for your response
I have resolved this issue by changing the graphics driver.
I am attaching the link below for others who are facing this kind of problem.