Jump to content

ELAN, FocalTech and Synaptics (Smart Touchpad) Driver


EMlyDinEsH

Recommended Posts

I appreciate the author has done a lot of work on it but I would strongly recommend either the author makes it a commercial ware and spend sufficient time on it or make it open source and release the source so bugs and limitations can be quickly fixed without depending on one person's limitations and tendencies for feature creep without stabilizing what already exists.

 

The current situation is the worst of both worlds. One person keeping the source code and not having time to fix it.

 

There are far too many problems with this driver (while it works fine most of the time, it is very annoying to use as it keeps showing its problems).

 

1. The driver crashes and freezes 2-3 times a day requiring a reboot for a Elan v4 touchpad (the hardware is working just fine as the laptop is used for other operating systems). It seems to be related to some weird interaction between the settings (the virtual buttons and multi-touch while scrolling) that I cannot reproduce reliably but if properly instrumented could be isolated with help fro the community than depend on one busy person's time.

 

2. The tap is way to sensitive to function as a click even with all the settings. Even if the tap is disabled for a click, placing a finger on the virtual button and tapping still acts as a click. This is an example of bad interactions between multiple features that takes time to isolate and fix, not something a single individual with limited time can fix in any reasonable time (especially when they don't have access to different hardware).

 

3. Just changing some setting can make the kext crash on boot, again related to weird interactions between the different features. This is not isolated quickly except by the community working with source code or the developer working in it full time.

 

4. Keeping the source code closed violates licensing of open source code used as the basis for this kext. No one can really enforce this of course but it does make the developer seem less than honest. I can understand the developer hoping to make money via donations as long as possible by keeping control and source closed. Then make it commercial software without violating the open source licensing of code it is based on. The current situation is very dishonest. Many people have pointed this out. The dishonesty brings into question whether the source code can be trusted. Malware inside drivers have access to just about anything on the machine.

 

5. Sorry if the above seems harsh especially to those who may be using this driver successfully but they are only one step away from acquiring a new laptop or new hardware where it breaks and having to wait for the developer to find time.

 

No, I am not going to send you a Skype ID and participate in your beta tests. That is not a solution.

 

Thanks and shame in the same sentence!

Link to comment
Share on other sites

Here is another example of annoying unintended consequences with feature creep/poorly-tested interactions.

 

With my settings (where I have tried to turn off everything with multi-finger except 2f scrolling), if I slightly touch with two fingers and hold for a very tiny amount of time (not a click or tap), the driver sends some codes to the program that has focus. In Xcode for example, this results in the navigation window toggling (equivalent of Cmd-1/Cmd-0). So with inadvertent touches, my Xcode navigator window keeps opening and closing while working on it. 

 

It seems almost impossible to just have a simple trackpad with two virtual buttons that are completely dead except for clicks (and do not move the pointer) and allows 2f horizontal and vertical scrolling. Nothing more. Is that too much to ask without having to fight with settings for multi-fingers, rotations, inertial flings, sensitivity, palm rejection, etc, etc, etc?

 

Very un-mac like, in my opinion.

Link to comment
Share on other sites

But I absolutely disagree with the previous two members. If you have any problems with the kext you can help the author. But you have no rights to demand "give us everything, we will do better." The man tried and spend a lot of time, but you want to use ready-made solution. Go ahead and do it yourself, or buy the original Mac and don't whining here.

Get another kext or write your own.
Link to comment
Share on other sites

@aLEXXOid, you misunderstand what open source is. Open source community can always do better than a single time-constrained developer because it is more resources, testing, hardware, etc. Nothing to do with how talented or not a single author can be.

 

Second, it is not about getting a ready made solution as you stupidly suggest. A piece of software may not work for all or may have boundary conditions that affects some people. A single developer cannot devote time to fixing all of it especially things that affect a small number of cases although the aggregate of such problems may affect a large number of people. But a community can fix such small items and boundary cases much more efficiently for better software in the end. My first post here was a number of suggestions on how to make it better. But I understand the resource constraints of a single developer and don't expect all of it to happen but that is a problem with this closed source work.

 

Third, the author is violating the principle of open source software licensing by basing his kext on third party code and source code provided under open source license. Perhaps, your ethical framework does not see that as a problem but it is a problem for many and why links to this site may be discouraged at some sites.

 

I have no problem if the author did not violate any open source licenses and had a proprietary piece of software to do as he pleases. Then your comments would perhaps make sense. My post above gave that choice to the developer. People have been more than patient with the author's foot-dragging on open source to the point it now seems dishonest and misleading. I am even sympathetic to the author's need to be monetarily compensated for the work but it cannot be at the expense of others who have made open source software available. This is like the unethical developers that take open software and sell apps on App Store in violation of those licenses.

 

Good for you that you are enjoying the fruits of others that have followed the spirit of open source licensing that this work is partly based on and so don't feel the need to take a principled stand or have empathy for those for whom this does not work. But that is more about your selfish perspective than what my post was about.

Link to comment
Share on other sites

@All OpenSource fanatikers here!

 

1. Dinesh made this kext, almost from ground up (ported)

2. He investigated EXTREMELY MUCH WORK in it, i know it very good, because i was some time a tester for him... and i know exactly how long we needed to fix some bugs only...

3. Really, i don't want to make a big discussion here, but don't forget, dinesh does it for free, for us! 

4. If he don't release the source code, its alone his OWN thing! (for example, rehabman has released source code on github, for the voodoo-PS2-Controller, and who else codes with him... he does all the work alone...)

 

 

So stop discussion here, what dinesh need to do or not! Its his own work, his own time, his own thing what he do or not!

 

 

So all out here, using this kext:

 

SAY THANK YOU DINESH FOR ALL THE WORK!!!

AND DONT BLAME YOURSELF!

 

Without the work of Dinesh, without this kext, what are you going to do?

Yes!: Use a mouse, instead the ELAN Touchpad on your beautiful Asus laptop!

 

 

If you don't agree, its your own thing, but please don't start a discussion here...

 

And now, back to main bugs^^

 

Cheers :-)

 

 

 

 

 

 

 

