aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Dockerfile4
-rwxr-xr-xavrdude14
-rw-r--r--docker-compose.yml3
-rw-r--r--keyboards/lets_split/keymaps/adam/config.h42
-rw-r--r--keyboards/lets_split/keymaps/adam/keymap.c79
-rw-r--r--keyboards/lets_split/keymaps/adam/makefile1
6 files changed, 141 insertions, 2 deletions
diff --git a/Dockerfile b/Dockerfile
index 88da06f02..bc0285a44 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -15,6 +15,8 @@ RUN apt-get update && apt-get install --no-install-recommends -y build-essential
15 binutils-arm-none-eabi \ 15 binutils-arm-none-eabi \
16 libnewlib-arm-none-eabi \ 16 libnewlib-arm-none-eabi \
17 git \ 17 git \
18 software-properties-common \
19 avrdude \
18 && rm -rf /var/lib/apt/lists/* 20 && rm -rf /var/lib/apt/lists/*
19 21
20ENV keyboard=ergodox 22ENV keyboard=ergodox
@@ -23,4 +25,4 @@ ENV keymap=default
23 25
24VOLUME /qmk 26VOLUME /qmk
25WORKDIR /qmk 27WORKDIR /qmk
26CMD make clean ; make keyboard=${keyboard} subproject=${subproject} keymap=${keymap} 28CMD make clean; make;
diff --git a/avrdude b/avrdude
new file mode 100755
index 000000000..293825e44
--- /dev/null
+++ b/avrdude
@@ -0,0 +1,14 @@
1#!/bin/bash
2set -x
3BUILD_DIR=.
4TARGET=lets_split_rev2_adam.hex
5MCU=atmega32u4
6ls /dev/tty* > /tmp/1;
7echo "Reset your Pro Micro now";
8while [[ -z $USB ]]; do
9 echo "."
10 sleep 1;
11 ls /dev/tty* > /tmp/2;
12 USB=`diff /tmp/1 /tmp/2 | grep -o '/dev/tty.*'`;
13done;
14avrdude -p $MCU -c avr109 -P $USB -U flash:w:$BUILD_DIR/$TARGET
diff --git a/docker-compose.yml b/docker-compose.yml
index 2f58e20cf..4657e7822 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -4,7 +4,8 @@
4qmk: 4qmk:
5 build: . 5 build: .
6 environment: 6 environment:
7 keyboard: lets_split
7 keymap: adam 8 keymap: adam
8 keyboard: ergodox 9 subproject: rev2
9 volumes: 10 volumes:
10 - .:/qmk 11 - .:/qmk
diff --git a/keyboards/lets_split/keymaps/adam/config.h b/keyboards/lets_split/keymaps/adam/config.h
new file mode 100644
index 000000000..fbd739f32
--- /dev/null
+++ b/keyboards/lets_split/keymaps/adam/config.h
@@ -0,0 +1,42 @@
1/*
2Copyright 2012 Jun Wako <wakojun@gmail.com>
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18
19#define USE_SERIAL
20
21//#define MASTER_LEFT
22// #define MASTER_RIGHT
23#define EE_HANDS
24
25#ifdef SUBPROJECT_rev1
26 #include "../../rev1/config.h"
27#endif
28#ifdef SUBPROJECT_rev2
29 #include "../../rev2/config.h"
30 /* RGB Underglow */
31 #undef RGBLED_NUM
32 #define RGBLIGHT_ANIMATIONS
33 #define RGBLED_NUM 8
34#endif
35#ifdef SUBPROJECT_rev2fliphalf
36 #include "../../rev2fliphalf/config.h"
37#endif
38
39#undef TAPPING_TERM
40#define TAPPING_TERM 200 //At 500 some bad logic takes hold
41#define PREVENT_STUCK_MODIFIERS
42#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/lets_split/keymaps/adam/keymap.c b/keyboards/lets_split/keymaps/adam/keymap.c
new file mode 100644
index 000000000..8aca73256
--- /dev/null
+++ b/keyboards/lets_split/keymaps/adam/keymap.c
@@ -0,0 +1,79 @@
1#include "lets_split.h"
2#include "action_layer.h"
3#include "eeconfig.h"
4
5extern keymap_config_t keymap_config;
6
7// Each layer gets a name for readability, which is then used in the keymap matrix below.
8// The underscores don't mean anything - you can have a layer called STUFF or any other name.
9// Layer names don't all need to be of the same length, obviously, and you can also skip them
10// entirely and just use numbers.
11#define BASE 0 // default layer
12#define FLOCK 1 // symbols arrows and F keys on F held down
13#define JLOCK 2 // same as Flock but with fall thru J and mapped to J held down
14
15// Fillers to make layering more clear
16#define _______ KC_TRNS
17#define XXXXXXX KC_NO
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21/* Qwerty
22 * ,-----------------------------------------------------------------------------------.
23 * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
24 * |------+------+------+------+------+-------------+------+------+------+------+------|
25 * | Esc | A | S | D | F | G | H | J | K | L | ; | " |
26 * |------+------+------+------+------+------|------+------+------+------+------+------|
27 * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
28 * |------+------+------+------+------+------+------+------+------+------+------+------|
29 * | Brite| Ctrl | Alt | GUI |Lower | Bksp |Space |Raise | Left | Down | Up |Right |
30 * `-----------------------------------------------------------------------------------'
31 */
32[BASE] = KEYMAP ( \
33 TD(1), KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, \
34 KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TAB, KC_TAB, KC_Y, KC_U, KC_I, KC_O, KC_P, \
35 SFT_T(KC_A), ALT_T(KC_S),CTL_T(KC_D), F(FLOCK), GUI_T(KC_G), KC_BSPC, KC_DELETE, GUI_T(KC_H), F(JLOCK), CTL_T(KC_K), ALT_T(KC_L), SFT_T(KC_SCLN), \
36 KC_Z, KC_X, KC_C, KC_V, KC_B, KC_SPC, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_QUOTE
37),
38[FLOCK] = KEYMAP ( \
39 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \
40 KC_LBRC, KC_GRV, KC_TILDE, S(KC_1), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_PGUP, XXXXXXX, KC_RBRC, \
41 S(KC_LBRC), _______, _______, _______, _______, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, S(KC_RBRC), \
42 KC_BSLS, KC_PIPE, XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, KC_ESC, XXXXXXX, KC_END, KC_PGDOWN, KC_QUES, KC_SLASH \
43),
44[JLOCK] = KEYMAP ( \
45 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, \
46 KC_LBRC, KC_GRV, KC_TILDE, S(KC_1), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_PGUP, XXXXXXX, KC_RBRC, \
47 S(KC_LBRC), _______, _______, _______, _______, XXXXXXX, XXXXXXX, KC_LEFT, _______, KC_UP, KC_RIGHT, S(KC_RBRC), \
48 KC_BSLS, KC_PIPE, XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, KC_ESC, XXXXXXX, KC_END, KC_PGDOWN, KC_QUES, KC_SLASH \
49)
50};
51
52const uint16_t PROGMEM fn_actions[] = {
53 [FLOCK] = ACTION_LAYER_TAP_KEY(FLOCK,KC_F),
54 [JLOCK] = ACTION_LAYER_TAP_KEY(JLOCK,KC_J)
55};
56#ifdef TAP_DANCE_ENABLE
57void tap_1(qk_tap_dance_state_t *state, void *user_data) {
58 switch (state->count) {
59 case 1:
60 register_code (KC_1);
61 unregister_code (KC_1);
62 break;
63 case 2:
64 register_code (KC_ESC);
65 unregister_code (KC_ESC);
66 break;
67 case 3:
68 register_code (KC_LSFT);
69 register_code (KC_1);
70 unregister_code (KC_1);
71 unregister_code (KC_LSFT);
72 }
73}
74
75qk_tap_dance_action_t tap_dance_actions[] = {
76 [0] = ACTION_TAP_DANCE_DOUBLE(KC_1, KC_ESC),
77 [1] = ACTION_TAP_DANCE_FN(tap_1)
78};
79#endif
diff --git a/keyboards/lets_split/keymaps/adam/makefile b/keyboards/lets_split/keymaps/adam/makefile
new file mode 100644
index 000000000..e5ddcae8d
--- /dev/null
+++ b/keyboards/lets_split/keymaps/adam/makefile
@@ -0,0 +1 @@
TAP_DANCE_ENABLE = yes