Skip to content

Commit

Permalink
[Keyboard] Dumbpad v1x_oled (#17058)
Browse files Browse the repository at this point in the history
Co-authored-by: Joel Challis <[email protected]>
Co-authored-by: Drashna Jaelre <[email protected]>
Co-authored-by: Ryan <[email protected]>
  • Loading branch information
4 people authored Aug 7, 2022
1 parent 964ce93 commit b9269bf
Show file tree
Hide file tree
Showing 9 changed files with 407 additions and 1 deletion.
2 changes: 1 addition & 1 deletion keyboards/dumbpad/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define VENDOR_ID 0xDEAF
#define PRODUCT_ID 0x0913
#define MANUFACTURER imchipwood
#define PRODUCT dumbpad
Expand Down
42 changes: 42 additions & 0 deletions keyboards/dumbpad/v1x_oled/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
/*
Copyright 2020 imchipwood
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 DEVICE_VER 0x0001
#define MANUFACTURER imchipwood
#define PRODUCT dumbpad

/* Column/Row IO definitions */
#define MATRIX_ROWS 4
#define MATRIX_COLS 5

#define MATRIX_ROW_PINS { F4, F5, F6, F7 }
#define MATRIX_COL_PINS { C6, B1, B3, B2, B6 }
#define UNUSED_PINS

/* Dual rotary encoders */
#define ENCODERS_PAD_A { B4, E6 }
#define ENCODERS_PAD_B { B5, D7 }

/* Column/Row IO definitions */
#define DIODE_DIRECTION COL2ROW

/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

/* Reduce tapdance required taps from 5 to 2 */
#define TAPPING_TOGGLE 2
16 changes: 16 additions & 0 deletions keyboards/dumbpad/v1x_oled/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"keyboard_name": "dumbpad",
"keyboard_folder": "dumbpad",
"url": "https://www.github.com/keebd/dumbpad",
"maintainer": "keebd",
"layouts": {
"LAYOUT": {
"layout": [
{"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0},
{"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1},
{"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2},
{"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}
]
}
}
}
69 changes: 69 additions & 0 deletions keyboards/dumbpad/v1x_oled/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
/* Copyright 2020 imchipwood
*
* 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] = {
/*
BASE LAYER
/-----------------------------------------------------`
| | 7 | 8 | 9 | Bkspc |
| |---------|---------|---------|---------|
| | 4 | 5 | 6 | Esc |
| |---------|---------|---------|---------|
| | 1 | 2 | 3 | Tab |
|-------------|---------|---------|---------|---------|
| Play Pause | TT(1) | 0 | . | Enter |
\-----------------------------------------------------'
*/
[0] = LAYOUT(
KC_7, KC_8, KC_9, KC_BSPC,
KC_4, KC_5, KC_6, KC_ESC,
KC_1, KC_2, KC_3, KC_TAB,
KC_MUTE, TT(1), KC_0, LSFT_T(KC_DOT), KC_ENTER
),
/*
SUB LAYER
/-----------------------------------------------------`
| | | | | Reset |
| |---------|---------|---------|---------|
| | | | | + |
| |---------|---------|---------|---------|
| | | | | - |
|-------------|---------|---------|---------|---------|
| LOCK | | | | = |
\-----------------------------------------------------'
*/
[1] = LAYOUT(
_______, _______, _______, RESET,
_______, _______, _______, KC_KP_PLUS,
_______, _______, _______, KC_KP_MINUS,
KC_LOCK, _______, _______, _______, KC_EQL
),

[2] = LAYOUT(
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______, _______
),

[3] = LAYOUT(
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______, _______
)
};
69 changes: 69 additions & 0 deletions keyboards/dumbpad/v1x_oled/keymaps/via/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
/* Copyright 2020 imchipwood
*
* 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] = {
/*
BASE LAYER
/-----------------------------------------------------`
| | 7 | 8 | 9 | Bkspc |
| |---------|---------|---------|---------|
| | 4 | 5 | 6 | Esc |
| |---------|---------|---------|---------|
| | 1 | 2 | 3 | Tab |
|-------------|---------|---------|---------|---------|
| Play Pause | TT(1) | 0 | . | Enter |
\-----------------------------------------------------'
*/
[0] = LAYOUT(
KC_7, KC_8, KC_9, KC_BSPC,
KC_4, KC_5, KC_6, KC_ESC,
KC_1, KC_2, KC_3, KC_TAB,
KC_MUTE, TT(1), KC_0, LSFT_T(KC_DOT), KC_ENTER
),
/*
SUB LAYER
/-----------------------------------------------------`
| | | | | Reset |
| |---------|---------|---------|---------|
| | | | | + |
| |---------|---------|---------|---------|
| | | | | - |
|-------------|---------|---------|---------|---------|
| LOCK | | | | = |
\-----------------------------------------------------'
*/
[1] = LAYOUT(
_______, _______, _______, RESET,
_______, _______, _______, KC_KP_PLUS,
_______, _______, _______, KC_KP_MINUS,
KC_LOCK, _______, _______, _______, KC_EQL
),

[2] = LAYOUT(
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______, _______
),

[3] = LAYOUT(
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______, _______, _______
)
};
2 changes: 2 additions & 0 deletions keyboards/dumbpad/v1x_oled/keymaps/via/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
23 changes: 23 additions & 0 deletions keyboards/dumbpad/v1x_oled/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# MCU name
MCU = atmega32u4

# Bootloader selection
BOOTLOADER = caterina

# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no # 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
OLED_ENABLE = yes
OLED_DRIVER = SSD1306
WPM_ENABLE = yes
Loading

0 comments on commit b9269bf

Please sign in to comment.