------------------------------

@Dinesh

 

By the way^^

The driver gets almost bigger and bigger...

My v4.2 here have only 300KB.... (without resources)

v4.4.5 have now 349KB... (without resources)

 

Seems like you have much new code :-)

But its possible that you start to optimize your code a little bit, to make it smaller again?^^

I know there is alway the bug & stability factor, on big code changes, optimizations, etc...

But we can open an IRC Channel, for all beta testers here... to check all bugs out...

 

Maybe an idea, maybe not^^

 

Cheers :-)

Link to comment
Share on other sites

Hi, I have small problem... I'm on El capitan, and everything works perfect, I love my touchpad now! and I love you Bro! 
 
But I have problem with one thing when I type something on my keyboard, touchpad is not working, and it's okey, but when i click spacebar touchpad is turning on, and sometimes it click something... It's very irritating... If somebody know solution of this problem, please answer :)

 
I mean that, I would like that if I click spacebar, touchpad will stay turn off, like while typing on normal keys :)

Thanx a lot, because this kext is the best thing in my life!  :mrgreen:  :mrgreen:

Btw. I'm on Focaltech touchpad, kext v4.4.5 

Link to comment
Share on other sites

@All OpenSource fanatikers here!

 

1. Dinesh made this kext, almost from ground up (ported)

2. He investigated EXTREMELY MUCH WORK in it, i know it very good, because i was some time a tester for him... and i know exactly how long we needed to fix some bugs only...

3. Really, i don't want to make a big discussion here, but don't forget, dinesh does it for free, for us! 

4. If he don't release the source code, its alone his OWN thing! (for example, rehabman has released source code on github, for the voodoo-PS2-Controller, and who else codes with him... he does all the work alone...)

 

 

So stop discussion here, what dinesh need to do or not! Its his own work, his own time, his own thing what he do or not!

 

 

So all out here, using this kext:

 

SAY THANK YOU DINESH FOR ALL THE WORK!!!

AND DONT BLAME YOURSELF!

 

Without the work of Dinesh, without this kext, what are you going to do?

Yes!: Use a mouse, instead the ELAN Touchpad on your beautiful Asus laptop!

 

 

First, just to get it right:

 

1) Dines doesn't made this kext entirely "almost from ground". This is the old codebase what Apple released years ago. Just look here: https://github.com/EMlyDinEsHMG/ElanTouchpad-Driver/blob/master/ApplePS2Controller/ApplePS2Controller.cppDo you also see, what i see?

