From: "Breton M. Saunders" <bms20@brettnet.eu>
To: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Cc: linux-input <linux-input@vger.kernel.org>
Subject: Re: HID input dealing with multiple collections?
Date: Mon, 09 Sep 2013 15:01:14 +0100 [thread overview]
Message-ID: <522DD4AA.3020501@brettnet.eu> (raw)
In-Reply-To: <CAN+gG=ELptZsD37P9XMAgbLCFt-yZVbgmbGrk+mLvT6G2raKLQ@mail.gmail.com>
On 09/09/13 14:12, Benjamin Tissoires wrote:
> Hi,
>
> On Mon, Sep 9, 2013 at 2:56 PM, Breton M. Saunders <bms20@brettnet.eu> wrote:
>> Hello,
>>
>> I've written a USB device which supports multiple input devices:
>> * A touch surface digitizer (following Microsoft's specification)
>> * A pen surface digitizer
>> * A mouse emulator
>>
>> In windows each of these interfaces are exposed as a separate top level
>> collection, e.g.:
>> Usage_Page(Generic Desktop)
>> Usage(Mouse)
>> Collection(Application)
>> ...
>> End_Collection
>> Usage_Page(Digitzer)
>> Usage(Touch_Screen)
>> Collection(Application)
>> ...
>> End_Collection
>> Usage(Digitizer)
>> Usage(Pen)
>> Collection(Application)
>> ...
>> End_Collection
>>
>> Now this descriptor works well in Windows; all reporting channels are
>> exposed correctly as hid devices and mouse/multitouch/pen input all works
>> correctly as expected. In linux, however, this is not the case. What I see
>> is that if I drop out the touch/pen functionality then the mouse support
>> works correctly. Likewise, if I drop any pair of other top level
>> collections such that I have exactly one top level collection the system
>> works correctly.
>>
>> Am I missing something here - as in: Have I made an error in my usage of
>> top level collections, or is linux-input's hid support incapable of dealing
>> with multiple top level collections?
> If it works under Windows, there are huge chances that your report
> descriptor is good.
>
> However, under Linux, we use the report IDs to split (if required) the
> different inputs.
> The good thing for you is that if I understand correctly, the device
> you are talking about should be handled through hid-multitouch. Since
> kernel v3.10, we have introduced the support of devices showing both a
> digitizer and a pen (they will show up as two input devices).
>
> I would encourage you to test a 3.10 kernel, and/or send me some
> traces of your devices by using hid-replay[1]. This way I will be able
> to test your device on my laptop, and eventually figure out any
> problem.
>
> Cheers,
Hi Benjamin,
Thanks for the quick reply.
3.10 is a no-go for me; I need to get this working on a vanilla (or
upgraded) version of Ubuntu 12.04; so something more like kernel version
3.2. (Unfortunately, its what people are using in the field).
I will, however, install a more modern kernel to test against; esp.
since I note your HID-replay tool requires 3.6 to test with.
Would the correct approach here be to implement a composite USB
device and have separate USB interfaces for mouse, touch and pen for
compatibility with older kernel revisions?
Cheers,
-Brett
next prev parent reply other threads:[~2013-09-09 14:01 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-09 12:56 HID input dealing with multiple collections? Breton M. Saunders
2013-09-09 13:12 ` Benjamin Tissoires
2013-09-09 14:01 ` Breton M. Saunders [this message]
2013-09-09 14:16 ` Benjamin Tissoires
2013-09-09 15:40 ` Breton M. Saunders
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=522DD4AA.3020501@brettnet.eu \
--to=bms20@brettnet.eu \
--cc=benjamin.tissoires@gmail.com \
--cc=linux-input@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).