Giter Site home page Giter Site logo

Comments (45)

1Revenger1 avatar 1Revenger1 commented on May 31, 2024 2

I looked into implementing F12, and it doesn't look to bad aside from needing to somehow replicate some of the bitops in linux. I doubt I'll get around to implementing it myself in the next couple days, though would support someone else implementing it if they wanted to. I don't have a trackpad which uses F12, so I have no way to test.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024 2

F12 should be implemented. Feel free to build and test it yourself

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024 1

VoodooPS2Controller/Keyboard has no dependency on VoodooInput.

In addition, VoodooInput is not a dependency for VoodooRMI needed for loading. VoodooInput attaches based off of a property we set, so VoodooInput can be loaded after everything.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024 1

I made a dumb mistake and forgot to read some registers from the device. See if the latest commit fixed it. You may need to load it manually again to get the logs, idk why macOS eats the logs when the driver is injected.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024 1

https://gitter.im/VoodooSMBus/dev?utm_source=share-link&utm_medium=link&utm_campaign=share-link This should work.

from voodoormi.

benbender avatar benbender commented on May 31, 2024

VoodooInput seems to be missing. Try to move VoodooInput from VoodooRMI.kext before VoodooPS2Controller in config.plist.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Yes, VoodooInput does not appear to load. I would double check to make sure OpenCore is not erroring trying to add the kext, and make sure that the entry looks right in your config.plist.

from voodoormi.

benbender avatar benbender commented on May 31, 2024

The order of loading should be the problem. Order matters in OC and voodooinput is loaded after voodoops2 according to the linked repository.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Closing as this likely isn't an issue with VoodooRMI

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

@yusifsalam let's continue our discussion here.

Can you try loading the RMI once your in macOS using kextload ?
That should provide better logging data

from voodoormi.

danny7g avatar danny7g commented on May 31, 2024

Hi All,

I'm having a similar issue on a T480. There seem to be two conflicts - one with SMC Battery Manager kext and one with USBMap kext. Removing these items and related battery patches resolves the issue and VoodooInput loads every time.

As noted above, the Kext load order matters. If I place VoodooInput last in line, and put SMCBatteryManager and USBMap or USBInjectall immediately following VirtualSMC, I get about a 75% success rate in loading VoodooInput. For the times it does fail to load, the kextload command also fails to load VoodooInput manually.

This is strange because I was using VoodooPS2Controller previously, and VoodooInput loaded 100% of the time.

Finally, one theory I have is that it may relate to the ACPI patch for the battery - OWAK01 to XWAK01.

Unfortunately, I don't have too much insight into all of this because I don't really understand the code. These are just observations based on trial and error, which are more helpful when something just works or doesn't work rather than working part of the time.

Thanks!

Screen Shot 2020-06-25 at 9 32 27 AM

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

What was the error when you tried to load manually? You can add -vvvvvv to get more verbose loading. If not, you can check the kernel log as well iirc.

Edit: It might be 4 v's, I forget

from voodoormi.

danny7g avatar danny7g commented on May 31, 2024

"failed to load - (libkern/kext) not loadable (reason unspecified); check the system/kernel logs for errors or try kextutil(8)."

The -vvvv option didn't add any useful info (I assume you meant with kextload, not as a boot-arg).

dannys_macbook.lan.ioreg.zip

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

kextutil might work better. If not, I'd have console.app open, and have it filtering for "Kernel"

Edit: Oh, checking your IOReg, RMI4 didn't fully load. I'm guessing it had issues probing/starting up. Can you provide a log of when it boots up too?
image

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

@1Revenger1 Sorry about posting in the wrong repo, I thought it would be more polite to post in an open issue : D

❯ sudo chown -R 0:0 Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/
  sudo chmod -R 755 Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/

~
❯ sudo kextutil Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/ -vvvv
Defaulting to kernel file '/System/Library/Kernels/kernel'
Kext with invalid signature (-67050) allowed: <OSKext 0x7fc2765082e0 [0x7fff89af1b60]> { URL = "file:///Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/", ID = "com.1Revenger1.VoodooRMI" }
/Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext - dependency 'de.leo-labs.VoodooSMBus' not found.
/Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext - dependency 'de.leo-labs.VoodooSMBus' not found.
/Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext - dependency 'de.leo-labs.VoodooSMBus' not found.
Code Signing Failure: code signature is invalid
Dependency Resolution Failures:
    No kexts found for these libraries:
        de.leo-labs.VoodooSMBus

Diagnostics for /Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext:
Dependency Resolution Failures:
    No kexts found for these libraries:
        de.leo-labs.VoodooSMBus
~

So according to this SMBus isn't resolved?

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Heh, id rather not fill up the other repo mostly because that's mostly another Authors work. It's fine though.

