Re: [eGalax] no click events with touchscreen

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jan 8, 2015 at 6:19 PM, Gavin Lambert <gavinl@xxxxxxxxxxxxxx> wrote:
> On 9 January 2015 11:55, quoth Benjamin Tissoires:
>> On Thu, Jan 8, 2015 at 5:20 PM, Gavin Lambert <gavinl@xxxxxxxxxxxxxx> wrote:
>> > On 9 January 2015 04:17, you quoth:
>> >> So here, everything seems fine except for the tracking ID and the
>> BTN_TOUCH.
>> >> The kernel does not sends the touch begin and touch end information,
>> >> thus the device is not working :(
>> >>
>> >> Can you compile and install hid-recorder from
>> >> http://bentiss.github.io/hid- replay-docs/ ?
>> >> I would need a hid-record of your touchscreen so I can figure out why
>> >> the kernel does not handle it properly.
>> >
>> > Attached.  (Sent off-list to avoid spamming uninterested parties with
>> > the file; please feel free to reply on-list if you prefer.)
>> >
>> > During the recording, I made one touch and release to the centre of the
>> screen, waited about three seconds, then did a staggered two-point multitouch
>> (touch left, touch right, release left, release right).  Just in case both
>> scenarios are useful to you.
>> >
>>
>> Well, unfortunately, when I first read your bug report, I missed that you are
>> using one of the most buggy touchscreen available.
>> Egalax still tries to reuse the product id 0001 for *many* different
>> touchscreens. Some are multitouch, some are not.
>> With all this mess, it is impossible to figure out which way to go and write
>> something upstream about it :(
>
> Buggy or not, it seems to be the most common kind of small panel commercially available for the Pi.  Two out of three touchscreens I've tried getting seem to be eGalax ones.
>
>> Anyway, given your hid outputs, if you run the following command before
>> plugging your touchscreen (at boot is a good idea), you should be fine:
>> # echo 3 0eef 0001 16 > /sys/bus/hid/drivers/hid-multitouch/new_id
>
> I could probably add this to an init script somewhere, but I don't think there's any way I can do this before the touchscreen is physically connected.  Would it be sufficient to put it after mounting sys but before starting udev?

You can also make an udev rule which write 1040 in
/sys/bus/hid/devices/0003\:0EEF\:0001.*/quirks on plug in an udev rule
(you should probably rely on the path given by the udev rule instead
of writing the wildcard).

>
>> *BUT* the outputs show only _one_ touch when you said you made 2.
>
> This doesn't really surprise me.  It's a resistive panel, so I was very surprised when it loaded the multitouch driver.  Maybe that's the real problem?
>
>

Oh, that explains a lot. So they are trying to add a lot more of noise
by sharing the multitouch report descriptors with single touch only
devices... A big mess I told you :(

Cheers,
Benjamin
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux