On Sat, Jan 14, 2012 at 5:55 PM,  <[email protected]> wrote:
>  Hello Everyone,
>  This is my first involvement in this project so please let me know if
>  I'm posting in the wrong place or anything.
>  My name's Mark Johnson, I'm mainly a web developer but dabble quite a
>  bit.
>
>  The reason for my posting is that I recently purchased a Boogie Board
>  Rip[1].  As well as the advertised features it appears as /dev/hidrawx
>  when plugged in to a Linux box, and sends a stream of binary reporting
>  any event that happens on the board. Here's its lsusb entry:
>
>  Bus 001 Device 008: ID 2047:ffe7 Texas Instruments
>
>  and dmesg output:
>
>  [48257.380164] generic-usb 0003:2047:FFE7.0006: timeout initializing
>  reports
>  [48257.380330] generic-usb 0003:2047:FFE7.0006: hiddev0,hidraw2: USB
>  HID v1.00 Device [Improv USB Device] on usb-0000:00:02.1-4.2/input1
>

There are two Linux HID drivers: hiddev and hidraw.  If its a standard
HID input device, then hiddev will control it and you'd most likely
already be using it with either xf86-input-evdev or xf86-input-wacom
without needed to write this email.

Something went wrong and its being controlled by hidraw.  I'll guess
that that first line is a hint why it chose hidraw driver.

>  Now, I've been able to decode the binary to work out which bytes are
>  referring to which events, and write a Ruby script[2] to report each
>  event as they happen. It strikes me that when plugged in the device is
>  essentially a graphics tablet, there's just no driver to allow it to be
>  used as such.  So my questions are:
>  Would it be possible and appropriate to add support for the device to
>  this project, if it's not a Wacom device?

No.  We wouldn't add this to xf86-input-wacom or wacom kernel driver.

>  Given that I am but a lowly web developer, would anyone be willing to
>  use the information I've gathered so far (and any more I'm able to
>  provide) to do so?
>  If the answer to either of the above questions is no, would anyone be
>  willing to mentor me through the process of writing a device driver, or
>  point me in the direction of a project that might be able to help?

I would be happy to give some hints.  First up, you might want to look
for the linux-input mailing list and join it.  Thats were most kernel
driver discussions occur and you'll get better help for device drivers
there.

Next, it would be very useful to see your HID report for this device.
If your hardware is not owned by any device drivers then running this
as root would show us your HID report "lsusb -vvvv".

But your device is controlled by hidraw so probably will blank out the
important parts.  I've not do this before but following web page shows
how you could unbind your device from hidraw then you can run lsusb
command:

http://lwn.net/Articles/143397/

You would be most lucky if you could get your tablet working with
standard hiddev driver.  Sometimes adding "quirks" for your product ID
is all it takes.  Since your dmesg complained about initializing the
HID report, you may have one that doesn't like GET's.   You can edit
the linux kernel file linux/drivers/hid/usbhid/hid-quirks.c and add a
line to an array for your devices vendor and product ID.  Here is an
example line that hadds NOGET and MULTI_INPUT for an EGALAX device:

        { USB_VENDOR_ID_DWAV, USB_DEVICE_ID_EGALAX_TOUCHCONTROLLER,
HID_QUIRK_MULTI_INPUT | HID_QUIRK_NOGET }

Try recompiling your kernel with only that addition.  If that doesn't
seem to help then you'll have to write a custom driver for a
non-cofrmant HID device.  I suggest looking at the driver
linux/drivers/hid/hid-ntrig.c as a template for creating a new driver
for your device.  There are also some more tablet drivers under
linux/drivers/input/tablet that may be good examples as well.  The
ones under drivers/input/tablets are for devices that are not remotely
HID compatible.

Good luck,
Chris

>
>  Thanks for reading!
>  Mark
>
>  [1]
>  http://improvelectronics.com/boogie-board-LCD-writing-tablet/boogie-board-rip-LCD-writing-tablet.html
>  [2] https://github.com/marxjohnson/rubyboard
>
> ------------------------------------------------------------------------------
> RSA(R) Conference 2012
> Mar 27 - Feb 2
> Save $400 by Jan. 27
> Register now!
> http://p.sf.net/sfu/rsa-sfdev2dev2
> _______________________________________________
> Linuxwacom-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

------------------------------------------------------------------------------
RSA(R) Conference 2012
Mar 27 - Feb 2
Save $400 by Jan. 27
Register now!
http://p.sf.net/sfu/rsa-sfdev2dev2
_______________________________________________
Linuxwacom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to