Verdin iMX8MM Touch Weston

Hi,

I am using a custom carrier board with an iMX8MM and a capacitive touch DSI display.

This is what I am currently running

5.15.148-6.6.1-devel+git.23a8e831749d #1-TorizonCore SMP PREEMPT Tue Jul 9 16:13:47 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux

I have enabled the touch controller in my custom overlay and can see that the driver is loaded and operating. When using evtest the display responds to touches successfully.

Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 330 (BTN_TOUCH)
  Event type 3 (EV_ABS)
    Event code 0 (ABS_X)
      Value      0
      Min        0
      Max    65535
    Event code 1 (ABS_Y)
      Value      0
      Min        0
      Max    65535
    Event code 47 (ABS_MT_SLOT)
      Value      0
      Min        0
      Max        1
    Event code 53 (ABS_MT_POSITION_X)
      Value      0
      Min        0
      Max    65535
    Event code 54 (ABS_MT_POSITION_Y)
      Value      0
      Min        0
      Max    65535
    Event code 57 (ABS_MT_TRACKING_ID)
      Value      0
      Min        0
      Max    65535
Properties:
  Property type 1 (INPUT_PROP_DIRECT)
Testing ... (interrupt to exit)
Event: time 1740675891.311570, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 0
Event: time 1740675891.311570, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 36864
Event: time 1740675891.311570, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 4943
Event: time 1740675891.311570, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1740675891.311570, type 3 (EV_ABS), code 0 (ABS_X), value 36864
Event: time 1740675891.311570, type 3 (EV_ABS), code 1 (ABS_Y), value 4943
Event: time 1740675891.311570, -------------- SYN_REPORT ------------
Event: time 1740675891.428191, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 4096
Event: time 1740675891.428191, type 3 (EV_ABS), code 0 (ABS_X), value 4096
Event: time 1740675891.428191, -------------- SYN_REPORT ------------
Event: time 1740675892.321833, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 34701
Event: time 1740675892.321833, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 7424
Event: time 1740675892.321833, type 3 (EV_ABS), code 0 (ABS_X), value 34701
Event: time 1740675892.321833, type 3 (EV_ABS), code 1 (ABS_Y), value 7424
Event: time 1740675892.321833, -------------- SYN_REPORT ------------
Event: time 1740675892.438764, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 1933
Event: time 1740675892.438764, type 3 (EV_ABS), code 0 (ABS_X), value 1933
Event: time 1740675892.438764, -------------- SYN_REPORT ------------
Event: time 1740675893.796375, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 40137
Event: time 1740675893.796375, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 2098
Event: time 1740675893.796375, type 3 (EV_ABS), code 0 (ABS_X), value 40137
Event: time 1740675893.796375, type 3 (EV_ABS), code 1 (ABS_Y), value 2098
Event: time 1740675893.796375, -------------- SYN_REPORT ------------
Event: time 1740675893.908366, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 7369
Event: time 1740675893.908366, type 3 (EV_ABS), code 0 (ABS_X), value 7369
Event: time 1740675893.908366, -------------- SYN_REPORT ------------

I have then tried to run the touch calibration and followed the instructions here: Touch Calibration

However, when I press the crosshairs on the display nothing happens. I have included the output from the container.

HEAD: DSI-1
Date: 2025-02-27 UTC
[17:02:25.237] weston 10.0.1
               https://wayland.freedesktop.org
               Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
               Build: lf-5.15.52-2.1.0-10-g9452feba
