kern/183032: uep driver not working with eGalax touchcontroller

Ian walker_643 at
Wed Oct 16 20:00:01 UTC 2013

>Number:         183032
>Category:       kern
>Synopsis:       uep driver not working with eGalax touchcontroller
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Oct 16 20:00:00 UTC 2013
>Originator:     Ian
>Release:        9.2-RELEASE
FreeBSD tsconsole.local 9.2-RELEASE FreeBSD 9.2-RELEASE #0 r255898: Fri Sep 27 03:52:52 UTC 2013     root at  i386
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:

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.
Attempt to use an eGalax touchscreen with FreeBSD 9.x using the uep driver

Patch attached with submission follows:

Section "ServerLayout"
	Identifier     " Configured"
	Screen      0  "Screen0" 0 0
	Option         "DontZap" "on"
	InputDevice    "Touch0" "SendCoreEvents"

Section "Files"
	ModulePath   "/usr/local/lib/xorg/modules"
	FontPath     "/usr/local/lib/X11/fonts/misc/"
	FontPath     "/usr/local/lib/X11/fonts/TTF/"
	FontPath     "/usr/local/lib/X11/fonts/OTF"
	FontPath     "/usr/local/lib/X11/fonts/Type1/"
	FontPath     "/usr/local/lib/X11/fonts/100dpi/"
	FontPath     "/usr/local/lib/X11/fonts/75dpi/"

Section "Module"
	Load  "dbe"
	Load  "dri"
	Load  "dri2"
	Load  "extmod"
	Load  "record"
	Load  "glx"

Section "InputDevice"
	Identifier "Touch0"
	Driver "egalax"
	Option "Protocol" "auto"
	Option "Device" "/dev/uep0"

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"

Section "Device"
	Identifier  "Card0"
	Driver      "intel"
	VendorName  "Intel Corporation"
	BoardName   "Mobile 945GSE Express Integrated Graphics Controller"
	BusID       "PCI:0:2:0"

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	DefaultDepth 24
	SubSection "Display"
		Viewport   0 0
		Depth     24


More information about the freebsd-bugs mailing list