forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Keyboard] Add 42. Keebs version of Lumberjack-C RevB
- Loading branch information
Showing
9 changed files
with
358 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,41 @@ | ||
/* Copyright 2020 Paul James | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
#pragma once | ||
|
||
#include "config_common.h" | ||
|
||
/* USB Device descriptor parameter */ | ||
#define VENDOR_ID 0x706A | ||
#define PRODUCT_ID 0x0002 | ||
#define DEVICE_VER 0x0001 | ||
#define MANUFACTURER Peej | ||
#define PRODUCT Lumberjack | ||
|
||
/* key matrix size */ | ||
#define MATRIX_ROWS 6 | ||
#define MATRIX_COLS 10 | ||
#define MATRIX_ROW_PINS { C0, B5, B4, B3, B2, B1 } | ||
#define MATRIX_COL_PINS { B0, D7, D6, D5, D4, D1, D0, C1, C2, C3 } | ||
#define UNUSED_PINS | ||
|
||
/* COL2ROW, ROW2COL*/ | ||
#define DIODE_DIRECTION COL2ROW | ||
|
||
#define USB_MAX_POWER_CONSUMPTION 100 | ||
|
||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ | ||
#define DEBOUNCE 5 |
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,71 @@ | ||
{ | ||
"keyboard_name": "Lumberjack", | ||
"url": "https://github.com/peej/lumberjack-keyboard", | ||
"maintainer": "Peej", | ||
"layouts": { | ||
"LAYOUT_ortho_5x12": { | ||
"layout": [ | ||
{ "x": 0, "y": 0 }, | ||
{ "x": 1, "y": 0 }, | ||
{ "x": 2, "y": 0 }, | ||
{ "x": 3, "y": 0 }, | ||
{ "x": 4, "y": 0 }, | ||
{ "x": 5, "y": 0 }, | ||
{ "x": 6, "y": 0 }, | ||
{ "x": 7, "y": 0 }, | ||
{ "x": 8, "y": 0 }, | ||
{ "x": 9, "y": 0 }, | ||
{ "x": 10, "y": 0 }, | ||
{ "x": 11, "y": 0 }, | ||
{ "x": 0, "y": 1 }, | ||
{ "x": 1, "y": 1 }, | ||
{ "x": 2, "y": 1 }, | ||
{ "x": 3, "y": 1 }, | ||
{ "x": 4, "y": 1 }, | ||
{ "x": 5, "y": 1 }, | ||
{ "x": 6, "y": 1 }, | ||
{ "x": 7, "y": 1 }, | ||
{ "x": 8, "y": 1 }, | ||
{ "x": 9, "y": 1 }, | ||
{ "x": 10, "y": 1 }, | ||
{ "x": 11, "y": 1 }, | ||
{ "x": 0, "y": 2 }, | ||
{ "x": 1, "y": 2 }, | ||
{ "x": 2, "y": 2 }, | ||
{ "x": 3, "y": 2 }, | ||
{ "x": 4, "y": 2 }, | ||
{ "x": 5, "y": 2 }, | ||
{ "x": 6, "y": 2 }, | ||
{ "x": 7, "y": 2 }, | ||
{ "x": 8, "y": 2 }, | ||
{ "x": 9, "y": 2 }, | ||
{ "x": 10, "y": 2 }, | ||
{ "x": 11, "y": 2 }, | ||
{ "x": 0, "y": 3 }, | ||
{ "x": 1, "y": 3 }, | ||
{ "x": 2, "y": 3 }, | ||
{ "x": 3, "y": 3 }, | ||
{ "x": 4, "y": 3 }, | ||
{ "x": 5, "y": 3 }, | ||
{ "x": 6, "y": 3 }, | ||
{ "x": 7, "y": 3 }, | ||
{ "x": 8, "y": 3 }, | ||
{ "x": 9, "y": 3 }, | ||
{ "x": 10, "y": 3 }, | ||
{ "x": 11, "y": 3 }, | ||
{ "x": 0, "y": 4 }, | ||
{ "x": 1, "y": 4 }, | ||
{ "x": 2, "y": 4 }, | ||
{ "x": 3, "y": 4 }, | ||
{ "x": 4, "y": 4 }, | ||
{ "x": 5, "y": 4 }, | ||
{ "x": 6, "y": 4 }, | ||
{ "x": 7, "y": 4 }, | ||
{ "x": 8, "y": 4 }, | ||
{ "x": 9, "y": 4 }, | ||
{ "x": 10, "y": 4 }, | ||
{ "x": 11, "y": 4 } | ||
] | ||
} | ||
} | ||
} |
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,80 @@ | ||
/* Copyright 2020 Paul James | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
#include QMK_KEYBOARD_H | ||
|
||
enum layers { | ||
_QWERTY = 0, | ||
_FUNCTION | ||
}; | ||
|
||
#define FN MO(_FUNCTION) | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
|
||
/* Qwerty | ||
* ,-----------------------------------------. ,-----------------------------------------. | ||
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BkSp | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | Del | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | Esc | A | S | D | F | G | | H | J | K | L | ; | ' | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | Shft | Z | X | C | V | B | | N | M | , | . | / | Entr | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | Ctrl | Fn | Alt | Cmd | Fn | Spac | | Spac | Fn | Left | Down | Up | Rght | | ||
* `-----------------------------------------' `-----------------------------------------' | ||
*/ | ||
[_QWERTY] = LAYOUT_ortho_5x12( | ||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, | ||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, | ||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, | ||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, | ||
KC_LCTL, FN, KC_LALT, KC_LGUI, FN, KC_SPC, KC_SPC, FN, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT | ||
), | ||
|
||
/* Function | ||
* ,------------------------------------------. ,-----------------------------------------. | ||
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Bksp | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Del | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | Del | F1 | F2 | F3 | F4 | F5 | | F6 | - | = | [ | ] | \ | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | | F7 | F8 | F9 | F10 | F11 | | F12 |ISO # |ISO / | | | | | ||
* |------+------+------+------+------+------| |------+------+------+------+------+------| | ||
* | | | | | | | | | | Next | Vol- | Vol+ | Play | | ||
* `-----------------------------------------' `-----------------------------------------' | ||
*/ | ||
[_FUNCTION] = LAYOUT_ortho_5x12( | ||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, | ||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, | ||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, | ||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY | ||
) | ||
|
||
}; | ||
|
||
|
||
bool encoder_update_user(uint8_t index, bool clockwise) { | ||
if (clockwise) { | ||
tap_code(KC_VOLU); | ||
} else { | ||
tap_code(KC_VOLD); | ||
} | ||
return true; | ||
} |
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 @@ | ||
/* Copyright 2020 Paul James | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
#include QMK_KEYBOARD_H | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
|
||
[0] = LAYOUT_ortho_5x12( | ||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, | ||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, | ||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, | ||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, | ||
KC_LCTL, MO(2), KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT | ||
), | ||
[1] = LAYOUT_ortho_5x12( | ||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, | ||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, | ||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, | ||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY | ||
), | ||
[2] = LAYOUT_ortho_5x12( | ||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, | ||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, | ||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, | ||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY | ||
), | ||
[3] = LAYOUT_ortho_5x12( | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, | ||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
) | ||
|
||
}; | ||
|
||
|
||
bool encoder_update_user(uint8_t index, bool clockwise) { | ||
if (clockwise) { | ||
tap_code(KC_VOLU); | ||
} else { | ||
tap_code(KC_VOLD); | ||
} | ||
return true; | ||
} |
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 @@ | ||
VIA_ENABLE = yes |
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,30 @@ | ||
/* Copyright 2020 Paul James | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
#include "lumberjack_c.h" | ||
|
||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) { | ||
writePin(LED1, record->event.pressed); | ||
|
||
return process_record_user(keycode, record); | ||
} | ||
|
||
layer_state_t layer_state_set_kb(layer_state_t state) { | ||
writePinLow(LED1); | ||
writePin(LED2, state); | ||
|
||
return layer_state_set_user(state); | ||
} |
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,38 @@ | ||
/* Copyright 2020 Paul James | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
|
||
#pragma once | ||
|
||
#include "quantum.h" | ||
|
||
#define LAYOUT_ortho_5x12( \ | ||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ | ||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ | ||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ | ||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \ | ||
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b \ | ||
) \ | ||
{ \ | ||
{ k00, k01, k02, k03, k04, k0b, k0a, k09, k08, k07 }, \ | ||
{ k10, k11, k12, k13, k05, k1b, k1a, k19, k18, k06 }, \ | ||
{ k20, k21, k22, k14, k15, k2b, k2a, k29, k17, k16 }, \ | ||
{ k30, k31, k23, k24, k25, k3b, k3a, k28, k27, k26 }, \ | ||
{ k40, k32, k33, k34, k35, k4b, k39, k38, k37, k36 }, \ | ||
{ k41, k42, k43, k44, k45, k4a, k49, k48, k47, k46 } \ | ||
} | ||
|
||
#define LED1 C5 | ||
#define LED2 C4 |
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,16 @@ | ||
# Lumberjack ## Through-hole ortholinear 60% keyboard PCB | ||
|
||
![lumberjack](https://github.com/peej/lumberjack-keyboard/raw/master/images/pcb.jpg) | ||
|
||
12x5 ortholinear PCB for 60% tray mount cases with only through hole components. | ||
|
||
* Keyboard Maintainer: [Paul James](https://github.com/peej) | ||
* Hardware Supported: ATMEGA328p with vusb [PCB](https://github.com/peej/lumberjack-keyboard) | ||
|
||
Make example for this keyboard (after setting up your build environment): | ||
|
||
make peej/lumberjack:default | ||
|
||
## Bootloader | ||
|
||
Use usbasploader in [hsgw's repository](https://github.com/hsgw/USBaspLoader/tree/plaid). |
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,21 @@ | ||
# MCU name | ||
MCU = atmega328p | ||
|
||
# Bootloader selection | ||
BOOTLOADER = usbasploader | ||
|
||
# Build Options | ||
# change yes to no to disable | ||
# | ||
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite | ||
MOUSEKEY_ENABLE = yes # Mouse keys | ||
EXTRAKEY_ENABLE = yes # Audio control and System control | ||
CONSOLE_ENABLE = no # Console for debug | ||
COMMAND_ENABLE = no # Commands for debug and configuration | ||
NKRO_ENABLE = no # Enable N-Key Rollover | ||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality | ||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow | ||
AUDIO_ENABLE = no # Audio output | ||
ENCODER_ENABLE = yes | ||
|
||
LAYOUTS = ortho_5x12 |