Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

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 target

    Building 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
    Flickering_Image.png



  • @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.

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1060753/am4378-flickering-issue-on-qt-with-eglfs-instance


  • Lifetime Qt Champion

    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=150

    Please let me know if you required any more details. Thank You


  • Lifetime Qt Champion

    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 components

    Kernel Version: 4.19.94
    SOC: TI AM4378
    Resolution: 1024*600
    Screen size: 7" & 10"
    GPU: SGX530 Graphics Engine


  • Lifetime Qt Champion

    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
    93403bbf-440a-4709-b716-4ea57499f618-image.png.


  • Lifetime Qt Champion

    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
    481e561b-587e-448d-9167-f1e4e39396fa-image.png

    So, I am attaching the image
    Flickering_Image_1.png

    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


  • Lifetime Qt Champion

    Is it a widget or Qt quick application ?



  • @Praveen-Illa add 10ms or maybe 5ms delay to this widget display to see if it helps. Also you need to call update explicitly if this widget is customized. Qt widgets update is not very clean on touch screen.



  • @SGaist
    It is a Qt Quick application


  • Lifetime Qt Champion

    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.

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1060753/am4378-flickering-issue-on-qt-with-eglfs-instance


Log in to reply