Git Product home page Git Product logo

psmouse-dkms-alpsv7's Introduction

DISCLAIMER

Use this software at your OWN risk. It is possible that under different OS/system configurations, or with different hardware parts and laptop models, this software can permanently damage your hardware. Always prefer original manufacturer's software (e.g. download from official Lenovo/Dell etc. website) unless you really know what you are doing, and you are willing to take the risk and try new experimental features.

UPDATE

This is a backported (from kernel 4.0) version of the psmouse kernel module, with support for ALPSv7 touchpads. With this patched module, users can drive Thinkpad 14 (and potentially T440/T440s/T440p/T/W540) using the new touchpad of Lenovo which brought back the physical buttons. ALPS passthrough is now working.

Under the 'configX11' folder, you can find the files which you need to add under your system's '/etc/X11/xorg.conf.d' path. First use 'xinput list' to double-check that the 'MatchProduct' string in the X11 configuration files, matches the name of the detected (by your system) input devices.

UPDATE 2

(April 2015) With Linux Kernel 4.0 there is naitive support for trackpoint (including scrooling ect) and touchpad (including multitouch): https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=b314acaccd7e0d55314d96be4a33b5f50d0b3344 Arch users can build and boot the linux-mainline PKGBUILD from AUR: https://bbs.archlinux.org/viewtopic.php?pid=1517933#p1517933

psmouse-dkms-alpsv7

QUICK START

๐Ÿ“ข Make sure you have dkms and linux-headers installed in your system: ๐Ÿ“ข

    sudo pacman -S dkms linux-headers            #for archlinux
    sudo apt-get install dkms linux-headers-$(uname -r)  #for ubuntu/debian

Run the following commands in your shell as root:

    cd /tmp
    git clone http://github.com/he1per/psmouse-dkms-alpsv7
    cd psmouse-dkms-alpsv7
    sudo ./install.sh

This will build and install the updated psmouse module for your current kernel.

INTRODUCTION

Some new machines, like the Lenovo Ideapad Flex 15 have a new ALPS touchpad which uses a protocol different from previous versions. The linux kernel (as of 3.13) does not recognize them as an ALPS touchpad, and they end up being recognized only as a PS/2 mouse. For this reason there is no scrolling, no middle button emulation, no two finger recognition, etc.

The folks at the linux kernel input devices mailing list were very helpful and pointed me to the right patches, I have simply gathered them together and added a dkms.conf file to make it easier to build. This page (https://github.com/he1per/psmouse-dkms-alpsv7) explains how you install and build the module.

Thanks specially to Tommy Will from the [email protected] mailing list and to Elaine (Qiting) who actually wrote the code :) The original patch from Elaine is found here:

http://www.spinics.net/lists/linux-input/msg29084.html

DO I NEED THIS MODULE?

If you get an error like this from dmesg:

psmouse serio1: alps: Unknown ALPS touchpad: E7=73 03 0a, EC=88 b6 06

then you need this module. Your touchpad will be recognized after you install it.

If you have a Toshiba Z30-A, you need to update to kernel 3.17 and you won't need this patch.

BUILDING and INSTALLING

Pre-requisites:

  • dkms:

     pacman -S dkms   #will install dkms in archlinux based distros
                      #use apt-get install dkms in debian or rpm 
                      # in redhat distros
  • linux headers will be installed as a dependency if you use any of the commands above.

Manual build and install of psmouse.ko

It is better to use install.sh, but if you want to build and install manually you can follow these instructions.

As root do the following from the directory where this README is found: (all this is done automatically by the install.sh script)

    dkms add .  
    dkms build -m psmouse-dkms-alpsv7 -v 1.1  
    dkms install -m psmouse-dkms-alpsv7 -v 1.1  
    modprobe psmouse

psmouse-dkms-alpsv7's People

Contributors

rm-hull avatar dimosped avatar makova avatar he1per avatar andree182 avatar cpitclaudel avatar vmx avatar hyslion avatar maces avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.