-
-
Notifications
You must be signed in to change notification settings - Fork 32
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
runtime error in modifiers.lua: attempt to index global 'key_to_index' (a nil value) on Pop 20.04 #47
Comments
Hi @greenseeker, thank you for submitting this bug report! It seems that Eruption is unable to find any supported devices. Starting up with no devices at all seems to trigger this bug. $ sudo lsusb |
Hi @X3n0m0rph59, It's the Kone AIMO Remastered: If not supported, please let me know if I can provide anything helpful. I am not a developer but I am a Linux engineer. |
@greenseeker The ROCCAT Kone Aimo 16K is currently not supported by Eruption. To add support for it, I would need a trace of the packets sent over the USB bus to the device, during the device initialization sequence done by ROCCAT Swarm. This can be achieved using the I wrote a short article in the Eruption Wiki on how to do this. It would be really nice if you could find the time! |
Don't just crash randomly, but exit gracefully in the case we did not find any supported devices at all References #47
Hi @X3n0m0rph59, |
Here is a ROCCAT Swarm Capture for the ROCCAT VULCAN Pro |
kone_aimo_remastered.pcapng.gz |
I'm having the same issue, but I'm using the ROCCAT Kone Pure Ultra, which is listed in the supported devices for |
@cadenhenrich I set up an Artix virtual machine using the
Maybe the Eruption daemon is somehow failing to enumerate the devices on your system. To further investigate this issue, could you please provide some logs of Eruption starting up? $ sudo RUST_LOG=debug eruption or, if you built from source $ sudo RUST_LOG=debug target/debug/eruption -c support/config/eruption-dev.conf |
@cadenhenrich I can reproduce it now! Starting Eruption with only a supported mouse device connected, and no keyboard, will trigger this bug. I am working on a fix for this now... |
Support mode of operation without a connected keyboard, just a mouse Fix key_to_index mapping (References #47)
@cadenhenrich Thanks for bringing this to my attention. I believe that this problem is fixed now in the The Eruption GUI version |
Seems to be fixed, although the LED keeps going from solid blue to breathing rainbow and back again. Now to figure out how to turn on the zero-debounce option! EDIT: Turns out the LED doing that is the afk mode. Took a closer look at the profiles, didn't see it on first glance. |
@cadenhenrich, great! I have looked into the zero-debounce configuration and done some Wireshark captures. I got it working on a On a
$ sudo eruption-debug-tool list
Please stop the Eruption daemon prior to running this tool:
$ sudo systemctl mask eruption.service && sudo systemctl stop eruption.service
You can re-enable Eruption with this command afterwards:
$ sudo systemctl unmask eruption.service && sudo systemctl start eruption.service
Please find the device you want to debug below and use its respective
index number (column 1) as the device index for the other sub-commands of this tool
Index: 00: ID: 46d:c051 Logitech/USB-PS/2 Optical Mouse Subdev: 0
Index: 01: ID: 1e7d:2dd2 ROCCAT/ROCCAT Kone Pure Ultra Subdev: 0
Index: 02: ID: 1e7d:2dd2 ROCCAT/ROCCAT Kone Pure Ultra Subdev: 1
Index: 03: ID: 1e7d:2dd2 ROCCAT/ROCCAT Kone Pure Ultra Subdev: 2
Index: 04: ID: 1e7d:2dd2 ROCCAT/ROCCAT Kone Pure Ultra Subdev: 3
Index: 05: ID: 1e7d:311a ROCCAT/ROCCAT Vulcan Pro TKL Subdev: 0
Index: 06: ID: 1e7d:311a ROCCAT/ROCCAT Vulcan Pro TKL Subdev: 1
Index: 07: ID: 1e7d:311a ROCCAT/ROCCAT Vulcan Pro TKL Subdev: 2
Index: 08: ID: 1e7d:311a ROCCAT/ROCCAT Vulcan Pro TKL Subdev: 3
Enumeration completed So the device index on my system would be
So, to turn on zero-debounce, I would need to run this command: $ sudo eruption-debug-tool write 1 '[0x11, 0x0e, 0x01, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x4c, 0x00, 0x05, 0x05, 0x00, 0x08, 0x00, 0x10, 0x00, 0x18, 0x00, 0x20, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x09, 0x06, 0xff, 0x0f, 0x00, 0x00, 0x14, 0xff, 0xff, 0x00, 0x00, 0x14, 0xff, 0x00, 0x48, 0xff, 0x14, 0xff, 0x00, 0x48, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf7, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00]' And to turn off the zero-debounce option, I run this command: $ sudo eruption-debug-tool write 1 '[0x11, 0x0e, 0x00, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x4c, 0x00, 0x05, 0x05, 0x00, 0x08, 0x00, 0x10, 0x00, 0x18, 0x00, 0x20, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x09, 0x06, 0xff, 0x0f, 0x00, 0x00, 0x14, 0xff, 0xff, 0x00, 0x00, 0x14, 0xff, 0x00, 0x48, 0xff, 0x14, 0xff, 0x00, 0x48, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf7, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00]' To read out the state from the device: $ sudo eruption-debug-tool read 1 0x11 78 In case your mouse device needs a different byte sequence
$ sudo eruption-debug-tool state-diff 1
$ sudo eruption-debug-tool state-diff 1 On the second invocation of $ sudo eruption-debug-tool state-diff 1
Please stop the Eruption daemon prior to running this tool:
$ sudo systemctl mask eruption.service && sudo systemctl stop eruption.service
You can re-enable Eruption with this command afterwards:
$ sudo systemctl unmask eruption.service && sudo systemctl start eruption.service
Index: 01: ID: 1e7d:2dd2 ROCCAT/ROCCAT Kone Pure Ultra Subdev: 0
Reading data from device...
The following USB HID report IDs have changed bytes:
Changed bytes: [116]
0x05: [0x05, 0x80, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0xef, 0xe7, 0x01, 0x00, 0x00, 0x00, 0x90, 0x93, 0x00, 0x00, 0x94, 0x93, 0x00, 0x00, 0xa4, 0x93, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x09, 0x01, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x22, 0x40, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00=>0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, ]
Changed bytes: [116]
0x04: [0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0xef, 0xe7, 0x01, 0x00, 0x00, 0x00, 0x90, 0x93, 0x00, 0x00, 0x94, 0x93, 0x00, 0x00, 0xa4, 0x93, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x09, 0x01, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x22, 0x40, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00=>0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, ]
Changed bytes: [2, 12]
0x11: [0x11, 0x0e, 0x00=>0x01, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x4c=>0x4d, 0x00, 0x00, 0x00, 0x00, 0x09, 0x01, 0x00, 0x00, 0x0a, 0x01, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00, 0x06, 0x01, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, 0x8c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, ]
Saving state data...
Done |
Oh wow, thanks for all the help! I was just goingto figure it out on my own, so thanks for saving me a lot of work! |
I believe this issue is fixed now. Please re-open this or another issue if you still encounter problems. |
On first launch of the service, it fails with:
The text was updated successfully, but these errors were encountered: