[Request] Win7 compatible Intel I/O drivers for the Touchpad of ASUS Notebooks

Also: if you’re a Windows programmer, maybe you can port the OpenSource ELAN I2C touchpad drivers from a modern Linux (such as Linux Mint 19.3) to Windows 7. These touchpads are working flawlessly at Linux and all the sources are open. It may be tricky to port because of the differences between Windows and Linux, but definitely doable!

Hi everyone I just buy a new asus laptop in 2019 it come whit windows 10 and after six month (THIS TRASH GET ME MADDDDD (STUPID UI))after that i try to install windows 7 and after 1 year seeking i cant enable touchpad (igpu and other drivers modification succeed ) till i found this forum 3 month ago
after realize the problem try to install another os (win 8.1 and linux(chalet and mint) and etc) it works fine just in 7 not works
i found a way to fix this (i think it should be works) is there any way to merge windows 7 and linux (not vm) like linux be windows 7 subbase (as linux is open source) (linux for supports and drivers )(windows for ui and other) replace linux ui with windows 7
(i cant do this by my self) sorry for bad english

Just use Win 8.1 and move on.

I’ve worked really hard with @canonkong to try to get it working on Win7, but failed.

Thank Microsoft for that, they are responsible for this insanity, for no good reason:
GPIO -> I2C -> HID/Touchpad

There is nothing wrong with simply using PS/2, except for preventing laptop users from using older OSes.

How are you guys?
I still have my asus 7 gen laptop with the broken touchpad.
From time to time I check this thread, I like to think someday someone will find the way :wink:

Curse you I2C :wink:
https://community.osr.com/discussion/258…er-on-windows-7

Still, it’s nice to see there are some people that still care about windows 7

I had this exact same problem, on Windows Server 2022 based on Windows 10. I fixed it by force installing the hidi2c.sys "I2C HID Device" driver from a normal Windows 10 Install and it worked. After installing it I installed ELAN touchpad drivers normally and it worked. Maybe, it can be working on Windows 7 too if someone can port the driver.



Thank you very much! This helped me with Win7 too.

I’ve manually installed the Intel SIO Driver for device and after that i was able to install the driver for the Touchpad and everything works fine now!

(System: Dell Latitude 7480 Skylake, Win7 64bit)

You got I2C Touchpad on 7?

Tell me please, were you able to start the mechanism?

If you got your touchpad working with Windows 7, it means your touchpad is not working with a I2C bus.
Maybe it supports both I2C and PS2.

I2C is a very basic 2-wire serial bus that allows chips to talk to each other.
I2C is not plug-and-play, I2C devices (eg. touchpad) cannot identify themselves.
Each I2C device has a hardcoded 7-bit address but you have to know that address to talk to the device.
You can find out if something responds at address XX, but even knowing that you can’t tell what it is.

Windows 8 knows the addresses because its ACPI can find/load these devices / assign resources to them.
Windows 7 doesn’t know the addresses because its ACPI can’t find these devices / assign resources to them.

Then you need a driver to communicate via I2C to the touchpad.

please explain how did you do that and upload files

Hi!
I have the same problem with I2C touchpad.
I install Windows 7 x64 on the Asus Zenbook UX305CA laptop, but touchpad doesn’t works. I replace Intel Serial IO I2C Host Controller (PCI\VEN8086&DEV_9D60) driver with version 30.61.1519.7 (from Lenovo site) and new unknown device appears (ACPI\ELAN_1000). I install Asus touchpad driver (from SmartGuesture from Asus support site), but yellow triangle with exclamation mark display on the device with error: “The device cannot find enough free resources that it can use (Code 12)”.


In the Windows 10 the touchpad works well with standard drivers since installer started.

Hey guys,

I think I have found a solution to this problem but I need a working driver.

image

As you can see in the image, compared to the other screenshots in this thread, we got the SIO I2C Host Controller (no problem there), then another device, ACPI\ELAN1200, and compared to what other people are thinking here, this is NOT the touchpad. To my understanding, this is basically what makes the link between the HID touchpad (the HID mouse here) and the I2C controller. Microsoft introduced this in Windows 8 with the hidi2c.sys driver, which is not there in Windows 7 so that’s why it only detects 1 device under the I2C controller. As you can see, after installing a Synaptics I2C Miniport driver wich should do the same job, the touchpad actually appears!

