this post was submitted on 13 Jul 2023
483 points (97.3% liked)

Programmer Humor

19809 readers
1014 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 26 points 1 year ago* (last edited 1 year ago) (2 children)

Slightly off-topic: if you want to know how this works with USB Keyboards, check out this fantastic video by Ben Eater: https://youtu.be/wdgULBpRoXk

[–] [email protected] 15 points 1 year ago

Here is an alternative Piped link(s): https://piped.video/wdgULBpRoXk

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I'm open-source, check me out at GitHub.

[–] Jessica 2 points 1 year ago* (last edited 1 year ago)

This was surprisingly interesting! Thanks for posting it. I didn't think there was anything noteworthy to glean from it, but @[email protected] mentioned down below that USB doesn't have interrupts, which I was unaware of. I especially liked how he covered different types of USB keyboards running at different speeds, and he briefly covered n-key rollover, or the lack thereof on the two keyboards he had on hand as well as why some key combinations fail due to shared wiring in the keyboard. The latency discussion between PS/2 interrupting and USB being polled for data at the end of the video was also fascinating.

Edit: Ben Eater did a follow-up video on how n-key rollover works: https://www.youtube.com/watch?v=2lPzTU-3ONI