This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8168 touch screen

Hi,

  I have a problem about the touch screen of DM8168 board.

 

 After I did ts_calibration, I run ts_test, it works and shows the correct coordinates of the touch point.

 But in the matrix-gui application, there is something wrong with it I think.

 There is a 90 degree difference. 

 When I move the pen to the right, the cursor goes to the bottom,

 and when I move the pen to the bottom, the cursor goes to the left...

 

 How can I fix this problem?

 

yours,

lei

  • I have the  same problem.

  • Sorry Nick, I haven't fixed this yet.

  • Hi.
    I am not using DM8168EVM but I have same error on the other EVM.
    This might be related the error in the pointercal file value.

    The procedure to recaibrate and replace the pointercal is:
    - Delete the pointercal file in /etc/ - Restart board
    - Before matrix GUI is invoked in the filesystem,
      it will request for re-calibration and place the pointercal values
      in appropriate location/s

    In my case, it solved with the above procedure.

    Regards,
    Kanae

     

  • Hello,

    I revived this thread just to let you know that I recently have enabled my usb touchscreen (my board is DM816x EVM). I faced the 90 degree rotation of the cursor and on my side the pointercal file modifications didn't affect that issue. Finally I resolved it with the following steps:

    1. Without any modifications to your kernel/filesystem, when you boot without any mice or touchscreens, there are no /dev/input/eventX entries, then when you plug you touchscreen the following appear in your /dev

                   /dev/input/event0

                   /dev/input/event1

                   /dev/input/mouse0

                   /dev/input/mouse1

    In you board console type:

                   # /etc/init.d/matrix-gui-e stop

                   # ln -s /dev/input/event1 /dev/input/touchscreen0

                   # export TSLIB_FBDEVICE=/dev/fb0; export TSLIB_CONFFILE=/etc/ts.conf; export TSLIB_TSDEVICE=/dev/input/touchscreen0;
    export QWS_MOUSE_PROTO=Tslib:/dev/input/touchscreen0

    2. Edit /etc/init.d/matrix-gui-e.

    From this:

    #export TSLIB_TSDEVICE=/dev/input/touchscreen0
    #export QWS_MOUSE_PROTO=Tslib:/dev/input/touchscreen0
    export QWS_MOUSE_PROTO=Auto:/dev/input/mice

    to this:

    #export TSLIB_TSDEVICE=/dev/input/touchscreen0
    #export QWS_MOUSE_PROTO=Tslib:/dev/input/touchscreen0
    #export QWS_MOUSE_PROTO=Auto:/dev/input/mice

    3. Run ts_calibrate. If there is no cursor shown, try to change the resolution (reboot is required after that, so set the environment again), i.e:

                   # /usr/share/ti/ti-media-controller-utils/change_resolution.sh 720p60

    4. After it is calibrated run the matrix application again:

                   # /etc/init.d/matrix-gui-e start

    And now it should work.

    It would be similar to make other qt applications to work. Just examine are they started by a script that modifies your shell environment, and to prevent that if it is needed. You just need your environment to be set up right. You can make a script or something similar to do this (even at boot time), so all your qt applications to work. touchscreen0 link is not needed actually, you can point to event1 directly. Keep in mind that when you replug you touchscreen usb cable, the number after event will change.

    I hope this helps. Thank you.

    BR

  • The above method just works fine. Thanks a lot Vladimir.