[17:02:25.237] Command line: weston -Bdrm-backend.so -Swayland-0
[17:02:25.237] OS: Linux, 5.15.148-6.6.1-devel+git.23a8e831749d, #1-TorizonCore SMP PREEMPT Tue Jul 9 16:13:47 UTC 2024, aarch64
[17:02:25.237] Flight recorder: enabled
[17:02:25.237] warning: XDG_RUNTIME_DIR "/tmp/weston-xdg" is not configured
correctly.  Unix access mode must be 0700 (current mode is 0755),
and must be owned by the user UID 0 (current owner is UID 0).
Refer to your distribution on how to get it, or
http://www.freedesktop.org/wiki/Specifications/basedir-spec
on how to implement it.
[17:02:25.238] Using config file '/etc/xdg/weston/weston.ini'
[17:02:25.238] Output repaint window is 7 ms maximum.
[17:02:25.239] Loading module '/usr/lib/aarch64-linux-gnu/libweston-10/drm-backend.so'
[17:02:25.261] initializing drm backend
[17:02:25.261] Trying libseat launcher...
[17:02:25.265] libseat: session control granted
[17:02:25.272] using /dev/dri/card1
[17:02:25.274] DRM: supports atomic modesetting
[17:02:25.275] DRM: does not support GBM modifiers
[17:02:25.276] DRM: supports picture aspect ratio
[17:02:25.277] Loading module '/usr/lib/aarch64-linux-gnu/libweston-10/gl-renderer.so'
[17:02:25.301] EGL client extensions: EGL_EXT_client_extensions
               EGL_EXT_platform_base EGL_KHR_platform_wayland
               EGL_EXT_platform_wayland EGL_EXT_device_query
               EGL_EXT_device_drm EGL_EXT_device_drm_render_node
               EGL_KHR_platform_gbm
[17:02:25.305] EGL device extensions: EGL_EXT_client_extensions
               EGL_EXT_platform_base EGL_KHR_platform_wayland
               EGL_EXT_platform_wayland EGL_EXT_device_query
               EGL_EXT_device_drm EGL_EXT_device_drm_render_node
               EGL_KHR_platform_gbm
[17:02:25.305] EGL version: 1.5
[17:02:25.305] EGL vendor: Vivante Corporation
[17:02:25.305] EGL client APIs: OpenGL_ES OpenVG
[17:02:25.305] EGL extensions: EGL_KHR_fence_sync EGL_KHR_reusable_sync
               EGL_KHR_wait_sync EGL_KHR_image EGL_KHR_image_base
               EGL_KHR_image_pixmap EGL_KHR_gl_texture_2D_image
               EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image
               EGL_EXT_image_dma_buf_import
               EGL_EXT_image_dma_buf_import_modifiers EGL_KHR_lock_surface
               EGL_KHR_create_context EGL_KHR_no_config_context
               EGL_KHR_surfaceless_context EGL_KHR_get_all_proc_addresses
               EGL_EXT_buffer_age EGL_ANDROID_native_fence_sync
               EGL_WL_bind_wayland_display
               EGL_WL_create_wayland_buffer_from_image EGL_KHR_partial_update
               EGL_EXT_swap_buffers_with_damage
               EGL_KHR_swap_buffers_with_damage EGL_EXT_pixel_format_float
[17:02:25.305] EGL_KHR_surfaceless_context available
[17:02:25.314] GL version: OpenGL ES 2.0 V6.4.3.p4.398061
[17:02:25.314] GLSL version: OpenGL ES GLSL ES 1.0.0
[17:02:25.314] GL vendor: Vivante Corporation
[17:02:25.314] GL renderer: Vivante GC7000NanoUltra
[17:02:25.314] GL extensions: GL_OES_vertex_half_float
               GL_OES_element_index_uint GL_OES_mapbuffer
               GL_OES_vertex_array_object GL_OES_compressed_ETC1_RGB8_texture
               GL_OES_compressed_paletted_texture GL_OES_texture_npot
               GL_OES_rgb8_rgba8 GL_OES_depth_texture
               GL_OES_depth_texture_cube_map GL_OES_depth24 GL_OES_depth32
               GL_OES_packed_depth_stencil GL_OES_fbo_render_mipmap
               GL_OES_get_program_binary GL_OES_fragment_precision_high
               GL_OES_standard_derivatives GL_OES_EGL_image
               GL_OES_EGL_image_external GL_OES_EGL_image_external_essl3
               GL_OES_EGL_sync GL_OES_required_internalformat
               GL_OES_surfaceless_context GL_OES_texture_border_clamp
               GL_EXT_texture_type_2_10_10_10_REV
               GL_EXT_texture_compression_dxt1 GL_EXT_texture_format_BGRA8888
               GL_EXT_texture_compression_s3tc GL_EXT_read_format_bgra
               GL_EXT_multi_draw_arrays GL_EXT_frag_depth
               GL_EXT_discard_framebuffer GL_EXT_blend_minmax
               GL_EXT_multisampled_render_to_texture GL_EXT_robustness
               GL_EXT_texture_sRGB_decode GL_EXT_texture_border_clamp
               GL_EXT_texture_rg GL_EXT_unpack_subimage GL_VIV_direct_texture
