Jump to content

[SOLVED] Elan PS/2 Touchpad Driver for XP


Dave-H

Recommended Posts

One other really strange thing is that ETDSimpleUI.exe does change the "Tap_One_Finger_Enable" setting, even though it's a much older (and more basic) control panel than the Asus one!

I will play with those other settings and see if they change the behaviour.
:)

Link to comment
Share on other sites


7 minutes ago, Dave-H said:

One other really strange thing is that ETDSimpleUI.exe does change the "Tap_One_Finger_Enable" setting, even though it's a much older (and more basic) control panel than the Asus one!

I will play with those other settings and see if they change the behaviour.
:)

Well, you make it sound like it was from before the war :w00t:.

ETDSimpleUI.exe dated 08/10/2012 version 10.0.0.31 in an archive with ETD.sys version 10.0.0.197

Asus_UI.exe dated 03/01/2013 version 10.0.0.26 in an archive with ETD.sys version 11.0.0.6

(and both used with an actual ETD.sys dated 05/03/2013 version 11.0.0.31

Everything is within a 6 months period.

jaclaz

Link to comment
Share on other sites

OK, fair enough! :D

I guess I just assumed it was older than the Asus Smart Gesture control panels because it looks a lot more basic and primitive and it's included only in the driver with the lowest version number by quite some way (4.9.0.0). Of course as we've seen the stated driver version numbers don't seem to mean a lot anyway!

:)

 

Edited by Dave-H
Typo
Link to comment
Share on other sites

Hi Jaclaz, sorry for the delay again, but I have good news!

It seems that by setting the registry entry to "0" the Elan control panel then does work properly, and the settings are being changed by it.
I think my mistake before was not rebooting after changing the settings. I assumed as the cosmetic changes were there just by changing the settings, that was it.
Obviously not!
The only setting on the control panel which still doesn't seem to do anything is the "Button Setting" option, which still doesn't seem to change anything, but I'm not worried about that, I can't imagine I'd ever want to turn off the touchpad buttons or change their functions!

So, what I have now is a driver with looks like an Elan one, in that it's an Elan icon in the system tray.
Doubly clicking that produces the mouse properties, and then clicking "Options" launches the Elan full control panel to change the settings.
That's exactly how some of the Elan drivers were when installed and used normally on Windows 8.1.

It's all fine with only seven files in the Elantech folder, all from driver version 11.4.14.1.
So, as long as the INF is as optimised as it can be, are we there?
:dubbio:

Link to comment
Share on other sites

20 minutes ago, Dave-H said:

It's all fine with only seven files in the Elantech folder, all from driver version 11.4.14.1.

Good. :)

We can then remove, besides the unused "control panel" files also  the stupid .avi files.

20 minutes ago, Dave-H said:

So, as long as the INF is as optimised as it can be, are we there?

Yep, almost.

22 minutes ago, Dave-H said:

It seems that by setting the registry entry to "0" the Elan control panel then does work properly, and the settings are being changed by it.
I think my mistake before was not rebooting after changing the settings. I assumed as the cosmetic changes were there just by changing the settings, that was it.
Obviously not!

But WHICH Registry entry?

ONLY the UI_ThemeOption?

I.e. do you have now:
CustomerDefinition=5
UI_ThemeOption=0

:dubbio:

If yes, try setting to 0 also the CustomerDefinition (only to see if it actually changes something).

 

As a side note I suspect that a reboot is not needed, but stopping (Task Manager) and re-starting ETDCtrl.exe should do the same.

 

And - in order to make a (hopefully) final ETD_XP.inf we need to take a standing in favour (or against) attmpting removing:

1) anything that  is not "ETD_STD_Inst" <- this should make it (hopefully) functional (at least installable) for ETD 000,101-102,105-109,10A-114
2) anything related to pointstick
3) the [ETD_APOptimize.AddReg] section (whole (3a) or leaving some "key" entries, like Normal Desktop and Windows Explorer (3b))
4) the [ETD_GestureAPHotKey.AddReg] (whole (4a) or leaving some "key" entries, like Desktop and Windows Explorer (4b) )

Personally I propend for 1/2/3b/4b.

jaclaz

 

 

 

Link to comment
Share on other sites

Sorry, it's only the "UI_Theme" setting I've changed.

Setting the "CustomerDefinition" setting to "0" doesn't seem to alter anything, but I guess it should now be set to "0" as we're working with the default Elan branding.

Would it be possible to get your Windows Control Panel icon to now bring up the Elan control panel do you think?
There is no executable to directly run from it now.
I've tried <rundll32.exe "D:\Program Files\Elantech\ETDMcpl.dll"> and that doesn't work.
:dubbio:

Link to comment
Share on other sites

57 minutes ago, Dave-H said:

Would it be possible to get your Windows Control Panel icon to now bring up the Elan control panel do you think?
There is no executable to directly run from it now.
 

I don't know. :wacko:

The original .inf settings are for a .exe (Asus_UI.exe or ETDSimple_UI.exe).

Try tracing with Filemon what happens in 3) :
1) open the mouse control panel
2) choose the "Elan" tab
3) click on the "Options" button

Maybe a parameter is passed to the .dll?

jaclaz

Link to comment
Share on other sites

Here's the Filemon log for the operation of pressing the "Options" button on the Mouse Properties tab.

As you can see it appears to be looking for the control panel executables, and when it can't find any of them it presumably defaults to its own internal control panel.

How to replicate that with a command though?

One workaround would be to include ETDAniConf.exe in the installation. That is a file in 11.4.14.1 so doesn't complicate things too much.
When that is run, it launches the simpler Elan control panel, so that could easily be run from the Windows Control Panel icon, when in the Elantech folder it also now runs that interface when the system tray icon is double clicked, instead of launching the Mouse Properties.
I'm not sure that's ideal though.
:dubbio:

Filemon.Log

Link to comment
Share on other sites

32 minutes ago, Dave-H said:

Here's the Filemon log for the operation of pressing the "Options" button on the Mouse Properties tab.

As you can see it appears to be looking for the control panel executables, and when it can't find any of them it presumably defaults to its own internal control panel.

How to replicate that with a command though?

One workaround would be to include ETDAniConf.exe in the installation. That is a file in 11.4.14.1 so doesn't complicate things too much.
When that is run, it launches the simpler Elan control panel, so that could easily be run from the Windows Control Panel icon, when in the Elantech folder it also now runs that interface when the system tray icon is double clicked, instead of launching the Mouse Properties.
I'm not sure that's ideal though.
:dubbio:

Filemon.Log 2.92 kB · 0 downloads

NO ideas.

But I think we have determined that ETDAniconf.exe sucks (and sucks big) and that what we really want is the "built-in" "complex" control panel in ETDmcpl.dll, and all in all I find natural enough that clicking on the tray Icon brings up the Mouse Control Panel and from its "Elan" tab, pressing the Options brings up the settings.

It is two or three clicks more, but it isn't that bad IMHO.

The {3EA22083-D5BF-411b-A6D6-A27541794266} Control Panel namespace could be managed by a separate .inf or ,reg that might be useful to those that want to use either the Asus_UI.exe (BTW have you noticed how in the filemon log *every* .exe is looked for BUT the Asus_UI.exe) or the ETDSimpleUI.exe (or *whatever*).

From what I understand, one could (optionally) add to the Elantech directory *any* of:

Asus_UI.exe
ETDAniConf.exe
Lenovo.exe
DellTpad.exe
ETDSimpleUI.exe
ToshibaTp.exe

renamed to - say - ElanCPL.exe and import the .inf or .reg (pointing to the new name) to have one of them as an alternative (via the Cotrol Panel icon), not as a replacement, of the ETDmcpl.dll "complex" settings (best of both worlds).

jaclaz 

Edited by jaclaz
Link to comment
Share on other sites

Well if we're going to add any files from outside the 11.4.14.1 driver, how about just adding ETDUI.cpl to the Elantech folder?
The last version we have seems to be version 10.0.0.64, from driver version 11.5.4.2.
Then running <rundll32.exe shell32.dll,Control_RunDLL "%ProgramFiles%\Elantech\ETDUI.cpl"> launches it from the Windows Control Panel icon.
It may not be exactly the same control panel as is being launched by the Mouse Properties tab Options button, but it certainly looks like it, and it does work!
:)
It is just a nicety, as you say, it's not strictly needed as the control panel access seems to be intended to be via the Mouse Properties with many of the drivers anyway.
Only some of the early drivers had icons for their control panels in the Windows Control Panel

Edited by Dave-H
Addition
Link to comment
Share on other sites

13 hours ago, Dave-H said:

Well if we're going to add any files from outside the 11.4.14.1 driver, how about just adding ETDUI.cpl to the Elantech folder?
The last version we have seems to be version 10.0.0.64, from driver version 11.5.4.2.
Then running <rundll32.exe shell32.dll,Control_RunDLL "%ProgramFiles%\Elantech\ETDUI.cpl"> launches it from the Windows Control Panel icon.
It may not be exactly the same control panel as is being launched by the Mouse Properties tab Options button, but it certainly looks like it, and it does work!
:)
It is just a nicety, as you say, it's not strictly needed as the control panel access seems to be intended to be via the Mouse Properties with many of the drivers anyway.
Only some of the early drivers had icons for their control panels in the Windows Control Panel

Yep :), that could be a good alternative, and - like the one above - could be an option, for the people that are not satisfied by the "standard"with ONLY files from 11.4.14.1. 

Summing it up:

1) new "base" ETD.inf that installs (hopefully) a working driver from 11.4.14.1 ONLY
2) optional .inf's that adds (hopefully) any among these (renamed to OEMElan.exe):
Asus_UI.exe -> Asus_UI.inf
ETDAniConf.exe -> ETDAniConf.inf
Lenovo.exe -> Lenovo.inf
DellTpad.exe -> DellTpad.exe
ETDSimpleUI.exe ->ETDSimpleUI.exe
ToshibaTp.exe ->ToshibaTp.inf
and makes the added Control Panel item to launch it (basically it is several copies of the same inf with just the name of the .exe changed AND the relative .avi's [1])
3) optional ETDUI.inf that adds (hopefully) ETDUI.cpl and and makes the added Control Panel item to launch it

Back to work, what about:

18 hours ago, jaclaz said:

And - in order to make a (hopefully) final ETD_XP.inf we need to take a standing in favour (or against) attmpting removing:

1) anything that  is not "ETD_STD_Inst" <- this should make it (hopefully) functional (at least installable) for ETD 000,101-102,105-109,10A-114
2) anything related to pointstick
3) the [ETD_APOptimize.AddReg] section (whole (3a) or leaving some "key" entries, like Normal Desktop and Windows Explorer (3b))
4) the [ETD_GestureAPHotKey.AddReg] (whole (4a) or leaving some "key" entries, like Desktop and Windows Explorer (4b) )

Personally I propend for 1/2/3b/4b.

jaclaz

 

[1] this (finding which .avi "belongs" to which .exe) might be the most work, I managed (somehow) to have the ETDSimpleUI.exe run on my machine, and I already found that in the ETD_XP.inf three needed .avi's are missing (Edge_Scroll.avi, Edge_inertial.avi and Scroll_No_FreeScroll.avi), so (hopefully) the "final" list for ETDSimpleUI.exe is:
 

Button_ClickPad.avi
DnD01.avi
DnD02.avi
DnD03.avi
Edge_inertial.avi
Edge_Scroll.avi
Rotation_Twist.avi
Scroll_Inertial.avi
Scroll_No_FreeScroll.avi
Swipe_3F_Down_SwitchWnd.avi
Swipe_3F_LR_PageupDown.avi
Swipe_3F_Up_Computer.avi
Tapping_1F.avi
Tapping_2F_Middle_Button.avi
Tapping_2F_Popup.avi
Zooming.avi

The list for Asus_UI.exe should be the one in the ETD.inf from Z11566 (since that is the 10.0.26 version that "works best" for you (no files in common with the above):

1F_Activate.avi
1F_Drag.avi
1F_Tap.avi
2F_Popup.avi
2F_Rotation.avi
2F_Scroll.avi
2F_Zoom.avi
3F_ReturnDesktop.avi
3F_SwitchPage.avi
3F_SwitchWnd.avi
1F_appbar_top.avi
1F_appbar_down.avi
1F_charmbar.avi
1F_changepage.avi
1F_applist.avi
1F_snapview.avi
3F_Changepage_tab.avi
2F_Zoom_all.avi

The list for Lenovo.exe should be the one in the ETD.inf from tp118w7, but there are overlaps. :dubbio:
 

 

 

 

Link to comment
Share on other sites

Personally I wouldn't bother with any control panels that use AVI demonstration videos.

ETDSimpleUI.exe seems to be the only one where they work on XP anyway, I have never seen them work with Asus_UI.exe, even when they're all present in the Elantech folder.

DellTpad.exe doesn't display properly in 120dpi scaling mode, which makes it useless for me anyway.

Lenovo.exe and ToshibaTp.exe don't seem to give any control over the "tap to click" function, so are also useless as far as I'm concerned!

The default Elan control panel is absolutely fine, no videos, works fine at 120dpi, looks good, and seems to cover everything.
The only anomaly with it is that the button options, to disable them or change their functions, doesn't seem to work.
That is puzzling, but not a problem as far as I'm concerned (it doesn't work on the "simpler" version either BTW).

I agree with your "INF pruning" suggestions.

:)

 

Link to comment
Share on other sites

51 minutes ago, Dave-H said:

Personally I wouldn't bother with any control panels that use AVI demonstration videos.

ETDSimpleUI.exe seems to be the only one where they work on XP anyway, I have never seen them work with Asus_UI.exe, even when they're all present in the Elantech folder.

DellTpad.exe doesn't display properly in 120dpi scaling mode, which makes it useless for me anyway.

Lenovo.exe and ToshibaTp.exe don't seem to give any control over the "tap to click" function, so are also useless as far as I'm concerned!

The default Elan control panel is absolutely fine, no videos, works fine at 120dpi, looks good, and seems to cover everything.
The only anomaly with it is that the button options, to disable them or change their functions, doesn't seem to work.
That is puzzling, but not a problem as far as I'm concerned (it doesn't work on the "simpler" version either BTW).

I agree with your "INF pruning" suggestions.

:)

 

Ok.

Attached ETD_XP2.inf (70 KB, slightly smaller than the original 1940 or so ;))

I set it to:
DriverDate        = "03/05/2013"
DriverVersion        = "11.0.0.31"

to reflect the actual data of the used ETD.sys.

ETD_XP2.inf , renamed to ETD.inf and copied to the expanded 

\tp118w7\{app}\Elantech\11.4.14.1\X86\

thus replacing the existing ETD.inf, should install fine the "basic" driver and functions. :dubbio:

Try it after having cleaned/checked the Registry (just in case of leftovers from previous tests).

See if it works. :unsure:

I concur that the only "pretty" control panel that makes sense is the ETDSimpleUI.exe, I will make a separate .inf (that of course will need the ETDSimpleUI.exe file from the Samsung driver, as - seemingly - all the .avi's used by ETDSimpleUI.exe are already in the 11.14.4.1).

jaclaz

ETD_XP_2.zip

Link to comment
Share on other sites

I substituted your new INF for the previous one in the "ETD_new" folder where I had been installing from before, and it works!

:thumbup

The only file I had to add to the folder because it couldn't find it the first time was ETDMcpl.dll, which wasn't originally included.

One thing I have noticed, which I mentioned in passsing before ages ago, is that the uninstallation routine does not remove ETD.sys from the System32\Drivers folder, and I've since found that it doesn't remove the "ETD" service entry from HKLM\System\CurrentControlSet\Services in the registry either.
This appears to be the same with all the drivers I've experimented with, and it would be nice to fix it!

:yes:

Link to comment
Share on other sites

12 hours ago, Dave-H said:

I substituted your new INF for the previous one in the "ETD_new" folder where I had been installing from before, and it works!

:thumbup

 

Good. :)

12 hours ago, Dave-H said:

The only file I had to add to the folder because it couldn't find it the first time was ETDMcpl.dll, which wasn't originally included.

But the file is in the actual "untouched" \tp118w7\{app}\Elantech\11.4.14.1\X86\, right?
It was missing in your "frankendriver" folder only because of all the various tests.

12 hours ago, Dave-H said:

One thing I have noticed, which I mentioned in passsing before ages ago, is that the uninstallation routine does not remove ETD.sys from the System32\Drivers folder, and I've since found that it doesn't remove the "ETD" service entry from HKLM\System\CurrentControlSet\Services in the registry either.
This appears to be the same with all the drivers I've experimented with, and it would be nice to fix it!

:yes:

Yep, and - additionally - it leaves the \Program Files\Elantech folder untouched AFAICT (and also the .HKLM\System\CurrentControlSet\Control entries :dubbio:)

The issue might be how the ETD_Uninst.exe behaves, i.e. if it executes the  commands in:

Quote

;----------------------------------------------------------------------------
; Entry point for Uninstallation.
; This section is executed as part of Uninstallation.
;----------------------------------------------------------------------------

[Uninstall]
CopyFiles = No_Files
DelFiles = No_Files
DelReg = Uninstall_DelReg

[No_Files]

;----------------------------------------------------------------------------
; Uninstall Section
;----------------------------------------------------------------------------

[Uninstall_DelReg]
HKLM,Software\Microsoft\Windows\CurrentVersion\Uninstall\Elantech
HKCR,CLSID\{0066D4B3-8DE0-4D08-AA83-EDD50E2431F0}
HKLM,"Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved",{0066D4B3-8DE0-4D08-AA83-EDD50E2431F0}
HKLM,"Software\Microsoft\Windows\CurrentVersion\Controls Folder\Mouse\shellex\PropertySheetHandlers\ETD"
HKLM,"Software\Microsoft\Windows\CurrentVersion\Run",ETDCtrl
HKLM,%ServiceRoot%\Elantech
HKCU,Software\Elantech

before or after:
1) having stopped or killed the ETDctrl.exe <- if it does this
2) having uninstalled the device (and having deleted the \WINDOWS\system32\DRVSTORE\etd_<stupid_long_string> and the \WINDOWS\inf\oemnn.inf :unsure:)

When using devcon.exe/manually you *need*:
1) devcon remove *ETD0108
2) devcon dp_delete C:\WINDOWS\inf\oemnn.inf
3) rd /s C:\WINDOWS\system32\DRVSTORE\etd_<stupid_long_string>
4) taskkill /F /IM ETDCtrl.exe
5) rd /s %ProgramFiles%\Elantech

And then remove the various Registry entries.

Maybe this can be done with a batch and DPINST.EXE (which we already have in the tp118w7), I'll have a look at it.

jaclaz

 

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...