aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/gowla/config.h38
-rw-r--r--keyboards/gowla/gowla.c1
-rw-r--r--keyboards/gowla/gowla.h13
-rw-r--r--keyboards/gowla/info.json24
-rw-r--r--keyboards/gowla/keymaps/default/keymap.c14
-rw-r--r--keyboards/gowla/readme.md15
-rw-r--r--keyboards/gowla/rules.mk31
7 files changed, 136 insertions, 0 deletions
diff --git a/keyboards/gowla/config.h b/keyboards/gowla/config.h
new file mode 100644
index 000000000..65fd8ca1e
--- /dev/null
+++ b/keyboards/gowla/config.h
@@ -0,0 +1,38 @@
1/*
2This program is free software: you can redistribute it and/or modify
3it under the terms of the GNU General Public License as published by
4the Free Software Foundation, either version 2 of the License, or
5(at your option) any later version.
6
7This program is distributed in the hope that it will be useful,
8but WITHOUT ANY WARRANTY; without even the implied warranty of
9MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10GNU General Public License for more details.
11
12You should have received a copy of the GNU General Public License
13along with this program. If not, see <http://www.gnu.org/licenses/>.
14*/
15
16#pragma once
17
18#include "config_common.h"
19
20/* USB Device descriptor parameter */
21#define VENDOR_ID 0xFEED
22#define PRODUCT_ID 0xE9B6
23#define DEVICE_VER 0x0001
24#define MANUFACTURER Gowla
25#define PRODUCT Gowla Macro Board
26#define DESCRIPTION 3x3 PCB
27
28/* Matrix size */
29#define MATRIX_ROWS 3
30#define MATRIX_COLS 3
31
32/* Pin-out */
33#define MATRIX_ROW_PINS { D1, D0, D4 }
34#define MATRIX_COL_PINS { B5, B4, E6 }
35#define UNUSED_PINS
36
37/* ROW2COL */
38#define DIODE_DIRECTION ROW2COL
diff --git a/keyboards/gowla/gowla.c b/keyboards/gowla/gowla.c
new file mode 100644
index 000000000..13781bce3
--- /dev/null
+++ b/keyboards/gowla/gowla.c
@@ -0,0 +1 @@
#include "gowla.h"
diff --git a/keyboards/gowla/gowla.h b/keyboards/gowla/gowla.h
new file mode 100644
index 000000000..fa98c1f40
--- /dev/null
+++ b/keyboards/gowla/gowla.h
@@ -0,0 +1,13 @@
1#pragma once
2
3#include "quantum.h"
4
5#define LAYOUT_ortho_3x3( \
6 k00, k01, k02, \
7 k10, k11, k12, \
8 k20, k21, k22 \
9) { \
10 { k00, k01, k02 }, \
11 { k10, k11, k12 }, \
12 { k20, k21, k22 } \
13}
diff --git a/keyboards/gowla/info.json b/keyboards/gowla/info.json
new file mode 100644
index 000000000..4d1a5e167
--- /dev/null
+++ b/keyboards/gowla/info.json
@@ -0,0 +1,24 @@
1{
2 "keyboard_name": "Gowla Macro Pad",
3 "url": "https://github.com/SamGowland/Gowla-Macro-Board",
4 "maintainer": "Gowla",
5 "width": 3,
6 "height": 3,
7 "layouts": {
8 "LAYOUT_ortho_3x3": {
9 "layout": [
10 {"x": 0, "y": 0},
11 {"x": 1, "y": 0},
12 {"x": 2, "y": 0},
13
14 {"x": 0, "y": 1},
15 {"x": 1, "y": 1},
16 {"x": 2, "y": 1},
17
18 {"x": 0, "y": 2},
19 {"x": 1, "y": 2},
20 {"x": 2, "y": 2}
21 ]
22 }
23 }
24}
diff --git a/keyboards/gowla/keymaps/default/keymap.c b/keyboards/gowla/keymaps/default/keymap.c
new file mode 100644
index 000000000..326c8f0e9
--- /dev/null
+++ b/keyboards/gowla/keymaps/default/keymap.c
@@ -0,0 +1,14 @@
1#include QMK_KEYBOARD_H
2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4 [0] = LAYOUT_ortho_3x3(
5 LT(1, KC_MPRV), KC_MNXT, KC_MPLY,
6 KC_VOLD, KC_UP, KC_VOLU,
7 KC_LEFT, KC_DOWN, KC_RGHT
8 ),
9 [1] = LAYOUT_ortho_3x3(
10 KC_ESC, KC_MPLY, RESET,
11 KC_P7, KC_P1, KC_F1,
12 KC_F2, KC_F3, KC_F4
13 )
14};
diff --git a/keyboards/gowla/readme.md b/keyboards/gowla/readme.md
new file mode 100644
index 000000000..caf27c75f
--- /dev/null
+++ b/keyboards/gowla/readme.md
@@ -0,0 +1,15 @@
1# Gowla Macro Board
2
3![Gowla](https://github.com/SamGowland/Gowla-Macro-Board/blob/master/Images/comp.jpg)
4
5Simple Compact 3x3 Macro Board for use with QMK, designed and sold by Gowla.
6
7* Keyboard Maintainer: [Gowla](https://github.com/SamGowland/)
8* Hardware Supported: Pro Micro ATmega32U4, Cherry Mount Switches
9* Hardware Availability: [Repo](https://github.com/SamGowland/Gowla-Macro-Board)
10
11Make example for this keyboard (after setting up your build environment):
12
13 make gowla:default
14
15See 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).
diff --git a/keyboards/gowla/rules.mk b/keyboards/gowla/rules.mk
new file mode 100644
index 000000000..19b6f44b8
--- /dev/null
+++ b/keyboards/gowla/rules.mk
@@ -0,0 +1,31 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5# Teensy halfkay
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
12BOOTLOADER = caterina
13
14# Build Options
15# change yes to no to disable
16#
17BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
18MOUSEKEY_ENABLE = no # Mouse keys
19EXTRAKEY_ENABLE = yes # Audio control and System control
20CONSOLE_ENABLE = no # Console for debug
21COMMAND_ENABLE = no # Commands for debug and configuration
22# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
23SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
24# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
25NKRO_ENABLE = yes # USB Nkey Rollover
26BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
27RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
28MIDI_ENABLE = no # MIDI support
29BLUETOOTH_ENABLE = no # Enable Bluetooth
30AUDIO_ENABLE = no # Audio output
31FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches