Skip to content

Commit

Permalink
[Keyboard] hexon38 and Dual-role key implementation (#4709)
Browse files Browse the repository at this point in the history
* initial dual-role key implementation for hexon38

* PR feedback, adding README

* Moving to handwired subdir

* Additional PR feedback
  • Loading branch information
cellularmitosis authored and drashna committed Jan 13, 2019
1 parent baaa138 commit 9ef4649
Show file tree
Hide file tree
Showing 6 changed files with 562 additions and 0 deletions.
60 changes: 60 additions & 0 deletions keyboards/handwired/hexon38/config.h
@@ -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
3 changes: 3 additions & 0 deletions keyboards/handwired/hexon38/hexon38.c
@@ -0,0 +1,3 @@
// see https://github.com/pepaslabs/hexon38

#include "hexon38.h"
17 changes: 17 additions & 0 deletions keyboards/handwired/hexon38/hexon38.h
@@ -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 } \
}

0 comments on commit 9ef4649

Please sign in to comment.