Bug 13840

Summary: proposed patch for the VM84 touchscreen ( uses elographics )
Product: xorg Reporter: KaZeR <kazer>
Component: Input/elographicsAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED INVALID QA Contact: Xorg Project Team <xorg-team>
Severity: enhancement    
Priority: low CC: kazer
Version: unspecifiedKeywords: patch
Hardware: All   
OS: All   
Whiteboard: 2011BRB_Reviewed
i915 platform: i915 features:
Attachments:
Description Flags
Patch needed to make vm84 touchscreen work with elographics-1.1.0
none
0001-Add-Option-Model-to-supported-list-of-options.patch none

Description KaZeR 2007-12-28 01:50:42 UTC
Hi there. Please find attached a patch needed to be able to use the VM84 touchscreen. All the credit for this work goes to Martin 'cp15' Schaller.
Comment 1 KaZeR 2007-12-28 01:52:07 UTC
Created attachment 13392 [details] [review]
Patch needed to make vm84 touchscreen work with elographics-1.1.0
Comment 2 Peter Hutterer 2007-12-29 15:32:40 UTC
(In reply to comment #1)
> Created an attachment (id=13392) [details]
> Patch needed to make vm84 touchscreen work with elographics-1.1.0

this patch can't go in like it is. assuming that all elographics devices work with the current driver (which I have no idea if they do since I don't have one) you're most likely breaking all of them.

