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

K100 RGB Optical-Mechanical Gaming Keyboard - 1b7c #651

Open
cajuncooks opened this issue Oct 21, 2020 · 72 comments
Open

K100 RGB Optical-Mechanical Gaming Keyboard - 1b7c #651

cajuncooks opened this issue Oct 21, 2020 · 72 comments
Labels
Added to wiki needs-bragi-support Device depends on the Bragi (BP00) protocol being implemented
Milestone

Comments

@cajuncooks
Copy link

Corsair's new shiny object.

Here's the log generated by ckb-next-dev-detect: ckb-next-dev-detect-report.gz

If there's anything I can do to help, let me know; I'm a vaguely competent developer sometimes.

@tatokis
Copy link
Member

tatokis commented Oct 21, 2020

Can you please install wireshark with usbcap (when prompted during the installation) on windows, and capture the keyboard being plugged in with CUE running?

Alternatively, if you want to do usb passthrough, you can use usbmon+wireshark on linux and pass the device through to a vm.

@cajuncooks
Copy link
Author

I will do that on my Windows desktop this afternoon, sure.

@cajuncooks
Copy link
Author

@Ravenslofty
Copy link
Member

It's Bragi, ugh. That's gonna be fun.

@Ravenslofty Ravenslofty added the needs-bragi-support Device depends on the Bragi (BP00) protocol being implemented label Nov 17, 2020
@JesseRiemens

This comment was marked as spam.

@banjahman

This comment was marked as spam.

@jbrgilbrech

This comment was marked as spam.

@stefanorossiti

This comment was marked as spam.

@banjahman

This comment was marked as spam.

@jbrgilbrech

This comment was marked as off-topic.

@tatokis
Copy link
Member

tatokis commented Mar 12, 2021

Can someone try the code from the k95-xt branch and change the usb device id in usb.h for the k95 platinum xt to the one for the k100?

It's possible that input will break, so make sure you have a backup keyboard.
The GUI won't recognise it, but the daemon should. Check if you can type with it.
After that, try echo active > /dev/input/ckb1/cmd afterwards and check if you can type again.

Also send the log from the daemon

@bjowi
Copy link

bjowi commented Mar 15, 2021

Changed as follows:

-#define P_K95_PLATINUM_XT 0x1b89 // Don't think this needs to be in the macro
+#define P_K95_PLATINUM_XT 0x1b7c // Don't think this needs to be in the macro

After daemon restart tried to push enter, and it looked like that enter was repeated multiple times in the terminal, but it came in spurts, not evenly. Also all keys were blinking. No possibility to do the echo active thing.

Log is attached.
log.txt

@Jacobo0

This comment was marked as spam.

@mcrapet
Copy link

mcrapet commented Jun 26, 2021

Thanks to KitsuWhooa (irc) for help. This is a quick & dirty hack.

Use new-devices-redux branch (commit 142621f).
Apply patch: https://gist.github.com/mcrapet/40f8000b59a0a6b720c6c0e947012bf2

Compile:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_GUI=OFF -DDEBUG_USB_SEND=ON -DDEBUG_USB_RECV=ON -DDEBUG_USB_INPUT=ON ..
make

Launch (as root):

./bin/ckb-next-daemon

daemon seems to launch correctly. However at each keystroke I got:

[W] handle_nkro_key_input (keymap.c:661): Got unknown NKRO key press 112
[I] ckb1 Input Recv: 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00

@mcrapet
Copy link

mcrapet commented Jul 6, 2021

Keyboard is available in two flavors:

  • Cherry MX Speed
  • Corsair OPX

Have no idea if this makes a difference for software.

mcrapet added a commit to mcrapet/ckb-next that referenced this issue Jul 25, 2021
ckb-next-daemon is displaying this message on each keypress:

[W] handle_nkro_key_input (keymap.c:659): Got unknown NKRO key press 112
[I] ckb1 Input Recv: 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00

ckb-next (GUI) seems to mess up with LED stuff

Upstream issue:
ckb-next#651
@MasterRoCcO
Copy link

Once you start using your git, the mouse stops working. Keyboard cannot be customized. But it is recognized in the software

mcrapet added a commit to mcrapet/ckb-next that referenced this issue Aug 8, 2021
Based on upstream cafb543 (Aug 7, 2021)

ckb-next-daemon is displaying this message on each keypress:

[W] handle_nkro_key_input (keymap.c:659): Got unknown NKRO key press 112
[I] ckb1 Input Recv: 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00

ckb-next (GUI) seems to mess up with LED stuff

Upstream issue:
ckb-next#651
@freetz-ng-mod
Copy link

Keyboard is now recognized, but not all colors are displayed correctly. And besides, the number 7 no longer works with number pads

@Red44

This comment was marked as off-topic.

@mcrapet

This comment was marked as off-topic.

@Ayylius

This comment was marked as off-topic.

@Red44

This comment was marked as off-topic.

@LakesideMiners
Copy link

LakesideMiners commented Oct 4, 2021

any updates on this?
I tried installing @mcrapet 's commit
I assume it worked, like I have installed the main branch, and I assume I did not need to do anything special for this one aside from the different repo.
Device is not detected.

EDIT:
Turns out I did it wrong, I forgot to checkout the right branch.
Colors are wrong tho.vvdfdf

EDIT 2:

So, I set the keyboard to fully black

The keys that are still on are

0)

and

Del