I've found that usually I need to do -d /path/to/VoodooSMBus.kext to have it find that dependency for some reason.

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024
❯ sudo kextutil Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/ -vvvv -d Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooSMBus.kext/
Defaulting to kernel file '/System/Library/Kernels/kernel'
Kext with invalid signature (-67050) allowed: <OSKext 0x7f85c0f089d0 [0x7fff89af1b60]> { URL = "file:///Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/", ID = "com.1Revenger1.VoodooRMI" }
Kext with invalid signature (-67030) allowed: <OSKext 0x7f85c1924360 [0x7fff89af1b60]> { URL = "file:///Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooSMBus.kext/", ID = "de.leo-labs.VoodooSMBus" }
Code Signing Failure: code signature is invalid
Warnings:
    Dependency lacks appropriate value for OSBundleRequired and may not be available during early boot:
        de.leo-labs.VoodooSMBus - OSBundleRequired not set

Warnings:
    Dependency lacks appropriate value for OSBundleRequired and may not be available during early boot:
        de.leo-labs.VoodooSMBus - OSBundleRequired not set

/Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext appears to be loadable (not including linkage for on-disk libraries).
Loading /Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext.
/Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext successfully loaded (or already loaded).
Invalid signature -67050 for kext <OSKext 0x7f85c0f089d0 [0x7fff89af1b60]> { URL = "file:///Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/", ID = "com.1Revenger1.VoodooRMI" }

~
❯ kextstat|grep -i voodoo
   65    1 0xffffff7f835e1000 0x14000    0x14000    as.acidanthera.voodoo.driver.PS2Controller (2.1.5) 2529B917-EE1A-3F67-88B9-12F21B0F5D0A <12 8 6 5 3 1>
   72    1 0xffffff7f8354b000 0x3b000    0x3b000    de.leo-labs.VoodooSMBus (2.1) 3D978383-5782-3051-BF65-8037C9188562 <60 13 6 5 3>
   77    0 0xffffff7f835b0000 0x25000    0x25000    com.1Revenger1.VoodooRMI (0.5) 23224C87-5EA7-37E2-A28B-C2F9D1B78CD7 <72 60 6 5 3>
   84    0 0xffffff7f835fa000 0xd000     0xd000     as.acidanthera.voodoo.driver.PS2Keyboard (2.1.5) 2BDE73B8-0F0D-3915-8D25-9DE623F7A209 <65 60 8 6 5 3 1>

~

I managed to load VoodooInput too but the trackpad still won't work

❯ sudo kextutil Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/Contents/PlugIns/VoodooInput.kext/ -vvvv
Defaulting to kernel file '/System/Library/Kernels/kernel'
Kext with invalid signature (-67050) allowed: <OSKext 0x7ff39152f0a0 [0x7fff89af1b60]> { URL = "file:///Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/Contents/PlugIns/VoodooInput.kext/", ID = "me.kishorprins.VoodooInput" }
Code Signing Failure: code signature is invalid
/Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/Contents/PlugIns/VoodooInput.kext appears to be loadable (not including linkage for on-disk libraries).
Loading /Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/Contents/PlugIns/VoodooInput.kext.
Disabling KextAudit: SIP is off
KextAudit initialized: audit=F
/Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/Contents/PlugIns/VoodooInput.kext successfully loaded (or already loaded).
Invalid signature -67050 for kext <OSKext 0x7ff39152f0a0 [0x7fff89af1b60]> { URL = "file:///Users/yusif/Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/Contents/PlugIns/VoodooInput.kext/", ID = "me.kishorprins.VoodooInput" }

~
❯ kextstat|grep -i voodoo
   65    1 0xffffff7f835e1000 0x14000    0x14000    as.acidanthera.voodoo.driver.PS2Controller (2.1.5) 2529B917-EE1A-3F67-88B9-12F21B0F5D0A <12 8 6 5 3 1>
   72    1 0xffffff7f8354b000 0x3b000    0x3b000    de.leo-labs.VoodooSMBus (2.1) 3D978383-5782-3051-BF65-8037C9188562 <60 13 6 5 3>
   77    0 0xffffff7f835b0000 0x25000    0x25000    com.1Revenger1.VoodooRMI (0.5) 23224C87-5EA7-37E2-A28B-C2F9D1B78CD7 <72 60 6 5 3>
   84    0 0xffffff7f835fa000 0xd000     0xd000     as.acidanthera.voodoo.driver.PS2Keyboard (2.1.5) 2BDE73B8-0F0D-3915-8D25-9DE623F7A209 <65 60 8 6 5 3 1>
  168    0 0xffffff7f83596000 0x1a000    0x1a000    me.kishorprins.VoodooInput (1.0.6) 4F9442AF-4062-3559-AD5A-CF25983B51EB <60 6 5 3>

