Jump to content

skyrilhd

Members
  • Posts

    35
  • Joined

  • Last visited

  • Days Won

    10

Posts posted by skyrilhd

  1. Unfortunately, the log doesn't contain anything with trackpad at all. That external USB also gets affected is very odd. I think I need to clear my head first, then I will investigate about this strange issue... Until then, using 1500 as a workaround should do the trick (which I hate :P).

  2. 41 minutes ago, Jake Lo said:

    I can confirm with Hervé's finding with v2.2.9 but when I'm using your version 1.0.7, the IOProbeScore is set at 6000 and working fine on my Alps V8. And it's more smooth than this v2.2.9

    I remember you had to change the speed here to make it more usable for me on the V8

    https://osxlatitude.com/forums/topic/17005-alps-touchpad-driver-with-voodooinput/?do=findComment&comment=113524

     

    I assume the IOProbeScore did not affect with my version since there was no interference with Synaptics and ELAN code. I checked one of the V8 log and the touchpad was working perfectly, but macOS did not want to process it for some reason.

     

    The touchpad speed should be the same with my version, since I did no changes to the speed at all. However, compared to Dr. Hurt's PS2 kext, the touchpad is a bit faster. The trackstick speed might have changed, since v2.2.9 uses VoodooTrackpoint instead of its own mouse device. I assume "And it's more smooth than this v2.2.9" is related to the trackstick?

     

    Here is a kext which uses the IOProbeScore 6000, but I added a property which waits the trackpad to "calibrate" for 4.5 seconds (by default) before setting protocols. I also cut the trackstick speed even more:

     

    VoodooPS2Controller-2.2.9-DEBUG.zip

     

    The wait time can also be changed inside the Info.plist (the time is in milliseconds). If the touchpad does not work, try increasing/decreasing the value, but keep the IOProbeScore at 6000. Hopefully this will help.

    image.png.7fbc1263a515131473f2cff15b0621e7.png

  3. I appreciate the feedback. Thank you very much!

     

    However, this raises another issue: V3 touchpads only work on IOProbeScore 6000 while V8 touchpads only work on 1500. Funny enough, V7 is not affected and works on both scores. Since I only have a V7 touchpad, I cannot debug this issue.

     

    Until I find a fix, I guess I will change the default IOProbeScore to support V8 (1500) without modifications, as V8 is the newest ALPS PS2 device. V3 users have to change the IOProbeScore (found in VoodooPS2Trackpad/Info.plist) back up to 6000.

     

    Maybe we find the middle, which works on both V3 and V8 (?)

  4. @Mattia27c Thanks for the feedback. The kext I uploaded above is a bit outdated.

     

    Currently, this is the latest one:

    https://github.com/SkyrilHD/VoodooPS2/actions/runs/2524741295

    Artifacts (8fcd8a5).zip

     

    Based on your feedback, I lowered the trackstick speed and changed the trackpad calculation like on V3 and V7.

    VoodooPS2Controller-2.2.9-DEBUG (V8 virtualFingers).zip

     

    However, I would like to use V8's own calculation, as it should provide accurate third and fourth finger tracking. I suggest checking finger movements with FingerMgmt (e.g. unpressing or jumping around).

     

     

  5. small update:

     

    I've changed the code for the trackstick, but I can't test the changes because my E7250 doesn't have a trackstick. To avoid multiple IOHIDPointing devices, I removed the code from the ALPS code to use VoodooTrackpoint from VoodooInput.

     

    I think this is the last change (if nothing is broken) before making a pull request.

     

    Link:

    https://github.com/SkyrilHD/VoodooPS2/actions/runs/2440514063

    or for non-GitHub account:

    Artifacts (b609366).zip

  6. Sorry for being inactive, for some reason I did not get any emails about this thread.

     

    Apparently, acidanthera's version is conflicting with something I did not find yet and causes the touchpad not to work on restarts (on my E7250 at least). I am assuming it is due to the high IOProbeScore. I lowered it, which hopefully fixes it.

     

    Additionally, I changed the VoodooInput processing code, so the kernel panic that most V8 users were getting should be now gone. One of the benefits that V8 users are also getting is using 4 fingers natively. Currently, on 2+ fingers, virtual fingers were created to support touchpads that did not support the third and fourth packet and therefore causing issues with 3 or 4 finger gestures. However, I cannot verify if that's actually the case, as I don't have a V8 touchpad.

     

    Feedback about this kext would be helpful :)

    https://github.com/SkyrilHD/VoodooPS2/actions/runs/2434461660

     

    And yes, like on other touchpads, there is a delay between keyboard and touchpad movement. But this can be changed inside the VoodooPS2Trackpad Info.plist: https://github.com/SkyrilHD/VoodooPS2/blob/x_avg-free/VoodooPS2Trackpad/VoodooPS2Trackpad-Info.plist#L80-L81

    • Like 1
  7. Welcome to the new (also probably the last) release, and I am happy to announce that 1.0.6 has been released! This release includes many fixes and support for Force Touch (more on that later)...

     

    First I created a pull request for the acidanthera repo as my goal was to make the whole VoodooPS2 thing more unified. So if all goes well, it will be merged soon.

     

    Second, thanks to @Jake Lo's testing, V8 is now more stable and won't break after a few hours of use. Also, the trackpoint speed is now a third compared to 1.0.5.

     

    Third, I removed VoodooInput support for V1, V2, and V6 touchpads due to hardware limitations. However, they still work like a regular mouse.

     

    Fourth, notification centre on V7 touchpads has now been fixed! Also, Rushmore V3 now loads properly.

     

    Last but not least, Force Touch support. This is a bit complicated and can lead to confusion. The table in my README should give a good overview of which Force Touch modes are supported: https://github.com/SkyrilHD/VoodooPS2-ALPS#force-touch

     

    I want to thank you again for helping me debug to fix VoodooInput on other versions of ALPS touchpads! It was a fun ride :)

    • Thanks 3
  8. Currently, it is divided by 2 (half speed). Below are kexts that are divided by 3 and 4. Whatever you like, I will push it to the repo.

     

    VoodooPS2Controller-1.0.6-DEBUG (divided by 3).zip

     

    VoodooPS2Controller-1.0.6-DEBUG (divided by 4).zip

     

    For me, the battery drain is almost the same. Might be because there is an actual MT2 emulator instead of a standard mouse, which does not need a lot of processing. Also, if you are using the Debug version of the kext, it will affect the system and battery life too, as it creates logs every time a finger is on the trackpad.

     

     

    BTW: The kexts also have all the changes I did in the last few days, including Force Touch support. To enable Force Touch, one does need to set ALPSForceFT to 1 and ForceTouchMode to 2 (Info.plist of VoodooPS2Trackpad). In FingerMgmt, you should see the input getting bigger if you press hard. One could also confirm if the look-up feature works.

  9. If the trackpad gets detected, run IOReg and scroll down to PS2M and there should be an ALPS entry. Click on that and on the right side there should be 'ALPS Version'. Tell what is the value there.

     

    It would be better if you could send the IOReg and logs (run this command in Terminal: sudo dmesg > alps.log) to diagnose the issue 

  10. Thanks for the logs again.

     

    Found a very weird issue:

    image.png.d6b4bc43e081b022040baabad5b883b3.png

     

    VoodooInput gets the wrong trackpad size. As seen on top, the left log shows the correct resolution, which is 1536. However, the right log which is the broken trackpad has negative resolution.

     

    In addition, this does not look correct either.

    VoodooInput: ALPS: transducer->currentCoordinates.y: -943
    VoodooInput: ALPS: transducer->currentCoordinates.y * 1.0f: -2147483648

     

    -943 * 1.0 is not -2147483648

     

    The working log in comparison:

    VoodooInput: ALPS: transducer->currentCoodinates.y: 779
    VoodooInput: ALPS: transducer->currentCoordinates.y * 1.0f: 779

     

     

    @Jake Lo

     

    Can you try this kext?

     

    I have disabled code that changes the dimensions in runtime.

    VoodooPS2Controller-1.0.6-DEBUG.zip

  11. @Jake Lo Thanks for the log.

     

    This is what I found:

    ALPS: Dimensions before sending to VoodooInput: [0] 2421x512
    VoodooInput: ALPS: transducer->currentCoordinates.y * 1.0f: f
    VoodooInput: ALPS: result / engine->getLogicalMaxY(): f
    VoodooInput: ALPS: result * MT2_MAX_Y: f
    VoodooInput: ALPS: scaled_x: 6688 scaled_y: 0

    The valid coordinates are present until the driver accesses VoodooInput. For whatever reason, during scaling, the coordinate gets lost (notice the scaled_y being 0).

     

    This is the responsible code for scaling.

    IOFixed scaled_x = ((transducer->currentCoordinates.x * 1.0f) / engine->getLogicalMaxX()) * MT2_MAX_X;
    IOFixed scaled_y = ((transducer->currentCoordinates.y * 1.0f) / engine->getLogicalMaxY()) * MT2_MAX_Y;

    While x gets scaled correctly, y does not.

     

    Funnily enough, this also happened when Dr Hurt used scaling to make trackpads the same divisor. Removing that fixed the 0 reporting. In case someone is interested: Link. Weirdly enough, this only happens on V8 touchpads!

     

    The big question mark remains: Why does it happen after a while?

     

    The attached kext will show if transducer->currentCoordinates.y and engine->getLogicalMaxY() are present.

    Can I also get a log when it is working normally as well? Maybe it will help if I can compare it with the broken log.

     

    VoodooPS2Controller-1.0.6-DEBUG.zip

  12. @Jake Lo

    Quote

    Is there a way to enable Inertia?

    As a workaround, you can enable inertia with a third-party app called Mos: https://github.com/Caldis/Mos.

    However, I am trying to add inertia to the driver itself so that no third-party is required. But that will take time. I think it would be better if I fix the touchpad issue first, then I can work on the inertia.

     

    Quote

    Ok, here's the log for the touchpad issue, hope you will able to find the issue.

    The touchpad will stop moving up and down and only go side to side. 

    Looking at Fingermgmt.app, the mouse always stick to the bottom, both fingers or 3. 

    Thanks. VoodooInput reports -2602 as well. Can this be triggered, or does it happen randomly? Does it happen after or even before it has slept?

     

    I added more logging. 

    VoodooPS2Controller-1.0.6-DEBUG.zip

  13. @Jake Lo

    1)
    Can you try the kext below? I cut the speed in half and added scrolling when the middle button is pressed.

     

    2)
    I know this issue. I'm still trying to figure out why it's happening. Strangely enough, there is no issue at all with the touchpad (the coordinates report fine), but something strange happens with VoodooInput (the y coordinate always reports -2602). I added more debugging code to see where the issue is being caused.

     

    This command should be enough for logs:

    sudo dmesg > alps.log

     

    VoodooPS2Controller-1.0.6-DEBUG.zip

  14. Happy new year to you all! v1.0.5 has been released which include many changes, hence the long changelog :D.

     

    Basically, the TL;DR is:

    - official v8 support (SS4 and SS5) (huge thanks to @forte500 for testing)

        - trackstick now works as well (huge thanks to @PMD for testing) 

    - in-official V1-V6 support (needs testing)

    - sync with the latest acidanthera VoodooPS2 repo

    - the driver can be now used from 10.11 (El Capitan) instead of 10.13

     

    The update can be found on the releases page:

    https://github.com/SkyrilHD/VoodooPS2-ALPS/releases/tag/1.0.5

    • Like 1
    • Thanks 1
  15. Sounds very strange to me. Trackpad is not involved to a keyboard shortcut. I also tried reproducing this error, but I did not encounter any issue. Check your keyboard settings, maybe try resetting it as well. I am using stock settings (no changes to any setting).

     

    Can you elaborate on "choppy gestures"? On v7, I have this strange jump with 3 fingers+, but I also booted into a Linux Live USB to check if it was an issue with Linux or if something is wrong with VoodooInput. But I encountered the same issue on Linux as well, so I did not bother to fix it, as it works perfectly on daily bases. I could be the same case for v8 touchpads.

×
×
  • Create New...