Now here is the issue:
The mouse is detected, no problem, There is a device called “Microsoft Input Configuration Device” which I don’t know what it’s for but no problem again, it’s also in Windows 10 and lastly, there is another HID device, HID\ELAN1200&Col02 which corresponds to Asus Precision touchpad in Windows 10/11. I have tried installing multiple drivers but most were not compatible (no Dev ID matching) but the Asus Precision Touchpad driver installed with no issues, except for an error code 39 indicating the driver can’t start (in other word, incompatible with Windows 7 or I did something wrong on the other drivers)

This is why I am now asking here if either someone has a working Windows 7 driver for HID\ELAN1200&Col02.

If nobody has that I would like to know @Fernando if that would be possible to make a mod+signed version of the Windows 10 Asus Precision Touchpad driver for Windows 7? Here is the link for the version 11.0.0.39 of the driver (for my laptop Asus FX553VD). If you can patch it that would be incredible.

Thank you!

UPDATE: I have found a driver here which apparently supports Windows 7. It says “FORCED” so I suppose this is a modded driver as well. I will try it tomorrow…

UPDATE 2: Unfortunately, after installing the new driver, the touchpad is still not working, even after enabling it with the Asus ATK package… I think that might be an issue with the Miniport driver that I used but I will see that later I guess.

The related driver has a valid digital signature given by Microsoft. So there is no reason to overwrite it.
By the way - I do not sign any driver on request.

Maybe it just means, that the manual installation of the driver has to be forced by using the “Have Disk” button. This is an option, if the driver itself (the *.sys file) supports the related device and OS, but the specific DeviceID is not listed within the *.inf file.

After a bit more research, I think the drivers are indeed working properly. I have again changed a few drivers to see if it works but still nothing.

image

I actually think here that the drivers are not the issue. According to Microsoft, “Windows 8 introduces support for HID over I2C.”
I think this means that there should be something like a service that needs to be installed. I saw that in a few forums but for more recent Windows versions (which should support HID over I2C).
That would mean if a company like Synaptics made a service equivalent to Microsoft’s that can be manually installed on Windows 7, I guess the touchpad would start working.

I have a little update cooncerning this driver, so after installing all the driver and even having the touchpad detected, it was still not working. Also, another problem that might not seem related but probably is, the battery indicator says no battery detected, even though it is there and works (and also ATK package detects when it’s plugged/unplugged).

For me, this all comes down to a major problem: ACPI

See, when I first tried to install Windows 7, I got the A5 BSOD, indicating that the ACPI version of my BIOS isn’t supported by the one in Windows 7. Effectively, Windows 7 supports only up to ACPI 4.0 and since Windows 8(.1) works, I suppose my laptop has ACPI 5.0.
The thing is, with the patched acpi.sys I used (which is the only one that I found and that works), I think it doesn’t fix all the problems, including touchpad and battery which both rely on ACPI to work.

For now, I’m going to use a W7 skinned Windows 8.1, unless someone has a working acpi.sys fully compliant with ACPI 5.0.

I would also like to note that if you did not have the A5 BSOD, you should be able to install the touchpad drivers like I said previously and have it fully working (I suppose)

ACPI is indeed probably the issue here, but simply modding ACPI.sys is not enough. You will also need to dump the DSDT (ACPI) tables, find the functions related to Touchpad, battery, and I2C/Serial IO, and change the values from 2013 (Win8) to 2009 (Win7). If you look up Hackintosh, you will find a tutorial of it involving Opencore that will allow you to not only dump your DSDT (ACPI) tables, but also load them. I tried this on my Dell Precision 7530, and it got Intel HID Event Filter Device to show under 7 (it was hidden before), but its ALPS touchpad still remained unusable.

Does that mean I need to patch my BIOS or I will use Opencore to boot Windows 7?
Also I don’t know how to modify ACPI tables and where to find all the info I need…
Do you have any tutorial?

Using Opencore would be better to boot Windows 7 than patching the BIOS. There is a tutorial on how to setup Opencore and to rip the DSDT tables, but I can’t seem to find the one that I used.

I have attached my DSDT (decompiled and compiled).
I have searched for 2013 and 2009 values but it only seems to return one result for OS detection.
I have also searched for the touchpad and battery but I have no idea what to change there…
Anyway, would it be possible to take a look at the ACPI tables and edit what is necessary or tell me what to change please? I don’t know where to start

Thanks

DSDT_Asus-FX553VD.zip (137.9 KB)