From owner-freebsd-usb@FreeBSD.ORG Tue Jun 10 18:39:02 2008 Return-Path: Delivered-To: usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 25C66106567D; Tue, 10 Jun 2008 18:39:02 +0000 (UTC) (envelope-from volker@vwsoft.com) Received: from frontmail.ipactive.de (frontmail.maindns.de [85.214.95.103]) by mx1.freebsd.org (Postfix) with ESMTP id AD9118FC18; Tue, 10 Jun 2008 18:39:00 +0000 (UTC) (envelope-from volker@vwsoft.com) Received: from mail.vtec.ipme.de (Q7cd5.q.ppp-pool.de [89.53.124.213]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by frontmail.ipactive.de (Postfix) with ESMTP id 6136412883F; Tue, 10 Jun 2008 20:12:58 +0200 (CEST) Received: from cesar.sz.vwsoft.com (cesar.sz.vwsoft.com [192.168.16.3]) by mail.vtec.ipme.de (Postfix) with ESMTP id D3EB990427; Tue, 10 Jun 2008 20:12:01 +0200 (CEST) Message-ID: <484EC402.9060200@vwsoft.com> Date: Tue, 10 Jun 2008 20:12:18 +0200 From: Volker User-Agent: Thunderbird 2.0.0.14 (X11/20080503) MIME-Version: 1.0 To: usb@freebsd.org X-Enigmail-Version: 0.95.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit MailScanner-NULL-Check: 1213726335.47834@b0xGWcLprNsc//ABGtd1pA X-MailScanner-ID: D3EB990427.B8830 X-VWSoft-MailScanner: Found to be clean X-MailScanner-From: volker@vwsoft.com X-ipactive-MailScanner-Information: Please contact the ISP for more information X-ipactive-MailScanner: Found to be clean X-ipactive-MailScanner-From: volker@vwsoft.com Cc: Subject: WIP: usb touchscreen drivers X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Jun 2008 18:39:02 -0000 Hi everybody! I'm taking the chance and cross-posting this to the exciting, hopefully soon becoming busy, shiny new mailing list (freebsd-wip-status@ bcc'd, for those not already aware). Currently I'm working under contract for developing FreeBSD drivers for USB touchscreen devices. Before coding started, I've figured out the possible solutions to get a touchscreen device running under FreeBSD / X11 but haven't found much. We currently don't have any specialized drivers (but ums and uhid). More than worse: By default the ums driver is attaching to the device by default which has no support for devices reporting zero buttons and absolute coordinates. Currently OpenBSD has support for touchscreen devices but I found it difficult (or at least too much work) to port over wscons and replace syscons with that. Current touchscreen xf86-input drivers do partly support USB devices under Linux and I don't like to have the Xinput driver parse the USB protocol itself. Using a specialized kernel driver has some advantages IMO. Currently I'm having a basic, working driver (hence: WIP!), at kernel level (utouch) and a corresponding xf86-input-utouch driver. The first device supported is a Generaltouch ST6101U. So far, the device is working, the X pointer is following touches and button clicks are reported to X. Axis scaling is currently sub-optimal but I think I'll rework the scaling once more. What I would love to see: If you're having a USB connected touchscreen device laying around, I would love to see a krepdump [1] of that device to see how other devices are reporting. Especially, if you're having a multi-touch device, I would strongly love to see how this device reports data! BTW, it shouldn't be too difficult to enhance my driver infrastructure to also support tablet devices (also reporting absolute coordinates but also reporting button presses and some more functionality). As this work is under contract, I need to get approval to release the code but I'm pretty sure to get approval (BSD-licensed, of course). If you're interested in seeing USB touchscreen support for FreeBSD this way and have a device laying around, please contact me directly and I'll see how to support your device. Thanks! Volker [1] http://people.freebsd.org/~kaiw/tools/krepdump.tgz