/*
 * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
 *
 * @APPLE_LICENSE_HEADER_START@
 *
 * The contents of this file constitute Original Code as defined in and
 * are subject to the Apple Public Source License Version 1.1 (the
 * "License").  You may not use this file except in compliance with the
 * License.  Please obtain a copy of the License at
 * http://www.apple.com/publicsource and read it before using this file.

....

Oh, and let see RehabMan's code: HERE. Umm... If it looks strange for you, then let me explain the situation:

 

- Apple released the PS2 code around 2000.

- The VooDoo project invested much time to implement many things and fix the bugs, and published the whole code.

- RehabMan took the source, and developed it further, and published the whole code.

- and then Dines took all the source, changed here-and-there (I'm not implying that it was easy!), and then published it in binary form, without sources, and after many question he published this 3 years old code.

 

2) I'm sure, he invested much work into the codebase, what he got from other nice peoples and from Apple. Let see, what this Apple Public Source License says about this:

(...)
If You Externally Deploy Your Modifications, You must make Source Code of all Your Externally Deployed Modifications either available to those to whom You have Externally Deployed Your Modifications, or publicly available.
(...)

If you using this code in your project, you need to publish the modified code. Easy.

 

3) There are plenty OSX86 developer, who doing the same, for example the VooDoo team.

 

4) Nope. It is not his OWN thing. He used the Apple codebase, the VooDoo codebase, and i think some changes from RehabMan too. He also need to follow the Apple license.

 

And no, please, don't tell me, that i need to say thank you for Dinesh. Just look at the Clover project, many people working together to eliminate the bugs really fast, to implement the new ideas, technologies and bugfixes. I'm really appreciate this work.

Dines, even though working pretty hard, just squashing the bugs alone, if he becomes ill or something the users are sucked. He don't need to be martyr or something, he can just open the code, there will be many people, who can help at the development, so he doesn't need to be awake all night long. But he don't doing that. Because money.

 

So tl,dr: he took the open source code, changed, doesn't released the modified code (what he need, actually), and doing money with work of other guys. You know, for me it looks dirty.

 

And you asked, what would we do without this kext? We would redo everything, what Dines made, but with open source. Nobody did that yet, because it is pointless to do the same development again, and this is, why i wrote this wall of text: Dines is intelligent enough to know this, and he knows really well, that Apple doesn't want to do anything with the PS2 code, so he don't need to fear from the lawyers. And he know, that there will be always some guys, like you, Ramalama, who will fight for him in the forums. So he won. I hope, that it makes you feel happy.

 

But, you know, it is a bit disappointing.

 

####

 

Please, let me know, if i misunderstood something. 

 

Best regards,

miqlas

Link to comment
Share on other sites

i fight for him, because he spend the last 3-4years extremely much time in it, and provide the kext here free for everyone...

No one paid here to get the kext, and a donation is a completely different thing for a developer...

 

Now there comes some new people, that spend nothing for the community, that did nothing at all,

and write, that a developer, that spend 3-4years of hard work need to release the source code...

 

Really i don't understand the world anymore...

All i can say to such people like you, that don't know at all what respect is,

And I'm really sorry that i write this now, never happen before on any forum:

"go and **** yourself!!!"

 

I don't know any other words for such respectless people!

 

You don't need to say, its a waste of time to redo the kext...

Really, if you are not agree here, you can always go and make a open source kext!

And its never to late or a waste of time, to do that!

 

On Dinesh's place, i would not release any updates anymore and delete the kexts from this forum, and any other forum!

 

Just that people like you, can go ahead and make your own OpenSource kext!

 

And i really hope, that you will be happy, that you had success, that a developer never release anymore a kext, because of you!

 

Good Bye, I'm off here!

Have enough of this respectless Guys here!

Link to comment
Share on other sites

You know what?

 

Im sorry for my harsh before, but

 

If you were RehabMan, Slice, Piker, Toleda, TimeWalker, dmazar, apianti, CodeRush, etc...

One of the big heads here, that spend much time for the community, it were a complete different thing...

 

We would discuss here, like normal people discusses...

All this guys have a big respect for what they did and for the time they spend...

 

 

But you are a "NO One", that writes what a developer need to do!

And another NO One like me (and I'm sure, i spend really much more time as you for the community), need to fight for Dinesh...

 

And now I'm off here...

Bye.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...