How does n-key rollover work?
New video! I dissected a keyboard that supports n-key rollover to figure out how it works. It was fun figuring out how to capture the USB signals from this keyboard since it only wanted to talk at 480Mbps, which is way too fast to capture. Fortunately I found a way to do it and it turned out to be pretty simple.
Hope you enjoy. As always let me know if you see any major issues. And thanks as always for your support!
-Ben
Comments (10)
Also, the reported maximum packet size is different, seen around 27:48. 6-key mode is 8 vs. n-key is 14.
Great video. Tell Keysight to get you a scope fast enough to analyze the high speed USB. Any chance you could share the files you created (scope export and breakdown of the protocol)? Some of us would find that of interest.
Nice new video!
I noticed a bit of difference in volume between takes, but otherwise, quite solid as-is. I really appreciate when you leave in mistakes (like correcting your key note), keeps things relatable :D Great content!
A lot of higher end keyboards, including I believe the Das Keyboard line allow remapping the keys at the hardware level and storing those maps on the microcontroller so I think that'll be why it reports having all those fancy keys - it can have them, even if it isn't labelled that way.
At 6:27 it should be 2B 3C
Loved this video. Thankx.
Really fascinating video! I love watching the dissection of the HID reports. Interesting to see that some keyboards will report a 104-bit bitmap to represent the whole keyboard matrix state. Thanks for this accessible explanation of what's going on with this keyboard!
I think at 6:22 you meant to say/write 3C. If that's not the case I'm confused
Yep, I think this is definitely the case. He said verbally "putting current into 3..." so I think he just accidentally said and wrote 2C instead of 3C.
