aboutsummaryrefslogtreecommitdiff
path: root/keyboards/6ball
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/6ball')
-rw-r--r--keyboards/6ball/6ball.c1
-rw-r--r--keyboards/6ball/6ball.h10
-rw-r--r--keyboards/6ball/config.h47
-rw-r--r--keyboards/6ball/info.json18
-rw-r--r--keyboards/6ball/keymaps/default/keymap.c22
-rw-r--r--keyboards/6ball/readme.md14
-rw-r--r--keyboards/6ball/rules.mk19
7 files changed, 131 insertions, 0 deletions
diff --git a/keyboards/6ball/6ball.c b/keyboards/6ball/6ball.c
new file mode 100644
index 000000000..1eddde9ba
--- /dev/null
+++ b/keyboards/6ball/6ball.c
@@ -0,0 +1 @@
#include "6ball.h"
diff --git a/keyboards/6ball/6ball.h b/keyboards/6ball/6ball.h
new file mode 100644
index 000000000..ef73a7205
--- /dev/null
+++ b/keyboards/6ball/6ball.h
@@ -0,0 +1,10 @@
1#pragma once
2
3#include "quantum.h"
4
5#define LAYOUT( \
6 k05, k00, k01, \
7 k04, k03, k02 \
8) { \
9 { k00, k01, k02, k03, k04, k05 } \
10}
diff --git a/keyboards/6ball/config.h b/keyboards/6ball/config.h
new file mode 100644
index 000000000..cc496d675
--- /dev/null
+++ b/keyboards/6ball/config.h
@@ -0,0 +1,47 @@
1/*
2Copyright 2012 Jun Wako <[email protected]>
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#pragma once
19
20#include "config_common.h"
21
22/* USB Device descriptor parameter */
23#define VENDOR_ID 0xCEEB
24#define PRODUCT_ID 0x0007
25#define DEVICE_VER 0x0001
26#define MANUFACTURER That-Canadian
27#define PRODUCT 6-Ball
28
29/* key matrix size */
30#define MATRIX_ROWS 1
31#define MATRIX_COLS 6
32
33/* pin-out */
34#define MATRIX_ROW_PINS { F5 }
35#define MATRIX_COL_PINS { F4, D4, B5, B6, B2, F6 }
36#define UNUSED_PINS
37
38/* ws2812 RGB LED */
39#define RGB_DI_PIN F7
40
41#define RGBLIGHT_ANIMATIONS
42#define RGBLED_NUM 6 // Number of LEDs
43
44/* COL2ROW or ROW2COL */
45#define DIODE_DIRECTION COL2ROW
46
47#define TAPPING_TERM 200
diff --git a/keyboards/6ball/info.json b/keyboards/6ball/info.json
new file mode 100644
index 000000000..fc742ad51
--- /dev/null
+++ b/keyboards/6ball/info.json
@@ -0,0 +1,18 @@
1{
2 "keyboard_name": "6-Ball",
3 "url": "",
4 "maintainer": "qmk",
5 "layouts": {
6 "LAYOUT": {
7 "layout": [
8 {"x":0, "y":0.5},
9 {"x":1, "y":0},
10 {"x":2, "y":0.5},
11
12 {"x":0, "y":1.5},
13 {"x":1, "y":2},
14 {"x":2, "y":1.5}
15 ]
16 }
17 }
18}
diff --git a/keyboards/6ball/keymaps/default/keymap.c b/keyboards/6ball/keymaps/default/keymap.c
new file mode 100644
index 000000000..5081161e3
--- /dev/null
+++ b/keyboards/6ball/keymaps/default/keymap.c
@@ -0,0 +1,22 @@
1#include QMK_KEYBOARD_H
2
3#define _MAIN 0
4#define _FN 1
5
6#define KC_CAPW LGUI(LSFT(KC_3)) // Capture whole screen
7#define KC_CPYW LGUI(LSFT(LCTL(KC_3))) // Copy whole screen
8#define KC_CAPP LGUI(LSFT(KC_4)) // Capture portion of screen
9#define KC_CPYP LGUI(LSFT(LCTL(KC_4))) // Copy portion of screen
10#define KC_X0 LT(_FN, KC_ESC)
11
12const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
13 [_MAIN] = LAYOUT(
14 KC_F, KC_X0, KC_LCTL,
15 KC_R, KC_D, KC_M
16 ),
17
18 [_FN] = LAYOUT(
19 KC_F, KC_TRNS, RGB_HUI,
20 RGB_TOG, RGB_MOD, RGB_HUD
21 )
22};
diff --git a/keyboards/6ball/readme.md b/keyboards/6ball/readme.md
new file mode 100644
index 000000000..c9548453a
--- /dev/null
+++ b/keyboards/6ball/readme.md
@@ -0,0 +1,14 @@
16-Ball
2======
3
4A circular 6-key macropad made by ThatCanadian.
5
6Keyboard Maintainer: QMK Community
7Hardware Supported: Pro Micro ATmega32U4
8Hardware Availability: ThatCanadian
9
10Make example for this keyboard (after setting up your build environment):
11
12 make 6ball:default
13
14See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
diff --git a/keyboards/6ball/rules.mk b/keyboards/6ball/rules.mk
new file mode 100644
index 000000000..bb1a873d6
--- /dev/null
+++ b/keyboards/6ball/rules.mk
@@ -0,0 +1,19 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5BOOTLOADER = caterina
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
11MOUSEKEY_ENABLE = yes # Mouse keys
12EXTRAKEY_ENABLE = yes # Audio control and System control
13CONSOLE_ENABLE = no # Console for debug
14COMMAND_ENABLE = no # Commands for debug and configuration
15NKRO_ENABLE = yes # Enable N-Key Rollover
16BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
17AUDIO_ENABLE = no # Audio output
18UNICODE_ENABLE = yes # Unicode
19RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.