Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simple humble request to add to the readme info about the limitation of number of devices that can be removed and added #193

Open
paulpv opened this issue Oct 16, 2024 · 1 comment

Comments

@paulpv
Copy link

paulpv commented Oct 16, 2024

I discovered this project/driver in the past week and after using it for a few days and implementing a solution for my hobby project I stumbled across its well known Issue #25. :/

I understand that @oblitum has been reluctant to update the driver since the issue was reported and fix known in 2016/03, over 8 years ago.

I have read most of the related Issues and oblitum's opinion seems to be:

  • The root cause and fix is known and easy to implement in the source code
  • The problem is a limitation of only working with 10 devices.
    Only KbdClass0-KbdClass9 device ids work; unplugging and plugging back in creates a new device id and breaks past 10 devices.
  • oblitum is not going to fix this because it would require paying for a new signing cert to re-sign the driver.
    (I think code signing certs average ~$400 nowadays: https://www.reddit.com/r/electronjs/comments/17sizjf/a_guide_to_code_signing_certificates_for_the/)
  • Anyone that licenses the source code for $2,200 should be able to easily make the fix (oblitum even seems to imply that he might help)

So in summary, oblitum says that if you want to support more than 10 devices then you will have to:

  1. pay to license the code
  2. make the changes youself
  3. build your own and pay for the cert to sign it with

Respect, but this is not actually a limitation of working with 10 or more devices. 🫤
This is a limitation of unplugging and replugging in any device, including the same device, more than 3 times.
Occasionally unplugging and replugging in devices is a real-world use case scenario that should not have to require a reboot to fix.
This driver is severely limiting its audience by not fixing this, in oblitum's own words, simple to fix problem.

If oblitum is not going to fix this, then a simple humble request:
A simple comment in the readme would help a ton here to save people from wasting their time.

TL;DR
Like many others, I too have wasted my own valuable time after days of developing this for a personal hobby of mine.
I got things working really really well, while at the same time I just happened to be so focused that I must have not be using my KVM.
I then took a break over a weekend, and when I powered on my PCs a couple of days later, without even firing up the code that I had been working on, I started to use my KVM to swap back and forth as I usually do and after the first swap the keyboard and mouse just stopped working.
It took me almost another full day to finally confirm the problem was Interception #25.

This is all a personal hobby of mine.
No way am I able to afford both a $2,200 license fee plus obtaining my own signing certificate.

I understand this costs @oblitum too, both time and fiat, and am appreciative of his past and any current and future work on this.
This fix is known (#25), it just seems like it is a matter of a little coding time and signing for oblitum.

It seems like there could be some way to update this and be a win:win for everyone involved and/or interested.

It has been over 8 years since this Issue #25 was reported 2016/03.
It would be beyond awesome if oblitum would decide to either:

  1. Fix this problem, which I, and I am sure others, would be willing to help pay for to re-sign.
    -and/or-
  2. Open source the keyboard.sys and mouse.sys code.

☮️

@PK2-Stimpy
Copy link

I have been using this driver for quite a while now, around a year or so. I use it for a small controller I made and yeah, it works but when I have to transport it to other place, it really bothers me having to restart the computer.

I have checked and tried ways but nothing, also, I don't know why but it only works if you restart, if you shutdown the computer and turn it back again, the problem persists.

It would be cool if a solution would be given.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants