eGalax Touchscreens don't appear to be working with FreeBSD 9.2. This has been an ongoing problem, I think, since the 8.x branch. Please refer to these links for existing similar reports: http://149.20.54.209/showthread.php?p=158199 http://forums.freebsd.org/archive/index.php/t-28521.html Major Points: - uep finds the touchscreen and assigns it to /dev/uep0 - uep0 does not offer any data when the touchscreen events happen - I have made the appropriate changes to xorg.conf (attached as xorg.txt) - The touchscreen does not function in Xorg; no cursor movement ever happens. - The touchscreen is known to work under Windows XP Embedded and Linux (via the evtouch driver) Lines from dmesg that are important: > dmesg | grep -iE 'ums|uhid|uep|galax' ugen3.2: <eGalax Inc.> at usbus3 uep0: <eGalax Inc. USB TouchController, class 0/0, rev 1.10/1.00, addr 2> on usbus3 usbconfig output for the touchscreen: > usbconfig -u 3 -a 2 dump_device_desc ugen3.2: <USB TouchController eGalax Inc.> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA) bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0110 bDeviceClass = 0x0000 bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0040 idVendor = 0x0eef idProduct = 0x0001 bcdDevice = 0x0100 iManufacturer = 0x0001 <eGalax Inc.> iProduct = 0x0002 <USB TouchController> iSerialNumber = 0x0000 <no string> bNumConfigurations = 0x0001 Please let me know if any more information could be helpful. Thank you. Fix: Patch attached with submission follows: How-To-Repeat: Attempt to use an eGalax touchscreen with FreeBSD 9.x using the uep driver
I have the same issue and have been trying to figure out a solution for a while. From what I can gather, the uep driver is for older non HID compliant eGalax devices. Apparently eGalax changed the devices but kept the same device IDs. 2 approaches have shown promise, but so far neither actually works: 1- the latest version of xf86-input-mouse contains a patch from mav@ which includes support for USB HID devices directly. I am able to get my touchscreen somewhat working using this. You have to compile a kernel without ums in order for uhid to bind to the device and add something like this to Xorg Section "InputDevice" Identifier "Panel1" Driver "mouse" Option "Protocol" "usb" Option "Device" "/dev/uhid0" Option "Collection" "2" Option "FlipXY" "true" # Option "InvX" "True" # Option "InvY" "True" Option "AngleOffset" "90" EndSection On my device, the axes are inverted, and the driver doesn't seem to respect the FlipXY option, so it isn't of much use. 2- the multimedia/webcamd includes a port of the linux eGalax input driver. Once installed and bound to the ugen device ( my device is ugen4.3 so I run "webcamd -d 4.3"), there is a linux style /dev/input/event0 device which produces data when the screen is touched. But so far I have found nothing to use this to get events into Xorg. Brock -- Brock Williams brock@cottonwoodcomputer.com Cottonwood Computer Solutions, Inc. www.cottonwoodcomputer.com 406-896-4910
Hi Brock - It sounds like we're in the same situation. I, too, have made the most progress via xf86-input-mouse and been thwarted at the last moment by the incorrectable inverted axis problem. It seems like the best solution now is to add "FlipXY" intelligence to bsd_mouse.c and call it good. Ian
This is a multi-part message in MIME format.
Responsible Changed From-To: freebsd-bugs->freebsd-usb reclassify.
For bugs matching the following criteria: Status: In Progress Changed: (is less than) 2014-06-01 Reset to default assignee and clear in-progress tags. Mail being skipped
Hi, There are X-org patches to autodetect this device: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=196678 --HPS