Opened 15 years ago
Last modified 10 months ago
#5179 assigned enhancement
Touchpad buttons not working correctly due to missing ClickPad support
Reported by: | Lynton | Owned by: | nobody |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Drivers/Input/PS2/Mouse | Version: | R1/Development |
Keywords: | mouse | Cc: | DFergFLA, romain |
Blocked By: | Blocking: | #12403, #14955, #14956, #15188, #18802 | |
Platform: | x86 |
Description (last modified by )
Synaptics is now making touchpads that have one "physical" button which is the whole pad. To determine if a click is on the left or right side, the buttons are part of the touchpad and the synaptics driver detects where the finger is placed (this works due to multi-touch support)
Known laptop models with this clickpad:
- Dell Inspiron Mini 10v
- Asus UX31A
- Asus UX32A
- HP series 4500 ProBooks
- ThinkPad X220
- ThinkPad X1
- Dell XPS 13
By default, the whole pad is detected as the left mouse button.. so basic functionality exsists.
More Information: https://wiki.archlinux.org/index.php/Touchpad_Synaptics#Buttonless_TouchPads_.28aka_ClickPads.29
Attachments (2)
Change History (40)
by , 15 years ago
Attachment: | Dell Mini 10v Devices.txt added |
---|
follow-up: 2 comment:1 by , 15 years ago
Is this touchpad hooked up as a USB device? Can you attach a listusb -v
output as well to check for that?
by , 15 years ago
Attachment: | listusb.txt added |
---|
follow-up: 5 comment:2 by , 15 years ago
Replying to mmlr:
Is this touchpad hooked up as a USB device? Can you attach a
listusb -v
output as well to check for that?
OK please find the output from listusb -v attached. I don't see the touchpad in the list to be honest.
Interestingly enough the problem gets worse to debug because the buttons have worked intermittently in the last few minutes. Its almost like its dependent on where you have had your fingers previously on the touchpad.
Quite hard to explain but am happy to provide more info if needed.
comment:3 by , 15 years ago
Component: | Drivers/Mouse → Drivers/Mouse/PS2 |
---|---|
Owner: | changed from | to
Yes, it's not a USB touchpad then.
comment:4 by , 15 years ago
Owner: | changed from | to
---|
Reassigning to Clemens as he implemented the synaptics support.
comment:5 by , 15 years ago
Replying to Lynton:
Replying to mmlr:
Is this touchpad hooked up as a USB device? Can you attach a
listusb -v
output as well to check for that?OK please find the output from listusb -v attached. I don't see the touchpad in the list to be honest.
Interestingly enough the problem gets worse to debug because the buttons have worked intermittently in the last few minutes. Its almost like its dependent on where you have had your fingers previously on the touchpad.
The mechanical left/right buttons are located beneath the active area on the touchpad. I have just noticed that if I click the buttons by using the extreme left right corners of the touchpad the buttons do actually work but one has to be very precise which is awkward to say the least. I seem to recall reading somewhee that the Windows/Linux drivers use some sort of filter to get around this issue?
comment:6 by , 15 years ago
Hi Lynton,
I think its the following problem: What I can see from the pics at google the buttons are integrated in the touch area. Correct? I had the problem that the touch area size listed in the synaptics specs where to small on my touchpad so I extend them a little bit so they reach over the buttons on your machine now. The problem is that you click a button and the button flag is set by the touchpad. But the driver think it is a movement on the touch area and remove the flag again...
On linux or windows could you use the button area also to move the mouse? (by start the movement somewhere else)
Hope to look into it next week...
Clemens
Will look into it next year...
comment:7 by , 15 years ago
Hi Clemens, You are correct about the buttons being located in the touch area. The buttons are mechanical devices located beneath the touchpad but it seems the area where the buttons are located is also part of the active touchpad area. I have never tried Windows on the machine but thinking back a little I did have an odd problem with "Linux Mint 7" on the machine where the touchpad behaved strangely. The pointer would jump around all over the screen if I tried to use the button area whilst moving the mouse say to resize a window.
I now run Ubuntu Netbook Remix and that seems to work OK.
I will of course be happy to test any modifications you make to the driver code.
Kind Regards
Lynton
comment:8 by , 13 years ago
I have same touchpad or how it called correctly - clickpad. http://www.synaptics.com/solutions/products/clickpad
Laptop HP Probook 4520s.
comment:9 by , 13 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
I don't have a synaptics touchpad anymore, so I can't even test changes... Siarzhuk are you interested to look into it?
comment:10 by , 13 years ago
Some interesting news on this issue: http://www.phoronix.com/scan.php?page=news_item&px=MTA2NTQ
and the xorg patch available here: http://lists.x.org/archives/xorg-devel/2012-March/029609.html
Since I have the same issue on my hp probook 4320, I will try to look at it I if have some time within the next weeks.
comment:11 by , 13 years ago
Cc: | added |
---|
comment:12 by , 12 years ago
Component: | Drivers/Mouse/PS2 → Drivers/Mouse/USB |
---|---|
Description: | modified (diff) |
Milestone: | R1 → R1/beta1 |
Summary: | Touchpad buttons not working correctly on Dell Inspiron Mini 10v → Touchpad buttons not working correctly due to missing ClickPad support |
Type: | bug → enhancement |
Version: | R1/alpha1 → R1/Development |
I have an Asus ultrabook that has the same clickpad... adjusting description to be more generic.
comment:13 by , 12 years ago
Component: | Drivers/Mouse/USB → Drivers/Mouse/PS2 |
---|
comment:14 by , 10 years ago
Have there been any improvements in the interim?
Should this still be under beta1 ?
comment:15 by , 10 years ago
Owner: | changed from | to
---|
For years I was default assignee for this PS2 stuff. Neither fixes nor improvements - I should be fired away. ;-)
comment:16 by , 10 years ago
Milestone: | R1/beta1 → Unscheduled |
---|
BeOS didn't support this, not an R1 feature. (and there is apparently not much interest in getting it done anyway, 5 years and not a single patch)
comment:17 by , 8 years ago
Blocking: | 12403 added |
---|
(In #12403) Ok, in that case it is probably a Synaptics Clickpad. Our driver has some trouble managing the physical buttons on these. I'm closing this as a duplicate of the (old) existing ticket. We may need to dive into Synaptics protocol specs again and see what can be done.
comment:18 by , 8 years ago
oh, wow I guess I maybe shouldn't expect this to be resolved any time soon.
comment:19 by , 8 years ago
Well, I made some investigations yesterday after closing your ticket.
There isn't anything specific for these in the Synaptics touchpad protocol. This means, the touchpad will report both a button click, and a second finger on the touchpad (1 finger doing mouse moves + 1 finger over the "button" area). The touchpad isn't multi-touch, but it can tell when there are more than 1 finger on the pad.
In our driver, all the processing for this is in http://cgit.haiku-os.org/haiku/tree/src/add-ons/kernel/bus_managers/ps2/movement_maker.cpp . This is not hardware-specific, which means we don't need a skilled hardware hacker to work on this. This piece of code takes the events from the touchpad as an input (X and Y position, Z pressure, and "W", which indicates various things including 2 or 3-finger movement, size of the finger, and a few others), and generates events for the input server.
The entry point is the "EventToMovement" method. You can see that in the case of the clickpad, we will never go in _NoTouchToMovement, because when a button is pressed, there is always a finger (the same one) on the pad.
Enabling the #define TRACE_MOVEMENT_MAKER in this file and looking at the syslog will provide some extra information. If someone does that, maybe enabling #define TRACE_PS2 in ps2_common.h would provide also low-level info from the driver itself, which may be useful, or too verbose and prevent proper use of the device at all.
comment:20 by , 8 years ago
That's cool. Maybe we'll get lucky and this won't be so hard to fix. It would really give Haiku a good boost in laptop hardware. Let me know if there is anything else I can get from my system to help.
comment:21 by , 7 years ago
Some support added in https://review.haiku-os.org/#/c/haiku/+/185/ so one can at least left click. This might be enough as supposedly Haiku supports being used with 1-button mouse: long click or ctrl+click should do the same as right click.
However, it would be better to support the right button area in some way.
comment:22 by , 6 years ago
Component: | Drivers/Mouse/PS2 → Drivers/Input/PS2/Mouse |
---|
comment:23 by , 6 years ago
Blocking: | 14955 added |
---|
comment:24 by , 6 years ago
Blocking: | 14956 added |
---|
comment:25 by , 3 years ago
Blocked By: | 15188 added |
---|
comment:26 by , 3 years ago
I have this issue as well if you need another syslog like the other ticket.
comment:27 by , 3 years ago
Blocked By: | 15188 removed |
---|---|
Blocking: | 15188 added |
comment:28 by , 3 years ago
Proposed fix for some touchpads that support multitouch (mine apparently doesn't): https://review.haiku-os.org/c/haiku/+/4425
comment:29 by , 3 years ago
Cc: | added; removed |
---|
DFergFLA et al., there are test builds of PulkoMandy's patch here:
https://haiku.movingborders.es/testbuild/If334392f4eb2a146955f6c8c897f0ab64d79b8d9/1/hrev55384/
See if you can install the haiku.hpkg from these and if it makes any differences.
comment:30 by , 3 years ago
I was able to download the image and test it. Sadly it doesn't seem to have had any noticeable effect. I can provide the syslog if you need.
comment:31 by , 3 years ago
I know that PulkoMandy doesn't have this hardware to work with on his end. I do not know how practical this may be but... I am willing to send him this laptop with a prepaid return shipping label for him to use to work on this. I have no idea if he willing to do something like that, or where even he lives. I am merely presetting it as an option. I feel that resolving this issue would benefit a lot of Haiku laptop users. I don't really use the laptop at this point for anything other than Haiku, so I can do without for a time.
comment:32 by , 3 years ago
My laptop is also a clickpad, so it does have the same problem. And I can also test on my work laptop if needed. I think I will explore these local options first, before stacking up yet another computer on my TODO list of things to look at.
comment:34 by , 3 years ago
No, it's still in Gerrit. But you can download the test build from madmax's buildbot (waddlesplash posted the link).
I will improve tracing in the synaptics driver and make it always print some info about detected touchpad version and capabilities, this should help see what each touchpad supports exactly.
comment:36 by , 3 years ago
Description: | modified (diff) |
---|
comment:37 by , 3 years ago
Same issue on my Dell XPS 13 for ages as well.
To do the physical click, I have to place my finger in the furthest, leftmost position (feels like down to the pixel) and press to click.
hrev55489, x86_64 syslog:
KERN: ps2: devfs_publish_device input/touchpad/ps2/synaptics_0, status = 0x00000000
Ironically, the touchscreen works better than the trackpad :-)
comment:38 by , 10 months ago
Blocking: | 18802 added |
---|
Output from listdev if its of any use