-
-
Notifications
You must be signed in to change notification settings - Fork 43.2k
Add Keybit8 #25850
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
base: master
Are you sure you want to change the base?
Add Keybit8 #25850
Conversation
add Keybit8
add Keybit8
add Keybit8
add keybit8
add keybit8
add keybit8
waffle87
left a comment
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.
Please stop opening and close PRs for the same content.
This submission and its code needs quite significant modification to adhere to the PR Checklist. I suggest you begin there, and if you have further questions, you're welcome to ask in the QMK Discord.
drashna
left a comment
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.
All files should be lower case, due to file system compatibility issues.
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.
via.json needs to be removed. We don't accept these, and these need to be PR'ed to the correct VIA repo.
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.
Default keymap should be clean and pristine.
Note that the default keymap is what is copied when a user creates a new keymap, and many users struggle with more complicated code/config.
A lot of this code could/should be moved to the keyboard level, as well. (eg keyboards/keybit8/keybit8.c, using _kb functions)
| /* USB Device descriptor parameter */ | ||
| /* USB Device descriptor is defined in info.json */ | ||
|
|
||
| /* VIA/Remap configuration */ | ||
| #define DYNAMIC_KEYMAP_LAYER_COUNT 4 | ||
|
|
||
| /* key matrix size */ | ||
| #define MATRIX_ROWS 2 | ||
| #define MATRIX_COLS 4 | ||
|
|
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.
layer count defaults to 4, no need to set it.
Also, rows+columns are generated automatically, if correctly configured.
| /* USB Device descriptor parameter */ | |
| /* USB Device descriptor is defined in info.json */ | |
| /* VIA/Remap configuration */ | |
| #define DYNAMIC_KEYMAP_LAYER_COUNT 4 | |
| /* key matrix size */ | |
| #define MATRIX_ROWS 2 | |
| #define MATRIX_COLS 4 |
| /* | ||
| * Keyboard Matrix Assignments | ||
| * Arduino pin numbers: | ||
| * rowPins[2] = {21, 20}; -> F4, F5 | ||
| * colPins[4] = {4, 5, 6, 7}; -> D4, C6, D7, E6 | ||
| */ | ||
| #define MATRIX_ROW_PINS { F4, F5 } // Pins 21, 20 (Arduino Pro Micro) | ||
| #define MATRIX_COL_PINS { D4, C6, D7, E6 } // Pins 4, 5, 6, 7 (Arduino Pro Micro) | ||
|
|
||
| /* COL2ROW, ROW2COL */ | ||
| #define DIODE_DIRECTION COL2ROW | ||
|
|
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.
These should be moved to keyboard.json. qmk migrate or qmk info -kb (name) -f json can help with that.
| /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ | ||
| #define DEBOUNCE 5 | ||
|
|
||
| /* Tapping term for layer toggle keys (200ms default, 50ms was too short) */ | ||
| #define TAPPING_TERM 200 | ||
|
|
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.
These are the default setting and should be removed.
| /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ | |
| #define DEBOUNCE 5 | |
| /* Tapping term for layer toggle keys (200ms default, 50ms was too short) */ | |
| #define TAPPING_TERM 200 |
| "bootloader": "caterina", | ||
| "processor": "atmega32u4", |
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 sets the processor and bootloader, and allows for easy conversion to pro micro compatible controllers:
| "bootloader": "caterina", | |
| "processor": "atmega32u4", | |
| "development_board": "promicro", |
| "features": { | ||
| "bootmagic": true, | ||
| "extrakey": true, | ||
| "mousekey": false, | ||
| "nkro": false, | ||
| "backlight": false, | ||
| "rgblight": false, | ||
| "audio": false, | ||
| "encoder": false | ||
| }, |
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.
| "features": { | |
| "bootmagic": true, | |
| "extrakey": true, | |
| "mousekey": false, | |
| "nkro": false, | |
| "backlight": false, | |
| "rgblight": false, | |
| "audio": false, | |
| "encoder": false | |
| }, | |
| "features": { | |
| "bootmagic": true, | |
| "extrakey": true, | |
| }, |
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 file can be removed, completely. All of the info is already in json file
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 should be renamed to keyboard.json, and could use a qmk format-json pass.
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 should follow the standard template for keyboard readmes. Eg:
https://github.com/qmk/qmk_firmware/blob/master/data/templates/keyboard/readme.md
Description
I created new 8-key keyboard "Keybit8" for junior high school students.
Types of Changes
Checklist