I noticed that where the FN key would be in the gui, its labeled as "Right Windows"
this is the FN key.

I need to test something here so I will update more after I restart this

EDIT 3:
Okay, so, the left windows/super key does NOT open up the Cinnamon menu if ckb-next is not running, if it is running, then it does. the FN key does nothing regardless of if ckb-next is open or not.

Also, the Keyboard viewer tool for my system doesn't show the left super being seen as pressed regardless of ckb-next

Id be willing to bet that the FN key is fully controlled by the keyboard itself. As, I remember weird stuff with it when I used to use Windows.,

Also the keyboard viewer shows this extra key, that dose not exist on my keyboard at all. I don't know if this is relevant at all but, I'm just documenting what I see..
image

@LakesideMiners

This comment was marked as spam.

@tatokis
Copy link
Member

tatokis commented Oct 25, 2021

Can someone test the code from the k100 branch?
Input might be broken, so keep a spare keyboard handy.

RGB probably won't work correctly. For that I need wireshark packet captures while setting the keyboard to static plain red, then plain green, then plain blue.

@LakesideMiners
Copy link

LakesideMiners commented Oct 25, 2021 via email

@stefanorossiti
Copy link

Can someone test the code from the k100 branch? Input might be broken, so keep a spare keyboard handy.

RGB probably won't work correctly. For that I need wireshark packet captures while setting the keyboard to static plain red, then plain green, then plain blue.

I am using now the k100 branch on Pop OS 21.04, input actually works great.
I tried to do some binding, and it seems also to work for all keys, but it doesn't work for the G1 to G6 keys.

Normally the keyboard's RGB is in breathing mode. Starting ckb all RGB just turn off completely and setting some color or mode doesn't anything. Quitting ckb returns the keyboard in breathing mode.

Also, here is the capture:
https://gofile.io/d/WffyAT
I started the capture, plugged in the keyboard (Packet No.513), then for all keys together I sent a blue color command, then green and finally red.
For the rgb packets im not sure but i think are those filtered with with: "frame.len>72"

@MasterRoCcO

This comment was marked as spam.

@dgcooke

This comment was marked as spam.

@middleway84

This comment was marked as spam.

@umop3plsdn

This comment was marked as spam.

@MasterRoCcO
Copy link

git clone -b k100 https://github.com/ckb-next/ckb-next.git ckb-next_100

sudo apt install build-essential cmake libudev-dev qtbase5-dev zlib1g-dev libpulse-dev libquazip5-dev libqt5x11extras5-dev libxcb-screensaver0-dev libxcb-ewmh-dev libxcb1-dev qttools5-dev git libdbusmenu-qt5-dev
cd ckb-next_100
./quickinstall

@tatokis
Copy link
Member

tatokis commented Aug 13, 2022

I have pushed code to the k100-v2 branch, which should have all the lights fully functioning.
The zones on the light wheel are a bit broken at the moment, in the sense that the only way to select them is to click and drag the cursor in their general direction. The animations also render diagonally on them instead of vertically.
I'll try to fix them whenever I have time.

In addition, adding the extra wheel lights has increased the cpu usage while the preview is on.

I will also need someone to enable logging in the daemon (cmake -DCMAKE_BUILD_TYPE=Debug -DDEBUG_USB_INPUT=1) and then with the GUI running and brightness set to 0, move the control wheel while noting down the packets logged by the daemon so that I can implement support for it.

@T99Rots
Copy link

T99Rots commented Aug 13, 2022

@tatokis

I just installed the branch and made a debug build for the logging

aug 13 12:33:05 tim-workstation ckb-next-daemon[81124]: [I] ckb1 Input: (83) 00 05 60 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
aug 13 12:33:10 tim-workstation ckb-next-daemon[81124]: [I] ckb1 Input: (83) 00 05 60 00 ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

The first one is rotating clockwise, 2nd one is counterclockwise

@tatokis
Copy link
Member

tatokis commented Oct 4, 2022

@T99Rots Thank you and apologies for the late reply. If you move the wheel as quickly as you can, do you get anything other than 01/ffffffff ?

@T99Rots
Copy link

T99Rots commented Oct 5, 2022

@tatokis I've tried spinning it as fast as i could and found out it's a great way to slice open your finger somehow, other than that i can confirm the values i stated before are the only values no matter the spinning speed.

@Grocel

This comment was marked as off-topic.

@tatokis tatokis added this to the 0.5.1 milestone Oct 7, 2022
@astrolemonade

This comment was marked as spam.

@m4xs31f3rt

This comment was marked as spam.

@EnerGeh

This comment was marked as off-topic.

@DiarrheaMcgee

This comment was marked as spam.

@Grocel

This comment was marked as off-topic.

@EnerGeh

This comment was marked as off-topic.

@Grocel

This comment was marked as off-topic.

@mproffitt

This comment was marked as off-topic.

@d3st0y3r

This comment was marked as off-topic.

@xipinformatica

This comment was marked as off-topic.

@DanySK

This comment was marked as off-topic.

@Ahrkonh

This comment was marked as off-topic.

@mattTCC

This comment was marked as off-topic.

@albinalm

This comment was marked as spam.

@xipinformatica

This comment was marked as spam.

@gravityfargo gravityfargo changed the title K100 support K100 RGB Optical-Mechanical Gaming Keyboard - 1b7c May 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Added to wiki needs-bragi-support Device depends on the Bragi (BP00) protocol being implemented
Projects
None yet
Development

No branches or pull requests