Comments (14)
kone_aimo_remastered.pcapng.gz
Let me know if I've done this incorrectly or if you need anything else.
from eruption.
Here is a ROCCAT Swarm Capture for the ROCCAT VULCAN Pro
ROCCAT_SWARM_Capture.pcapng.zip
from eruption.
I'm having the same issue, but I'm using the ROCCAT Kone Pure Ultra, which is listed in the supported devices for eruption
. This might be because I'm on Artix, and therefore no systemd
, but usually I can just add the executable to the default
run level using rc-upate
if I copy it to /etc/init.d/
, so I actually don't think a lack of systemd
is the issue here.
from eruption.
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.
Could you please tell me what devices you have connected to your system?
$ sudo lsusb
from eruption.
Hi @X3n0m0rph59,
It's the Kone AIMO Remastered:
Bus 003 Device 002: ID 1e7d:2e2c ROCCAT ROCCAT Kone Aimo 16K
If not supported, please let me know if I can provide anything helpful. I am not a developer but I am a Linux engineer.
from eruption.
@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 usbmon
Linux kernel module as well as Wireshark, capturing the USB traffic originating on a Windows 10 VM that is running ROCCAT Swarm.
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!
from eruption.
Hi @X3n0m0rph59,
I have the same Issue with the Roccat Vulcan Pro.
My System is Arch Linux.
Attached you find the journal log.
eruption.log
from eruption.
@cadenhenrich I set up an Artix virtual machine using the OpenRC
init system and investigated the issue, but was so far unable to reproduce. It seems that Eruption is able to build and run on non-systemd
distros.
It seems that Eruption is unable to find any supported devices. Starting up with no devices at all seems to trigger this bug.
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
from eruption.
@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...
from eruption.
@cadenhenrich Thanks for bringing this to my attention. I believe that this problem is fixed now in the master
branch!
The Eruption GUI version 0.0.7
(tech preview) will not work, as it currently depends on a connected keyboard.
from eruption.
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.
from eruption.
@cadenhenrich, great!
I have looked into the zero-debounce configuration and done some Wireshark captures. I got it working on a ROCCAT Kone Pure Ultra
!
On a ROCCAT Kone Pure Ultra
mouse, this is how to enable zero-debounce:
- Find mouse device index like this:
$ 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 1
.
- We need to write to the device with index
1
, as determined previously - Byte 3 of the data structure represents the zero-debounce configuration option (on a
ROCCAT Kone Pure Ultra
)
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
- Save a state snapshot of your mouse using:
$ sudo eruption-debug-tool state-diff 1
- Fire up ROCCAT Swarm (e.g. in a VM), change a single setting (zero-debounce)
- Again, save a state snapshot of your mouse using:
$ sudo eruption-debug-tool state-diff 1
On the second invocation of state-diff
you will get a diff view of the changed bytes.
$ 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
from eruption.
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!
from eruption.
I believe this issue is fixed now. Please re-open this or another issue if you still encounter problems.
from eruption.
Related Issues (20)
- Move "ROCCAT Vulcan Pro Keyboard" out of experimental HOT 1
- Bugs HOT 3
- Eruption 0.3.3 fails to start automatically on Ubuntu 23.04 HOT 3
- Add Support for ite8291 (XMG/Tuxedo(?) Laptop Keyboards) HOT 1
- Daemon Helper Service Lockup
- eruption-fx-proxy.service failt to start
- Vulcan Pro - wrong keys get illuminated, others don't even though they should
- Vulcan Pro - Correct Keys get Illuminated, GUI shows wrong Keys
- Keyboard's LED interface spams KEY_UNKNOWN after Eruption updates the keyboard LEDs HOT 1
- Add support for Roccat Vulkan II HOT 5
- Eruption profile switcher shell extension not compatible with Gnome 45 HOT 2
- Add Support for ROCCAT Pyro
- Support for Systemd-less Systems HOT 1
- Issues with Media keys HOT 3
- [RESOLVED] Eruption does not recognise Vulcan TKL Pro, With PPA (on Pop!_OS) HOT 1
- Add Support for Roccat VULCAN PRO [NOT TKL]
- Installation fails on Manjaro HOT 1
- Add Support for ROCCAT Burst Core Mice
- failed to start eruption.service- Realtime RGB LED Driver for Linux
- Could not start the Eruption GUI
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eruption.