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

Add Dark Project KD87b LTD #21607

Closed
wants to merge 102 commits into from
Closed

Add Dark Project KD87b LTD #21607

wants to merge 102 commits into from

Conversation

SHVD3x
Copy link
Contributor

@SHVD3x SHVD3x commented Jul 25, 2023

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

  • Core
  • Bugfix
  • New feature
  • Enhancement/optimization
  • Keyboard (addition or update)
  • Keymap/layout/userspace (addition or update)
  • Documentation

Issues Fixed or Closed by This PR

Checklist

  • My code follows the code style of this project: C, Python
  • I have read the PR Checklist document and have made the appropriate changes.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • I have tested the changes and verified that they work and don't break anything (as well as I can manage).

Copy link
Contributor

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.

Copy link
Contributor Author

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.

Copy link
Contributor

@lesshonor lesshonor Jul 28, 2023

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.

Copy link
Contributor Author

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 @@
/*
Copy link
Member

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.

Copy link
Contributor Author

@SHVD3x SHVD3x Aug 3, 2023

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.

Copy link
Member

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?

Copy link
Contributor Author

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.

Copy link
Member

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.

Copy link
Member

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.

keyboards/darkproject/kd87b_ltd/info.json Outdated Show resolved Hide resolved
Copy link

Thank you for your contribution!
This pull request has been automatically marked as stale because it has not had activity in the last 45 days. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, or re-open when it's ready.
For maintainers: Please label with bug, awaiting review, breaking_change, in progress, or on hold to prevent the issue from being re-flagged.

@github-actions github-actions bot added the stale Issues or pull requests that have become inactive without resolution. label Nov 14, 2023
@github-actions github-actions bot removed the stale Issues or pull requests that have become inactive without resolution. label Nov 30, 2023
Copy link

Thank you for your contribution!
This pull request has been automatically marked as stale because it has not had activity in the last 45 days. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, or re-open when it's ready.
For maintainers: Please label with bug, awaiting review, breaking_change, in progress, or on hold to prevent the issue from being re-flagged.

@github-actions github-actions bot added the stale Issues or pull requests that have become inactive without resolution. label Jan 14, 2024
Copy link

Thank you for your contribution!
This pull request has been automatically closed because it has not had activity in the last 30 days. Please feel free to give a status update now, ping for review, or re-open when it's ready.
// [stale-action-closed]

@github-actions github-actions bot closed this Feb 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
keyboard keymap stale Issues or pull requests that have become inactive without resolution. via Adds via keymap and/or updates keyboard for via support
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants