shraier
Posts: 3
Joined: Thu Apr 02, 2015 8:00 pm

Raspberry Pi and Touchscreen support (3M MicroTouch Screen)

Sun May 24, 2015 10:20 pm

Hello everybody,

I would like to use my touchscreen with a Raspberry Pi (Raspbian), but I cannot get it working properly.

Touchscreen: 3M MicroTouch

Configuration of the system:

Code: Select all

-> lsusb
Bus 001 Device 004: ID 0596:0001 MicroTouch Systems, Inc. Touchscreen

Code: Select all

-> xinput list
Virtual core XTEST Pointer
   3M 3M USB Touchscreen - EX II     id=6 [slave pointer (2)]
I managed to install and run xinput_calibrator and set the generated parameters into the xorg config file:

Code: Select all

-> sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf

Section "InputClass"
        Identifier "evdev touchscreen catchall"
        MatchIsTouchscreen "on"
        MatchProduct    "3M 3M USB Touchscreen - EX II"
        Option  "Calibration"   "2936 13496 2840 13659"
        Driver "evdev"
        Option "SwapAxes" "True"
        Option "InvertX" "1"
        Option "InvertY" "1"
EndSection
The result of xinput list-props 6 is the following:

Code: Select all

-> xinput list-props 6

Device '3M 3M USB Touchscreen - EX II':
        Device Enabled (112):   1
        Coordinate Transformation Matrix (113): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
        Device Accel Profile (232):     0
        Device Accel Profile (232):     0
        Device Accel Constant Deceleration (233):       1.000000
        Device Accel Adaptive Deceleration (234):       1.000000
        Device Accel Velocity Scaling (235):    10.000000
        Device Product ID (236):        1430, 1
        Device Node (237):      "/dev/input/event1"
        Evdev Axis Inversion (238):     1, 1
        Evdev Axis Calibration (239):   2841, 13491, 2688, 13440
        Evdev Axes Swap (240):  1
        Axis Labels (241):      "Abs X" (230), "Abs Y" (231)
        Button Labels (242):    "Button Unknown" (229), "Button Unknown" (229), "Button Unknown" (229), "Button Wheel Up" (118), "Button Wheel Down" (119)
        Evdev Middle Button Emulation (243):    0
        Evdev Middle Button Timeout (244):      50
        Evdev Third Button Emulation (245):     0
        Evdev Third Button Emulation Timeout (246):     1000
        Evdev Third Button Emulation Button (247):      3
        Evdev Third Button Emulation Threshold (248):   20
        Evdev Wheel Emulation (249):    0
        Evdev Wheel Emulation Axes (250):       0, 0, 4, 5
        Evdev Wheel Emulation Inertia (251):    10
        Evdev Wheel Emulation Timeout (252):    200
        Evdev Wheel Emulation Button (253):     4
        Evdev Drag Lock Buttons (254):  0
As you can see, I am using the evdev driver. I got the touchscreen working with these parameters, but something is wrong with the "accuracy" of the mouse pointer. If I keep pressed my finger on the screen, the mouse pointer is moving, also if I keep touching the same point it can happen that the mouse moves to different locations.

I have uploaded a video so you can see it by yourself: https://dl.dropboxusercontent.com/u/670 ... G_1007.mov

I have tried the touchscreen on a windows machine and works without problems, so it must be something with the driver/configuration file.

Official driver of the touchscreen: http://solutions.3m.com/wps/portal/3M/e ... rt/Support

I believe I am pointing in the wrong direction.
As far as I understand, according to the official README file I should probably compile a new kernel with the following modules patched (from the official source) and enabled:
- hid-core
- hid-ids
- hid-multitouch

Current kernel version: Linux rPI 3.18.14-v7+ #792 SMP PREEMPT Sat May 23 16:19:32 BST 2015 armv7l GNU/Linux

As far as I can see, the current kernel does not have hid-multitouch.ko in "/lib/modules/3.18.14-v7+/kernel/drivers/hid/".

Do I have to compile a new kernel with the patches applied and modules enabled?

Thank you for help and additional explanations!

shraier
Posts: 3
Joined: Thu Apr 02, 2015 8:00 pm

Re: Raspberry Pi and Touchscreen support (3M MicroTouch Scre

Wed May 27, 2015 12:43 pm

Bump!

I built my own kernel from source with the mentioned hid-* source files updated from the official 3M patch (had to patch it manually). In the .config file I had:
  • - CONFIG_TOUCHSCREEN_USB_3M=y
    - CONFIG_TOUCHSCREEN_MTOUCH=y (should support MicroTouch (3M) touchscreen)
    - and so on (different models set with "m")...
    - CONFIG_HID_MULTITOUCH=m
Everything else was set to default (bcm2709_defconfig).
The effect is pretty the same. If I remove usbtouchscreen module (modprobe -r usbtouchscreen), the touch stops working.

Should I explicitly load any other driver to get it working better? Any ideas?

At least I am talking to myself ;).
Thanks!

axpdreamer
Posts: 1
Joined: Wed Mar 23, 2016 6:38 pm

Re: Raspberry Pi and Touchscreen support (3M MicroTouch Scre

Wed Mar 23, 2016 6:41 pm

Hi,

Did you have any success in getting the Display to work? I also have troubles with inaccuracy of the pointer.

Did you try hid-multitouch.ko?

shraier
Posts: 3
Joined: Thu Apr 02, 2015 8:00 pm

Re: Raspberry Pi and Touchscreen support (3M MicroTouch Scre

Thu Mar 24, 2016 11:16 am

Hello,

Unfortunately I did not manage to get it working properly. At the end I bought a different touch-monitor (DELL P2314T).
The mentioned DELL monitor works very good - without any kernel compile or anything and the accuracy of the pointer is perfect - as it should be at the first place :).

I also don't have the 3M MicroTouch monitor anymore, so I cannot help you.

dung03
Posts: 1
Joined: Tue Aug 02, 2016 4:23 pm

Re: Raspberry Pi and Touchscreen support (3M MicroTouch Scre

Tue Aug 02, 2016 4:27 pm

shraier wrote:Hello,

Unfortunately I did not manage to get it working properly. At the end I bought a different touch-monitor (DELL P2314T).
The mentioned DELL monitor works very good - without any kernel compile or anything and the accuracy of the pointer is perfect - as it should be at the first place :).

I also don't have the 3M MicroTouch monitor anymore, so I cannot help you.

aBUGSworstnightmare
Posts: 4920
Joined: Tue Jun 30, 2015 1:35 pm

Re: Raspberry Pi and Touchscreen support (3M MicroTouch Scre

Mon Aug 08, 2016 7:41 am

used some PCAP with the RPi already (touch controller Atmel MaxTouch device); worked out-of-the box for single touch. No right click, no multi touch

tg11
Posts: 1
Joined: Sat Jan 07, 2017 1:26 am

Re: Raspberry Pi and Touchscreen support (3M MicroTouch Scre

Sat Jan 07, 2017 1:28 am

shraier wrote:Hello,

Unfortunately I did not manage to get it working properly. At the end I bought a different touch-monitor (DELL P2314T).
The mentioned DELL monitor works very good - without any kernel compile or anything and the accuracy of the pointer is perfect - as it should be at the first place :).

I also don't have the 3M MicroTouch monitor anymore, so I cannot help you.
How did you get the Dell 2314T to work? Did you need to download a specific driver? Thanks!

TeeSeR
Posts: 1
Joined: Sat Jul 15, 2017 4:08 pm

Re: Raspberry Pi and Touchscreen support (3M MicroTouch Scre

Sat Jul 15, 2017 4:23 pm

Using model 3 B v1.2 and the NOOBS (Raspian) operating system from 2016 I got the 3M USB Touchscreen EX II work, without creating a new kernel or loading device drivers. The touchscreen device worked but the x-axis was mirrored.
I had to download (apt-get install) xinput_calibrate and then execute that to calibrate to get rid of wrong x-axis mirror effect. Using the debian X11 desktop there was even a GUI program to calibrate then. At the end the console shows what to add to /usr/share/X11/xorg.conf.d/99-calibration.conf to keep the calibration after reboot. Finish

I had to set some files in /boot/config.txt to disable overscan and set framebuffer to 1024,768 to have a picture on my screen. But this has nothing to do with 3M touchscrenn. I just bought my used touchscreen from as a former Kodak "Order-Print-Picture" vendor machine part.

Return to “HATs and other add-ons”