NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.06k stars 14.11k forks source link

Cursor sporadically starts drifting on Lenovo T460 (Nub / Trackpoint issue) #54453

Open Radvendii opened 5 years ago

Radvendii commented 5 years ago

Issue description

Every so often, seemingly without a trigger, the cursor starts drifting in some direction and I just have to let the nub go for a few seconds until it stops. I exclusively use the nub and have in fact disabled the trackpad. This does not happen while using an external mouse.

My friend is running a similar setup also on a T460 and has the same problem. I've been running NixOS on this computer for several years now and this has been a consistent problem through all the versions. I'm not sure why I haven't posted an issue before now.

This is similar to, but doesn't seem to be the same as the normal recalibration drifting that nubs do, like when I put light constant pressure on the nub and then it stops until I let go and it drifts backwards. This a) takes much longer to stop drifting and b) drifts with a lot more force. I can actively push as hard as I can and the nub will still slide slowly in the opposite direction.

Might be related to #19022, but is presenting with some different symptoms.

relevant configuration.nix contents

  hardware = {
    # middle click scroll
    trackpoint = {
      enable = true;
      emulateWheel = true;
    };
  };
  services.xserver = {
  # disable trackpad
    synaptics.enable = false;
    libinput = {
      # enable trackpoint
      enable = true;
      # middle click scroll
      # scrollMethod = "button";
      # scrollButton = 3;
    };
    inputClassSections = [
    ''
      Identifier "evdev touchpad off"
      MatchIsTouchpad "on"
      MatchDevicePath "/dev/input/event*"
      Driver "evdev"
      Option "Ignore" "true"
    ''
    ];
  };

Technical details

Please run nix-shell -p nix-info --run "nix-info -m" and paste the results.

dejanr commented 5 years ago

I can confirm the same behavior with t480, it stoped occuring that often since i disabled nub in bios.

norpol commented 5 years ago

I just stumbled upon this blog posting and I could reduce the drifting issue to a degree where I don't notice it anymore.

stale[bot] commented 4 years ago

Thank you for your contributions. This has been automatically marked as stale because it has had no activity for 180 days. If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity. Here are suggestions that might help resolve this more quickly:

  1. Search for maintainers and people that previously touched the related code and @ mention them in a comment.
  2. Ask on the NixOS Discourse. 3. Ask on the #nixos channel on irc.freenode.net.
mnajib commented 3 years ago

still important to me

robintown commented 3 years ago

I am fairly certain that trackpoint drift is normal and inherent to how the pressure sensors calibrate themselves, not a software issue (certainly not specific to NixOS).

From Reddit:

The track point does constantly measure the force applied to it and if it is constant for a certain period the calibration is set to this force. But that means if you apply a constant force in one direction for a longer period, this is now the new normal and if you let go the curser moves in the opposite direction because now the force from your finger is gone. This is reset again after the same amount of time once no force is applied, which then stops the cursor.

Radvendii commented 3 years ago

Yeah, this has also not been an issue for me since I switch to a T430. I'm happy to close, though if @mnajib is still having this issue and has reason to believe it's nix-related it should maybe stay open. Does it happen if you run windows / another linux distro on the computer?

stale[bot] commented 3 years ago

I marked this as stale due to inactivity. → More info