-
-
Notifications
You must be signed in to change notification settings - Fork 38.8k
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
Add Dark Project KD87b LTD #21607
Add Dark Project KD87b LTD #21607
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can't speak to any of the custom matrix code, but please run qmk format-c
on this file. The linter is complaining about the line endings.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did it with no effect, I think the file on github is bugged because it always shows commit changes if I trying to edit it even if I don't make any. I have identical copyright label in another PR which passes lint, strange behavior.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My mistake, I gave you the wrong command. qmk format-text
will correct the CRLF (Windows) line endings. A good text editor can do this too.
This repository accepts LF (Unix) line endings only.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This didn't resolve the issue with linter.
@@ -0,0 +1,87 @@ | |||
/* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR features custom matrix scanning code with adaptive scan rate and anti-ghosting.
Due to the maintenance cost involved, this code should be removed and the core implementation used instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This code is simple and efficient, it uses basic C constructions and PAL to improve it's reliability. It also takes into account the individual features of the structure and layout of the keyboard. The main algorithm of key scanning is robust and this is probably the only way to register keypresses for this hardware configuration. Also this code provides much higher scanning rates than core implementation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But is it necessary, or just an optimization?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now adding custom matrix is mandatory because it resolves problem with ghosting and phantom keypresses on some boards.
I will support this code and keep it up to QMK standarts.
This applies to both KD83a LTD and KD87b LTD.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From my perspective, still needs to use core and wouldn't be accepted till the code is removed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
QMK already has some options to detect and handle ghosting (MATRIX_HAS_GHOST
), and phantom keypresses can be solved with debouncing. So, I'm not sure why a custom matrix would be necessary. And most of the comments really indicate that this is an optimization, rather than a requirement.
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
Thank you for your contribution! |
Thank you for your contribution! |
Thank you for your contribution! |
Add new Dark Project KD87b LTD keyboard.
Description
This PR features custom matrix scanning code with adaptive scan rate and anti-ghosting. It will be supplemented with a gaming keymap with eager debounce algo.
Types of Changes
Issues Fixed or Closed by This PR
Checklist