Comments (8)
Is there a way track any logs to find something out?
You can use wireshark to capture the USB communication from the official software and rgb_keyboard for options that don't work. This would allow a direct comparison of the relevant packets, thus giving the best chance to fix these problems.
Here is a brief explanation of the process, here are more detailed guides:
https://bytepunk.wordpress.com/2017/03/25/reverse-engineering-a-usb-mouse/
https://github.com/pez2001/razer_chroma_drivers/wiki/Reverse-Engineering-USB-Protocol
Feel free to ask if there is anything else.
from rgb_keyboard.
@dokutan I have not tried any remapping, this was simply for custom led patterns.
Thanks, that was a great suggestion. I managed to find the required hex values by running through all of the ANSI keycodes.
Making the following changes has fixed my issues for the K552RGB-1
:
// keycodes for custom led patterns (brazilian layout)
const std::map<std::string, std::array<uint8_t, 3>> rgb_keyboard::keyboard::keycodes_brazil = {
...
{"Apostrophe", { 0x32, 0xde, 0x00 }},
...
{"Bracket_l", { 0xf3, 0x9f, 0x00 }},
{"Bracket_r", { 0xf6, 0xa2, 0x00 }},
...
{"Semicolon", { 0x2f, 0xdb, 0x00 }},
...
{"Backslash", { 0xf9, 0xa5, 0x00 }},
...
{"Slash", { 0x72, 0x1d, 0x01 }},
...
{"Tilde", { 0x93, 0x3f, 0x00 }},
...
};
It would be great to know if the required values are different for the K552RGB
and K552RGB-2
?
Are you happy for me to make a pull request with the changes applied?
from rgb_keyboard.
Interestingly, my Redragon K552RGB-1 reports the following under lsusb
:
0c45:5004 Microdia Redragon Mitra RGB Keyboard
from rgb_keyboard.
@darrynjordan The keyboard is identified by its vendor and product id (0c45 and 5004), the name is taken from the udev hardware database. Multiple keyboards have the same ids, but only one is entered into the hardware database, therefore you see the wrong name.
The hwdb(7) manpage has the details if you are interested, or you can edit the entry at https://usb-ids.gowdy.us/.
from rgb_keyboard.
Interesting! Thanks @dokutan. I didn't know about this database.
Please note that I have found the following erroneous mappings from label to physical key:
Label | Physical Key |
---|---|
Tilde | Apostrophe |
Bracket_l | Bracket_r |
Bracket_r | None |
Backslash | None |
Semicolon | Slash |
Apostrophe | Tilde |
Slash | None |
For testing I use rgb_keyboard -Y brazil -P example.conf
.
I'll be happy to capture the output of the Redragon software using wireshark for these keys.
from rgb_keyboard.
@darrynjordan Did this affect remapping of the keys or or custom led patterns?
Instead of directly using wireshark, it might be easier for you to simply edit the labels or remove entries in one of the keycodes_*
(leds) or _keymap_offsets_*
(key mapping) maps in https://github.com/dokutan/rgb_keyboard/blob/master/include/data.cpp. Only if you lack information e.g. the code for a specific key, wireshark would be necessary.
If you attach the fixed map or usb captures i would add a new layout for the K552 (of course you are welcome to do it yourself if you want).
from rgb_keyboard.
@darrynjordan Thanks for figuring out the correct values, i have added a new layout brazil_k552rgb1
in 7cbf3b2 instead of merging your update to the brazil
layout, i hope this acceptable to you. This is to avoid any accidental regressions for other keyboards. Please let me know if this works for you.
from rgb_keyboard.
Yep, that works for me @dokutan. Thanks.
from rgb_keyboard.
Related Issues (20)
- GMMK long key change times HOT 7
- Add PKGBUILD and publish Arch Linux package? HOT 11
- Redragon K552RGB-1 ABNT2 (Brazilian Layout) Keymapping problem HOT 2
- Tecware Phantom RGB TKL- Keymapping doesn't seem to work. HOT 7
- Couldn't execute "rgb_keyboard" (GUI) HOT 2
- Redragon SURARA K582 support HOT 3
- Redragon K512 Support HOT 1
- (Not bug) Custom patterns HOT 1
- Custom Pattern Documentation HOT 1
- GMMK TKL keyboard doesn't work with example commands. HOT 4
- Redragon Draconic HOT 2
- Could not detect keyboard - GMMK Pro HOT 5
- Can read keyboard but result never changes HOT 5
- Redragon k552-kr kumara not working HOT 1
- Redragon K589 Shrapnel compatibility HOT 3
- Redragon k585 color support for multiple profiles HOT 1
- redragon k582 surara not working
- Support for Redragon Fizz k617 HOT 1
- Running the example.conf flickers some keyboard leds and never actually changes the colors HOT 3
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 rgb_keyboard.