Code Monkey home page Code Monkey logo

Comments (7)

Dreamsorcerer avatar Dreamsorcerer commented on May 27, 2024

I'm afraid I don't have time currently to help. But, do you have multiple pointers connected?
I've found that only 1 pointer will work, and don't know how to fix it without needing to convert all input pointer events into a single output pointer event (which is obviously more complex than just proxying the events untouched):
https://unix.stackexchange.com/questions/757291/hid-events-are-received-but-mouse-input-still-not-working

from bthidhub.

Dreamsorcerer avatar Dreamsorcerer commented on May 27, 2024

No, wait, if you got some movement with the mouse filter, then that's not the case. You must have just got the SDP record wrong. When I get back to this, I think I may have enough information now to make this automated. So, will try and resolve this properly in a few weeks probably.

from bthidhub.

Raraph84 avatar Raraph84 commented on May 27, 2024

Indeed, the filter is not suitable for my trackpad. I noticed that only 3 bytes change when I move the mouse. I've figured out how to create these bytes from scratch, and I can make the mouse cursor move by modifying the variables:

button = 0
x = 0
y = 0
scroll = 0
return bytes([
    0xA1,
    0x03,
    button,
    0x00,
    x if x >= 0 else (256 + x),
    0 if x >= 0 else 255,
    y if y >= 0 else (256 + y),
    0 if y >= 0 else 255,
    scroll if scroll >= 0 else (256 + scroll)
])

I'm not sure if this is the right way to do it, but now I'm trying to decode the bytes from my trackpad so that I can create a filter that works for my keyboard/trackpad.

from bthidhub.

Dreamsorcerer avatar Dreamsorcerer commented on May 27, 2024

the filter is not suitable for my trackpad

I don't think the filter is suitable for anything other than ruundii's mouse...

from bthidhub.

Dreamsorcerer avatar Dreamsorcerer commented on May 27, 2024

As explained in the threads elsewhere, my approach is to remove filtering, and just update the SDP record to match the mouse's record. Then we can just pass events through without modification (or only needing to add/edit a byte for the report ID).

from bthidhub.

Raraph84 avatar Raraph84 commented on May 27, 2024

Yes, as mentioned earlier, I tried by modifying the SDP, but it didn't solve the problem. I have no idea why, perhaps because the same device functions as both a keyboard and a trackpad at the same time.

from bthidhub.

Dreamsorcerer avatar Dreamsorcerer commented on May 27, 2024

It would just have multiple report IDs, which would all need to be included and remapped.

from bthidhub.

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.