Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Keyboard] hexon38 and Dual-role key implementation (#4709)
* initial dual-role key implementation for hexon38 * PR feedback, adding README * Moving to handwired subdir * Additional PR feedback
- Loading branch information
1 parent
baaa138
commit 9ef4649
Showing
6 changed files
with
562 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
// see https://github.com/pepaslabs/hexon38 | ||
|
||
#pragma once | ||
|
||
#include "config_common.h" | ||
|
||
/* USB Device descriptor parameter */ | ||
#define VENDOR_ID 0xFEED | ||
#define PRODUCT_ID 0x6060 | ||
#define DEVICE_VER 0x0001 | ||
#define MANUFACTURER pepaslabs | ||
#define PRODUCT hexon38 | ||
#define DESCRIPTION "A handmade non-split ergonomic 38-key keyboard, inspired by the lil38. See https://github.com/pepaslabs/hexon38." | ||
|
||
/* key matrix size */ | ||
#define MATRIX_ROWS 4 | ||
#define MATRIX_COLS 12 | ||
|
||
/* key matrix pins */ | ||
#define MATRIX_ROW_PINS { B0, F0, B2, F4 } | ||
#define MATRIX_COL_PINS { C6, D3, D2, D1, D0, B7, F6, F7, B6, B5, B4, D7 } | ||
#define UNUSED_PINS | ||
|
||
/* COL2ROW or ROW2COL */ | ||
#define DIODE_DIRECTION ROW2COL | ||
|
||
/* number of backlight levels */ | ||
|
||
#ifdef BACKLIGHT_PIN | ||
#define BACKLIGHT_LEVELS 0 | ||
#endif | ||
|
||
/* Set 0 if debouncing isn't needed */ | ||
#define DEBOUNCING_DELAY 5 | ||
|
||
|
||
/* key combination for command */ | ||
#define IS_COMMAND() ( \ | ||
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ | ||
) | ||
|
||
#ifdef RGB_DI_PIN | ||
#define RGBLIGHT_ANIMATIONS | ||
#define RGBLED_NUM 0 | ||
#define RGBLIGHT_HUE_STEP 8 | ||
#define RGBLIGHT_SAT_STEP 8 | ||
#define RGBLIGHT_VAL_STEP 8 | ||
#endif | ||
|
||
|
||
// Disabled features: | ||
|
||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ | ||
//#define LOCKING_SUPPORT_ENABLE | ||
|
||
/* Locking resynchronize hack */ | ||
//#define LOCKING_RESYNC_ENABLE | ||
|
||
/* prevent stuck modifiers */ | ||
//#define PREVENT_STUCK_MODIFIERS |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
// see https://github.com/pepaslabs/hexon38 | ||
|
||
#include "hexon38.h" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
// see https://github.com/pepaslabs/hexon38 | ||
|
||
#pragma once | ||
|
||
#include "quantum.h" | ||
|
||
#define LAYOUT( \ | ||
K002, K003, K004, K005, K006, K007, K008, K009, \ | ||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, \ | ||
K200, K201, K202, K203, K204, K207, K208, K209, K210, K211, \ | ||
K302, K303, K304, K305, K306, K307, K308, K309 \ | ||
) { \ | ||
{ KC_NO, KC_NO, K002, K003, K004, K005, K006, K007, K008, K009, KC_NO, KC_NO }, \ | ||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111 }, \ | ||
{ K200, K201, K202, K203, K204, KC_NO, KC_NO, K207, K208, K209, K210, K211 }, \ | ||
{ KC_NO, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, KC_NO, KC_NO } \ | ||
} |
Oops, something went wrong.