[17:02:25.374] GL ES 2.0 - renderer features:
               read-back format: BGRA
               EGL Wayland extension: yes
[17:02:25.387] event1  - gpio-keys: is tagged by udev as: Keyboard
[17:02:25.387] event1  - gpio-keys: device is a keyboard
[17:02:25.391] event0  - 30370000.snvs:snvs-powerkey: is tagged by udev as: Keyboard
[17:02:25.391] event0  - 30370000.snvs:snvs-powerkey: device is a keyboard
[17:02:25.395] event2  - ILI210x Touchscreen: is tagged by udev as: Touchscreen
[17:02:25.395] event2  - ILI210x Touchscreen: device is a touch device
[17:02:25.396] event2  - ILI210x Touchscreen: applying calibration: 1.039948 0.011494 -0.031650 0.009743 -1.089353 1.047852
[17:02:25.420] libinput: configuring device "gpio-keys".
[17:02:25.420] libinput: configuring device "30370000.snvs:snvs-powerkey".
[17:02:25.420] Touchscreen - ILI210x Touchscreen - /sys/devices/platform/soc@0/30800000.bus/30a30000.i2c/i2c-1/1-0041/input/input2/event2
[17:02:25.420] libinput: configuring device "ILI210x Touchscreen".
[17:02:25.421] DRM: head 'DSI-1' updated, connector 35 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
[17:02:25.421] DRM: head 'DSI-1' found, connector 35 is connected, EDID make 'unknown', model 'unknown', serial 'unknown'
[17:02:25.422] Registered plugin API 'weston_drm_output_api_v1' of size 24
[17:02:25.422] Registered plugin API 'weston_drm_virtual_output_api_v1' of size 48
[17:02:25.422] Color manager: no-op
[17:02:25.422] Loading module '/usr/lib/libgbm.so'
[17:02:25.422] Failed to load module: /usr/lib/libgbm.so: cannot open shared object file: No such file or directory
[17:02:25.423] Output 'DSI-1' using color profile: built-in default sRGB SDR profile
[17:02:25.425] Chosen EGL config details: id:  21 rgba: 8 8 8 0 buf: 24 dep:  0 stcl: 0 int: 1-60 type: win|pix|pbf|swap_preserved vis_id: XRGB8888 (0x34325258)
[17:02:25.425] Output DSI-1 (crtc 33) video modes:
               720x1280@60.0, preferred, current, 64.6 MHz
[17:02:25.426] associating input device event1 with output DSI-1 (none by udev)
[17:02:25.426] associating input device event0 with output DSI-1 (none by udev)
[17:02:25.426] associating input device event2 with output DSI-1 (none by udev)
[17:02:25.426] Output 'DSI-1' enabled with head(s) DSI-1
[17:02:25.426] Compositor capabilities:
               arbitrary surface rotation: yes
               screen capture uses y-flip: yes
               cursor planes: yes
               arbitrary resolutions: no
               view mask clipping: yes
               explicit sync: yes
               color operations: no
               presentation clock: CLOCK_MONOTONIC, id 1
               presentation clock resolution: 0.000000001 s
[17:02:25.427] Loading module '/usr/lib/aarch64-linux-gnu/weston/desktop-shell.so'
[17:02:25.429] launching '/usr/lib/aarch64-linux-gnu/weston-keyboard'
[17:02:25.434] Note: support for the deprecated wl_shell interface is disabled. If a legacy client still needs it, it can be re-enabled by passing -Ddeprecated-wl-shell=true to Meson when building Weston.
[17:02:25.434] Loading module '/usr/lib/aarch64-linux-gnu/libweston-10/xwayland.so'
[17:02:25.461] Registered plugin API 'weston_xwayland_v1' of size 32
[17:02:25.461] Registered plugin API 'weston_xwayland_surface_v1' of size 16
[17:02:25.463] xserver listening on display :0
[17:02:25.464] launching '/usr/lib/aarch64-linux-gnu/weston-desktop-shell'
could not load cursor 'dnd-move'
could not load cursor 'dnd-copy'
could not load cursor 'dnd-none'
could not load cursor 'dnd-move'
could not load cursor 'dnd-copy'
could not load cursor 'dnd-none'
wayland-0
could not load cursor 'dnd-move'
could not load cursor 'dnd-copy'
could not load cursor 'dnd-none'
[17:02:26.311] input device event2: applying calibration:
                 1.000000 0.000000 0.000000
                 0.000000 1.000000 0.000000

Everything appears to be okay here as well

P: /devices/platform/soc@0/30800000.bus/30a30000.i2c/i2c-1/1-0041/input/input2/event2
N: input/event2
L: 0
S: input/touchscreen0
S: input/by-path/platform-30a30000.i2c-event
E: DEVPATH=/devices/platform/soc@0/30800000.bus/30a30000.i2c/i2c-1/1-0041/input/input2/event2
E: DEVNAME=/dev/input/event2
E: MAJOR=13
E: MINOR=66
E: SUBSYSTEM=input
E: USEC_INITIALIZED=9703484
E: ID_INPUT=1
E: ID_INPUT_TOUCHSCREEN=1
E: ID_PATH=platform-30a30000.i2c
E: ID_PATH_TAG=platform-30a30000_i2c
E: UDISKS_FILESYSTEM_SHARED=1
E: LIBINPUT_CALIBRATION_MATRIX=1.039948 0.011494 -0.031650 0.009743 -1.089353 1.047852
E: DEVLINKS=/dev/input/touchscreen0 /dev/input/by-path/platform-30a30000.i2c-event

It seems as though there is a ‘link’ missing between weston and the driver.

Any help would be much appreciated. Thanks in advance.

Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


Hello,

It seems you’re encountering an issue with the touch calibration on your Verdin iMX8MM module, where the calibration tool does not respond to touch inputs. Here are some steps to help you troubleshoot and resolve this issue:

  1. Verify Touch Controller Functionality: Since evtest confirms that the touch controller is responding, the driver is loaded, and the hardware is functioning correctly.

  2. Weston-Touch-Calibrator Setup: Ensure that the weston-touch-calibrator container is correctly set up and running. Stop all other containers before starting the calibration container to avoid conflicts.

  3. Display Connector Configuration: The calibration process requires the correct display connector. Since you are using a DSI display, set the HEAD environment variable to DSI-1 by adding -e HEAD=DSI-1 to your Docker run command.

  4. Check Udev Rules and Calibration Matrix: Ensure the LIBINPUT_CALIBRATION_MATRIX is correctly set for your touch device. Verify the udev rules to ensure they are applied correctly.

  5. Troubleshooting Steps:

    • Restart the calibration process and ensure the calibration screen appears.
    • Touch the crosshairs as instructed and observe any changes or logs for errors.
    • After calibration, check if the calibration matrix is applied by rebooting the module and testing the touch response.

By following these steps, you should be able to identify and resolve the issue with the touch calibration process. If the problem persists, double-check the configuration files and ensure all settings are correctly applied.

Best regards,
Toradex AI Assistant

Please, also check if these links can help you solve your problem:

https://community.nxp.com/t5/i-MX-Processors/IMX8MM-DSI-to-LVDS-Configuration/m-p/1877481

