Hi! I'm hoping that somebody here may be able to assist with this as it's driving me up the wall.
I purchased a XPS13 9360 and am running Ubuntu Gnome 17.04. Out of the box, the touchpad works....however, not great. When using the Synaptics driver, the touchpad movement feels great and everything is perfect, but palm detection does not work. Yeah, you can use the syndaemon to disable the touchpad while typing, but I find that it still isn't the fix to palm detection. I think the reason why palm detection doesn't work is because Linux can't see the pressure or finger width, as reported by X. From what I read, the synclient needs this to be able to determine if a palm is resting on the touchpad or not.
Xorg.0.log:[ 425.704] (II) synaptics: DLL075B:01 06CB:76AF Touchpad: device does not report pressure, will use touch data. Xorg.0.log:[ 425.704] (II) synaptics: DLL075B:01 06CB:76AF Touchpad: device does not report finger width.
Now if I disable the synaptics driver by removing the package and make the machine use libinput, palm detection works great but now the pointer doesn't move smoothly. It moves, but when you try to move it slowly around, the pointer starts to get a bit jumpy and hard to control. Under synaptics, this doesn't happen...but then palm detection doesn't work.
Has anybody else stumble upon the same issues? What was your fix? I have to believe that there is something that I can do as this model has been sold to many as being linux friendly..which is has been so far...except for the touchpad.
I have the same issue as you do, reported when still used gdm. Moved to kdm, and I don't have all these messages anymore, but it doesn't work any better either.
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) synaptics: DLL075B:01 06CB:76AF Touchpad: device does not report pressure, will use touch data.
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) synaptics: DLL075B:01 06CB:76AF Touchpad: device does not report finger width.
Thanks for posting and knowing I'm not the only one with this issue. :) It seems like a number of people are like "Oh, there's no problems with it".
For more info that I found out....if I blacklist psmouse, then the libinput driver takes over....I think. But if I blacklist i2c_hid, then synaptics takes over and X sees the proper finger width....or at least I don't get that message. I thought, OK, awesome, maybe this will work. Unfortunately though, it didn't. It then, for reasons unknown, set the dimensions of the touchpad to something totally different and made it feel like it did with libinput....with the pointer moving around oddly. Interesting enough too, it seemed to change the model number of the touchpad from that DLL075B to something else.
I hate saying this, but what I did was blacklist the psmouse driver and have libniput take over. Yes, the pointing thing is taking a long time to get used to....and it's still really aggravating, but I'd rather deal with that than having the cursor jump all over the screen because palm detection doesn't work.
I really hope somebody or Dell fixes this asap because one of the reasons I bought this laptop was because I didn't want issues like this to deal with when running Linux.
I haven't seen anyone confirm that pressure-related data is being transmitted at all from the touchpad, IN ANY LINUX DISTRIBUTION, on the XPS 13 9360. I haven't seen any indication that anyone at Dell thinks this is a problem. I can easily change pressure settings on both my old junky laptops (a toshiba netbook running lubuntu, an asus clunker running fedora). I've used various diagnostic tools and haven't seen any pressure data on the 9360. I've tried every tip out there, and nothing. Different distributions, desktop environments. Nothing. It's goddamn frustrating when you shell out the cash for a machine that's supposed to be good with linux.
Yes, I don't think Dell's going to fix the issue of the lack of pressure data being generated by the touchpad on the 9360. Linus Torvalds gave Dell a nice, free PR boost by choosing the XPS 13 as his new laptop. I wish he'd say something about it!
Thanks all for the interest and support in this....it makes me feel like I'm not the only person with touchpad issues!
After using the 9360 for...what....about 6 months....I would say that the touchpad under libinput is usable but it's still annoying. Nothing at all compared to a macbook air touchpad, or even a different model Dell with the other than synaptics touchpad under libinput.
The synaptics driver makes moving the cursor around feel great but yet the palm detection doesn't work. Under libinput, the palm detection works good but the cursor doesn't feel great. I can't win.
The touchpad part we use does not report pressure data. There is nothing we're hiding. Very few touchpads support pressure detection, and all of the ones that do are recent, proprietary designs. You may find older documentation using misleading nomenclature, but I can assure you that they almost always mean contact width and not pressure. The touchpads we use in the XPS 13 9343 and later (9350 and 9360) follow Microsoft's Precision Touchpad specification, an open, standardized interface that ensures consistency across vendors. You can find the protocol specification publicly available online. It's a major step forward from proprietary, vendor-specific specifications that are only available under NDA. The PTP protocol provides data for palm detection via the confidence bit, not contact width.
Both PTP touchpad driver implementations and libinput are fairly new still, so it's understandable if people are finding corner cases where the experience leaves something to be desired. If there is specific, measurable and repeatable behavior that is causing a poor touchpad experience, please report it. However, I ask that we please keep discussion civil. We're making an honest effort to engage with the community openly.
Jared: Thanks for the response and information about it. I forgot but during my investigation into this, I did find that while the touchpad is made by Synaptics, it follows some sort of Microsoft specification. If this is the case,I would think that every touchpad would be the same.
I have a Latitude laptop at work and booted it up with an Ubuntu Live CD. When booting it up, I'm pretty sure it was recognized as an Alps touchpad, but I could be wrong about that one. When I used it in the live environment, it was absolutely perfect. Palm Detection was great and accurate and moving the cursor was like a dream.
I figured that since it worked great, an XPS13 laptop that's made for linux should equally work well. Unfortunately, I immediately noticed that the touchpad just didn't feel right. I tried libniput and it worked better for palm detection but the scrolling around just didn't feel right. I contacted the author of libinput on the mailing list and while he tried to help, he's limited on what he can do. I am by no means a programmer with the knowledge to fix or even investigate trying to fix the issue.
I've been using the laptop for about 6 months now and I would say that I do use the touchpad, I still feel like it can still be improved.
I feel like we've been keeping the discussion civil here and if you feel like we haven't, I am sorry about that. I've been trying to see if others feel the same way about this and if there are any fixes or tweaks that we can do to make the touchpad feel better. Since we can't rip the touchpad out and install a different one in the laptop, it's kind of like our only option is to tweak the drivers.
I'm hoping that enough people can show concern to gain interest in how the touchpad feels wonky. It's usable, but I know that it can be better. The synaptics drivers makes the cursor scroll perfectly but palm detection doesn't work. The libniput driver makes palm detection work but cursor scrolling not as smooth. If only there's a way to combine the two and that would fix all my issues, along with, I believe, everybody elses.
madchap
23 Posts
7689
0
Posted May 6th, 2017 02:00
I have the same issue as you do, reported when still used gdm. Moved to kdm, and I don't have all these messages anymore, but it doesn't work any better either.
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) config/udev: Adding input device DLL075B:01 06CB:76AF Touchpad (/dev/input/event11)
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: Applying InputClass "evdev touchpad catchall"
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: Applying InputClass "libinput touchpad catchall"
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: Applying InputClass "touchpad catchall"
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: Applying InputClass "Default clickpad buttons"
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) Using input driver 'synaptics' for 'DLL075B:01 06CB:76AF Touchpad'
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: always reports core events
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) synaptics: DLL075B:01 06CB:76AF Touchpad: found clickpad property
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: x-axis range 0 - 1216 (res 12)
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: y-axis range 0 - 680 (res 12)
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) synaptics: DLL075B:01 06CB:76AF Touchpad: device does not report pressure, will use touch data.
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) synaptics: DLL075B:01 06CB:76AF Touchpad: device does not report finger width.
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: buttons: left double triple
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: Vendor 0x6cb Product 0x76af
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: invalid pressure range. defaulting to 0 - 255
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: invalid finger width range. defaulting to 0 - 15
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: touchpad found
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: always reports core events
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) XINPUT: Adding extended input device "DLL075B:01 06CB:76AF Touchpad" (type: TOUCHPAD, id 12)
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) synaptics: DLL075B:01 06CB:76AF Touchpad: (accel) MinSpeed is now constant deceleration 2.5
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) synaptics: DLL075B:01 06CB:76AF Touchpad: (accel) MaxSpeed is now 1.75
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) synaptics: DLL075B:01 06CB:76AF Touchpad: (accel) AccelFactor is now 0.144
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: (accel) keeping acceleration scheme 1
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: (accel) acceleration profile 1
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: (accel) acceleration factor: 2.000
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: (accel) acceleration threshold: 4
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (--) synaptics: DLL075B:01 06CB:76AF Touchpad: touchpad found
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (II) config/udev: Adding input device DLL075B:01 06CB:76AF Touchpad (/dev/input/mouse2)
Apr 20 22:38:34 gimli /usr/lib/gdm/gdm-x-session[31163]: (**) DLL075B:01 06CB:76AF Touchpad: Ignoring device from InputClass "touchpad ignore duplicates"