aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/handwired/traveller/config.h130
-rw-r--r--keyboards/handwired/traveller/info.json110
-rw-r--r--keyboards/handwired/traveller/keymaps/default/keymap.c405
-rw-r--r--keyboards/handwired/traveller/keymaps/default/readme.md2
-rw-r--r--keyboards/handwired/traveller/readme.md40
-rw-r--r--keyboards/handwired/traveller/rules.mk41
-rw-r--r--keyboards/handwired/traveller/traveller.c61
-rw-r--r--keyboards/handwired/traveller/traveller.h37
-rw-r--r--keyboards/latinpadble/info.json8
-rw-r--r--keyboards/latinpadble/rules.mk32
10 files changed, 354 insertions, 512 deletions
diff --git a/keyboards/handwired/traveller/config.h b/keyboards/handwired/traveller/config.h
index fbc05b59c..2e3767e0c 100644
--- a/keyboards/handwired/traveller/config.h
+++ b/keyboards/handwired/traveller/config.h
@@ -15,21 +15,20 @@ You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>. 15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/ 16*/
17 17
18#ifndef CONFIG_H 18#pragma once
19#define CONFIG_H
20 19
21#include "config_common.h" 20#include "config_common.h"
22 21
23/* USB Device descriptor parameter */ 22/* USB Device descriptor parameter */
24#define VENDOR_ID 0xFEED 23#define VENDOR_ID 0xFEED
25#define PRODUCT_ID 0x6060 24#define PRODUCT_ID 0x6060
26#define DEVICE_VER 0x0001 25#define DEVICE_VER 0x0001
27#define MANUFACTURER You 26#define MANUFACTURER You
28#define PRODUCT traveller 27#define PRODUCT traveller
29 28
30/* key matrix size */ 29/* key matrix size */
31#define MATRIX_ROWS 4 30#define MATRIX_ROWS 4
32#define MATRIX_COLS 13 31#define MATRIX_COLS 13
33 32
34/* 33/*
35 * Keyboard Matrix Assignments 34 * Keyboard Matrix Assignments
@@ -40,26 +39,45 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
40 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) 39 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
41 * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) 40 * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
42 * 41 *
43*/ 42 */
44#define MATRIX_ROW_PINS { D0, D1, D3, D2 } 43#define MATRIX_ROW_PINS { D0, D1, D3, D2 }
45 // no I can't say why this order seemed like a good idea
46#define MATRIX_COL_PINS { B5, D6, B7, B6, F6, B1, B3, F7, B4, E6, D7, C6, D4 } 44#define MATRIX_COL_PINS { B5, D6, B7, B6, F6, B1, B3, F7, B4, E6, D7, C6, D4 }
47#define UNUSED_PINS 45#define UNUSED_PINS
48 46
49// LED stuff
50#define RGB_DI_PIN B2
51//#define RBLIGHT_TIMER
52#define RGBLED_NUM 1 // Number of LEDs
53#define RGBLIGHT_HUE_STEP 10
54#define RGBLIGHT_SAT_STEP 17
55#define RGBLIGHT_VAL_STEP 17
56
57/* COL2ROW or ROW2COL */ 47/* COL2ROW or ROW2COL */
58#define DIODE_DIRECTION COL2ROW 48#define DIODE_DIRECTION COL2ROW
59 49
60// #define BACKLIGHT_PIN B7 50//#define BACKLIGHT_PIN B7
61// #define BACKLIGHT_BREATHING 51//#define BACKLIGHT_BREATHING
62// #define BACKLIGHT_LEVELS 3 52//#define BACKLIGHT_LEVELS 3
53
54#define RGB_DI_PIN B2
55#ifdef RGB_DI_PIN
56# define RGBLED_NUM 1
57# define RGBLIGHT_HUE_STEP 10
58# define RGBLIGHT_SAT_STEP 17
59# define RGBLIGHT_VAL_STEP 17
60//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
61//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
62/*== all animations enable ==*/
63//# define RGBLIGHT_ANIMATIONS
64/*== or choose animations ==*/
65//# define RGBLIGHT_EFFECT_BREATHING
66//# define RGBLIGHT_EFFECT_RAINBOW_MOOD
67//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
68//# define RGBLIGHT_EFFECT_SNAKE
69//# define RGBLIGHT_EFFECT_KNIGHT
70//# define RGBLIGHT_EFFECT_CHRISTMAS
71//# define RGBLIGHT_EFFECT_STATIC_GRADIENT
72//# define RGBLIGHT_EFFECT_RGB_TEST
73//# define RGBLIGHT_EFFECT_ALTERNATING
74/*== customize breathing effect ==*/
75/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
76//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
77/*==== use exp() and sin() ====*/
78//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
79//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
80#endif
63 81
64/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ 82/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
65#define DEBOUNCE 5 83#define DEBOUNCE 5
@@ -67,14 +85,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
67/* define if matrix has ghost (lacks anti-ghosting diodes) */ 85/* define if matrix has ghost (lacks anti-ghosting diodes) */
68//#define MATRIX_HAS_GHOST 86//#define MATRIX_HAS_GHOST
69 87
70/* number of backlight levels */
71#define BACKLIGHT_LEVELS 3
72
73/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ 88/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
74//#define LOCKING_SUPPORT_ENABLE 89//#define LOCKING_SUPPORT_ENABLE
75/* Locking resynchronize hack */ 90/* Locking resynchronize hack */
76#define LOCKING_RESYNC_ENABLE 91#define LOCKING_RESYNC_ENABLE
77 92
93/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
94 * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
95 */
96//#define GRAVE_ESC_CTRL_OVERRIDE
97
78/* 98/*
79 * Force NKRO 99 * Force NKRO
80 * 100 *
@@ -97,54 +117,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
97//#define FORCE_NKRO 117//#define FORCE_NKRO
98 118
99/* 119/*
100 * Magic Key Options
101 *
102 * Magic keys are hotkey commands that allow control over firmware functions of
103 * the keyboard. They are best used in combination with the HID Listen program,
104 * found here: https://www.pjrc.com/teensy/hid_listen.html
105 *
106 * The options below allow the magic key functionality to be changed. This is
107 * useful if your keyboard/keypad is missing keys and you want magic key support.
108 *
109 */
110
111/* control how magic key switches layers */
112//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
113//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
114//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
115
116/* override magic key keymap */
117//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
118//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
119//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
120//#define MAGIC_KEY_HELP1 H
121//#define MAGIC_KEY_HELP2 SLASH
122//#define MAGIC_KEY_DEBUG D
123//#define MAGIC_KEY_DEBUG_MATRIX X
124//#define MAGIC_KEY_DEBUG_KBD K
125//#define MAGIC_KEY_DEBUG_MOUSE M
126//#define MAGIC_KEY_VERSION V
127//#define MAGIC_KEY_STATUS S
128//#define MAGIC_KEY_CONSOLE C
129//#define MAGIC_KEY_LAYER0_ALT1 ESC
130//#define MAGIC_KEY_LAYER0_ALT2 GRAVE
131//#define MAGIC_KEY_LAYER0 0
132//#define MAGIC_KEY_LAYER1 1
133//#define MAGIC_KEY_LAYER2 2
134//#define MAGIC_KEY_LAYER3 3
135//#define MAGIC_KEY_LAYER4 4
136//#define MAGIC_KEY_LAYER5 5
137//#define MAGIC_KEY_LAYER6 6
138//#define MAGIC_KEY_LAYER7 7
139//#define MAGIC_KEY_LAYER8 8
140//#define MAGIC_KEY_LAYER9 9
141//#define MAGIC_KEY_BOOTLOADER PAUSE
142//#define MAGIC_KEY_LOCK CAPS
143//#define MAGIC_KEY_EEPROM E
144//#define MAGIC_KEY_NKRO N
145//#define MAGIC_KEY_SLEEP_LED Z
146
147/*
148 * Feature disable options 120 * Feature disable options
149 * These options are also useful to firmware size reduction. 121 * These options are also useful to firmware size reduction.
150 */ 122 */
@@ -159,7 +131,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
159//#define NO_ACTION_LAYER 131//#define NO_ACTION_LAYER
160//#define NO_ACTION_TAPPING 132//#define NO_ACTION_TAPPING
161//#define NO_ACTION_ONESHOT 133//#define NO_ACTION_ONESHOT
162//#define NO_ACTION_MACRO
163//#define NO_ACTION_FUNCTION
164 134
165#endif 135/* disable these deprecated features by default */
136#define NO_ACTION_MACRO
137#define NO_ACTION_FUNCTION
138
139/* Bootmagic Lite key configuration */
140//#define BOOTMAGIC_LITE_ROW 0
141//#define BOOTMAGIC_LITE_COLUMN 0
diff --git a/keyboards/handwired/traveller/info.json b/keyboards/handwired/traveller/info.json
index 0a13fab77..019250eb6 100644
--- a/keyboards/handwired/traveller/info.json
+++ b/keyboards/handwired/traveller/info.json
@@ -1,65 +1,67 @@
1{ 1{
2 "keyboard_name": "traveller", 2 "keyboard_name": "Traveller",
3 "url": "", 3 "url": "",
4 "maintainer": "qmk", 4 "maintainer": "qmk",
5 "width": 1, 5 "width": 13,
6 "height": 1, 6 "height": 4,
7 "layouts": { 7 "layouts": {
8 "KEYMAP": { 8 "LAYOUT": {
9 "layout": [ 9 "layout": [
10 {"x":0, "y":0}, 10 {"x": 0, "y": 0},
11 {"x":1, "y":0}, 11 {"x": 1, "y": 0},
12 {"x":2, "y":0}, 12 {"x": 2, "y": 0},
13 {"x":3, "y":0}, 13 {"x": 3, "y": 0},
14 {"x":4, "y":0}, 14 {"x": 4, "y": 0},
15 {"x":5, "y":0}, 15 {"x": 5, "y": 0},
16 {"x":7, "y":0},
17 {"x":8, "y":0},
18 {"x":9, "y":0},
19 {"x":10, "y":0},
20 {"x":11, "y":0},
21 {"x":12, "y":0},
22 16
23 {"x":0, "y":1}, 17 {"x": 7, "y": 0},
24 {"x":1, "y":1}, 18 {"x": 8, "y": 0},
25 {"x":2, "y":1}, 19 {"x": 9, "y": 0},
26 {"x":3, "y":1}, 20 {"x": 10, "y": 0},
27 {"x":4, "y":1}, 21 {"x": 11, "y": 0},
28 {"x":5, "y":1}, 22 {"x": 12, "y": 0},
29 {"x":7, "y":1},
30 {"x":8, "y":1},
31 {"x":9, "y":1},
32 {"x":10, "y":1},
33 {"x":11, "y":1},
34 {"x":12, "y":1},
35 23
36 {"x":0, "y":2}, 24 {"x": 0, "y": 1},
37 {"x":1, "y":2}, 25 {"x": 1, "y": 1},
38 {"x":2, "y":2}, 26 {"x": 2, "y": 1},
39 {"x":3, "y":2}, 27 {"x": 3, "y": 1},
40 {"x":4, "y":2}, 28 {"x": 4, "y": 1},
41 {"x":5, "y":2}, 29 {"x": 5, "y": 1},
42 {"x":6, "y":2},
43 {"x":7, "y":2},
44 {"x":8, "y":2},
45 {"x":9, "y":2},
46 {"x":10, "y":2},
47 {"x":11, "y":2},
48 {"x":12, "y":2},
49 30
50 {"x":0, "y":3}, 31 {"x": 7, "y": 1},
51 {"x":1, "y":3}, 32 {"x": 8, "y": 1},
52 {"x":2, "y":3}, 33 {"x": 9, "y": 1},
53 {"x":3, "y":3}, 34 {"x": 10, "y": 1},
54 {"x":4, "y":3}, 35 {"x": 11, "y": 1},
55 {"x":5, "y":3}, 36 {"x": 12, "y": 1},
56 {"x":6, "y":3}, 37
57 {"x":7, "y":3}, 38 {"x": 0, "y": 2},
58 {"x":8, "y":3}, 39 {"x": 1, "y": 2},
59 {"x":9, "y":3}, 40 {"x": 2, "y": 2},
60 {"x":10, "y":3}, 41 {"x": 3, "y": 2},
61 {"x":11, "y":3}, 42 {"x": 4, "y": 2},
62 {"x":12, "y":3} 43 {"x": 5, "y": 2},
44 {"x": 6, "y": 2},
45 {"x": 7, "y": 2},
46 {"x": 8, "y": 2},
47 {"x": 9, "y": 2},
48 {"x": 10, "y": 2},
49 {"x": 11, "y": 2},
50 {"x": 12, "y": 2},
51
52 {"x": 0, "y": 3},
53 {"x": 1, "y": 3},
54 {"x": 2, "y": 3},
55 {"x": 3, "y": 3},
56 {"x": 4, "y": 3},
57 {"x": 5, "y": 3},
58 {"x": 6, "y": 3},
59 {"x": 7, "y": 3},
60 {"x": 8, "y": 3},
61 {"x": 9, "y": 3},
62 {"x": 10, "y": 3},
63 {"x": 11, "y": 3},
64 {"x": 12, "y": 3}
63 ] 65 ]
64 } 66 }
65 } 67 }
diff --git a/keyboards/handwired/traveller/keymaps/default/keymap.c b/keyboards/handwired/traveller/keymaps/default/keymap.c
index 4802b0534..661385d5d 100644
--- a/keyboards/handwired/traveller/keymaps/default/keymap.c
+++ b/keyboards/handwired/traveller/keymaps/default/keymap.c
@@ -1,254 +1,227 @@
1#include QMK_KEYBOARD_H 1#include QMK_KEYBOARD_H
2#include "mousekey.h"
3 2
4// Each layer gets a name for readability, which is then used in the keymap matrix below. 3enum layer_names {
5// The underscores don't mean anything - you can have a layer called STUFF or any other name. 4 _QW,
6#define _QW 0 5 _LW,
7#define _LW 1 6 _HI,
8#define _HI 2 7 _NAV,
9#define _NAV 4 8 _CUR,
10#define _CUR 5 9 _FKEYS,
11#define _FKEYS 6 10 _TRNS
12#define _TRNS 8 11};
13
14// We do the same trick for functions
15#define RGBLED_TOGGLE 10
16#define _HIOUT 15
17#define _LWOUT 16
18 12
19enum custom_keycodes { 13enum custom_keycodes {
20 M_MUL = SAFE_RANGE, 14 M_MUL = SAFE_RANGE,
21 M_MDL, 15 M_MDL,
22 M_MDR, 16 M_MDR,
23 M_MUR 17 M_MUR
24}; 18};
25 19
26const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 20const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
27/* Qwerty 21 /* Qwerty
28 * ,-----------------------------------------. .-----------------------------------------. 22 * ,-----------------------------------------. .-----------------------------------------.
29 * | NAV | ` ~ | W | E | R | T | | Y | U | I | O | - | = | 23 * | NAV | ` ~ | W | E | R | T | | Y | U | I | O | - | = |
30 * |------+------+------+------+------+------| |------+------+------+------+------+------| 24 * |------+------+------+------+------+------| |------+------+------+------+------+------|
31 * | Tab | Q | S | D | F | G | | H | J | K | L | P | \ | 25 * | Tab | Q | S | D | F | G | | H | J | K | L | P | \ |
32 * |------+------+------+------+------+------|------+------+------+------+------+------+------| 26 * |------+------+------+------+------+------|------+------+------+------+------+------+------|
33 *|ctrl/esc| A | X | C | V | B |Ctrl /| N | M | , | . | ; | ' | 27 * |ctrl/esc| A | X | C | V | B |Ctrl /| N | M | , | . | ; | ' |
34 * |------+------+------+------+------+------+ // +------+------+------+------+------+------| 28 * |------+------+------+------+------+------+ // +------+------+------+------+------+------|
35 * | Shift| Z | Del | GUI | Low | Bspc |/Enter| Spc | Hi | GUI | Alt | / |Shift | 29 * | Shift| Z | Del | GUI | Low | Bspc |/Enter| Spc | Hi | GUI | Alt | / |Shift |
36 * `------------------------------------------------------------------------------------------' 30 * `------------------------------------------------------------------------------------------'
37 * 31 */
38 */ 32 [_QW] = LAYOUT(
39[_QW] = KEYMAP( 33 TG(_NAV), KC_GRV, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_MINS, KC_EQL,
40 TG(_NAV), KC_GRV, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_MINS, KC_EQL, 34 KC_TAB, KC_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_P, KC_BSLS,
41 KC_TAB, KC_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_P, KC_BSLS, 35 CTL_T(KC_ESC), KC_A, KC_X, KC_C, KC_V, KC_B, KC_RCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SCLN, KC_QUOT,
42 CTL_T(KC_ESC), KC_A, KC_X, KC_C, KC_V, KC_B, KC_RCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SCLN, KC_QUOT, 36 KC_LSFT, KC_Z, KC_DEL, KC_LGUI, MO(_LW), KC_BSPC, KC_ENT, KC_SPC, MO(_HI), KC_RGUI, KC_RALT, KC_SLSH, KC_RSFT
43 KC_LSFT, KC_Z, KC_DEL, KC_LGUI, MO(_LW), KC_BSPC, KC_ENTER, KC_SPC, MO(_HI), KC_RGUI, KC_RALT, KC_SLSH, KC_RSFT 37 ),
44 ), 38
45 39 /* LOW - numbers, missing or awkward programming keys
46/* LOW - numbers, missing or awkward programming keys 40 Doubled 1 key allows lazy reach with ring finger.
47 Doubled 1 key allows lazy reach with ring finger. 41 * ,-----------------------------------------. .-----------------------------------------.
48 * ,-----------------------------------------. .-----------------------------------------. 42 * | FKeys| 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 |Ctrl-alt-del|
49 * | FKeys| 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 |Ctrl-alt-del| 43 * |------+------+------+------+------+------| +------+------+------+------+------+------|
50 * |------+------+------+------+------+------| +------+------+------+------+------+------| 44 * | Tab | 1 | ] | ( | ) | | | * | ( | ) | [ | | |
51 * | Tab | 1 | ] | ( | ) | | | * | ( | ) | [ | | | 45 * |------+------+------+------+------+------|------+------+------+------+------+------+------|
52 * |------+------+------+------+------+------|------+------+------+------+------+------+------| 46 * | Caps | [ | | { | } | ` | /| # | { | } | | ] | |
53 * | Caps | [ | | { | } | ` | /| # | { | } | | ] | | 47 * |------+------+------+------+------+------+ // +------+------+------+------+------+------|
54 * |------+------+------+------+------+------+ // +------+------+------+------+------+------| 48 * | Shift| | | | Low | |/ | | Hi | | | |Shift |
55 * | Shift| | | | Low | |/ | | Hi | | | |Shift | 49 * `------------------------------------------------------------------------------------------'
56 * `------------------------------------------------------------------------------------------' 50 */
57 * 51 [_LW] = LAYOUT(
58 */ 52 TG(_FKEYS), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, LCTL(LALT(KC_DEL)),
59 53 _______, KC_1, KC_RBRC, KC_LPRN, KC_RPRN, XXXXXXX, KC_ASTR, KC_LPRN, KC_RPRN, KC_LBRC, XXXXXXX, XXXXXXX,
60[_LW] = KEYMAP( 54 KC_CAPS, KC_LBRC, XXXXXXX, KC_LCBR, KC_RCBR, KC_TILD, _______, KC_HASH, KC_LCBR, KC_RCBR, XXXXXXX, KC_RBRC, XXXXXXX,
61 TG(_FKEYS), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, LCTL(LALT(KC_DEL)) , 55 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
62 KC_TRNS, KC_1, KC_RBRC, KC_LPRN, KC_RPRN, KC_NO, KC_ASTR, KC_LPRN, KC_RPRN, KC_LBRC, KC_NO, KC_NO, 56 ),
63 KC_CAPS, KC_LBRC, KC_NO, KC_LCBR, KC_RCBR, KC_TILD, KC_TRNS, KC_HASH, KC_LCBR, KC_RCBR, KC_NO, KC_RBRC, KC_NO, 57
64 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS 58 /* HI - Punctuation, shell and
65), 59 * url ://@.com row on bottom, && is opposite || ^$ are in regex order: ^.*$
66 60 * Right hand nav keys work pretty well chorded with the Right hand Hi Key
67/* HI - Punctuation, shell and 61 * ,-----------------------------------------. .-----------------------------------------.
68url ://@.com row on bottom, && is opposite || ^$ are in regex order: ^.*$ 62 * |FKEYS | ! | @ | # | $ | % | | ^ | & | * | ( | ) | + |
69Right hand nav keys work pretty well chorded with the Right hand Hi Key 63 * |------+------+------+------+------+------| |------+------+------+------+------+------|
70 * ,-----------------------------------------. .-----------------------------------------. 64 * | | ! | & | "|" | $ | % | | Vol+| Mute| | | | |
71 * |FKEYS | ! | @ | # | $ | % | | ^ | & | * | ( | ) | + | 65 * |------+------+------+------+------+------|------+------+------+------+------+------+------|
72 * |------+------+------+------+------+------| |------+------+------+------+------+------| 66 * | CAPS | ^ | : | . | * | - | /| Vol-| Play | PgUp | Home | Up | End |
73 * | | ! | & | "|" | $ | % | | Vol+| Mute| | | | | 67 * |------+------+------+------+------+------+ // +------+------+------+------+------+------|
74 * |------+------+------+------+------+------|------+------+------+------+------+------+------| 68 * | | / | | | Low | |/ | | Hi | PgDn | Left| Down | Right |
75 * | CAPS | ^ | : | . | * | - | /| Vol-| Play | PgUp | Home | Up | End | 69 * `------------------------------------------------------------------------------------------'
76 * |------+------+------+------+------+------+ // +------+------+------+------+------+------| 70 */
77 * | | / | | | Low | |/ | | Hi | PgDn | Left| Down | Right | 71 [_HI] = LAYOUT(
78 * `------------------------------------------------------------------------------------------' 72 TG(_FKEYS), KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS,
79 * 73 _______, KC_EXLM, KC_AMPR, KC_PIPE, KC_DLR, KC_PERC, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
80 */ 74 KC_CAPS, KC_CIRC, KC_COLN, KC_DOT, KC_ASTR, KC_MINS, _______, KC_VOLD, KC_PPLS, KC_PGUP, KC_HOME, KC_UP, KC_END,
81 75 _______, KC_SLSH, _______, _______, TT(_LW), _______, _______, _______, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT
82[_HI] = KEYMAP( 76 ),
83 TG(_FKEYS),KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS, 77
84 KC_TRNS, KC_EXLM, KC_AMPR, KC_PIPE, KC_DLR, KC_PERC, KC_VOLU, KC_MUTE, KC_NO, KC_NO, KC_NO, KC_NO, 78 /* NAV - mouse & navigation
85 KC_CAPS, KC_CIRC, KC_COLN, KC_DOT, KC_ASTR, KC_MINS, KC_TRNS, KC_VOLD, KC_PPLS, KC_PGUP, KC_HOME, KC_UP, KC_END, 79 * gui left and right are line home/end, or fore & back in browser
86 KC_TRNS, KC_SLSH, KC_TRNS, KC_TRNS, TT(_LW), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RIGHT 80 * Mouse buttons are reversed for comfort - bigger stretch is to the right button.
87), 81 *
88 82 * ,-----------------------------------------. .-----------------------------------------.
89/* NAV - mouse & navigation 83 * | NAV | | | Up | |Gui-> | | MwU | MS_UL| MS_U |MS_UR | |Ms Norm|
90//gui left and right are line home/end, or fore & back in browser 84 * |------+------+------+------+------+------| |------+------+------+------+------+--------|
91// Mouse buttons are reversed for comfort - bigger stretch is to the right button. 85 * | |Gui<- | Left | Down |Right | C^E | | BTN3 | MS_L |MS Up | MS_R | |Ms Fast |
92 86 * |------+------+------+------+------+------|------|------+------+------+------+------+--------|
93 * ,-----------------------------------------. .-----------------------------------------. 87 * | | C^A | GUI X| GUI C| GUI_V| |Enter/| MWD | M_DL |MS Dwn|MS_DR | Up |Ms Slow |
94* | NAV | | | Up | |Gui-> | | MwU | MS_UL| MS_U |MS_UR | |Ms Norm| 88 * |------+------+------+------+------+------+ // +------+------+------+------+------+------|
95* |------+------+------+------+------+------| |------+------+------+------+------+--------| 89 * | | GuiZ | | | Low | |/ButnR|ButnL | Hi | | Left | Down | Right |
96* | |Gui<- | Left | Down |Right | C^E | | BTN3 | MS_L |MS Up | MS_R | |Ms Fast | 90 * `------------------------------------------------------------------------------------------'
97* |------+------+------+------+------+------|------|------+------+------+------+------+--------| 91 */
98* | | C^A | GUI X| GUI C| GUI_V| |Enter/| MWD | M_DL |MS Dwn|MS_DR | Up |Ms Slow | 92 [_NAV] = LAYOUT(
99* |------+------+------+------+------+------+ // +------+------+------+------+------+------| 93 TG(_NAV), XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, RGUI(KC_RGHT), KC_WH_U, M_MUL, KC_MS_U, M_MUR, XXXXXXX, KC_ACL2,
100* | | GuiZ | | | Low | |/ButnR|ButnL | Hi | | Left | Down | Right | 94 _______, RGUI(KC_LEFT), KC_LEFT, KC_DOWN, KC_RGHT, LCTL(KC_E), KC_BTN3, KC_MS_L, KC_MS_U, KC_MS_R, XXXXXXX, KC_ACL1,
101* `------------------------------------------------------------------------------------------' 95 _______, LCTL(KC_A), LGUI(KC_X), RGUI(KC_C), RGUI(KC_V), XXXXXXX, KC_ENT, KC_WH_D, M_MDL, KC_MS_D, M_MDR, KC_UP, KC_ACL0,
102*/ 96 _______, RGUI(KC_Z), _______, _______, _______, _______, KC_BTN2, KC_BTN1, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT
103 97 ),
104[_NAV] = KEYMAP( 98
105 TG(_NAV), KC_NO, KC_NO, KC_UP, KC_NO, RGUI(KC_RIGHT), KC_WH_U, M_MUL, KC_MS_U, M_MUR, KC_NO, KC_ACL2, 99 /* FKEYS - Funtion keys & mac stuff
106 KC_TRNS, RGUI(KC_LEFT), KC_LEFT, KC_DOWN, KC_RIGHT, LCTL(KC_E), KC_BTN3, KC_MS_L, KC_MS_U, KC_MS_R, KC_NO, KC_ACL1, 100 * ,-----------------------------------------. .-----------------------------------------.
107 KC_TRNS, LCTL(KC_A), LGUI(KC_X),RGUI(KC_C), RGUI(KC_V),KC_NO, KC_ENTER, KC_WH_D, M_MDL, KC_MS_D, M_MDR, KC_UP, KC_ACL0, 101 * | FKEYS| F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | Ctrl |
108 KC_TRNS, RGUI(KC_Z), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN2, KC_BTN1, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT 102 * |------+------+------+------+------+------| |------+------+------+------+------+------|
109), 103 * | | | | | | | | F11 | F12 | F13 | F14 | F15 | Alt |
110 104 * |------+------+------+------+------+------|------+------+------+------+------+------+------|
111/* FKEYS - Funtion keys & mac stuff 105 * |Qwerty| | | | | | /| | | | | | Del |
112 * ,-----------------------------------------. .-----------------------------------------. 106 * |------+------+------+------+------+------+ // +------+------+------+------+------+------|
113 * | FKEYS| F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | Ctrl | 107 * | . |RGBTog| . | | LO | Bspc |/ | | HI | | | | |
114 * |------+------+------+------+------+------| |------+------+------+------+------+------| 108 * `------------------------------------------------------------------------------------------'
115 * | | | | | | | | F11 | F12 | F13 | F14 | F15 | Alt | 109 */
116 * |------+------+------+------+------+------|------+------+------+------+------+------+------| 110 [_FKEYS] = LAYOUT(
117 * |Qwerty| | | | | | /| | | | | | Del | 111 TG(_FKEYS), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_RCTL,
118 * |------+------+------+------+------+------+ // +------+------+------+------+------+------| 112 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_LALT,
119 * | . |RGBTog| . | | LO | Bspc |/ | | HI | | | | | 113 TO(_QW), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL,
120 * `------------------------------------------------------------------------------------------' 114 _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
121 * 115 ),
122 */ 116
123 117 /* TRNS - skeleton for laters
124[_FKEYS] = KEYMAP( 118 * ,-----------------------------------------. .-----------------------------------------.
125 TG(_FKEYS),KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_RCTL, 119 * | . | . | . | . | . | . | | ^ | & | * | ( | ) | |
126 KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_LALT , 120 * |------+------+------+------+------+------| |------+------+------+------+------+------|
127 TO(_QW), KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DEL, 121 * | . | . | . | . | . | . | | 6 | 7 | 8 | 9 | 0 | |
128 KC_TRNS, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS 122 * |------+------+------+------+------+------|------+------+------+------+------+------+------|
129), 123 * | . | . | . | . | . | . | /| | | | . | ; | " |
130 124 * |------+------+------+------+------+------+ // +------+------+------+------+------+------|
131 125 * | . | . | . | GUI | LO | . |/ | Spc | HI | GUI | M0 | / |LSFT |
132/* TRNS - skeleton for laters 126 * `------------------------------------------------------------------------------------------'
133 * ,-----------------------------------------. .-----------------------------------------. 127 */
134 * | . | . | . | . | . | . | | ^ | & | * | ( | ) | | 128 [_TRNS] = LAYOUT(
135 * |------+------+------+------+------+------| |------+------+------+------+------+------| 129 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
136 * | . | . | . | . | . | . | | 6 | 7 | 8 | 9 | 0 | | 130 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
137 * |------+------+------+------+------+------|------+------+------+------+------+------+------| 131 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
138 * | . | . | . | . | . | . | /| | | | . | ; | " | 132 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
139 * |------+------+------+------+------+------+ // +------+------+------+------+------+------| 133 )
140 * | . | . | . | GUI | LO | . |/ | Spc | HI | GUI | M0 | / |LSFT |
141 * `------------------------------------------------------------------------------------------'
142 *
143 */
144
145[_TRNS] = {
146 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS},
147 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS},
148 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS},
149 {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}
150 }
151
152
153}; 134};
154 135
155bool process_record_user(uint16_t keycode, keyrecord_t *record) { 136bool process_record_user(uint16_t keycode, keyrecord_t *record) {
156 switch (keycode) { 137 switch (keycode) {
157 // from algernon's ErgoDox EZ layout, 138 // from algernon's ErgoDox EZ layout,
158 case M_MUL: 139 case M_MUL:
159 if (record->event.pressed) { 140 if (record->event.pressed) {
160 mousekey_on(KC_MS_UP); 141 mousekey_on(KC_MS_UP);
161 mousekey_on(KC_MS_LEFT); 142 mousekey_on(KC_MS_LEFT);
162 } else { 143 } else {
163 mousekey_off(KC_MS_UP); 144 mousekey_off(KC_MS_UP);
164 mousekey_off(KC_MS_LEFT); 145 mousekey_off(KC_MS_LEFT);
165 } 146 }
166 mousekey_send(); 147 mousekey_send();
167 return false; 148 return false;
168 149 case M_MUR:
169 case M_MUR: 150 if (record->event.pressed) {
170 if (record->event.pressed) { 151 mousekey_on(KC_MS_UP);
171 mousekey_on(KC_MS_UP); 152 mousekey_on(KC_MS_RIGHT);
172 mousekey_on(KC_MS_RIGHT); 153 } else {
173 } else { 154 mousekey_off(KC_MS_UP);
174 mousekey_off(KC_MS_UP); 155 mousekey_off(KC_MS_RIGHT);
175 mousekey_off(KC_MS_RIGHT); 156 }
176 } 157 mousekey_send();
177 mousekey_send(); 158 return false;
178 return false; 159 case M_MDL:
179 160 if (record->event.pressed) {
180 case M_MDL: 161 mousekey_on(KC_MS_DOWN);
181 if (record->event.pressed) { 162 mousekey_on(KC_MS_LEFT);
182 mousekey_on(KC_MS_DOWN); 163 } else {
183 mousekey_on(KC_MS_LEFT); 164 mousekey_off(KC_MS_DOWN);
184 } else { 165 mousekey_off(KC_MS_LEFT);
185 mousekey_off(KC_MS_DOWN); 166 }
186 mousekey_off(KC_MS_LEFT); 167 mousekey_send();
187 } 168 return false;
188 mousekey_send(); 169 case M_MDR:
189 return false; 170 if (record->event.pressed) {
171 mousekey_on(KC_MS_DOWN);
172 mousekey_on(KC_MS_RIGHT);
173 } else {
174 mousekey_off(KC_MS_DOWN);
175 mousekey_off(KC_MS_RIGHT);
176 }
177 mousekey_send();
178 return false;
179 default:
180 return true;
181 }
190 182
191 case M_MDR:
192 if (record->event.pressed) {
193 mousekey_on(KC_MS_DOWN);
194 mousekey_on(KC_MS_RIGHT);
195 } else {
196 mousekey_off(KC_MS_DOWN);
197 mousekey_off(KC_MS_RIGHT);
198 }
199 mousekey_send();
200 return false;
201 default:
202 return true;
203 }
204 return true; 183 return true;
205}; 184};
206 185
207void LayerLEDSet(uint8_t layr) { 186void LayerLEDSet(uint8_t layr) {
208
209 switch (layr) { 187 switch (layr) {
210 case _QW: 188 case _QW:
211 rgblight_setrgb(0,20, 0); // dim green 189 // dim green
212 break; 190 rgblight_setrgb(0, 20, 0);
191 break;
213 case _LW: 192 case _LW:
214 // deep purple 193 // deep purple
215 rgblight_setrgb(20,0,35); 194 rgblight_setrgb(20, 0, 35);
216 break; 195 break;
217 case _HI: 196 case _HI:
218 // light blue 197 // light blue
219 rgblight_setrgb(0,20,20); 198 rgblight_setrgb(0, 20, 20);
220 break; 199 break;
221 case _NAV: 200 case _NAV:
222 // Yellowy orange 201 // yellowy orange
223 rgblight_setrgb(25,20,0); // brighter 202 rgblight_setrgb(25, 20, 0);
224 break; 203 break;
225 case _FKEYS: 204 case _FKEYS:
226 // RED 205 // red
227 rgblight_setrgb(20,0,0); // brighter 206 rgblight_setrgb(20, 0, 0);
228 break; 207 break;
229 default: 208 default:
230 rgblight_setrgb(20,2,20);//error 209 // error
210 rgblight_setrgb(20,2,20);
231 break; 211 break;
232 } 212 }
233 213
234 return; 214 return;
235
236}
237
238void matrix_init_user(void) {
239} 215}
240 216
241// Bleah globals need to be initialized. 217// Bleah globals need to be initialized.
242uint8_t old_layer=_QW; 218uint8_t old_layer = _QW;
243 219
244void matrix_scan_user(void) { 220void matrix_scan_user(void) {
245 uint8_t layer = biton32(layer_state); 221 uint8_t layer = biton32(layer_state);
246 if (old_layer != layer) {
247 LayerLEDSet(layer);
248 old_layer=layer;
249 }
250}
251
252void led_set_user(uint8_t usb_led) {
253 222
223 if (old_layer != layer) {
224 LayerLEDSet(layer);
225 old_layer = layer;
226 }
254} 227}
diff --git a/keyboards/handwired/traveller/keymaps/default/readme.md b/keyboards/handwired/traveller/keymaps/default/readme.md
deleted file mode 100644
index 7ddc40b3c..000000000
--- a/keyboards/handwired/traveller/keymaps/default/readme.md
+++ /dev/null
@@ -1,2 +0,0 @@
1# The default keymap for handwired/traveller
2this is a kitchen sink build
diff --git a/keyboards/handwired/traveller/readme.md b/keyboards/handwired/traveller/readme.md
index 0be53a962..135a0d2ca 100644
--- a/keyboards/handwired/traveller/readme.md
+++ b/keyboards/handwired/traveller/readme.md
@@ -1,35 +1,21 @@
1traveler keyboard firmware 1# Traveller
2======================
3 2
4## Traveller Specific Info ## 3The Traveller is a variant on the atreus keyboard.
5The traveller is a varient on the atreus keyboard. 4Like the Atreus, it is designed to be a good compromise between size and ergonomics.
6Like the Atreus, it is designed to be a good compromise between size and ergonomics.
7 5
8key differences are 6Key differences are:
9- an additional column for each pinky 7- An additional column for each pinky
10- an RGB LED in the center to show the current layer 8- An RGB LED in the center to show the current layer
11- more finger stagger, splay angle and contoured keycaps (F2 profile for space key). 9- More finger stagger, splay angle and contoured keycaps (F2 profile for space key).
12 10
13You can make your own traveller keyboard by using the openscad tools from the atreus repository, and adding a hole for the LED to shine through. 11You can make your own Traveller keyboard by using the openscad tools from the atreus repository, and adding a hole for the LED to shine through.
14 12
15## Quantum MK Firmware 13Make example for this keyboard (after setting up your build environment):
16 14
17For the full Quantum feature list, see [the parent README.md](/readme.md). 15 make handwired/traveller:default
18 16
19## Building 17Flashing example for this keyboard:
20 18
21Download or clone the whole firmware and navigate to the keyboard/traveler folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. 19 make handwired/traveller:default:flash
22 20
23Depending on which keymap you would like to use, you will have to compile slightly differently. 21See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
24
25### Default
26To build with the default keymap, simply run `make`.
27
28### Other Keymaps
29Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `<name>.c` and see keymap document (you can find in top README.md) and existent keymap files.
30
31To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like:
32```
33$ make KEYMAP=[default|jack|<name>]
34```
35Keymaps follow the format **__\<name\>.c__** and are stored in the `keymaps` folder.
diff --git a/keyboards/handwired/traveller/rules.mk b/keyboards/handwired/traveller/rules.mk
index 0758e5934..806a19af3 100644
--- a/keyboards/handwired/traveller/rules.mk
+++ b/keyboards/handwired/traveller/rules.mk
@@ -2,42 +2,21 @@
2MCU = atmega32u4 2MCU = atmega32u4
3 3
4# Bootloader selection 4# Bootloader selection
5# Teensy halfkay 5BOOTLOADER = caterina
6# Pro Micro caterina
7# Atmel DFU atmel-dfu
8# LUFA DFU lufa-dfu
9# QMK DFU qmk-dfu
10# ATmega32A bootloadHID
11# ATmega328P USBasp
12ifdef TEENSY2
13 BOOTLOADER = halfkay
14 OPT_DEFS += -DATREUS_TEENSY2
15 ATREUS_UPLOAD_COMMAND = teensy_loader_cli -w -mmcu=$(MCU) $(TARGET).hex
16else
17 BOOTLOADER = caterina
18 OPT_DEFS += -DATREUS_ASTAR
19 ATREUS_UPLOAD_COMMAND = while [ ! -r $(USB) ]; do sleep 1; done; \
20 avrdude -p $(MCU) -c avr109 -U flash:w:$(TARGET).hex -P $(USB)
21endif
22 6
23# Build Options 7# Build Options
24# change yes to no to disable 8# change yes to no to disable
25# 9#
26BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) 10BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
27MOUSEKEY_ENABLE = yes # Mouse keys(+4700) 11MOUSEKEY_ENABLE = yes # Mouse keys
28EXTRAKEY_ENABLE = yes # Audio control and System control(+450) 12EXTRAKEY_ENABLE = yes # Audio control and System control
29CONSOLE_ENABLE = no # Console for debug(+400) 13CONSOLE_ENABLE = no # Console for debug
30COMMAND_ENABLE = no # Commands for debug and configuration 14COMMAND_ENABLE = no # Commands for debug and configuration
31# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE 15# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
32SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend 16SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
33# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work 17# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
34NKRO_ENABLE = no # USB Nkey Rollover 18NKRO_ENABLE = no # USB Nkey Rollover
35BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default 19BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
36MIDI_ENABLE = no # MIDI controls 20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
37UNICODE_ENABLE = no # Unicode 21BLUETOOTH_ENABLE = no # Enable Bluetooth
38BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID 22AUDIO_ENABLE = no # Audio output
39AUDIO_ENABLE = no # Audio output on port C6
40RGBLIGHT_ENABLE = yes
41
42# for avr upload
43USB = /dev/cu.usbmodem1421
diff --git a/keyboards/handwired/traveller/traveller.c b/keyboards/handwired/traveller/traveller.c
index 9d2534130..409abe7d1 100644
--- a/keyboards/handwired/traveller/traveller.c
+++ b/keyboards/handwired/traveller/traveller.c
@@ -1,61 +1,18 @@
1#include "traveller.h" 1#include "traveller.h"
2 2
3__attribute__ ((weak))
4void matrix_init_user(void) {
5 // leave this function blank - it can be defined in a keymap file
6};
7
8__attribute__ ((weak))
9void matrix_scan_user(void) {
10 // leave this function blank - it can be defined in a keymap file
11}
12
13__attribute__ ((weak))
14void process_action_user(keyrecord_t *record) {
15 // leave this function blank - it can be defined in a keymap file
16}
17
18__attribute__ ((weak))
19void led_set_user(uint8_t usb_led) {
20 // leave this function blank - it can be defined in a keymap file
21}
22
23void matrix_init_kb(void) { 3void matrix_init_kb(void) {
24 // put your keyboard start-up code here 4 // put your keyboard start-up code here
25 // runs once when the firmware starts up 5 // runs once when the firmware starts up
26 6
27#ifdef RGBLIGHT_ENABLE 7#ifdef RGBLIGHT_ENABLE
28 rgblight_init(); 8 rgblight_init();
29 rgblight_mode(1); // solid, no timer 9 rgblight_mode(1); // solid, no timer
30 rgblight_setrgb(0,20,0);// dim green, happens to be same as _QW 10 rgblight_setrgb(0,20,0);// dim green, happens to be same as _QW
31#endif 11#endif
32 12
33// Turn status LED on 13 // Turn status LED on
34 DDRC |= (1<<7); 14 setPinOutput(C7);
35 PORTC |= (1<<7); 15 writePinHigh(C7);
36 16
37 matrix_init_user(); 17 matrix_init_user();
38} 18}
39
40
41void matrix_scan_kb(void) {
42 // put your looping keyboard code here
43 // runs every cycle (a lot)
44
45 matrix_scan_user();
46}
47
48bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
49 // put your per-action keyboard code here
50 // runs for every action, just before processing by the firmware
51
52 return process_record_user(keycode, record);
53}
54
55void led_set_kb(uint8_t usb_led) {
56 // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
57
58 led_set_user(usb_led);
59}
60
61
diff --git a/keyboards/handwired/traveller/traveller.h b/keyboards/handwired/traveller/traveller.h
index acf2ee702..e3c096e4e 100644
--- a/keyboards/handwired/traveller/traveller.h
+++ b/keyboards/handwired/traveller/traveller.h
@@ -1,32 +1,17 @@
1#ifndef TRAVELLER_H 1#pragma once
2#define TRAVELLER_H
3 2
4#include "quantum.h" 3#include "quantum.h"
5#include "led.h"
6 4
7#ifdef RGBLIGHT_ENABLE 5#define XXX KC_NO
8 #include "rgblight.h"
9#endif
10#ifdef BACKLIGHT_ENABLE
11 #include "backlight.h"
12#endif
13 6
14
15
16// This a shortcut to help you visually see your layout.
17// The first section contains all of the arguements
18// The second converts the arguments into a two-dimensional array
19#define LAYOUT( \ 7#define LAYOUT( \
20 k00, k01, k02, k03, k04, k05, k07, k08, k09, k0a, k0b, k0c, \ 8 k00, k01, k02, k03, k04, k05, k07, k08, k09, k0A, k0B, k0C, \
21 k10, k11, k12, k13, k14, k15, k17, k18, k19, k1a, k1b, k1c, \ 9 k10, k11, k12, k13, k14, k15, k17, k18, k19, k1A, k1B, k1C, \
22 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \ 10 k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, \
23 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c \ 11 k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C \
24) \ 12) { \
25{ \ 13 { k00, k01, k02, k03, k04, k05, XXX, k07, k08, k09, k0A, k0B, k0C }, \
26 { k00, k01, k02, k03, k04, k05, KC_NO, k07, k08, k09, k0a, k0b, k0c }, \ 14 { k10, k11, k12, k13, k14, k15, XXX, k17, k18, k19, k1A, k1B, k1C }, \
27 { k10, k11, k12, k13, k14, k15, KC_NO, k17, k18, k19, k1a, k1b, k1c }, \ 15 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C }, \
28 { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c }, \ 16 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C } \
29 { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c } \
30} 17}
31
32#endif
diff --git a/keyboards/latinpadble/info.json b/keyboards/latinpadble/info.json
index d650dc9f6..4b84bb6c8 100644
--- a/keyboards/latinpadble/info.json
+++ b/keyboards/latinpadble/info.json
@@ -2,28 +2,28 @@
2 "keyboard_name": "latinpadble", 2 "keyboard_name": "latinpadble",
3 "url": "https://github.com/latincompass/2-RotaryEncoder-pad", 3 "url": "https://github.com/latincompass/2-RotaryEncoder-pad",
4 "maintainer": "haierwangwei2005", 4 "maintainer": "haierwangwei2005",
5
6 "width": 4, 5 "width": 4,
7 "height": 5, 6 "height": 5,
8 "layouts": { 7 "layouts": {
9 8 "LAYOUT_pad": {
10 "LAYOUT": {
11 "layout": [ 9 "layout": [
12 {"label":"Num Lock", "x":0, "y":0, "w":0.8, "h":0.8}, 10 {"label":"Num Lock", "x":0, "y":0, "w":0.8, "h":0.8},
13 {"label":"/", "x":0.8, "y":0, "w":0.8, "h":0.8},
14 11
15 {"label":"7", "x":0, "y":1}, 12 {"label":"7", "x":0, "y":1},
16 {"label":"8", "x":1, "y":1}, 13 {"label":"8", "x":1, "y":1},
17 {"label":"9", "x":2, "y":1}, 14 {"label":"9", "x":2, "y":1},
18 {"label":"+", "x":3, "y":1}, 15 {"label":"+", "x":3, "y":1},
16
19 {"label":"4", "x":0, "y":2}, 17 {"label":"4", "x":0, "y":2},
20 {"label":"5", "x":1, "y":2}, 18 {"label":"5", "x":1, "y":2},
21 {"label":"6", "x":2, "y":2}, 19 {"label":"6", "x":2, "y":2},
22 {"label":"+", "x":3, "y":2}, 20 {"label":"+", "x":3, "y":2},
21
23 {"label":"1", "x":0, "y":3}, 22 {"label":"1", "x":0, "y":3},
24 {"label":"2", "x":1, "y":3}, 23 {"label":"2", "x":1, "y":3},
25 {"label":"3", "x":2, "y":3}, 24 {"label":"3", "x":2, "y":3},
26 {"label":"Enter", "x":3, "y":3}, 25 {"label":"Enter", "x":3, "y":3},
26
27 {"label":"0", "x":0, "y":4}, 27 {"label":"0", "x":0, "y":4},
28 {"label":"0", "x":1, "y":4}, 28 {"label":"0", "x":1, "y":4},
29 {"label":".", "x":2, "y":4}, 29 {"label":".", "x":2, "y":4},
diff --git a/keyboards/latinpadble/rules.mk b/keyboards/latinpadble/rules.mk
index 7754e3e01..d4c69eb5e 100644
--- a/keyboards/latinpadble/rules.mk
+++ b/keyboards/latinpadble/rules.mk
@@ -1,29 +1,16 @@
1
2# MCU name 1# MCU name
3MCU = atmega32u4 2MCU = atmega32u4
4 3
5# Bootloader selection 4# Processor frequency
6# Teensy halfkay
7# Pro Micro caterina
8# Atmel DFU atmel-dfu
9# LUFA DFU lufa-dfu
10# QMK DFU qmk-dfu
11# ATmega32A bootloadHID
12# ATmega328P USBasp
13BOOTLOADER = caterina
14F_CPU = 8000000 5F_CPU = 8000000
15 6
16 7# Bootloader selection
17# Feather uses the caterina bootloader 8BOOTLOADER = caterina
18OPT_DEFS += -DBOOTLOADER_SIZE=4096 -DCATERINA_BOOTLOADER
19 9
20# Build Options 10# Build Options
21# change yes to no to disable 11# change yes to no to disable
22# 12#
23 13BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
24# Build Options
25# change yes to no to disable
26BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
27MOUSEKEY_ENABLE = yes # Mouse keys 14MOUSEKEY_ENABLE = yes # Mouse keys
28EXTRAKEY_ENABLE = yes # Audio control and System control 15EXTRAKEY_ENABLE = yes # Audio control and System control
29CONSOLE_ENABLE = no # Console for debug 16CONSOLE_ENABLE = no # Console for debug
@@ -32,12 +19,11 @@ COMMAND_ENABLE = no # Commands for debug and configuration
32SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend 19SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
33# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work 20# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
34NKRO_ENABLE = no # USB Nkey Rollover 21NKRO_ENABLE = no # USB Nkey Rollover
35BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default 22BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
36MIDI_ENABLE = no # MIDI controls 23RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
37UNICODE_ENABLE = no # Unicode 24BLUETOOTH_ENABLE = no # Enable Bluetooth
38AUDIO_ENABLE = no # Audio output on port C6 25AUDIO_ENABLE = no # Audio output
26
39BLUETOOTH = AdafruitBLE 27BLUETOOTH = AdafruitBLE
40RGBLIGHT_ENABLE = yes
41OLED_DRIVER_ENABLE = yes 28OLED_DRIVER_ENABLE = yes
42ENCODER_ENABLE = yes 29ENCODER_ENABLE = yes
43