~

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Can you get a log of it loading up? I think you were missing F11 as well iirc looking at the pic from the other issue.

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

Sorry I'm a bit ignorant when it comes to debugging, how can I produce that log? I tried to pipe the output to a file but that didn't work.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Uhh, usually I do log show --last 1m | grep -i voodoormi > /path/to/log.txt after loading the kext and waiting a few secs. Catalina has a weird issue where stream doesn't work unless you run the command first with show, so I just tend to skip using stream unless I'm looking at trackpad or trackstick data in real time.

Edit: 1m can be changed to 5m, 1h, etc, as well depending on how far back you want to go. --last boot will show all logs since the last boot.

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024
020-06-25 22:09:06.576035+0300 0x40b1     Default     0x0                  793    0    sudo:    yusif : TTY=ttys000 ; PWD=/Users/yusif ; USER=root ; COMMAND=/usr/bin/kextutil Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/ -d Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooSMBus.kext/ -vvvvvv
2020-06-25 22:09:08.700018+0300 0x4168     Default     0x0                  0      0    kernel: (VoodooRMI) SMBus version 3
2020-06-25 22:09:08.700749+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) RMI Bus (DEBUG) Starting up!
2020-06-25 22:09:08.708269+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: rmi_probe_interrupts: Counting IRQs.
2020-06-25 22:09:08.743673+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: IRQ Count: 9
2020-06-25 22:09:08.743749+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: rmi_init_functions: Creating functions.
2020-06-25 22:09:08.746093+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F34.
2020-06-25 22:09:08.748467+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F01.
2020-06-25 22:09:08.768414+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Found RMI device, manufacturer: Synaptics, product: TM3471-010, fw id: 2867793
2020-06-25 22:09:08.779108+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F12.
2020-06-25 22:09:08.779141+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Unknown function: 12 - Continuing to load
2020-06-25 22:09:08.784063+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F54.
2020-06-25 22:09:08.784094+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) F54 not implemented - Debug function
2020-06-25 22:09:08.789022+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F3A.
2020-06-25 22:09:08.789055+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Unknown function: 3A - Continuing to load
2020-06-25 22:09:08.791405+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F03.
2020-06-25 22:09:08.798521+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F55.
2020-06-25 22:09:08.798553+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Unknown function: 55 - Continuing to load
2020-06-25 22:09:08.827624+0300 0x419f     Default     0x0                  0      0    kernel: (VoodooRMI) Start finished
2020-06-25 22:09:10.705917+0300 0x4169     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Failed to read SMBus version. Code: 0xFFFFFFFA

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Wack, I think I'll need to do some research. No clue what function 3A or 55 are.

Function 12 is likely why your trackpad doesn't work though, and is linked to issue #6

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Oh, F55 is for getting number of tx/rx electrodes apparently, and is used for F54 debugging data.
So, only unknown one is 3A

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

That's a shame, guess I'll have to wait for the implementation of F12. I don't know C++ to port it myself but I'd be available if you need testers.

After a quick googling round it doesn't seem like linux implements the 3A function, so that could be a doozy.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

My guess is that F3A isn't important for functioning, though I am super curious as to what it is. None of the documentation I have mentions it

from voodoormi.

benbender avatar benbender commented on May 31, 2024

Very nice. Thank you will build, test and report back today! :)

from voodoormi.

benbender avatar benbender commented on May 31, 2024

I've build latest VoodooSMBUS from your branch, linked it inside VodooRMBus (otherwise it could not find VoodooSMBusDeviceNub.hpp) and needed to fix a small error (device_nub->wakeupController(); undefined, see diff). Sadly it didn't load:

Defaulting to kernel file '/System/Library/Kernels/kernel'
Kext with invalid signature (-67050) allowed: <OSKext 0x7ffb7cf048b0 [0x7fff90a49b60]> { URL = "file:///Users/bb/Desktop/VoodooRMI/VoodooRMI.kext/", ID = "com.1Revenger1.VoodooRMI" }
Kext with invalid signature (-67030) allowed: <OSKext 0x7ffb7cf091d0 [0x7fff90a49b60]> { URL = "file:///Users/bb/Desktop/VoodooRMI/VoodooSMBus.kext/", ID = "de.leo-labs.VoodooSMBus" }
Code Signing Failure: code signature is invalid
/Users/bb/Desktop/VoodooRMI/VoodooRMI.kext appears to be loadable (not including linkage for on-disk libraries).
Loading /Users/bb/Desktop/VoodooRMI/VoodooRMI.kext.
Disabling KextAudit: SIP is off
KextAudit initialized: audit=F
(kernel) kxld[com.1Revenger1.VoodooRMI]: The following symbols were defined more than once:
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus10gMetaClassE: 0xffffff7f9b22fb98 - 0xffffff7f9b2058f8
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus10superClassE: 0xffffff7f9b22d310 - 0xffffff7f9b201f08
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus16handleHostNotifyEv: 0xffffff7f9b225ce2 - 0xffffff7f9b1f7aa0
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus4initEP12OSDictionary: 0xffffff7f9b225ade - 0xffffff7f9b1f7948
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus4stopEP9IOService: 0xffffff7f9b226042 - 0xffffff7f9b1f7ab4
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus5probeEP9IOServicePi: 0xffffff7f9b225b94 - 0xffffff7f9b1f795a
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus5startEP9IOService: 0xffffff7f9b225c44 - 0xffffff7f9b1f79e4
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus9MetaClassC1Ev: 0xffffff7f9b22579a - 0xffffff7f9b1f77b6
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus9MetaClassC2Ev: 0xffffff7f9b225866 - 0xffffff7f9b1f7876
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBus9metaClassE: 0xffffff7f9b22d308 - 0xffffff7f9b201f00
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBusC1EPK11OSMetaClass: 0xffffff7f9b2257fc - 0xffffff7f9b1f7812
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBusC1Ev: 0xffffff7f9b2258e0 - 0xffffff7f9b1f78e8
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBusC2EPK11OSMetaClass: 0xffffff7f9b2257d6 - 0xffffff7f9b1f77f2
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBusC2Ev: 0xffffff7f9b225916 - 0xffffff7f9b1f7918
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBusD0Ev: 0xffffff7f9b225836 - 0xffffff7f9b1f7846
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBusD1Ev: 0xffffff7f9b22582c - 0xffffff7f9b1f783c
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZN6RMIBusD2Ev: 0xffffff7f9b225822 - 0xffffff7f9b1f7832
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZNK6RMIBus12getMetaClassEv: 0xffffff7f9b225858 - 0xffffff7f9b1f7868
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZNK6RMIBus9MetaClass5allocEv: 0xffffff7f9b225898 - 0xffffff7f9b1f78a8
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZTV6RMIBus: 0xffffff7f9b22d318 - 0xffffff7f9b201f10
(kernel) kxld[com.1Revenger1.VoodooRMI]: 	__ZTVN6RMIBus9MetaClassE: 0xffffff7f9b22db80 - 0xffffff7f9b202780
(kernel) Can't load kext com.1Revenger1.VoodooRMI - link failed.
(kernel) Failed to load executable for kext com.1Revenger1.VoodooRMI.
(kernel) Kext com.1Revenger1.VoodooRMI failed to load (0xdc008016).
(kernel) Failed to load kext com.1Revenger1.VoodooRMI (error 0xdc008016).
Failed to load /Users/bb/Desktop/VoodooRMI/VoodooRMI.kext - (libkern/kext) link error.
Failed to load /Users/bb/Desktop/VoodooRMI/VoodooRMI.kext - (libkern/kext) link error.
Check library declarations for your kext with kextlibs(8).

Did I miss something or is there an error I didn't catch?

Diff from my checkout:

diff --git a/VoodooRMI.xcodeproj/project.pbxproj b/VoodooRMI.xcodeproj/project.pbxproj
index 82a614a..f1395f9 100644
--- a/VoodooRMI.xcodeproj/project.pbxproj
+++ b/VoodooRMI.xcodeproj/project.pbxproj
@@ -39,6 +39,29 @@
 /* End PBXBuildFile section */

 /* Begin PBXFileReference section */
