Page 6 of 8 FirstFirst ... 45678 LastLast
Results 51 to 60 of 73

Thread: Macbook touchpad cursor moving "in steps"

  1. #51
    Join Date
    Jan 2012
    Beans
    60

    Re: Macbook touchpad cursor moving "in steps"

    Summary question: Is there a way to download old .ko files from ubuntu somehow? I know you can find at old packages, but I can't see to find old drivers? Is there a way to find/download an older version of appletouch.ko from a previous ubuntu version?


    Basically, I'm wondering if an older version of appletouch might work (at least for my system).

    I haven't looked that deeply into it, but a first thought is that it considers subtle movements to be noise. If I can lower the threshold for that, it might work a little better.

    I tried compiling the driver, but I haven't had success yet... so I am not yet able to tweak the source code (working on it).

    A thought I had was that maybe an older version of the driver addressed this setting, and the newer version simply fixed a problem for someone else's touchpad (while reducing the sensitivity on others).

  2. #52
    Join Date
    Jan 2012
    Beans
    60

    Re: Macbook touchpad cursor moving "in steps"

    Okay, just changing a couple of things in appletouch.c improves cursor movement


    Two variables (and their default values):

    #define ATP_FUZZ 16

    #define ATP_THRESHOLD 5


    When I changed the values to:

    #define ATP_FUZZ 0

    #define ATP_THRESHOLD 3


    It now behaviors better. Here are some things I drew in mtpaint. The first in each pair is with default appletouch, the second in each pair is after the above tweak. There is an improvement, however, it seems appletouch is still trying to correct my movements a little. Sometimes it doesn't register small movements (sometimes the cursor doesn't move when starting slowly), and sometimes it still has a subtle "stair" like effect when moving diagonally. Your own trackpad might need different settings. (And there is some more tweaking I'd like to do on the driver to stop it from ignoring some of my finger movements)

    Spiral pre-tweak:


    Spiral after tweak:



    Scribbles pre-tweak:


    Scribbles after-tweak:

  3. #53
    Join Date
    Jan 2012
    Beans
    60

    Re: Macbook touchpad cursor moving "in steps"

    And actually... I want to point out that the touchpad behaves this way in Mac OS X, too..... (see images below)

    It seems that Apple's solution to this issue was to simply turn the sensitivity way down. The images below were generated with similar-sized finger movements as the ones in my previous post, but notice how much smaller the spiral is (drawn at the same slow speed as above). And notice the subtle "stair" like effect during diagonal movements. Apple seems to have just slowed the cursor movement down more on slow touchpad gestures to reduce the appearance of the "step" effect.

    Also, one other thing stuck out: The mac os x cursor seems to lag behind the touchpad gestures. I'm guessing that Apple's driver has a bit of a delay in order to calculate the average of the movements that just took place before applying them to the screen (to cancel out weird jumping, as sometimes seen with the appletouch driver).


    Slow diagonal down the touchpad, drawn in Mac OS X. Notice the subtle "stair" like effect:



    Spiral drawn in Mac OS X:



    Back to linux:

    If I disable multitouch reporting in the driver, I am able to set the ATP_THRESHOLD to 1, (otherwise it reports single-finger gestures as multi-finger). With ATP_THRESHOLD set to 1, I see more accurate touchpad results. However, the cursor jumps around occasionally. I wonder how difficult it would be to program in a delay to calculate smoother movement with a lower threshold (or if there is some tool/driver/synaptics setting out there that already does this?).

    .
    Last edited by gwjvan; May 16th, 2012 at 03:24 AM.

  4. #54
    Join Date
    May 2012
    Beans
    5

    Re: Macbook touchpad cursor moving "in steps"

    How do I make these changes to appletouch.c ?

    Thanks

  5. #55
    Join Date
    Jan 2012
    Beans
    60

    Re: Macbook touchpad cursor moving "in steps"

    If the following information doesn't make sense, or you run into trouble, I'll be posting a more detailed post later. Basically, you'll have to compile the driver yourself. Short version:

    You will need to get the newest appletouch.c from the kernel tree on kernel.ubuntu.com:
    drivers > input > mouse > appletouch.c

    I used the Makefile from appletouch-0.08.tar.bz2 at the bottom of the page of:
    http://www.popies.net/atp/
    (maybe not necessary to use this specific Makefile, but it is the way I got appletouch compiling to work)


    There were roadblocks I ran into when trying to compile the driver. I wrote some of them in a text file for reference, and didn't log others. I'm interested in (maybe?) submitting changes to this driver. I'm going to reinstall ubuntu so I can start fresh and log what I did.


    EDIT: I originally had kernel.org as the place to get appletouch.c, however, that doesn't work. I needed the source file from Ubuntu Precise (you'll need to match your own version)
    Last edited by gwjvan; May 27th, 2012 at 08:52 PM.

  6. #56
    Join Date
    Jan 2012
    Beans
    60

    Re: Macbook touchpad cursor moving "in steps"

    Here is what I did to compile and make appletouch functional. I'm still learning, so if there is a better way to do any of this, please feel free to correct me. Also, there is more tweaking I'd like to do, but these are the basic instructions for you to be able to experiment. According to appletouch.c, appletouch applies to the following Mac laptops:
    /* PowerBooks Feb 2005, iBooks G4 */
    /* PowerBooks Oct 2005 */
    /* Core Duo MacBook & MacBook Pro */
    /* Core2 Duo MacBook & MacBook Pro */
    /* Core2 Duo MacBook3,1 */
    Summary: Use the original appletouch make file (from the authors), with the newest appletouch.c (from the kernel tree), changing a few values.



    1. Get the Makefile. Download the most recent appletouch package from:The most recent one I see today is appletouch-0.08.tar.bz2. It is outdated, but I'm only using the Makefile from this. I'm going to extract "Makefile" to ~/appletouch/ for this example.



    2. Download the appletouch.c from the kernel tree (kernel.ubuntu.com/git) which matches your kernel version. In my case, I'm downloading from the Precise tree:
    kernel.ubuntu.com/git --> projects (top link) --> ubuntu/ubuntu-precise.git > tree (upper left hand link) > drivers > input > mouse > appletouch.c : raw

    Direct link to appletouch.c's directory in Precise's tree, as of today (If you have a different kernel, or this link doesn't work, you'll need to find it manually):From here, click the "raw" link to the right of "appletouch.c" to download the raw file. Put this file into ~/appletouch/

    Ubuntu seems to have named the raw file "drivers_input_mouse_appletouch.c". If yours downloads with that filename, rename it to "appletouch.c"



    3. We should now have the directory ~/appletouch with the following 2 files in it:
    appletouch.c (from the kernel tree)
    Makefile (from the appletouch website)
    4. Install kernel headers (if you don't already have them installed):
    sudo apt-get install Linux-headers-$(uname -r)
    5. Modify appletouch.c with new sensitivity values. In my case (PowerBook5,8 ) I changed:
    #define ATP_FUZZ 16

    #define ATP_THRESHOLD 5
    to
    #define ATP_FUZZ 0

    #define ATP_THRESHOLD 3
    6. Compile appletouch.c. Open up a terminal and run the following commands:
    cd ~/appletouch
    make
    7. Disable current appletouch (with rmmod) and test your new appletouch driver (with insmod) to see if the settings work:
    sudo rmmod appletouch
    sudo insmod appletouch.ko
    8. If you are not satisfied with the touchpad behavior, go back to step 5 and adjust settings.
    If you want to go back to default appletouch in the mean time (if your new settings are unusable, for example), you can unload your new driver, and insert the original with:
    sudo rmmod appletouch
    sudo modprobe appletouch
    9. If this works for your machine, backup your original appletouch driver:
    sudo mv /lib/modules/$(uname -r)/kernel/drivers/input/mouse/appletouch.ko /lib/modules/$(uname -r)/kernel/drivers/input/mouse/appletouch_OLD.ko
    10. Make the new driver the default appletouch driver by copying it to the drivers directory:
    sudo cp appletouch.ko /lib/modules/$(uname -r)/kernel/drivers/input/mouse/appletouch.ko
    Last edited by gwjvan; May 27th, 2012 at 09:38 PM.

  7. #57
    Join Date
    May 2012
    Beans
    1

    Re: Macbook touchpad cursor moving "in steps"

    If you are running a macbook pro 3.1 I advise everyone to do the same as gwjvan and do the following:
    Add:
    synclient FingerLow=1; synclient FingerHigh=10

    to the startup (test this out in the terminal, other values might work better for you)

    It gave me a very accurate tracking


    @gwjvan Thank you so much for this, I just installed Ubuntu 12.04 and was just about to uninstall it because of the trackpad, i hate things that don't go the way they are supposed to work. Now my trackpad feels natural and I have the great benefits of running a linux machine
    Last edited by JROxid; May 31st, 2012 at 01:44 PM.

  8. #58
    Join Date
    Jan 2012
    Beans
    60

    Re: Macbook touchpad cursor moving "in steps"

    I'm glad it worked for you

    Yeah, it is frustrating when basic stuff doesn't work right

  9. #59
    Join Date
    Jun 2012
    Beans
    1

    Re: Macbook touchpad cursor moving "in steps"

    Great instructions gwjvan and JROxid! They are straightforward and readable and, more importantly, effective at making the touchpad and courser feel definitely more like they did under OS X. However, after doing all this, my two finger scrolling is more elastic. That is, when I push my two fingers along the touchpad, say to scroll up, sometimes what I'm looking at (e.g. Chromium page, emacs, PCManFM) scrolls down when I touch the pad and other times down when I take my fingers off the pad. Had any experience with this?


    Setup

    Ubuntu 12.04 LTS: 3.2.0-24-generic-pae #39-Ubuntu SMP Mon May 21 18:54:21 UTC 2012 i686 i686 i386 GNU/Linux

    appletouch.c found under http://kernel.ubuntu.com/git?p=ubunt...tu-3.2.0-24.39

    Macbook1,1
    Last edited by onceler; June 2nd, 2012 at 06:49 AM.

  10. #60
    Join Date
    Jan 2012
    Beans
    60

    Re: Macbook touchpad cursor moving "in steps"

    Quote Originally Posted by onceler View Post
    Great instructions gwjvan and JROxid! They are straightforward and readable and, more importantly, effective at making the touchpad and courser feel definitely more like they did under OS X. However, after doing all this, my two finger scrolling is more elastic. That is, when I push my two fingers along the touchpad, say to scroll up, sometimes what I'm looking at (e.g. Chromium page, emacs, PCManFM) scrolls down when I touch the pad and other times down when I take my fingers off the pad. Had any experience with this?

    It is doing that for me as well. I don't know how to fix that. Could be a synaptics setting? Or it might be the driver itself, when it switches from multitouch reporting to single touch reporting.


    Also, it seems when the kernel is updated from software updates, the appletouch driver is reset, and step 10 above needs to be done again to get the new driver. (It has done this a couple of times since I wrote the steps above)

Page 6 of 8 FirstFirst ... 45678 LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •