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

It just straight up just makes my mouse stop working #32

Open
VirtualLusamine opened this issue Apr 8, 2023 · 30 comments
Open

It just straight up just makes my mouse stop working #32

VirtualLusamine opened this issue Apr 8, 2023 · 30 comments

Comments

@VirtualLusamine
Copy link

i lost 3 days trying to fix my mouse not working untill i realized it was some update you made, can i get a previous version that used dkms and not depmod or something or you updating so it works, it said a error in the command: dmesg | tail
that it wasnt working and had a exit code of -1 so it just didnt work and didnt let my mouse work either. i cant really play without mouse accel so id really need help here.
my mouse is Razer Lancehead Turnament Edition and i have open razer installed too.
i hope you can help me

@Helinos
Copy link

Helinos commented Apr 11, 2023

Similar thing is happening to me. The update seemed to be working fine until I turned on my computer this morning.

With leetmouse uninstalled my mouse works fine.
When trying to reinstall it yields something interesting

xxx@xxx leetmouse]$ pacman -U pkg/build/leetmouse*.zst
loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (1) leetmouse-driver-dkms-0.9.0-1

Total Installed Size:  0.05 MiB

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                                                       [################################################] 100%
(1/1) checking package integrity                                                     [################################################] 100%
(1/1) loading package files                                                          [################################################] 100%
(1/1) checking for file conflicts                                                    [################################################] 100%
(1/1) checking available disk space                                                  [################################################] 100%
:: Processing package changes...
(1/1) installing leetmouse-driver-dkms                                               [################################################] 100%
:: Running post-transaction hooks...
(1/3) Reloading device manager configuration...        < Hangs here for about 2 minutes
Timed out for waiting the udev queue being empty.
error: command failed to execute correctly
(2/3) Arming ConditionNeedsUpdate...
(3/3) Install DKMS modules
==> dkms install --no-depmod leetmouse-driver/0.9.0 -k 6.2.10-arch1-1
==> depmod 6.2.10-arch1-1

Edit: Preemptively hit enter

@systemofapwne
Copy link
Owner

This is really strange. The fact, that you say "about 2 minutes" at "Reloading device manager configuration" speaks for this: Pacman triggers a udev update, then these rules kick in that trigger leetmouse_bind. That script waits 120s for the kernel module to become ready. (This will change eventually in the future, since udev should never call/run blocking code. But I did not implement it yet)

If building the kernel module was successful, modprobing the kernel module should work and the script continues. Apparently, modprobing the module did not work for you so the script keeps on hanging.
Can you please try modinfo leetmouse on your end? I suspect it to return an error.

In any case: Uninstall leetmouse, pull the latest changes and reinstall from scratch. There were some issues regarding compiling the kernel module after recent changes in make that I have fixed a few weeks ago.

@systemofapwne
Copy link
Owner

Can you both please also try to run sudo dkms build --force leetmouse-driver/0.9.0? That should in principle trigger a build of the kernel module and if anything goes south here, it should throw an error.

@Helinos
Copy link

Helinos commented Apr 18, 2023

[xxx@xxx leetmouse]$ modinfo leetmouse
filename:       /lib/modules/6.2.11-arch1-1/updates/dkms/leetmouse.ko.zst
license:        GPL
description:    USB HID mouse driver with acceleration (LEETMOUSE)
author:         Vojtech Pavlik <vojtech@ucw.cz>
author:         Klaus Zipfel <klaus (at) zipfel (dot) family>
author:         Christopher Williams <chilliams (at) gmail (dot) com>
srcversion:     1D2B7FB3F9308F16D4A7D8C
alias:          usb:v*p*d*dc*dsc*dp*ic03isc01ip02in*
depends:        
retpoline:      Y
name:           leetmouse
vermagic:       6.2.11-arch1-1 SMP preempt mod_unload 
sig_id:         PKCS#7
signer:         DKMS module signing key
sig_key:        7F:37:F4:32:81:9F:88:03:A4:35:22:A6:C7:08:13:81:3B:60:35:04
sig_hashalgo:   sha512
signature:      64:C2:7E:26:00:67:BB:B8:73:2E:E7:67:B3:4B:16:79:74:9A:34:A5:
                E6:E2:23:F8:5B:53:04:6D:55:21:F0:22:CB:A2:C1:2A:48:8A:86:FC:
                B6:CD:E5:DD:68:99:B6:12:D2:AC:CF:C8:A0:F7:6A:FA:77:6E:88:3F:
                C1:D2:AA:81:12:5B:F0:3E:55:34:92:66:2E:A4:07:BC:3B:52:04:59:
                2D:FE:B5:49:38:0A:BA:85:62:49:83:60:92:6C:6A:77:F9:81:F3:24:
                5C:9B:A4:58:03:AF:B0:3E:CC:3B:3E:D4:BD:8F:04:C6:0D:BA:EC:43:
                C6:7F:ED:97:DF:09:28:F5:B3:0C:61:A9:9B:A7:35:FC:93:1F:C6:E9:
                6E:C4:9A:D3:6D:5A:A6:07:A2:A8:77:27:46:27:DC:8E:52:5C:C5:35:
                E6:62:ED:95:CE:6A:EB:29:1A:01:2F:E8:E6:01:EE:BC:A1:2E:C7:54:
                30:08:96:16:73:35:A7:EF:D6:4A:3C:EF:D8:C9:87:F9:6F:D3:07:C3:
                8B:64:C8:34:55:6F:8D:00:38:2E:A8:A2:55:E2:CC:57:BB:E1:0A:AB:
                43:4F:5D:5E:CB:4B:16:B2:5D:3B:42:29:7A:D3:85:4C:F6:D2:14:78:
                D2:38:09:0E:5A:7E:30:47:F9:9B:51:F6:29:D5:F0:F9
parm:           debug:byte
parm:           no_bind:This will disable binding to this driver via 'leetmouse_bind' by udev. (byte)
parm:           update:Triggers an update of the acceleration parameters below (byte)
parm:           PreScaleX:Prescale X-Axis before applying acceleration. (charp)
parm:           PreScaleY:Prescale Y-Axis before applying acceleration. (charp)
parm:           SpeedCap:Limit the maximum pointer speed before applying acceleration. (charp)
parm:           Sensitivity:Mouse base sensitivity. (charp)
parm:           Acceleration:Mouse acceleration sensitivity. (charp)
parm:           SensitivityCap:Cap maximum sensitivity. (charp)
parm:           Offset:Mouse base sensitivity. (charp)
parm:           PostScaleX:Postscale X-Axis after applying acceleration. (charp)
parm:           PostScaleY:Postscale >-Axis after applying acceleration. (charp)
parm:           ScrollsPerTick:Amount of lines to scroll per scroll-wheel tick. (charp)
[xxx@xxx leetmouse]$ sudo dkms build --force leetmouse-driver/0.9.0
Sign command: /usr/lib/modules/6.2.11-arch1-1/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
KERNELDIR=/lib/modules/6.2.11-arch1-1/build make driver udev_trigger...
Signing module /var/lib/dkms/leetmouse-driver/0.9.0/build/driver/leetmouse.ko
Cleaning build area...

Pulling the latest changes yielded the same result

@systemofapwne
Copy link
Owner

systemofapwne commented Apr 18, 2023

Building the module works flawless how it looks like. Judging on that you still see issues, please tell me about the return value of modinfo. E.g. in bash, type
modinfo leetmouse > /dev/null 2>&1 + ENTER and then echo $? + ENTER (this is 100% what the leetmouse_bind script is doing and where it fails). If that is not 0, this explains, why this fails.

@VirtualLusamine
Copy link
Author

The result of modinfo leetmouse:
   ~  modinfo leetmouse  ✔
filename: /lib/modules/6.1.23-1-MANJARO/updates/dkms/leetmouse.ko.zst
license: GPL
description: USB HID mouse driver with acceleration (LEETMOUSE)
author: Vojtech Pavlik vojtech@ucw.cz
author: Klaus Zipfel <klaus (at) zipfel (dot) family>
author: Christopher Williams <chilliams (at) gmail (dot) com>
srcversion: 1D2B7FB3F9308F16D4A7D8C
alias: usb:vpddcdscdpic03isc01ip02in*
depends:
retpoline: Y
name: leetmouse
vermagic: 6.1.23-1-MANJARO SMP preempt mod_unload
sig_id: PKCS#7
signer: DKMS module signing key
sig_key: 0C:9D:89:5D:0D:63:3B:2E:A6:14:11:12:88:54:B8:95:F2:2A:B3:15
sig_hashalgo: sha512
signature: A2:5C:B6:B2:26:DE:1C:8A:69:DF:D1:2C:9E:57:7E:DC:F3:BC:2E:8F:
98:15:37:3F:4C:8B:7C:81:A3:7A:3F:63:22:AB:1F:32:2C:C6:59:2F:
31:8F:D4:A9:94:35:3F:17:BF:B2:9A:4E:C3:29:4B:59:11:50:E1:33:
53:24:25:A7:BF:D1:E3:64:32:1C:F6:D8:58:86:2B:DF:48:27:ED:5C:
ED:E3:23:75:A2:35:3E:C6:84:E5:48:9A:55:C3:BA:54:05:53:A7:0A:
AA:D7:B5:CB:0A:F2:2C:1E:50:C4:99:74:22:9C:14:08:B2:5A:B2:7C:
77:83:34:02:3A:91:D1:1A:69:DF:06:2C:59:27:60:D3:EF:B0:B9:59:
60:75:48:C5:32:DE:A3:9B:68:E0:1E:5C:E1:DE:9D:43:A0:43:DE:7A:
FE:BB:A8:FD:70:63:D3:ED:95:2D:14:CA:4F:8D:36:F9:D4:B1:77:07:
7D:2C:E8:E5:01:41:E1:D5:8E:2E:66:E8:81:98:DE:2D:AD:9E:49:0C:
DF:13:01:17:A4:2C:1F:0B:E9:34:27:B7:86:95:33:16:E6:BB:C0:46:
82:42:0B:8A:16:C0:31:CE:23:39:38:F7:6E:8A:04:DB:D2:00:C3:BA:
B3:B4:D2:E8:63:F0:65:9B:44:21:2D:1E:0C:DE:CA:9B
parm: debug:byte
parm: no_bind:This will disable binding to this driver via 'leetmouse_bind' by udev. (byte)
parm: update:Triggers an update of the acceleration parameters below (byte)
parm: PreScaleX:Prescale X-Axis before applying acceleration. (charp)
parm: PreScaleY:Prescale Y-Axis before applying acceleration. (charp)
parm: SpeedCap:Limit the maximum pointer speed before applying acceleration. (charp)
parm: Sensitivity:Mouse base sensitivity. (charp)
parm: Acceleration:Mouse acceleration sensitivity. (charp)
parm: SensitivityCap:Cap maximum sensitivity. (charp)
parm: Offset:Mouse base sensitivity. (charp)
parm: PostScaleX:Postscale X-Axis after applying acceleration. (charp)
parm: PostScaleY:Postscale >-Axis after applying acceleration. (charp)
parm: ScrollsPerTick:Amount of lines to scroll per scroll-wheel tick. (charp)

@VirtualLusamine
Copy link
Author

sudo dkms build --force leetmouse-driver/0.9.0  ✔
Sign command: /usr/lib/modules/6.1.23-1-MANJARO/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
KERNELDIR=/lib/modules/6.1.23-1-MANJARO/build make driver udev_trigger....
Signing module /var/lib/dkms/leetmouse-driver/0.9.0/build/driver/leetmouse.ko
Cleaning build area...


this is all it gave me

@VirtualLusamine
Copy link
Author

Building the module works flawless how it looks like. Judging on that you still see issues, please tell me about the return value of modinfo. E.g. in bash, type modinfo leetmouse > /dev/null 2>&1 + ENTER and then echo $? + ENTER (this is 100% what the leetmouse_bind script is doing and where it fails). If that is not 0, this explains, why this fails.

it returned 0

image

@VirtualLusamine
Copy link
Author

also sorry for not responding for a while had a very full everything but im more avalible now, also i would like to thank you for all the work you do in this project for us mouse accell linux gamers, you are quite litteraly our only option and its a good one. thank you <3 if there is a option to donate you a small thing to show my greatfullness tell me

@systemofapwne
Copy link
Owner

systemofapwne commented Apr 25, 2023

Building the module works flawless how it looks like. Judging on that you still see issues, please tell me about the return value of modinfo. E.g. in bash, type modinfo leetmouse > /dev/null 2>&1 + ENTER and then echo $? + ENTER (this is 100% what the leetmouse_bind script is doing and where it fails). If that is not 0, this explains, why this fails.

it returned 0

image

Please repeat running modinfo leetmouse > /dev/null 2>&1 and immediately (this important) echo $?
You accidentally ran echo $ and then echo $?. Since the variable $? contains the exit code of the last command ran (which now would have been echo $), it will always return 0 (which means no error). But I need the exit code caused by modinfo leetmouse > /dev/null 2>&1.
If this turns out to be 0 too, please run this in bash (since you run manjaro and since your shell looks like ZSH, this could behave differently than bash. Just run bash before executing the commands)

@Capster
Copy link

Capster commented Apr 29, 2023

I had absolutely the the same issue. And I've also tried make clean && make just as it says in the README.md:

:: Compiling leetmouse kernel module
========================================
cp: not replacing '/home/capster/leetmouse/driver/config.h'
make -C /lib/modules/6.2.13-arch1-1/build M=/home/capster/leetmouse/driver modules
  CC [M]  /home/capster/leetmouse/driver/usbmouse.o
In file included from <command-line>:
././include/linux/kconfig.h:5:10: fatal error: generated/autoconf.h: No such file or directory
    5 | #include <generated/autoconf.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [scripts/Makefile.build:252: /home/capster/leetmouse/driver/usbmouse.o] Error 1
make[1]: *** [Makefile:2021: /home/capster/leetmouse/driver] Error 2
make: *** [Makefile:26: driver] Error 2

Based on that, I thought that my linux-headers package is corrupted. I reinstalled it by running pacman -S linux-headers TWICE. And now it works. I didn't even need to run pacman -U

@systemofapwne
Copy link
Owner

I had absolutely the the same issue. And I've also tried make clean && make just as it says in the README.md:

:: Compiling leetmouse kernel module
========================================
cp: not replacing '/home/capster/leetmouse/driver/config.h'
make -C /lib/modules/6.2.13-arch1-1/build M=/home/capster/leetmouse/driver modules
  CC [M]  /home/capster/leetmouse/driver/usbmouse.o
In file included from <command-line>:
././include/linux/kconfig.h:5:10: fatal error: generated/autoconf.h: No such file or directory
    5 | #include <generated/autoconf.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [scripts/Makefile.build:252: /home/capster/leetmouse/driver/usbmouse.o] Error 1
make[1]: *** [Makefile:2021: /home/capster/leetmouse/driver] Error 2
make: *** [Makefile:26: driver] Error 2

Based on that, I thought that my linux-headers package is corrupted. I reinstalled it by running pacman -S linux-headers TWICE. And now it works. I didn't even need to run pacman -U

This error looks unrelated to the issue, since @VirtualLusamine and @DontStarve72 seem to have issues with the bind script while their kernelmodule seems to compile properly. But I am glad that you were able to troubleshoot your problems!

@Capster
Copy link

Capster commented Apr 29, 2023

In my case, the bind script was hanging during (1/3) Reloading device manager configuration... too. So I thought that I had the same issue. But when I tried to do it manually by using make, I've got an error that I mentioned previously. Sorry for the inconvenience.

@systemofapwne
Copy link
Owner

In my case, the bind script was hanging during (1/3) Reloading device manager configuration... too. So I thought that I had the same issue. But when I tried to do it manually by using make, I've got an error that I mentioned previously. Sorry for the inconvenience.

I see. It is very closely related but the core issue is different. Thank you for your feedback!

@Bakeshop9358
Copy link

It seems that this error only occurs with razer mice and is linked to this pull request
Changing the value of NUM_USAGES in utils.c to 90 seems to fix the problem (although I don't really know why this fixes it as it was just trial and error).

When testing with only a logitech mouse connected there are no problems with the installation, but when connecting a razer mouse the following error occurs after executing sudo pacman -U pkg/build/leetmouse*.zst and the razer mouse stops responding while the logitech mouse works fine

(1/1) installing leetmouse-driver-dkms                                                [#################################################] 100%
:: Running post-transaction hooks...
(1/3) Reloading device manager configuration...
Timed out for waiting the udev queue being empty.
error: command failed to execute correctly
(2/3) Arming ConditionNeedsUpdate...
(3/3) Install DKMS modules

And the output of dmesg -w

LEETMOUSE: parse_report_desc r_count > NUM_USAGES (16). Should only happen on first probe.

After changing the constant NUM_USAGES to 90 in utils.c the error in the installation of the package continues, but now the mouse responds after finishing the installation.

Unfortunately I can't find the root cause of the error as I don't have C knowledge let alone Linux drivers, but I hope this helps.

All this was tested on kernel 6.3.1 on arch with a Logitech superlight x and a Razer viper v2 pro.

@systemofapwne
Copy link
Owner

Good catch! Increasing this value might do the trick. I will need to take a closer look, if increasing this value can break anything or not. Thank you for your valuable feedback!

@VirtualLusamine
Copy link
Author

Building the module works flawless how it looks like. Judging on that you still see issues, please tell me about the return value of modinfo. E.g. in bash, type modinfo leetmouse > /dev/null 2>&1 + ENTER and then echo $? + ENTER (this is 100% what the leetmouse_bind script is doing and where it fails). If that is not 0, this explains, why this fails.

it returned 0
image

Please repeat running modinfo leetmouse > /dev/null 2>&1 and immediately (this important) echo $? You accidentally ran echo $ and then echo $?. Since the variable $? contains the exit code of the last command ran (which now would have been echo $), it will always return 0 (which means no error). But I need the exit code caused by modinfo leetmouse > /dev/null 2>&1. If this turns out to be 0 too, please run this in bash (since you run manjaro and since your shell looks like ZSH, this could behave differently than bash. Just run bash before executing the commands)

image
gave me zero

@VirtualLusamine
Copy link
Author

Building the module works flawless how it looks like. Judging on that you still see issues, please tell me about the return value of modinfo. E.g. in bash, type modinfo leetmouse > /dev/null 2>&1 + ENTER and then echo $? + ENTER (this is 100% what the leetmouse_bind script is doing and where it fails). If that is not 0, this explains, why this fails.

it returned 0
image

Please repeat running modinfo leetmouse > /dev/null 2>&1 and immediately (this important) echo $? You accidentally ran echo $ and then echo $?. Since the variable $? contains the exit code of the last command ran (which now would have been echo $), it will always return 0 (which means no error). But I need the exit code caused by modinfo leetmouse > /dev/null 2>&1. If this turns out to be 0 too, please run this in bash (since you run manjaro and since your shell looks like ZSH, this could behave differently than bash. Just run bash before executing the commands)

image
gave me zero

It seems that this error only occurs with razer mice and is linked to this pull request Changing the value of NUM_USAGES in utils.c to 90 seems to fix the problem (although I don't really know why this fixes it as it was just trial and error).

When testing with only a logitech mouse connected there are no problems with the installation, but when connecting a razer mouse the following error occurs after executing sudo pacman -U pkg/build/leetmouse*.zst and the razer mouse stops responding while the logitech mouse works fine

(1/1) installing leetmouse-driver-dkms                                                [#################################################] 100%
:: Running post-transaction hooks...
(1/3) Reloading device manager configuration...
Timed out for waiting the udev queue being empty.
error: command failed to execute correctly
(2/3) Arming ConditionNeedsUpdate...
(3/3) Install DKMS modules

And the output of dmesg -w

LEETMOUSE: parse_report_desc r_count > NUM_USAGES (16). Should only happen on first probe.

After changing the constant NUM_USAGES to 90 in utils.c the error in the installation of the package continues, but now the mouse responds after finishing the installation.

Unfortunately I can't find the root cause of the error as I don't have C knowledge let alone Linux drivers, but I hope this helps.

All this was tested on kernel 6.3.1 on arch with a Logitech superlight x and a Razer viper v2 pro.

for all my course and internship in programming taught me, i cant explain to you how some things work. Coding sometimes leads us to mental breakdowns and mental anguish, puts us into a depressive state and debbugging the same error for days makes you go mentally unwell. But one of the things that makes me cry with joy is somehow, for some reason. you found something that makes it work, and as i dont need to analize this code or develop it as far as i know. im happy. thank you so much. you have a keen eye.

ill still offer assistance in debugging and testing the driver in my computer.

also can you tell me what the NUM_USAGES value controlls. im curious and could help lead to a solution

@Helinos
Copy link

Helinos commented May 14, 2023

It returns 0 for me as well. Can confirm that I'm also attempting to use a Razer Viper V2 Pro

@ZoomVA
Copy link

ZoomVA commented Jun 10, 2023

In util.c

if (r_count > NUM_USAGES){ printk("LEETMOUSE: parse_report_desc r_count > NUM_USAGES (%d). Should only happen on first probe.", NUM_USAGES); return -1;

Changing return -1 to 0/1 allows it to build on razer devices, no clue why I just saw it and thought it should be 1 or 0 instead of -1 tried to build it and it worked. Tried when it was -1 it would just freeze my mouse

@ZoomVA
Copy link

ZoomVA commented Jun 10, 2023

No clue if it has to do with maybe another daemon getting in the way that uses dkms I.E. OpenRazer causing it to completely fail. If the 0/1 value is supposed to be a -1, I'll completely uninstall OpenRazer and attempt to build without it installed.

@systemofapwne
Copy link
Owner

In util.c

if (r_count > NUM_USAGES){ printk("LEETMOUSE: parse_report_desc r_count > NUM_USAGES (%d). Should only happen on first probe.", NUM_USAGES); return -1;

Changing return -1 to 0/1 allows it to build on razer devices, no clue why I just saw it and thought it should be 1 or 0 instead of -1 tried to build it and it worked. Tried when it was -1 it would just freeze my mouse

I would be careful here. Parsing the mouses USB descriptor failed on your device for some reason. By changing the return of parse_report_desc on this event to anything but -1 will cause the driver continuing to load the next steps. This results in unexpected behavior (for you it might now work but for someone else, it wont).
Ideally, the driver shall try interfacing with your mouse again (which the udev rule should definitely try).

Increasing the value of NUM_USAGES looks more ideal to me at first glance.

@ZoomVA
Copy link

ZoomVA commented Jun 10, 2023

In util.c
if (r_count > NUM_USAGES){ printk("LEETMOUSE: parse_report_desc r_count > NUM_USAGES (%d). Should only happen on first probe.", NUM_USAGES); return -1;
Changing return -1 to 0/1 allows it to build on razer devices, no clue why I just saw it and thought it should be 1 or 0 instead of -1 tried to build it and it worked. Tried when it was -1 it would just freeze my mouse

I would be careful here. Parsing the mouses USB descriptor failed on your device for some reason. By changing the return of parse_report_desc on this event to anything but -1 will cause the driver continuing to load the next steps. This results in unexpected behavior (for you it might now work but for someone else, it wont). Ideally, the driver shall try interfacing with your mouse again (which the udev rule should definitely try).

Increasing the value of NUM_USAGES looks more ideal to me at first glance.

Ah yeah it was indeed working for me fine but it continuously loading does sound like it would be pretty bad in the long run as it would just build up

No clue if it has to do with maybe another daemon getting in the way that uses dkms I.E. OpenRazer causing it to completely fail. If the 0/1 value is supposed to be a -1, I'll completely uninstall OpenRazer and attempt to build without it installed.

This happens to be the problem OpenRazer was interfering with the building of the driver, for me at least, no clue how we could manage to get both of them to interface without throwing that udev error people have been getting as well. I can live without having customized RBG on my mouse as well as changing the response time but others might not.

@klhrt
Copy link

klhrt commented Sep 5, 2023

Same issue (or same symptoms) but without openrazer installed. It's never been on my system. Still a razer mouse though, build appears to succeed with no errors but the mouse simply doesn't work at all.

It's definitely the bind and unbind scripts, neither works correctly. It's like the script takes ownership of the mouse away from the normal driver but doesn't give it to leetmouse. Only way to make my mouse work again is to uninstall the driver and relaunch the x server. Is there a way to make some kind of verbose output from those bind/unbind scripts? That'd help a lot with tracking down what's causing this.

@IcarusOne
Copy link

Issue persists with Razer Naga X. Changing NUM_USAGE to 90 did not change anything. Breaks system, making every package install/update hang at "Reloading Device Manager Config". Returns to normal when uninstalled.

@cannimal
Copy link

I have the same issue but with a corsair katar pro.
System hangs and fails at reloading device manager config.
modinfo and echo also game me 0.
Tried num_changes at 32, 64, 90 but still nothing.

@ZoomVA
Copy link

ZoomVA commented Jan 27, 2024

Those who are having problems with hanging at install, try the fixed point branch instead thats what i used for a while and it worked with my mice when it was hanging (naga and deathadder). Recently got a model o wireless and have had no issues since

@lfrimo
Copy link

lfrimo commented Apr 13, 2024

Having the same issue the past few days while on arch, kernel 6.8.5. Reinstalling results in the same hang mentioned earlier at

(1/4) Reloading device manager configuration...

Does not work at all with the driver installed. Only works again after uninstalling, unplugging the mouse and plugging it back in. Tried setting NUM_USAGES to 90 but no dice. Using a finalmouse ulx.

@lfrimo
Copy link

lfrimo commented Apr 14, 2024

Tried the steps in Manual compile, insmod, bind which work fine, the driver shows up in lsmod, but when manually binding the leetmouse driver it fails:

> sudo sh -c 'echo "3-1:1.0" > /sys/bus/usb/drivers/usbhid/unbind'
> sudo sh -c 'echo "3-1:1.0" > /sys/bus/usb/drivers/leetmouse/bind'
sh: line 1: echo: write error: No such device

Unbinding/binding to usbhid always works. Is the leetmouse driver missing a reference somewhere?

@AskBin
Copy link

AskBin commented May 18, 2024

similar issue, trackball will stop working for around 2 minutes after a reboot, then works with no acceleration.

running sudo dkms build --force leetmouse-driver/0.9.0 returns ` ign command: /usr/lib/modules/6.6.31-1-lts/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
KERNELDIR=/lib/modules/6.6.31-1-lts/build make driver udev_trigger....(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.6.31-1-lts (x86_64)
Consult /var/lib/dkms/leetmouse-driver/0.9.0/build/make.log for more information. `

EDIT: not sure what was broken myself, i just uninstalled everything and started over. still hangs on a similar section of the install but functions now

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