From owner-freebsd-questions@FreeBSD.ORG Tue Jun 22 15:50:37 2010 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 43A961065670 for ; Tue, 22 Jun 2010 15:50:37 +0000 (UTC) (envelope-from osp@aloha.com) Received: from relay.pixi.com (relay.pixi.com [206.127.224.101]) by mx1.freebsd.org (Postfix) with ESMTP id 209758FC17 for ; Tue, 22 Jun 2010 15:50:36 +0000 (UTC) Received: from yoda.pixi.com (yoda.pixi.com [206.127.224.41]) by relay.pixi.com (8.13.8+Sun/8.13.6) with ESMTP id o5MFoWir005794 for ; Tue, 22 Jun 2010 05:50:32 -1000 (HST) Received: from webmail.pixi.com (yoda.pixi.com [206.127.224.120] (may be forged)) by yoda.pixi.com (8.13.1/8.13.1) with SMTP id o5MFoWXs032320 for ; Tue, 22 Jun 2010 05:50:32 -1000 Message-Id: <201006221550.o5MFoWXs032320@yoda.pixi.com> To: freebsd-questions@freebsd.org From: osp@aloha.com Date: Tue, 22 Jun 2010 05:50:32 HST X-Posting-IP: 141.190.32.71 X-Mailer: Endymion MailMan Standard Edition v3.2.19 Subject: Fujitsu T1010 digitizer X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Jun 2010 15:50:37 -0000 I am looking for help in getting a Fujitsu touch panel working with FreeBSD 8.0 and Gnome. I have here what I have so far, what I need is some advice on what to do next. Someone who goes by "zmiq2" has developed a basic but functional set of programs that do what I need, for Ubuntu. That code identifies the Fujitsu digitizer as vendor ID 0x0430 and device ID 0x0530. Here is some of that code: #include #include #include #include #include /* * Version Information */ #define DRIVER_VERSION "v0.3.5" #define DRIVER_DESC "Fujitsu usb touchscreen driver for u810, u820, p1620, t1010" #define DRIVER_LICENSE "GPL" #define DRIVER_AUTHOR "zmiq2 " .. #define USB_VENDOR_ID_FUJITSU 0x0430 #define USB_DEVICE_ID_U810TABLET 0x0530 .. My Fujitsu T1010 triple boots FreeBSD 8.0, Windows 7, and Ubuntu. I have this interface working in Ubuntu. Minimal but functional. This is from my FreeBSD /var/run/dmesg.boot (external USB mouse attached). Look closely at ugen4.2: .. uhub1: 2 ports with 2 removable, self powered uhub0: 2 ports with 2 removable, self powered uhub2: 2 ports with 2 removable, self powered uhub4: 2 ports with 2 removable, self powered uhub5: 2 ports with 2 removable, self powered uhub6: 2 ports with 2 removable, self powered Root mount waiting for: usbus7 usbus3 Root mount waiting for: usbus7 usbus3 uhub3: 6 ports with 6 removable, self powered uhub7: 6 ports with 6 removable, self powered ugen1.2: at usbus1 ums0: on usbus1 ums0: 8 buttons and [XYZ] coordinates ID=0 ugen4.2: at usbus4 Root mount waiting for: usbus7 ums1: on usbus4 ugen7.2: at usbus7 Trying to mount root from ufs:/dev/ad4s3a ugen4.3: at usbus4 ubt0: on usbus4 .. More info from usbconfig: $ sudo usbconfig dump_info ugen0.1: at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen1.1: at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen2.1: at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen3.1: at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON ugen4.1: at usbus4, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen5.1: at usbus5, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen6.1: at usbus6, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON ugen7.1: at usbus7, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON ugen1.2: at usbus1, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON ugen4.2: at usbus4, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON ugen7.2: at usbus7, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON ugen4.3: at usbus4, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON $ sudo usbconfig -u 4 -a 2 dump_device_desc ugen4.2: at usbus4, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0110 bDeviceClass = 0x0000 bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0008 idVendor = 0x0430 idProduct = 0x0530 bcdDevice = 0x5001 iManufacturer = 0x0001 iProduct = 0x0002 iSerialNumber = 0x0000 bNumConfigurations = 0x0001 Here we see that idVendor and idProduct match the values used in the Ubuntu interface. Back in dmesg.boot we see that this device is assigned to ums1. $ ll /dev/um* crw-r--r-- 1 root operator - 0, 114 Jun 22 02:59 /dev/ums0 crw-r--r-- 1 root operator - 0, 116 Jun 22 02:59 /dev/ums1 (Yes, I was working at three in the morning!) Just for fun I tried cat /dev/ums1 but got "Device busy." So, how do I open this device and read what it is sending, and how do I send something useful to x.org? I don't think I can just read it as a mouse, it will need scaling, rotation, and some help generating button 2 and button 3 events. All help appreciated! Gary Dunn Open Slate Project osp@aloha.com