Results 1 to 11 of 11

Thread: keypad and touchscreen is not working on embedded device with x11(gnome) support

  1. #1
    Join Date
    Apr 2011
    Location
    Hyderabad
    Posts
    86
    Thanks
    17
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default keypad and touchscreen is not working on embedded device with x11(gnome) support

    Hi Everybody,

    We are trying to build Qt-5.2.1 for imx6SL(ARM-architecture) based embedded device with x11 support.

    In out device there is gnome window manager, that is running fine.

    We have build Qt-5.2.1 and we are able to run Qt-application in device with linuxfb.

    But our keypad and touch screen is not working..., whenever we are pressing any
    keys or using the touch screen our application is hanging/crashing... and going to gnome.
    Means it seems taking input on gnome not in our qt-application.

    What could be the problem and how to sort out, any suggestion will be valuable.

    We are trying to run application like following.

    ./myQtApp -platform linuxfb

    Even we have tried with like following but there is no effect.

    ./myQtApp -platform linuxfb -plugin evdevkeyboard -plugin evdevmouse -plugin evdevtouch

    If we are giving "eglfs" platform plugin support then getting segmentation fault.

    Please guide us.

    Thanks in advance
    Sanjeet

  2. #2
    Join Date
    Jan 2006
    Location
    Graz, Austria
    Posts
    8,416
    Thanks
    37
    Thanked 1,544 Times in 1,494 Posts
    Qt products
    Qt3 Qt4 Qt5
    Platforms
    Unix/X11 Windows

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    Question: if you have an X11 based system, why do you use the linuxfb platform plugin instead of the XCB plugin?

    Cheers,
    _

  3. The following user says thank you to anda_skoa for this useful post:

    sanjeet (29th October 2014)

  4. #3
    Join Date
    Apr 2011
    Location
    Hyderabad
    Posts
    86
    Thanks
    17
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    qt-xcb-error.pdfHi anda_skoa,

    After your suggestion, when we are trying to build Qt by following configuration option

    configure -xplatform linux-arm-gnueabi-g++ -opensource -confirm-license -make libs -device imx6 -device-option CROSS_COMPILE=/u02/tools/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-none-linux-gnueabi- --prefix=/usr/local/Qt-5.3.1/Qt-ARM-TARGET -I/u02/tools/rootfs/usr/include -L/u02/tools/rootfs/usr/lib -lz -sysroot /u02/tools/rootfs -no-gcc-sysroot -no-cups -no-nis -no-dbus -no-glib -no-pch -no-accessibility -no-gtkstyle -qt-xcb -no-directfb -no-eglfs -opengl es2 -nomake examples -nomake tests -no-c++11 -qt-zlib -no-sql-sqlite -no-linuxfb -release -optimized-qmake

    Its not building and giving following types of error like :

    XCB_ATOM__WM_NAME undeclared

    You can see error in attachment.


    Earlier we were trying with following configuration option, then its building but keypad and touch is working in device...

    ./configure -opensource -confirm-license -make libs -device imx6 -device-option CROSS_COMPILE=/u02/tools/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-none-linux-gnueabi- --prefix=/usr/local/TT-Qt-5.3.1/QT-X11-ARM-TARGET -I/u02/tools/rootfs/usr/include -L/u02/tools/rootfs/usr/lib -lz -sysroot /u02/tools/rootfs -no-gcc-sysroot -no-cups -no-nis -no-dbus -no-glib -no-pch -no-accessibility -no-gtkstyle -no-xcb -eglfs -no-directfb -qpa eglfs -opengl es2 -nomake examples -nomake tests -no-c++11 -qt-zlib -no-sql-sqlite

    Can you guide me what should be the correct configuration argument ?
    Last edited by sanjeet; 10th September 2014 at 08:29.

  5. #4
    Join Date
    Jan 2008
    Location
    Poland
    Posts
    687
    Thanks
    4
    Thanked 140 Times in 132 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    1. You cannot use eglfs or linuxfb together with GNOME (so with X11) - there can be only one thing displayed on the framebuffer (fb) - either your gnome desktop or your application. I assume that when using linuxfb your application takes over the framebuffer, but gnome is stealing your touch events (as it do not know about your app at all).

    2. To compile xcb plugin you need to have all the dependencies. Check the qtbase/src/plugins/platforms/xcb/README file. You have to have at least development package of libxcb, as XCB_ATOM_WM_NAME is defined in xproto.h

    3. Another thing is that qtbase/mkspecs/devices/linux-imx6-g++/ files might need some modifications to support the X11. There is -DEGL_API_FB=1 which is good for eglfs but vivante has different libraries and different declarations in EGL/eglvivante.h for FB, DFB and X11.
    I would like to be a "Guru"

    Useful hints (try them before asking):
    1. Use Qt Assistant
    2. Search the forum

    If you haven't found solution yet then create new topic with smart question.

  6. The following user says thank you to faldzip for this useful post:

    sanjeet (29th October 2014)

  7. #5
    Join Date
    Apr 2011
    Location
    Hyderabad
    Posts
    86
    Thanks
    17
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    Hi faldzip,

    Thanks for replying, you cleared me many doubt.
    But still i am not able to build Qt-5.2.1 with XCB,

    That time we left this issue and we went through Qt-4.8.5.

    But we need to build Qt-5.2.1 for our ARM(imx6) based embedded device.
    Again we are trying but getting following issue :

    "Could not determine the target architecture!
    Turn on verbose messaging (-v) to see the final report.
    The test for linking against libxcb failed!
    You might need to install dependency packages for libxcb.
    See src/plugins/platforms/xcb/README."

    My configure option is :

    ./configure -opensource -confirm-license -make libs -device imx6 -device-option CROSS_COMPILE=/u02/tools/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-none-linux-gnueabi- -no-pch -no-opengl -no-icu -no-c++11 -compile-examples -qpa xcb -qt-xcb -xplatform mkspecs/devices/linux-imx6-g++ -no-linuxfb -no-directfb -sysroot /u02/tools/rootfs -no-gcc-sysroot -prefix /usr/local/imx6Qt5.2.1

    I have checked this "src/plugins/platforms/xcb/README" file
    Here it is mentioned that libxcb >= 1.5 and has also mentioned about Ubuntu 11.10 and Ubuntu 12.04
    But nothing has mentioned about Ubuntu 10.04

    My Host PC is Ubuntu 10.04 and we trying to cross-compiled for arm-imx6.

    Earlier in my rootfs this library libxcb.so.1.0.0 was present.
    So, i have newly cross-compiled libxcb-1.10 and their dependent libraries successfully,
    with this we got this version of libxcb.so.1.1.0
    We kept all new xcb library in rootfs and then again tried to build Qt,
    But we are getting same issue.

    Can you help anybody... what is the issue and and how to resolve it ?

  8. #6
    Join Date
    Jan 2008
    Location
    Poland
    Posts
    687
    Thanks
    4
    Thanked 140 Times in 132 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    Your host pc's os has nothing to do with this. How did you obtain the rootfs for your device? What OS do you have on your device? For example for wandboard (i.MX6 based) you can download Ubuntu 12.04 image, and you have to install all the dependencies on this target system. Then you can mount this target os image on your host pc and set it as rootfs for cross compilation. So you can probably perform these steps:
    1. Run the device.
    2. Install all the dependencies on it (if it is Ubuntu then it is quite simple, as you have all the packages mentioned in .../xcb/README file)
    3. Mount the device's file system somewhere on your host PC (for example: you can extract the image or mount if through the network with nfs)
    4. Use this newly mounted rootfs for cross-compiling.
    I would like to be a "Guru"

    Useful hints (try them before asking):
    1. Use Qt Assistant
    2. Search the forum

    If you haven't found solution yet then create new topic with smart question.

  9. The following user says thank you to faldzip for this useful post:

    sanjeet (30th October 2014)

  10. #7
    Join Date
    Apr 2011
    Location
    Hyderabad
    Posts
    86
    Thanks
    17
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    Hi faldzip,
    Yeah, it is correct, host pc's os has nothing to do.

    We are building rootfs through LTIB, and for this we are using "L3.0.35_4.1.0_130816_source.tar.gz"
    version of ltib source.

    With this we are getting rootfs and cross-compiler and same using to build Qt-5.2.1.

    And we are having imx6-soloLite board based device.

    So, with the same rootfs and all we are able to build Qt-4.8.5 and it is running well.
    But when we are trying to build Qt-5.2.1 with same rootfs then we are getting above issue.

  11. #8
    Join Date
    Jan 2008
    Location
    Poland
    Posts
    687
    Thanks
    4
    Thanked 140 Times in 132 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    I do not have any experience with LTIB but (if I am not mistaken) it is now deprecated in favor of Yocto. In Yocto you have now recipes for Qt 5, so you can just build your own linux image containing latest Qt 5 libraries.
    I would like to be a "Guru"

    Useful hints (try them before asking):
    1. Use Qt Assistant
    2. Search the forum

    If you haven't found solution yet then create new topic with smart question.

  12. The following user says thank you to faldzip for this useful post:

    sanjeet (30th October 2014)

  13. #9
    Join Date
    Apr 2011
    Location
    Hyderabad
    Posts
    86
    Thanks
    17
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    Hi faldzip,

    You are correct LTIB is now deprecating in favor of yocto.
    We have build successfully Qt-5 through yocto, But with yocto higher version of kernel is building.
    And also with yocto higher version of compiler(gcc-4.8.1) is using.

    That's why you are not going through yocto, and using LTIB.

  14. #10
    Join Date
    Jan 2008
    Location
    Poland
    Posts
    687
    Thanks
    4
    Thanked 140 Times in 132 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    But you are not using this because you want to use the Yocto-built Qt5 libraries with LTIB-built image? Or the project requirements are to use the old kernel and old compiler? If the former, then built the whole platform image with Yocto together with Qt5. If latter then you need to build-in the Qt5 dependencies into this platform image using LTIB, would be my guess. But you need to ask someone who knows how to use LTIB.
    I would like to be a "Guru"

    Useful hints (try them before asking):
    1. Use Qt Assistant
    2. Search the forum

    If you haven't found solution yet then create new topic with smart question.

  15. #11
    Join Date
    Apr 2011
    Location
    Hyderabad
    Posts
    86
    Thanks
    17
    Qt products
    Qt4 Qt/Embedded
    Platforms
    Unix/X11

    Default Re: keypad and touchscreen is not working on embedded device with x11(gnome) support

    Hi,

    I am not getting any clue....
    if anyone is aware then can you guide me ?

Similar Threads

  1. Replies: 1
    Last Post: 28th August 2012, 20:11
  2. Calibrate a MouseMan touchscreen on Qt4 Embedded
    By RazZziel in forum Qt for Embedded and Mobile
    Replies: 4
    Last Post: 2nd March 2012, 00:08
  3. Replies: 0
    Last Post: 1st March 2011, 19:04
  4. Problem with QT embedded and touchscreen calibration.
    By webquinty in forum Qt for Embedded and Mobile
    Replies: 0
    Last Post: 2nd July 2008, 11:33
  5. How Qt/Embedded detects the keypad input from device?
    By mahe2310 in forum Qt for Embedded and Mobile
    Replies: 0
    Last Post: 4th April 2006, 07:08

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.