Jump to content

[SOLVED] Elan PS/2 Touchpad Driver for XP


Dave-H

Recommended Posts

That is the whole point.

There is (seemingly) no reason why the ETD.sys shouldn't work on XP, but what your experiments evidenced is that the "driver" is a more complex subsystem of the .sys + a number of .exe's (at the very least, but not only, the ETDctrl.exe running in the background + a number of supported .dll's.

Now, the .exe's and .dll's in the Samsung 4.9.0.0 file are already marked 5/1 so they are surely XP compatible whilst most of the later versions are targeted to either 6/0 or 6/1.

So the problem is now about can the XP compatible files "talk" to the "good" version 15 of ETD.sys?

And/or can some of the files in the "good" 15 version of the driver be modified to run under XP?

BUT there are still a number of IMHO "preliminary" unresolved questions.

I can see no reasons why the "good", "working" version 15 driver cannot be modified to install "normally" on 8.1 (if not via TouchpadSetup.exe which may include an hardcoded list of hardware ID's) at least via the setup in the Elan folder. (something is clearly escaping us in the .inf modifying), still if *somehow* the driver can be installed via "device manager - have disk" it might be enough.

Then which files are actually *needed*?

It is likely that a number of files (as an example those connected with the control panel) are not *strictly needed* if there is an alternative way to change the settings (say the simpleUI.exe or the DellTiuchpad.exe) or even if only changes directly made to the Registry are "taken" by the driver.

So - not that I have some good, practical, advice - in theory the steps are:
1) find (if possible) a suitable and repeatable procedure to uninstall completely the driver
2) find (if possible) a more "normal" way to install the driver (though as said if it is confirmed that "forcing it via device manager it works it might be enough)
3) find whether some of the files can be alltogether taken out of the driver install (or if you prefer, what other files except ETD.inf, ETD.cat, ETD.sys and ETDctrl.exe are actually *needed*)
4) once (if) we can reduce the number of involved files to the sheer minimum, then the test would be either replacing them with an earlier version or - if possible - have them run under XP via major/minor OS/Subsystem modifications (or other, maybe changing a .dll call, using a kernel extension, etc.).

jaclaz

 

Link to comment
Share on other sites


Running the version 15 setup.exe from the top level (not the one in the x86 folder) appears to work and complete with no error messages, but doesn't actually do anything.
No files are actually copied, and the mouse in Device Manager is unchanged.
However subsequently doing a driver update of the mouse in Device Manager, and pointing it at the INF file in the x86 folder does work, and produces a working installation, without any modification to the INF file.
Perhaps I should try uninstalling and reinstalling again disabling some of the executables and dlls by renaming them, to try and determine which files are actually needed for the driver to work at a basic level, even if that means that there's no control panel and the settings can only be changed by directly editing the registry.
Otherwise a lot of time could be wasted trying to make files work on XP which aren't actually needed anyway.
:dubbio:

Link to comment
Share on other sites

40 minutes ago, Dave-H said:

Running the version 15 setup.exe from the top level (not the one in the x86 folder) appears to work and complete with no error messages, but doesn't actually do anything.
No files are actually copied, and the mouse in Device Manager is unchanged.
However subsequently doing a driver update of the mouse in Device Manager, and pointing it at the INF file in the x86 folder does work, and produces a working installation, without any modification to the INF file.
Perhaps I should try uninstalling and reinstalling again disabling some of the executables and dlls by renaming them, to try and determine which files are actually needed for the driver to work at a basic level, even if that means that there's no control panel and the settings can only be changed by directly editing the registry.
Otherwise a lot of time could be wasted trying to make files work on XP which aren't actually needed anyway.
:dubbio:

Sure, that (the version 15) does not include the ETD0108 hardware ID, AND - besides the .inf - there are also in the package:

1) SETUP.EXE in the "top level"
2) SETUP.EXE (different) in \x86\
3) \x86\ETDSetup.ini (that may or may not be used by EITHER the SETUP.EXE in the "top level" OR by the SETUP.EXE in \x86\ (or by both) that contains a number of hardware ID's

4) \x86\Setup.ini that contains:

[Setup_Config]
CheckHWID=1
ResetPreviousRegistry=1

that as well may be used by the one, or the other or by both or by none.

On the other hand, the 4.9.0.0 contains:

1) SETUP.EXE in \Elan\ folder
2) SETUP.EXE in \Elan\x86
3) NO \x86\ETDSetup.ini
4) \x86\Setupini with contents:

[Setup_Config]
CheckHWID=0
CheckMode=1
String1=
String2=
String3=
String4=
String5=
String6=
String7=
String8=
String9=
String10=
String11=
String12=
String13=
String14=
String15=
String16=
String17=
String18=
String19=
String20=
String21=
String22=
String23=
String24=
String25=
ResetPreviousRegistry=1

It is possible that the CheckHWID value and/or the CheckMode value (or neither, or both) changes the way the one (or the other) SETUP.EXE behave.

And the ETDSetup.ini may (or may not) bypass or change the behaviour no matter the contents of the ETD.inf file.

If - from a "clean" system, the installation is successful ONLY from device manager "have disk" then it may be OK, but if a "prerequisite" is to run either of the setup.exe, then *something* happens when the setup.exe is run that you haven't noticed.

jaclaz

Link to comment
Share on other sites

Just tried again with version 15, and running the top level setup.exe again says it's installed, including a long "installing drivers" animation, but it doesn't ask for a reboot when it's finished, apparently correctly, and nothing seems to have actually changed at all on the machine, even after a reboot.
If I then run the setup.exe in the x86 folder, it immediately goes to the "completed" screen, as presumably it thinks that the driver is already there.
However there seems to be no way of uninstalling it.
I guess I will have to install via Device Manager again and then uninstall it to do further tests.
:dubbio:

EDIT: The setup.exe in the x86 folder does exactly the same as the one in the top folder.
Installing from scratch using Device Manager woks fine though, so it looks as if the setup files don't actually need to be run for a successful install.
When using the update facility on Device Manager the INF offers "Elan Input Device", and when I try to install it it says that Windows cannot verify that it is compatible with the hardware, but if I go ahead anyway, it installs and works.
:yes:

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

Side note.

One of the n drivers on MS windows update: 

http://download.windowsupdate.com/d/msdownload/update/driver/drvs/2015/09/20755834_3604917b6f0540c8262602489fffab4fff64986a.cab

Is actually an "Asus" one AND it contains the hardware ID ETD0108 in the .inf (and provisions for Windows 8.1).

Data in the .inf:

DriverDate        = "07/20/2015"
DriverVersion        = "11.5.20.3"

The "structure" of the files is more similar to the one in the Samsung 4.9.0.0 than to the one in the "good" 15 version.

Maybe it is worth a shot. :dubbio:

jaclaz

Link to comment
Share on other sites

Thanks, I will give that a try!
:yes:
I was experimenting with installing version 15 without some of its files, to see if it was possible to get a working driver with a bare minimum of files present, but I wasn't getting very far!
I'll let you know what happens with this one.
:)

Link to comment
Share on other sites

OK I tried that version, it took ages to install, but it eventually did, and it works!
It appears to be an earlier version of Asus Smart Gesture, packed like a normal Elan driver, whereas the later versions look completely different in file structure, with a cab file and msi file.
It has no visible control panel, unlike later versions that put an icon in the Windows Control Panel, and there is no tab on the Mouse Properties.
The only way of invoking its control panel seems to be by double clicking the system tray icon.
Surely this won't install on XP?!
:)

Link to comment
Share on other sites

4 minutes ago, Dave-H said:

OK I tried that version, it took ages to install, but it eventually did, and it works!
It appears to be an earlier version of Asus Smart Gesture, packed like a normal Elan driver, whereas the later versions look completely different in file structure, with a cab file and msi file.
It has no visible control panel, unlike later versions that put an icon in the Windows Control Panel, and there is no tab on the Mouse Properties.
The only way of invoking its control panel seems to be by double clicking the system tray icon.
Surely this won't install on XP?!
:)

Who knows?

I don't think it will, but a "transplant" of files between this and the Samsung seem more likely to be possible.

I mean, the structure of files is very similar to the ones in the "Samsung 4.9.0.0" driver (same .exe's and .dll's) AND the .inf file is "correct" for your hardware.

Besides - not that it is useful in any way - the AsusUI.exe does run in XP.

Can you try extracting from the Samsung the ETDsimpleui.exe and the ETDsimpleUI_win8.exe and try running them while this driver is installed?

And try the same with the DellTouchpad.exe seen earlier.

jaclaz

 

Link to comment
Share on other sites

ETDsimpleui.exe and ETDsimpleUI_win8.exe both work fine, I can change the settings using them and they work and stick.
I'm not sure what the difference between them is, they look exactly the same to me!
DellTouchpad.exe I don't have any more I'm afraid, I junked it with most of the many other collected driver versions when I was going to give up.
I had so many I was getting very confused as to what was what!
I don't doubt that it would have worked as well though.
:yes:

Link to comment
Share on other sites

Well not surprisingly, setup.exe said it wasn't a valid win32 application on XP.
Trying an install with Device Manger went through the motions, but just produced a corrupted or missing driver error 39.

What a shame it's a version 11 driver.
While it's amazing to have found a version 11 driver that will even install on 8.1 (none of the others I tried did) if it were a version 10 driver it would probably work on XP!
I think it was between version 10 and version 11 that they changed the executables to no longer be XP compatible.
:(

Link to comment
Share on other sites

Well, now is just about time to try a transplant.

Make three directories:

1) \Samsung10
2) \Frankendriver1011
3) \Asus11

Copy to \Samsung10\ the contents of \Touchpad_4.9.0.0.ZIP\Elan\X86\

Copy again to \Frankendriver1011\ the contents of \Touchpad_4.9.0.0.ZIP\Elan\X86\

Copy to \Asus11\ the contents of  \20755834_3604917b6f0540c8262602489fffab4fff64986a.cab\

Now "merge" the contents of \Asus11\ to \Frankendriver1011\, i.e. copy to \Frankendriver1011\ all files in \Asus11\ that do not already exist in \Frankendriver1011\ (do not overwrite any file).

Copy (overwriting) from \Asus11\ only the ETD.cat, ETD.sys and ETD.inf to \Frankendriver1011\.

Try installing from \Frankendriver1011\ :dubbio:

jaclaz

 

Link to comment
Share on other sites

New post as I have (maybe) *BREAKING NEWS* :w00t:

Till now we had:
SAMSUNG (in the .inf) 11.7.5.5 10/08/2012 actual.sys 10.0.0.197
ASUS (in the .inf) 11.5.20.3 07/20/2015 actual.sys 11.165.5.11

Here is one driver:

https://drivers.softpedia.com/get/KEYBOARD-and-MOUSE/Elantech/ASUS-Elantech-Touchpad-Driver-11509.shtml

That is very similar to the "Samsung" driver, as it has:

DriverDate        = "07/29/2012"
DriverVersion        = "11.5.0.9"
actual .sys 10.0.0.164

AND that has the ETD0108 among the compatible hardware in the .inf:

Quote

;----------------------------------------------------------------------------
; Manufacturer Sections
;----------------------------------------------------------------------------

[Manufacturer]
%VenderName%   = ELAN.Mfg, NTx86, NTx86.6.2

[ELAN.Mfg.NTx86]
%PS2DeviceDesc%         = ETD_STD_Inst, *PNP0F13,*PNP0F0E,*PNP0F03,*PNP0F12,*PNP0F0B                        ; Hardware ID
%ELANDeviceDesc%         = ETD_STD_Inst, *ETD0101,*ETD0102,*ETD0106,*ETD010E                           ; SmartPad for Compal Asus
%ELANDeviceDesc%         = ETD0104_Inst, *ETD0104                                ; ELAN PS2 SmartPad (ASUS Smart-Pad Multi Plexing)
%ELANDeviceDesc%         = ETD_STD_Inst, *ETD0105,*ETD0107,*ETD0108,*ETD0109,*ETD010A,*ETD010B,*ETD010C,*ETD010F ; Image Sensor
%ELANDeviceDesc%         = ETD_STD_Inst, *ETD010D

[ELAN.Mfg.NTx86.6.2]
%PS2DeviceDesc%         = ETD_STD_Inst_Win8, *PNP0F13,*PNP0F0E,*PNP0F03,*PNP0F12,*PNP0F0B                        ; Hardware ID
%ELANDeviceDesc%         = ETD_STD_Inst_Win8, *ETD0101,*ETD0102,*ETD0106,*ETD010E                           ; SmartPad for Compal Asus
%ELANDeviceDesc%         = ETD0104_Inst_Win8, *ETD0104                                ; ELAN PS2 SmartPad (ASUS Smart-Pad Multi Plexing)
%ELANDeviceDesc%         = ETD_STD_Inst_Win8, *ETD0105,*ETD0107,*ETD0108,*ETD0109,*ETD010A,*ETD010B,*ETD010C,*ETD010F ; Image Sensor
%ELANDeviceDesc%         = ETD_STD_Inst_Win8, *ETD010D
 

AND has the ETDctrl.exe with 5/1 BUT that is also very similar to the "Asus" one, as it has both the AsusUI.exe and the AsusUI_win8.exe (but not the AsusUI_win10.exe)

As such - in theory - it should install BOTH under 8/8.1 and XP. :dubbio:

jaclaz

 

 

Link to comment
Share on other sites

OK, I tried the latest find on XP.
I was really encouraged when an Asus Smart Gesture icon appeared in the system tray on XP for the first time! :yes:
Unfortunately, it doesn't appear to be active.
It installed as an Elan PS/2 Port Smart-Pad, which looked very hopeful.
There is no extra tab on the Mouse Properties, but I think that's normal for Asus Smart Gesture.
The Asus control panel (which should come up when the system tray icon is double clicked, but doesn't) runs fine and I can change the settings and they are remembered, but again it doesn't actually change the behaviour of the touchpad. :no:
Trying an update from Device Manager also offered "Elan PS/2 Port Input Device", which also looked hopeful, but "updating" to that produced the same result.
This is certainly the closest yet though! :yes:
ETDCtrl.exe is running happily in the background, but ETDCtrlHelper.exe isn't, and I think it should be, it is running on 8.1.
If I try to run it, I get "The procedure entry point UnregisterPowerSettingNotification could not be located in the dynamic link library USER32.dll", so it looks as if there is a Windows XP compatibility problem there. :dubbio:

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

The ETDCtrlHelper.exe is 5/1, so - in theory - it should run in XP, it is possible that the error you have is due to the attempt to run it manually, cannot say.

Someone more familiar with XP dll's may be able to confirm or deny, and maybe it does exist a "user33.dll" with that function added. :unsure:

You should try this "11.5.0.9" on the 8.1, in order to be able to compare (maybe it works there, maybe it doesn't even there).

Try the other approach (Frankendriver1011).

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...