Date: Sat, 8 May 2021 01:32:07 +0200 From: Hans Petter Selasky <hps@selasky.org> To: Oliver Fromme <olli@fromme.com>, freebsd-usb@freebsd.org Subject: Re: Touchscreen "TSTP MTouch" Message-ID: <2eb19f0a-9c01-4b06-9a3e-c379665dbcb9@selasky.org> In-Reply-To: <202105071729.147HTxQe051508@nox.thiemo.net> References: <202105071729.147HTxQe051508@nox.thiemo.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 5/7/21 7:29 PM, Oliver Fromme wrote: > Hi, > > I'm not sure if this is the right place to ask ... This is > the first time I'm trying to get this sort of device to work, > so please be gentle. :-) > > I've bought a 7" touchscreen. It's intended for an RPi, but > it can also be connected to a standard PC via HDMI + USB, > which is what I do. Vendor & product ID is 0x0416 & 0xc168. > > The actual display works fine with Xorg as usual. But I'm > having problems getting the touch feature to work. > > According to the vendor, it's a standard USB HID interface > that works without additional driver in Windows, and is also > supported by Linux (apparently for several years already). > It's supposed to work out of the box with typical Linux > distributions on the RPi. Hi, Webcamd may need to be compiled with a special option to attach to your device. See "make config" in the port. Should create an evdev which you should be able to reach via X11. > > System: FreeBSD 13.0-STABLE-20210418 amd64 > CUSE: Cuse v0.1.36 @ /dev/cuse > webcamd port: webcamd-5.10.6.1_2 > > I've created a small devd snipped that starts the webcamd > service when the vendor ID and product ID are matched. > These are the log messages when I insert the USB plug: > Does "webcamd -l" list the device? If you start it from the command line, does it attach? You may also want to trace the USB traffic: usbdump -i usbus0 -f 2 -s 65536 -vvv To see why "error reading report description" fails. --HPS > 16:43:17 kernel: ugen0.2: <TSTP MTouch> at usbus0 > 16:43:17 kernel: ums1 on uhub2 > 16:43:17 kernel: ums1: <TSTP MTouch, class 0/0, rev 2.00/0.00, addr 12> on usbus0 > 16:43:17 kernel: ums1: error reading report description > 16:43:17 kernel: device_attach: ums1 attach returned 12 > 16:43:17 kernel: ums1 on uhub2 > 16:43:17 kernel: ums1: <TSTP MTouch, class 0/0, rev 2.00/0.00, addr 12> on usbus0 > 16:43:17 kernel: ums1: error reading report description > 16:43:17 kernel: device_attach: ums1 attach returned 12 > 16:43:19 webcamd[75654]: webcamd: Cannot find USB device > 16:43:20 webcamd[75646]: webcamd: Cannot find USB device > > I tried both USB3 and USB2 ports; same result. > The output from ``usbconfig dump_all_desc'' is attached below. > > At this point I'm not sure how to proceed. > Is there anything I can do? Or is this a lost case? > > On a related note, are there any touchscreens that are *known* > to work with FreeBSD? I tried searching the web, but wasn't > able to find anything useful. > > Regards > - Olli > > ugen0.2: <TSTP MTouch> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA) > > bLength = 0x0012 > bDescriptorType = 0x0001 > bcdUSB = 0x0200 > bDeviceClass = 0x0000 <Probed by interface class> > bDeviceSubClass = 0x0000 > bDeviceProtocol = 0x0000 > bMaxPacketSize0 = 0x0040 > idVendor = 0x0416 > idProduct = 0xc168 > bcdDevice = 0x0000 > iManufacturer = 0x0001 <retrieving string failed> > iProduct = 0x0002 <retrieving string failed> > iSerialNumber = 0x0003 <retrieving string failed> > bNumConfigurations = 0x0001 > > Configuration index 0 > > bLength = 0x0009 > bDescriptorType = 0x0002 > wTotalLength = 0x0049 > bNumInterfaces = 0x0002 > bConfigurationValue = 0x0001 > iConfiguration = 0x0000 <no string> > bmAttributes = 0x00a0 > bMaxPower = 0x0032 > > Interface 0 > bLength = 0x0009 > bDescriptorType = 0x0004 > bInterfaceNumber = 0x0000 > bAlternateSetting = 0x0000 > bNumEndpoints = 0x0002 > bInterfaceClass = 0x0003 <HID device> > bInterfaceSubClass = 0x0001 > bInterfaceProtocol = 0x0002 > iInterface = 0x0000 <no string> > > Additional Descriptor > > bLength = 0x09 > bDescriptorType = 0x21 > bDescriptorSubType = 0x11 > RAW dump: > 0x00 | 0x09, 0x21, 0x11, 0x01, 0x00, 0x01, 0x22, 0xdf, > 0x08 | 0x02 > > Endpoint 0 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0081 <IN> > bmAttributes = 0x0003 <INTERRUPT> > wMaxPacketSize = 0x0040 > bInterval = 0x0005 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 1 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0002 <OUT> > bmAttributes = 0x0003 <INTERRUPT> > wMaxPacketSize = 0x0040 > bInterval = 0x0008 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > > Interface 1 > bLength = 0x0009 > bDescriptorType = 0x0004 > bInterfaceNumber = 0x0001 > bAlternateSetting = 0x0000 > bNumEndpoints = 0x0002 > bInterfaceClass = 0x0003 <HID device> > bInterfaceSubClass = 0x0001 > bInterfaceProtocol = 0x0002 > iInterface = 0x0000 <no string> > > Additional Descriptor > > bLength = 0x09 > bDescriptorType = 0x21 > bDescriptorSubType = 0x11 > RAW dump: > 0x00 | 0x09, 0x21, 0x11, 0x01, 0x00, 0x01, 0x22, 0x8e, > 0x08 | 0x00 > > Endpoint 0 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0083 <IN> > bmAttributes = 0x0003 <INTERRUPT> > wMaxPacketSize = 0x0040 > bInterval = 0x0008 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > Endpoint 1 > bLength = 0x0007 > bDescriptorType = 0x0005 > bEndpointAddress = 0x0004 <OUT> > bmAttributes = 0x0003 <INTERRUPT> > wMaxPacketSize = 0x0040 > bInterval = 0x0008 > bRefresh = 0x0000 > bSynchAddress = 0x0000 > > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2eb19f0a-9c01-4b06-9a3e-c379665dbcb9>