Install Torizon Core Builder.

Hello @DAH,

Does the touch work with the standard Weston image for the Verdin iMX8MM?

Do you mean that the container does not preceed with the calibration steps?
Or that the calibration is not applied?
Which command are you using to run the weston-touch-calibrator?

Best Regards,
Bruno

Hi, the touch does not work with the standard weston either. I have not managed to get the touch working any form of weston whether it be the standard weston, touch calibration tool or my own custom application.

I am using the following command to run the touch calibration

docker run -ti --rm -e ACCEPT_FSL_EULA=1 -e HEAD=DSI-1 --privileged -v /dev:/dev -v /run/udev/:/run/udev/ -v /etc/udev/rules.d:/etc/udev/rules.d torizon/weston-touch-calibrator:$CT_TAG_WESTON_TOUCH_CALIBRATOR

The touch calibration container runs but does not react to any touches on the screen. I know the driver for the touch is working correctly due to evtest.

Hello @DAH,

Thanks for the clarification.

Looking at the events you showed, I miss the touch release code (type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0).
Does it happen when you tap the screen?

Here is an example:

Event: time 1740996856.773447, -------------- SYN_REPORT ------------
Event: time 1740996857.316418, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 24
Event: time 1740996857.316418, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 601
Event: time 1740996857.316418, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 217
Event: time 1740996857.316418, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1740996857.316418, type 3 (EV_ABS), code 0 (ABS_X), value 601
Event: time 1740996857.316418, type 3 (EV_ABS), code 1 (ABS_Y), value 217
Event: time 1740996857.316418, -------------- SYN_REPORT ------------
Event: time 1740996857.332414, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1740996857.332414, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1740996857.332414, -------------- SYN_REPORT ------------

Best Regards,
Bruno

Hello,

Yes, the touch events happen when I touch the screen. So I am confident the driver is operating but the driver outputs do not get transferred to weston.

Event: time 1740675891.311570, type 3 (EV_ABS), code 0 (ABS_X), value 36864
Event: time 1740675891.311570, type 3 (EV_ABS), code 1 (ABS_Y), value 4943
Event: time 1740675891.311570, -------------- SYN_REPORT ------------
Event: time 1740675891.428191, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 4096
Event: time 1740675891.428191, type 3 (EV_ABS), code 0 (ABS_X), value 4096
Event: time 1740675891.428191, -------------- SYN_REPORT ------------
Event: time 1740675892.321833, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 34701
Event: time 1740675892.321833, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 7424
Event: time 1740675892.321833, type 3 (EV_ABS), code 0 (ABS_X), value 34701
Event: time 1740675892.321833, type 3 (EV_ABS), code 1 (ABS_Y), value 7424
Event: time 1740675892.321833, -------------- SYN_REPORT ------------
Event: time 1740675892.438764, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 1933
Event: time 1740675892.438764, type 3 (EV_ABS), code 0 (ABS_X), value 1933
Event: time 1740675892.438764, -------------- SYN_REPORT ------------
Event: time 1740675893.796375, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 40137
Event: time 1740675893.796375, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 2098
Event: time 1740675893.796375, type 3 (EV_ABS), code 0 (ABS_X), value 40137
Event: time 1740675893.796375, type 3 (EV_ABS), code 1 (ABS_Y), value 2098
Event: time 1740675893.796375, -------------- SYN_REPORT ------------
Event: time 1740675893.908366, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 7369
Event: time 1740675893.908366, type 3 (EV_ABS), code 0 (ABS_X), value 7369
Event: time 1740675893.908366, -------------- SYN_REPORT ------------

Thanks

Hello @DAH,

I am missing specifically the type 1 ( EV_KEY) events.

On your previous log I saw one that indicate the touch-screen was pressed (value 1):

type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1

However, there was none that it was released (value 0) as you can see in my example:

type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0

Please double check if you get both of these events.

Best Regards,
Bruno

Hi,

I have run evtest repeatedly and not seen any BTN_TOUCH events.