+		21EC34B124B069D8006B0ECB /* helpers.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = helpers.cpp; sourceTree = "<group>"; };
+		21EC34B224B069D8006B0ECB /* VoodooSMBusDeviceNub.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = VoodooSMBusDeviceNub.hpp; sourceTree = "<group>"; };
+		21EC34B324B069D8006B0ECB /* VoodooSMBusIntelLpssI2C.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = VoodooSMBusIntelLpssI2C.hpp; sourceTree = "<group>"; };
+		21EC34B424B069D8006B0ECB /* rmi_smbus.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = rmi_smbus.hpp; sourceTree = "<group>"; };
+		21EC34B524B069D8006B0ECB /* VoodooSMBusSlaveDeviceDriver.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = VoodooSMBusSlaveDeviceDriver.hpp; sourceTree = "<group>"; };
+		21EC34B624B069D8006B0ECB /* i2c_smbus.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = i2c_smbus.h; sourceTree = "<group>"; };
+		21EC34B724B069D8006B0ECB /* TrackpointDevice.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = TrackpointDevice.hpp; sourceTree = "<group>"; };
+		21EC34B824B069D8006B0ECB /* Configuration.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = Configuration.hpp; sourceTree = "<group>"; };
+		21EC34B924B069D8006B0ECB /* ELANTouchpadDriver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = ELANTouchpadDriver.cpp; sourceTree = "<group>"; };
+		21EC34BA24B069D8006B0ECB /* RMIBus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = RMIBus.cpp; sourceTree = "<group>"; };
+		21EC34BB24B069D8006B0ECB /* VoodooSMBusControllerDriver.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = VoodooSMBusControllerDriver.hpp; sourceTree = "<group>"; };
+		21EC34BC24B069D8006B0ECB /* VoodooSMBusSlaveDeviceDriver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = VoodooSMBusSlaveDeviceDriver.cpp; sourceTree = "<group>"; };
+		21EC34BD24B069D8006B0ECB /* TrackpointDevice.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TrackpointDevice.cpp; sourceTree = "<group>"; };
+		21EC34BE24B069D8006B0ECB /* Configuration.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = Configuration.cpp; sourceTree = "<group>"; };
+		21EC34BF24B069D8006B0ECB /* RMIBus.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = RMIBus.hpp; sourceTree = "<group>"; };
+		21EC34C024B069D8006B0ECB /* ELANTouchpadDriver.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = ELANTouchpadDriver.hpp; sourceTree = "<group>"; };
+		21EC34C124B069D8006B0ECB /* VoodooSMBusControllerDriver.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = VoodooSMBusControllerDriver.cpp; sourceTree = "<group>"; };
+		21EC34C224B069D8006B0ECB /* helpers.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = helpers.hpp; sourceTree = "<group>"; };
+		21EC34C324B069D8006B0ECB /* VoodooSMBusDeviceNub.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = VoodooSMBusDeviceNub.cpp; sourceTree = "<group>"; };
+		21EC34C424B069D8006B0ECB /* i2c_i801.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = i2c_i801.cpp; sourceTree = "<group>"; };
+		21EC34C524B069D8006B0ECB /* VoodooSMBusIntelLpssI2C.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = VoodooSMBusIntelLpssI2C.cpp; sourceTree = "<group>"; };
+		21EC34C624B069D8006B0ECB /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+		21EC34C724B069D8006B0ECB /* rmi_smbus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = rmi_smbus.cpp; sourceTree = "<group>"; };
 		2850FFBC24904435000FA6BC /* PS2.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = PS2.hpp; sourceTree = "<group>"; };
 		A41323E62492077C00907B0D /* Configuration.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Configuration.cpp; sourceTree = "<group>"; };
 		A41323E72492077C00907B0D /* Configuration.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = Configuration.hpp; sourceTree = "<group>"; };
@@ -84,6 +107,37 @@
 /* End PBXFrameworksBuildPhase section */

 /* Begin PBXGroup section */
+		21EC34B024B069D8006B0ECB /* VoodooSMBus */ = {
+			isa = PBXGroup;
+			children = (
+				21EC34B124B069D8006B0ECB /* helpers.cpp */,
+				21EC34B224B069D8006B0ECB /* VoodooSMBusDeviceNub.hpp */,
+				21EC34B324B069D8006B0ECB /* VoodooSMBusIntelLpssI2C.hpp */,
+				21EC34B424B069D8006B0ECB /* rmi_smbus.hpp */,
+				21EC34B524B069D8006B0ECB /* VoodooSMBusSlaveDeviceDriver.hpp */,
+				21EC34B624B069D8006B0ECB /* i2c_smbus.h */,
+				21EC34B724B069D8006B0ECB /* TrackpointDevice.hpp */,
+				21EC34B824B069D8006B0ECB /* Configuration.hpp */,
+				21EC34B924B069D8006B0ECB /* ELANTouchpadDriver.cpp */,
+				21EC34BA24B069D8006B0ECB /* RMIBus.cpp */,
+				21EC34BB24B069D8006B0ECB /* VoodooSMBusControllerDriver.hpp */,
+				21EC34BC24B069D8006B0ECB /* VoodooSMBusSlaveDeviceDriver.cpp */,
+				21EC34BD24B069D8006B0ECB /* TrackpointDevice.cpp */,
+				21EC34BE24B069D8006B0ECB /* Configuration.cpp */,
+				21EC34BF24B069D8006B0ECB /* RMIBus.hpp */,
+				21EC34C024B069D8006B0ECB /* ELANTouchpadDriver.hpp */,
+				21EC34C124B069D8006B0ECB /* VoodooSMBusControllerDriver.cpp */,
+				21EC34C224B069D8006B0ECB /* helpers.hpp */,
+				21EC34C324B069D8006B0ECB /* VoodooSMBusDeviceNub.cpp */,
+				21EC34C424B069D8006B0ECB /* i2c_i801.cpp */,
+				21EC34C524B069D8006B0ECB /* VoodooSMBusIntelLpssI2C.cpp */,
+				21EC34C624B069D8006B0ECB /* Info.plist */,
+				21EC34C724B069D8006B0ECB /* rmi_smbus.cpp */,
+			);
+			name = VoodooSMBus;
+			path = VoodooSMBus/VoodooSMBus;
+			sourceTree = "<group>";
+		};
 		A41323EA2492078A00907B0D /* Utility */ = {
 			isa = PBXGroup;
 			children = (
@@ -104,6 +158,7 @@
 				A4560F02247F381B0009CBE0 /* Headers */,
 				A4560EC9247F29EC0009CBE0 /* VoodooRMI */,
 				A4560EC8247F29EC0009CBE0 /* Products */,
+				21EC34B024B069D8006B0ECB /* VoodooSMBus */,
 			);
 			sourceTree = "<group>";
 		};
