Jump to content

New TouchPad driver for E6520 / ALPS


bpedman

Recommended Posts

Hi bpedman,

 

I tried the the v6 version, I've attached the log. Seems things go wrong here:

Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint EC Report: { 0x88, 0x07, 0x9d }
Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint: num nibble commands=1, expexted=1
Jul 10 09:25:28 --- last message repeated 3 times ---
Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint:: Error reading whether a trackstick is present or notexit command mode
Jul 10 09:25:08 localhost kernel[0]: probeTrackstick result: -536870198
Jul 10 09:25:08 localhost kernel[0]: IO error trying to probe for trackstick
Jul 10 09:25:08 localhost kernel[0]: exit command mode
Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint: Device initialization failed. Touchpad probably won't work

The kext tries to find a tracktick, but there is none present in the Latitude N5050. I was wondering the same thing when I posted the Linux log a few posts back. See the ubuntu log:

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="DualPoint Stick"
P: Phys=isa0060/serio1/input1
S: Sysfs=/devices/platform/i8042/serio1/input/input7
U: Uniq=
H: Handlers=mouse1 event7 
B: PROP=0
B: EV=7
B: KEY=70000 0 0 0 0
B: REL=3

Can't I disable the trackstick detection part in the kext somehow?

 

V6log.txt

 

Link to comment
Share on other sites

Hi bpedman,

 

I tried the the v6 version, I've attached the log. Seems things go wrong here:

Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint EC Report: { 0x88, 0x07, 0x9d }
Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint: num nibble commands=1, expexted=1
Jul 10 09:25:28 --- last message repeated 3 times ---
Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint:: Error reading whether a trackstick is present or notexit command mode
Jul 10 09:25:08 localhost kernel[0]: probeTrackstick result: -536870198
Jul 10 09:25:08 localhost kernel[0]: IO error trying to probe for trackstick
Jul 10 09:25:08 localhost kernel[0]: exit command mode
Jul 10 09:25:08 localhost kernel[0]: ApplePS2ALPSGlidePoint: Device initialization failed. Touchpad probably won't work

The kext tries to find a tracktick, but there is none present in the Latitude N5050. I was wondering the same thing when I posted the Linux log a few posts back. See the ubuntu log:

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="DualPoint Stick"
P: Phys=isa0060/serio1/input1
S: Sysfs=/devices/platform/i8042/serio1/input/input7
U: Uniq=
H: Handlers=mouse1 event7 
B: PROP=0
B: EV=7
B: KEY=70000 0 0 0 0
B: REL=3

Can't I disable the trackstick detection part in the kext somehow?

 

attachicon.gifV6log.txt

 

Well, there is a method which is supposed to safely detect whether the trackstick is present or not. It just reads a registry value and based on the registry value it will tell us whether or not the trackstick is present. The linux driver does the same exact thing.

 

Also, the reason that the linux driver says "DualPoint Stick" is because there is a flag that is set for this model (0x88 0x07 0x9d) and actually most all of the ALPS models, that says it is a dual point device. When setting the name of the device, if the flag is set it will set the name to DualPoint Stick....so it really doesn't have anything to do with whether there actually is a trackstick present or not.

 

I can ignore the error during detection but I am pretty sure you will run into problems right after the detection when it tries to read and set more register values. There is something not working right in the command mode when it is setting and reading the register values.

 

So there may or may not be a log message missing here. There should have been some error printed about why reading the register failed...looking at the code I can see 1 place where the error may have happened that I didn't have a log message. I updated the driver to add a log message there. Would you mind trying again just so I can verify that it is getting an error where I think it is? I have attached the file to this post. Sorry I missed that...it could also be that the system log is dropping some log messages because it spits them out too fast...hope thats not the case...booting in verbose mode may help if that is the case.

ALPS-TouchPad-Driver-v6.1.zip

Link to comment
Share on other sites

 Would you mind trying again just so I can verify that it is getting an error where I think it is? I have attached the file to this post. Sorry I missed that...it could also be that the system log is dropping some log messages because it spits them out too fast...hope thats not the case...booting in verbose mode may help if that is the case.

 

Just sent you a full boot cycle via PM. I've been booting verbose all the time since I started testing your kexts. I have a verbose flag enabled in org.chameleon.Boot.plist. so if there're messages missing they don't show up the system log

Link to comment
Share on other sites

OK, just added another update. I fixed up the refactoring I did in v6. It should now properly support those models that don't have a trackstick. The new driver is posted as v7 on the original post.

 

Thanks go to bjornw for helping me debug the issues with this and get it working!

Link to comment
Share on other sites

Thanks bpedman. Works great on inspiron 3420 with alps 73,2,64.

 

2 Fingers Scroll works but no inertial scroll and when scroll things down too fast it will move up a little instead off inertial scroll that move down a little

Side Scroll works great !!

Tap to click works

Drag lock works

2 Fingers click (right mouse click) works

Pinch to zoom not work

All 3 Fingers gesture not work but I found that when 3 fingers swipe up it sends keyboard command as command-up (i thinks it should be control-up) ,instead of getting to mission control, I have Enclosing Folder command when using Finder.

Link to comment
Share on other sites

V7 seems to work fine on my E6410 (ALPS Device with ID E7=0x73 0x02 0x64, EC=0x88 0x07 0x9d)

 

It does something weird with the trackpoint nub though... Any time you move the nub, half a second after you let go, the cursor will jump up and to the right about 20 pixels from where you left it.

 

I have no other PS2 kexts anywhere on my system. It does the same with both v5 and v7.

 

It's not just me either, Here's another report of the same thing happening with the same model laptop: https://osxlatitude.com/index.php?/topic/1695-e6410-mountain-lion-guide/?p=21282

 

Any idea why that happens? Also is it possible to use a different kext for the nub than the trackpad?

Link to comment
Share on other sites

I just updated from v5 to v7 and IT FINALLY WORKS. I'm using a Dell Inspiron n5110

 

I have the same bugs mentioned by "specific" in earlier posts.

 

 

Another bug is that too finger touch for secondary click is too strict making it difficult to use.

It requires the fingers to press at exactly the same time or else the pointer just jumps.

 

Thank you very much :D

 

EDIT:

After using this for a few days, I found that the most annoying bug is that the pointer jumps a few pixels when I lift my finger off the trackpad.

 

For example, when I move the pointer to the x button to close a window, then lift my finger to tap (click) the pointer jumps a few CMs away so the click happens on the wrong object on the screen.

Link to comment
Share on other sites

Hi bpedman,

 

Still happily scrolling all over the place. I've been experimenting with Mavericks a bit. The kext doesn't load on 10.9. Did you update the source on Github with the v7 version? As far as I can see it's not updated right? 

 

When I have the latest source code I'll try to recompile on Xcode 5 to see if it will run on Mavericks.

 

cheers

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...