Input device ID: bus 0x18 vendor 0x0 product 0x0 version 0x0
Input device name: "ILI210x Touchscreen"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 330 (BTN_TOUCH)
  Event type 3 (EV_ABS)
    Event code 0 (ABS_X)
      Value   5686
      Min        0
      Max    65535
    Event code 1 (ABS_Y)
      Value   3402
      Min        0
      Max    65535
    Event code 47 (ABS_MT_SLOT)
      Value      0
      Min        0
      Max        1
    Event code 53 (ABS_MT_POSITION_X)
      Value      0
      Min        0
      Max    65535
    Event code 54 (ABS_MT_POSITION_Y)
      Value      0
      Min        0
      Max    65535
    Event code 57 (ABS_MT_TRACKING_ID)
      Value      0
      Min        0
      Max    65535
Properties:
  Property type 1 (INPUT_PROP_DIRECT)
Testing ... (interrupt to exit)
Event: time 1741003861.283137, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 38243
Event: time 1741003861.283137, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 3319
Event: time 1741003861.283137, type 3 (EV_ABS), code 0 (ABS_X), value 38243
Event: time 1741003861.283137, type 3 (EV_ABS), code 1 (ABS_Y), value 3319
Event: time 1741003861.283137, -------------- SYN_REPORT ------------
Event: time 1741003861.410023, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 5475
Event: time 1741003861.410023, type 3 (EV_ABS), code 0 (ABS_X), value 5475
Event: time 1741003861.410023, -------------- SYN_REPORT ------------
Event: time 1741003863.241393, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 39571
Event: time 1741003863.241393, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 6386
Event: time 1741003863.241393, type 3 (EV_ABS), code 0 (ABS_X), value 39571
Event: time 1741003863.241393, type 3 (EV_ABS), code 1 (ABS_Y), value 6386
Event: time 1741003863.241393, -------------- SYN_REPORT ------------
Event: time 1741003863.374151, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 6803
Event: time 1741003863.374151, type 3 (EV_ABS), code 0 (ABS_X), value 6803
Event: time 1741003863.374151, -------------- SYN_REPORT ------------
Event: time 1741003865.042049, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 39614
Event: time 1741003865.042049, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 1505
Event: time 1741003865.042049, type 3 (EV_ABS), code 0 (ABS_X), value 39614
Event: time 1741003865.042049, type 3 (EV_ABS), code 1 (ABS_Y), value 1505
Event: time 1741003865.042049, -------------- SYN_REPORT ------------
Event: time 1741003865.166056, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 6846
Event: time 1741003865.166056, type 3 (EV_ABS), code 0 (ABS_X), value 6846
Event: time 1741003865.166056, -------------- SYN_REPORT ------------
Event: time 1741003873.343582, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 39912
Event: time 1741003873.343582, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 7055
Event: time 1741003873.343582, type 3 (EV_ABS), code 0 (ABS_X), value 39912
Event: time 1741003873.343582, type 3 (EV_ABS), code 1 (ABS_Y), value 7055
Event: time 1741003873.343582, -------------- SYN_REPORT ------------
Event: time 1741003874.253121, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 7144
Event: time 1741003874.253121, type 3 (EV_ABS), code 0 (ABS_X), value 7144
Event: time 1741003874.253121, -------------- SYN_REPORT ------------

Hello @DAH,

I believe this is the issue then.
Please check the dmesg logs for any possible errors related to the touchscreen or I2C.
Maybe the I2C is configured at a too slow speed.
We fixed a similar issue in Torizon OS/BSP 6.7.0: Toradex System/Computer on Modules - Linux BSP Release
Seeing that you are using Torizon OS/BSP 6.6.1, you could be affected.
Therefore, I recommend that you update to Torizon OS/BSP 6.8.1.

Best Regards,

Hi,

I managed to get the touch working. I needed to modify my overlay slightly and once done I could the see then BTN_TOUCH events.

Thank you very much for all your help.

Hello @DAH,

That is good to know, thanks for the update.

Best Regards,
Bruno