diff --git a/VoodooRMI/Transports/RMISMBus.cpp b/VoodooRMI/Transports/RMISMBus.cpp
index 607e8dd..070ade5 100644
--- a/VoodooRMI/Transports/RMISMBus.cpp
+++ b/VoodooRMI/Transports/RMISMBus.cpp
@@ -35,7 +35,7 @@ RMISMBus *RMISMBus::probe(IOService *provider, SInt32 *score)
         return NULL;
     }

-    device_nub->wakeupController();
+    /* device_nub->wakeupController(); */
     device_nub->setSlaveDeviceFlags(I2C_CLIENT_HOST_NOTIFY);

     do {

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Hmm, that commit appears to be almost a month old. Or atleast, doesn't look right at all.

from voodoormi.

benbender avatar benbender commented on May 31, 2024

I found my error: I used the branch of VoodooSMBUS in your repo because I overlooked that the fixes for opencore where merged into mainline.

Duplicated symbols where resolved using mainline, but VoodooInput (loaded as plugin from inside the fresh VoodooRMI-build) doesn't seem to load on boot. VoodooSMBUS attaches in IOReg, but VoodooRMI is not.

If I unload VoodooInput, VoodooRMBUS & VoodooSMBUS manually afterwards and reload them, they are loading fine without any error (besides signatures), but I don't have the Trackpad-Prefpane or any functionality from the Touchpad/Trackpoint.

Do you have any idea where to look/what to do to help?

Edit: Again I had to comment out one line which might be related?

iff --git a/VoodooRMI/Transports/RMISMBus.cpp b/VoodooRMI/Transports/RMISMBus.cpp
index 607e8dd..070ade5 100644
--- a/VoodooRMI/Transports/RMISMBus.cpp
+++ b/VoodooRMI/Transports/RMISMBus.cpp
@@ -35,7 +35,7 @@ RMISMBus *RMISMBus::probe(IOService *provider, SInt32 *score)
         return NULL;
     }