is there a a less obtrusive way to fix the problem? such as detecting whether it's a vm84 and skipping the problematic xf86EloSendControl, etc.
Comment 3 KaZeR 2007-12-31 01:11:12 UTC
I agree, this is only a quick an dirty patch, made after some debugging of the raw datas coming from the touchscreen. Unfortunately, i have only this touchscreen, so i can't test neither if it works with others elographics device. But if anyone have a cleaner solution, i'm here to test it on my device.
Comment 4 Peter Hutterer 2008-02-28 19:22:07 UTC
(In reply to comment #3)
> I agree, this is only a quick an dirty patch, made after some debugging of the
> raw datas coming from the touchscreen. Unfortunately, i have only this
> touchscreen, so i can't test neither if it works with others elographics
> device. But if anyone have a cleaner solution, i'm here to test it on my
> device.
> 

is there any method of identifying that it is a vm84 and not an elographics driver?
If not, you could put an option into the driver and then make your changes conditional.
Comment 5 KaZeR 2008-04-14 04:21:01 UTC
That's a good question. Problably there is a string you can send to query.. But i have to figure it out.

Moreover, i changed some hardware lately and i have problems using the driver.
It didn't work yesterday, i made some changes in it, finally it worked this morning, but i was unable to use the clic feature (only move the cursor).. But now it doesn't work anymore.

Looks like it's really time to make a clean fix for it :)

I'm having the following traces, if that helps anyone : 


Elographics touchscreen on...
Elographics touchscreen opening : /dev/ttyUSB0
Sending packet : 0x55 0x70 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x6F 
Waiting a 'P' reply
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Not at the specified rate or model 2310, will continue
Sending packet : 0x55 0x69 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x68 
Waiting a 'I' reply
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Unable to ask Elographics touchscreen identification
Sending packet : 0x55 0x4D 0x0 0x7 0x40 0x0 0x0 0x0 0x0 0x93 
Waiting a 'A' reply
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Unable to change Elographics touchscreen operating mode
Sending packet : 0x55 0x42 0x5 0x1 0x0 0x0 0x0 0x0 0x0 0x47 
Waiting a 'A' reply
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Waiting 100 ms for data from port
No answer from link : 0
Unable to change Elographics touchscreen reports timings




If i touch the screen while doing od -h -w /dev/ttyUSB0, i get things like this :
0006100 0c01 5d00 5455 e404 0c0b 0c01 5f00 5455 e802 100b 1001 6900 5455 e802 100b 1001
 

But the elographics seems to be unable to receive the event.

Hope this will help.
Comment 6 Peter Hutterer 2008-06-12 17:34:27 UTC
Created attachment 17079 [details] [review]
0001-Add-Option-Model-to-supported-list-of-options.patch

Please try these two patches (both in the same file)
The first one adds support for Option "Model" "VM84" in the Section InputDevice of your xorg.conf. The second one then applies the previously submitted changes, conditionally on whether VM84 was specified.

I'm not really happy with the patches, since I was hoping that there'd be some automatic detection we could use, but they'll do for the time being.

Both are untested.
Comment 7 KaZeR 2008-06-16 08:03:23 UTC
Hi Peter, and thanks for you patch. I'd like to know against which version of the driver you wrote it? The patch i submitted was for 1.1.0. Now i saw that 1.2.1 was out, and your patch was against git, isn't it? (i've never used git before). I've tested with both 1.1.0 and 1.2.1 but got rejects..
Comment 8 Peter Hutterer 2008-06-16 20:41:59 UTC
On Mon, Jun 16, 2008 at 08:03:23AM -0700, bugzilla-daemon@freedesktop.org wrote:
> --- Comment #7 from KaZeR <kazer@altern.org>  2008-06-16 08:03:23 PST ---
> Hi Peter, and thanks for you patch. I'd like to know against which version of
> the driver you wrote it? The patch i submitted was for 1.1.0. Now i saw that
> 1.2.1 was out, and your patch was against git, isn't it? (i've never used git
> before). I've tested with both 1.1.0 and 1.2.1 but got rejects..

it's against the git version. the patch should in theory apply to 1.2.1, but
it may be that some of the patch contexts may not apply, that's why it fails.
Comment 9 KaZeR 2008-06-19 10:36:57 UTC
(In reply to comment #8)
> it's against the git version. the patch should in theory apply to 1.2.1, but
> it may be that some of the patch contexts may not apply, that's why it fails.


Ok. I've tested the patch, it *almost* works. I have to play with the settings for now to get the cursor to match the zone i'm touching : with the settings of my patched 1.1.0, it's stuck in a 3cmx3cm corner on the topleft corner.

Thanks again for your time, i will report further progress.

Comment 10 Peter Hutterer 2008-06-26 03:25:18 UTC
> --- Comment #9 from KaZeR <kazer@altern.org>  2008-06-19 10:36:57 PST ---
> (In reply to comment #8)
> > it's against the git version. the patch should in theory apply to 1.2.1, but
> > it may be that some of the patch contexts may not apply, that's why it fails.
> 
> 
> Ok. I've tested the patch, it *almost* works. I have to play with the settings
> for now to get the cursor to match the zone i'm touching : with the settings of
> my patched 1.1.0, it's stuck in a 3cmx3cm corner on the topleft corner.

I'd say this indicates wrong scaling, i.e. the driver reports a larger min/max
than the device can report. min/max doesn't have default options, so without
tweaking your config, there isn't much you can do.
Comment 11 KaZeR 2008-07-02 13:51:34 UTC
Ok, some progress. I can now point almost accurately. But.. I can't click. It used to work, and i do see the 'TouchScreen: x(3808), y(336), Release' event in the logs : but it doesn't click. I've tested under kde4 & matchbox, clicking has no effect. I've just spent quite some time trying to figure out what's wrong.. But i'm out of idea. Would you happen to have an idea/hint? thanks again for your time.
Comment 12 Peter Hutterer 2008-07-03 06:38:49 UTC
> --- Comment #11 from KaZeR <kazer@altern.org>  2008-07-02 13:51:34 PST ---
> Ok, some progress. I can now point almost accurately. But.. I can't click. It
> used to work, and i do see the 'TouchScreen: x(3808), y(336), Release' event in
> the logs : but it doesn't click. I've tested under kde4 & matchbox, clicking
> has no effect. I've just spent quite some time trying to figure out what's
> wrong.. But i'm out of idea. Would you happen to have an idea/hint? thanks
> again for your time.

try xev, could be that the state is messed up and the click isn't registered
by the toolkit. If xev doesn't show anything either, you'd have to gdb the
server to get more info.
 
Comment 13 Jeremy Huddleston Sequoia 2011-10-17 03:12:16 UTC
Any update Kazer?
Comment 14 Adam Jackson 2018-06-12 19:09:06 UTC
Mass closure: This bug has been untouched for more than six years, and is not
obviously still valid. Please reopen this bug or file a new report if you continue to experience issues with current releases.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.