Touchscreen support (was Re: new computer, strange usb messages at boot)
Sergey V. Dyatko
sergey.dyatko at gmail.com
Tue Mar 1 17:11:13 UTC 2016
On Tue, 1 Mar 2016 10:03:35 -0500
Anthony Jenkins <Scoobi_doo at yahoo.com> wrote:
> On 03/01/2016 09:34 AM, Sergey V. Dyatko wrote:
> > On Tue, 1 Mar 2016 08:51:13 -0500
> > Anthony Jenkins <Scoobi_doo at yahoo.com> wrote:
> >
> >> On 03/01/2016 12:30 AM, Sergey V. Dyatko wrote:
> >>> On Mon, 22 Feb 2016 17:51:00 +0100
> >>> Hans Petter Selasky <hps at selasky.org> wrote:
> >>>
> >>>> On 02/22/16 17:39, Anthony Jenkins wrote:
> >>>>> On 02/22/2016 02:11 AM, Hans Petter Selasky wrote:
> >>>>>> On 02/22/16 03:16, Anthony Jenkins wrote:
> >>>>>>> Yes. I have an eGalax touchscreen and it's doing the same thing. The
> >>>>>>> number of items it's reporting is 256 (according to my preliminary
> >>>>>>> debugging), causing the warning. I think these things are a special
> >>>>>>> subclass of HID for multitouch touchscreens which we don't support
> >>>>>>> (yet).
> >>>>>> /usr/ports/multimedia/webcamd will most likely attach if invoked
> >>>>>> manually, to this device and provide an event device for you!
> >>>>>>
> >>>>>> --HPS
> >>>>> Okay that's /amazing/, and not at all intuitive! I mean I'd expect
> >>>>> multimedia/webcamd to only attach to "video" devices, but lo and behold
> >>>>> I get a /dev/input/event0 device which spits out gibberish when
> >>>>> cat(1)'ed and I touch the screen!
> >>>>>
> >>>>> My intentions were to port Linux's hid-multitouch device in whole to
> >>>>> FreeBSD (it's what attaches to my eGalax device and probably to OP's
> >>>>> touchscreen device) and add support for the device to moused(8), but
> >>>>> it's not very high on my priority list...
> >>>>>
> >>>> Hi,
> >>>>
> >>>> If you apply these patches, will work with your X-org :-)
> >>>>
> >>>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196678
> >>>>
> >>> wow...
> >>> Thanks for your work :)
> >>>
> >>> Yesterday I update -CURRENT on my lenovo z400 touch ( r296180), after
> >>> suspend-resume I spotted that is my usb mouse didn't work (touchpad works
> >>> as before)
> >>> I had the feeling that I read something about hid_get_item: Number of
> >>> items(256) truncated to 255 on ML, so I'm here.
> >>>
> >>> What I do:
> >>> laptop# webcamd -l
> >>> Available device(s):
> >>> ....
> >>> webcamd [-d ugen0.2] -N Synaptics-Large-Touch-Screen-SYNAPTICS -S unknown
> >>> -M 0 ...
> >>> Show webcamd usage:
> >>> webcamd -h
> >>> laptop# webcamd -N Synaptics-Large-Touch-Screen-SYNAPTICS -S unknown -M 0
> >>> Attached to ugen0.2[0]
> >>> Creating /dev/input/event0
> >>>
> >>> after that I reconnect my mouse and 'it works' (c)
> >>> How I can do this automatically right?
> >> I got my touchscreen working with the multimedia/webcamd and
> >> x11-drivers/xf86-input-evdev ports and an entry in
> >> /usr/local/etc/devd/webcamd.conf for my eGalax USB touchscreen device.
> >> In webcamd.conf, you can copy the section
> >>
> >> # Generic USB input devices.
> >> notify 100 {
> >> match "system" "USB";
> >> match "subsystem" "INTERFACE";
> >> match "type" "ATTACH";
> >> match "intclass" "0x03";
> >> #
> >> # Limit HID device attach to Wacom Devices
> >> # else webcamd might attach to your keyboard
> >> # and mouse
> >> #
> >> match "vendor" "0x056a";
> >> action "/usr/local/etc/rc.d/webcamd start $cdev $interface";
> >> };
> >>
> >> to a new section, changing the 'match "vendor" line to match the USB
> >> VendorID of your input device and possibly adding a 'match "product" line:
> >>
> >> $ sudo usbconfig -d ugen1.2 dump_device_desc | grep 'id\(Vendor\|Product\)'
> >> idVendor = 0x0eef
> >> idProduct = 0xa119
> >>
> >> # My eGalax Touchscreen device.
> >> notify 100 {
> >> match "system" "USB";
> >> match "subsystem" "INTERFACE";
> >> match "type" "ATTACH";
> >> match "intclass" "0x03";
> >> match "vendor" "0x0eef";
> >> match "product" "0xa119";
> >> action "/usr/local/etc/rc.d/webcamd start $cdev $interface";
> >> };
> >>
> >> replacing "ugen1.2" above with your "ugen0.2" as well as the vendor and
> >> product values.
> >>
> > Thanks, I'll try this.
> > few hours ago I:
> > 1) install x11-drivers/xf86-input-evdev
> > 2) place following to rc.conf.d/webcamd:
> >
> > [tiger at laptop]:~>cat /etc/rc.conf.d/webcamd
> > webcamd_0_flags="-N Lenovo-EasyCamera-Generic -S 200901010001"
> > webcamd_1_flags="-N Synaptics-Large-Touch-Screen-SYNAPTICS -S unknown"
> I didn't modify any of webcamd's flags in the rc.conf* files. You will
> also have to restart devd(8) ('/etc/rc.d/devd restart') to pick up the
> change to /usr/local/etc/devd/webcamd.conf.
>
> Do you see an instance of webcamd(8) running for your touchscreen? Is
> there a /dev/input/event* device node?
>
laptop# ps axuw |grep webca
root 14534 0,0 0,1 35664 6140 - Is 19:43
0:00,51 /usr/local/sbin/webcamd -N Lenovo-EasyCamera-Generic -S 200 root
14543 0,0 0,1 27344 5832 - Is 19:43
0:00,50 /usr/local/sbin/webcamd -N Synaptics-Large-Touch-Screen-SYN
laptop# env LC_ALL=C ls -l /dev/input/event*
crw-rw---- 1 webcamd webcamd 0x71 Mar 1 19:43 /dev/input/event0
> I'm running my own spin of xorg-server/config/devd.c, different from the
> proposed patch to x11-servers/xorg-server, but that really shouldn't be
> the reason for your difficulty.
>
Well.. Seems I missed this step, I have un-patched xorg-server ;(
> > webcamd_enable="YES"
> > 3) restart xorg but still no luck, possible I need change something on
> > xorg.conf?
> >
> > [tiger at laptop]:~>grep -i input /var/log/Xorg.0.log
> > [ 60690.944] (**) |-->Input Device "Mouse0"
> > [ 60690.944] (**) |-->Input Device "Keyboard0"
> > [ 60690.945] X.Org XInput driver : 21.0
> > [ 60690.979] (II) intel(0): Digital Display Input
> > [ 60691.175] (II) config/hal: Adding input device usbhid
> > [ 60691.175] (EE) No input driver matching `wacom'
> > [ 60691.175] (EE) config/hal: NewInputDeviceRequest failed (15)
> > [ 60691.179] (II) config/hal: Adding input device USB Optical Mouse
> > [ 60691.180] (II) Loading /usr/local/lib/xorg/modules/input/mouse_drv.so
> > [ 60691.180] Module class: X.Org XInput Driver
> > [ 60691.180] ABI class: X.Org XInput driver, version 21.0
> > [ 60691.180] (II) Using input driver 'mouse' for 'USB Optical Mouse'
> > [ 60691.180] (II) XINPUT: Adding extended input device "USB Optical
> > Mouse" (type: MOUSE, id 6) [ 60691.183] (II) config/hal: Adding input
> > device AT Keyboard [ 60691.184] (II)
> > Loading /usr/local/lib/xorg/modules/input/kbd_drv.so [ 60691.184] Module
> > class: X.Org XInput Driver [ 60691.184] ABI class: X.Org XInput driver,
> > version 21.0 [ 60691.184] (II) Using input driver 'kbd' for 'AT Keyboard'
> > [ 60691.184] (II) XINPUT: Adding extended input device "AT Keyboard" (type:
> > KEYBOARD, id 7) [ 60691.196] (II) config/hal: Adding input device PS/2 Mouse
> > [ 60691.196] (II) Using input driver 'mouse' for 'PS/2 Mouse'
> > [ 60691.270] (II) XINPUT: Adding extended input device "PS/2 Mouse" (type:
> > MOUSE, id 8)
> >
>
--
wbr, tiger
More information about the freebsd-current
mailing list