-    device_nub->wakeupController();
+    /* device_nub->wakeupController(); */
     device_nub->setSlaveDeviceFlags(I2C_CLIENT_HOST_NOTIFY);

     do {

from voodoormi.

benbender avatar benbender commented on May 31, 2024

Update:
VoodooRMI-Master + VoodooInput from the VoodooRMI-Master-build + VoodooSMBUS from the release-package are working fine:

❯ kextstat |grep -i voodoo
   69    1 0xffffff7f845df000 0x14000    0x14000    as.acidanthera.voodoo.driver.PS2Controller (2.1.5) 2529B917-EE1A-3F67-88B9-12F21B0F5D0A <12 8 6 5 3 1>
   78    1 0xffffff7f848d8000 0x31000    0x31000    de.leo-labs.VoodooSMBus (2.1) 672C9AAE-BC8B-3B92-9387-EB6CD2290386 <63 13 6 5 3>
   80    0 0xffffff7f84919000 0x22000    0x22000    com.1Revenger1.VoodooRMI (0.5) 6E322A9B-83DC-3CF6-AF88-34BD377F7553 <78 63 6 5 3>
  102    0 0xffffff7f845f8000 0xd000     0xd000     as.acidanthera.voodoo.driver.PS2Keyboard (2.1.5) 2BDE73B8-0F0D-3915-8D25-9DE623F7A209 <69 63 8 6 5 3 1>
  114    0 0xffffff7f845c7000 0x18000    0x18000    me.kishorprins.VoodooInput (1.0.6) AC8ACC4A-1D2B-3CA1-8ECC-9B19093940CF <63 6 5 3>

voodoormi

Update 2:
While working fine if it loads up, the problem with failing init remains :/

It happens to me mostly on reboots while fiddleing around. VoodooInput doesn't show up entirely and VoodooRMI shows in Kextstat, but the tree under RMIBus is empty in ioReg. Nothing in the boot log...

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

Latest commit of RMI and SMBus from the release of RMI is still not loading VoodooInput on startup. So I unloaded the RMI kext and loaded it manually with kextutil and it's saying F12 isn't implemented.

2020-07-04 13:20:41.701230+0300 0x3c99     Default     0x7e65               986    0    AdvancedBlocking: (libswiftFoundation.dylib) AG: The extension received a message (getAdvancedBlockingData) from a script injected into (https://github.com/VoodooSMBus/VoodooRMI/issues/12) with userInfo ([:])
2020-07-04 13:21:24.878879+0300 0x3e56     Default     0x0                  997    0    sudo:    yusif : TTY=ttys000 ; PWD=/Users/yusif ; USER=root ; COMMAND=/usr/bin/kextutil Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooRMI.kext/ -vvvv -d Documents/Dev/Hackintosh/t490-macos/OC/Kexts/VoodooSMBus.kext/
2020-07-04 13:21:26.227072+0300 0x3e7a     Default     0x0                  0      0    kernel: (VoodooRMI) SMBus version 3
2020-07-04 13:21:26.228133+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) RMI Bus (DEBUG) Starting up!
2020-07-04 13:21:26.235684+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: rmi_probe_interrupts: Counting IRQs.
2020-07-04 13:21:26.271114+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: IRQ Count: 9
2020-07-04 13:21:26.271176+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: rmi_init_functions: Creating functions.
2020-07-04 13:21:26.273791+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F34.
2020-07-04 13:21:26.273806+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Unknown function: 34 - Continuing to load
2020-07-04 13:21:26.276401+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F01.
2020-07-04 13:21:26.297631+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Found RMI device, manufacturer: Synaptics, product: TM3471-010, fw id: 2867793
2020-07-04 13:21:26.306838+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F12.
2020-07-04 13:21:26.306852+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) F12 not implemented (Issue VoodooRMI/#6)
2020-07-04 13:21:26.312075+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F54.
2020-07-04 13:21:26.312088+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) F54 not implemented
2020-07-04 13:21:26.317296+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F3A.
2020-07-04 13:21:26.317310+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) F3A not implemented
2020-07-04 13:21:26.319903+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F03.
2020-07-04 13:21:26.327251+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F55.
2020-07-04 13:21:26.327265+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) F55 not implemented
2020-07-04 13:21:26.356475+0300 0x3e91     Default     0x0                  0      0    kernel: (VoodooRMI) Start finished
2020-07-04 13:21:28.735001+0300 0x3e7b     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Failed to read SMBus version. Code: 0xFFFFFFFA

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Oops forgot to remove this line and the next https://github.com/VoodooSMBus/VoodooRMI/blob/master/VoodooRMI/RMIBus.cpp#L243 {line 243 and line 244). Mind just removing those and trying again?

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

Getting a kernel panic.
IMG_0512

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

latest commit should fix that, sorry

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

hmm it seems like rmibus doesn't attach properly now.
update: tried to load with kextutil - F12 can't attach

2020-07-04 23:41:55.844200+0300 0x2a8f     Default     0x0                  0      0    kernel: (VoodooRMI) SMBus version 3
2020-07-04 23:41:55.844986+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) RMI Bus (DEBUG) Starting up!
2020-07-04 23:41:55.852631+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: rmi_probe_interrupts: Counting IRQs.
2020-07-04 23:41:55.887408+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: IRQ Count: 9
2020-07-04 23:41:55.887469+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: rmi_init_functions: Creating functions.
2020-07-04 23:41:55.890022+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F34.
2020-07-04 23:41:55.890036+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Unknown function: 34 - Continuing to load
2020-07-04 23:41:55.892594+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F01.
2020-07-04 23:41:55.913192+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Found RMI device, manufacturer: Synaptics, product: TM3471-010, fw id: 2867793
2020-07-04 23:41:55.923166+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Initializing F12.
2020-07-04 23:41:55.933157+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - reg: 1 reg size: 32 subpackets: 70
2020-07-04 23:41:55.933177+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - reg: 2 reg size: 1 subpackets: 129
2020-07-04 23:41:55.933191+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - reg: 4 reg size: 1 subpackets: 64
2020-07-04 23:41:55.933205+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - reg: 5 reg size: 12 subpackets: 74
2020-07-04 23:41:55.933221+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - reg: 9 reg size: 8 subpackets: 124
2020-07-04 23:41:55.933234+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - reg: 15 reg size: 1 subpackets: 64
2020-07-04 23:41:55.933247+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - reg: 34 reg size: 24 subpackets: 45
2020-07-04 23:41:55.933261+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Debug: F12 - Data packet size: 0
2020-07-04 23:41:55.933269+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Error: F12 - No sensor tuning Control register
2020-07-04 23:41:55.933275+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Error: F12 - Failed sensor tuning
2020-07-04 23:41:55.933283+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Function 12 could not attach
2020-07-04 23:41:55.933319+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Function creation failed with code -19.
2020-07-04 23:41:55.933351+0300 0x2aa8     Default     0x0                  0      0    kernel: (VoodooRMI) Could not start
2020-07-04 23:41:57.851288+0300 0x2a90     Default     0x0                  0      0    kernel: (VoodooRMI) Error: Failed to read SMBus version. Code: 0xFFFFFFFA

voodoormi.ioreg.zip

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

Everything loads up fine now! The touchpad still doesn't move the cursor but at least I can see that my input is detected 2020-07-05 10:53:02.194162+0300 0x2b25 Default 0x0 0 0 kernel: (VoodooRMI) Debug: F12 Packet

from voodoormi.

benbender avatar benbender commented on May 31, 2024

Seems to be working fine on T480 also. Multiple reboots without hickup on init. Nice one! Thanks!

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

Ok now I'm experiencing weird behavior:

  • trackpoint works as expected but the buttons don't react to single clicks, even though click and drag somehow works
  • touchpad detects input but does not react to it. is it supposed to be sending events to the OS?
  • RMI bus does not attach 100% of the time on system startup. Sometimes it fails and neither trackpoint nor touchpad work

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

I just pushed another commit which should hopefully fix the issues with F12

Also, I'm not sure about the buttons tbh. Are the buttons sending PS2 packets if you look in the log? They'd have mentions of F03

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

The touchpad is alive with the latest commit, thanks!

Some issues persist however:

  • short strokes are fine but for longer strokes the touchpad just stops reacting to input, for example if I draw circles on the touchpad with one finger it stops moving the cursor almost right away or at best I can draw one full circle before it stops reacting
  • trackpoint single click button is ignored, this is the log message
kernel: (VoodooRMI) Debug: F03 - Recieved data over PS2: 8
kernel: (VoodooRMI) Debug: F03 - Recieved data over PS2: 0
kernel: (VoodooRMI) Debug: F03 - Recieved data over PS2: 0

I am fairly certain it was working fine when I opened this issue and my setup is almost identical, so perhaps some bug introduced in the last 11ish days?
BetterTouchTool's live preview can detect all the gestures fairly accurately, they're just not translated to system events for some reason. Here's a screencast of BTT's live view (at the start and end I moved the cursor with my mouse, that's why the input wasn't detected but the cursor still moved). As you can see I continue to move my finger from left to right on the touchpad but the cursor stops moving.
Screen Recording 2020-07-05 at 23 39 52-2

Btw, slightly off-topic but would you consider opening a gitter chatroom or similar for this sort of thing where we go back and forth a lot, which imo does not necessarily work that well within the constraints of GitHub issues.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

The voodooSMBus repo has a gitter so I think that would be preferable.

As for the cursor stopping - yeah I'm not sure why it happens. I think I messed something up abstracting the logic for the multi touch. I have issues with it as well with my trackpad.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

@yusifsalam what kext are you using for battery status?

I had switched over to ACPIBatteryManager for Big Sur, and had thought that I had changed something in my own code messing stuff up. I moved back over to SMCBatteryManager and it appears that the random stopping doesn't happen anymore

from voodoormi.

yusifsalam avatar yusifsalam commented on May 31, 2024

I'm using the SMCBatteryManager with OpenCore on Catalina.
Also, I wasn't able to find the gitter you mentioned in the SMBus repo.

from voodoormi.

1Revenger1 avatar 1Revenger1 commented on May 31, 2024

Btw, trackpoint buttons should be fixed in last commit. I attempted to fix the issue with the trackpad as well, though I really haven't been able to reproduce any issues since I moved back to SMCBatteryManager

from voodoormi.

gimdh avatar gimdh commented on May 31, 2024

According to what I've read, ACPIBatteryManager polls battery status. However, Laptop manufacturers cut corners and put obnoxious spin wait code to the function ACPIBatteryManager uses in order to make sure battery controller is initialized. Either of deleting sleep() in code or avoiding that function by SMCBatteryManager solves problem.

So I assume yusifsalam's issue is another one. I have similar problem where my pointer and physical finger traces do not quite match, but did not made issue report as I'm not sure if driver is the problem or Lenovo cheaped out on touchpad and this is what I get.

Do you think your touchpad is comparable with MacBooks' or MT2? I have another laptop with excellent I2C precision touchpad and it does feel legit with VoodooI2C. Fingers are basically directly mapped to cursor movement.
However my Thinkpad precision touchpad (Windows spec shows I2C and USB are only available as device protocol, yet laptop sees a precision touchpad. So.. I guess SMBus counts as I2C?) feels somewhat off with VoodooRMI.

from voodoormi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.