Skip to content

Commit

Permalink
[Keyboard] Add Baumkuchen (qmk#20766)
Browse files Browse the repository at this point in the history
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
  • Loading branch information
3 people authored and autoferrit committed Dec 6, 2023
1 parent 688d072 commit f891bcb
Show file tree
Hide file tree
Showing 9 changed files with 213 additions and 0 deletions.
19 changes: 19 additions & 0 deletions keyboards/takashicompany/baumkuchen/baumkuchen.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// Copyright 2023 takashicompany (@takashicompany)
// SPDX-License-Identifier: GPL-2.0-or-later

#include "quantum.h"

bool encoder_update_kb(uint8_t index, bool clockwise) {

if (!encoder_update_user(index, clockwise)) {
return false;
}

if (clockwise) {
tap_code(KC_WH_D);
} else {
tap_code(KC_WH_U);
}

return true;
}
75 changes: 75 additions & 0 deletions keyboards/takashicompany/baumkuchen/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
{
"manufacturer": "takashicompany",
"keyboard_name": "Baumkuchen",
"maintainer": "takashicompany",
"development_board": "promicro",
"diode_direction": "COL2ROW",
"encoder": {
"rotary": [
{
"pin_a": "D1",
"pin_b": "D0"
}
]
},
"features": {
"bootmagic": true,
"command": false,
"console": false,
"encoder": true,
"extrakey": true,
"mousekey": true,
"nkro": true,
"rgblight": true
},
"matrix_pins": {
"direct": [
["B2", "B6", "D4", "C6", "F4", "F5", "D7", "E6", "F6", "F7", "B1", "B3", "B4", "B5", "B5"]
]
},
"rgblight": {
"animations": {
"alternating": true,
"breathing": true,
"christmas": true,
"knight": true,
"rainbow_mood": true,
"rainbow_swirl": true,
"rgb_test": true,
"snake": true,
"static_gradient": true,
"twinkle": true
},
"led_count": 6,
},
"ws2812": {
"pin": "D3"
},
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0045",
"vid": "0x7463"
},
"layouts": {
"LAYOUT": {
"layout": [
{ "matrix": [0, 0], "x": 0, "y": 0 },
{ "matrix": [0, 1], "x": 1, "y": 0 },
{ "matrix": [0, 2], "x": 2, "y": 0 },
{ "matrix": [0, 3], "x": 3, "y": 0 },
{ "matrix": [0, 4], "x": 0, "y": 1 },
{ "matrix": [0, 5], "x": 1, "y": 1 },
{ "matrix": [0, 6], "x": 2, "y": 1 },
{ "matrix": [0, 7], "x": 3, "y": 1 },
{ "matrix": [0, 8], "x": 0, "y": 2 },
{ "matrix": [0, 9], "x": 1, "y": 2 },
{ "matrix": [0, 10], "x": 2, "y": 2 },
{ "matrix": [0, 11], "x": 3, "y": 2 },
{ "matrix": [0, 12], "x": 4, "y": 2 },
{ "matrix": [0, 13], "x": 3.5, "y": 3.25 },
{ "matrix": [0, 14], "x": 4.5, "y": 3.25 }
]
}
}
}
33 changes: 33 additions & 0 deletions keyboards/takashicompany/baumkuchen/keymaps/build_test/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
// Copyright 2023 takashicompany (@takashicompany)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_Q, KC_W, KC_E, KC_R,
KC_A, KC_S, KC_D, KC_F,
KC_Z, KC_X, KC_C, KC_V, KC_B,
KC_NO, KC_NO
)
};

bool process_record_user(uint16_t keycode, keyrecord_t *record) {

if (record->event.pressed) {
rgblight_toggle_noeeprom(); // for test
}

return true;
}

bool encoder_update_user(uint8_t index, bool clockwise) {

if (clockwise) {
tap_code(KC_1);
} else {
tap_code(KC_2);
}

return false;
}
19 changes: 19 additions & 0 deletions keyboards/takashicompany/baumkuchen/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// Copyright 2023 takashicompany (@takashicompany)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_Q, KC_W, KC_E, KC_R,
KC_A, KC_S, KC_D, KC_F,
KC_Z, KC_X, KC_C, LT(1, KC_V), KC_B,
KC_NO, KC_NO
),
[1] = LAYOUT(
RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS,
KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS
)
};
6 changes: 6 additions & 0 deletions keyboards/takashicompany/baumkuchen/keymaps/via/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// Copyright 2023 takashicompany (@takashicompany)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#define DYNAMIC_KEYMAP_LAYER_COUNT 29
28 changes: 28 additions & 0 deletions keyboards/takashicompany/baumkuchen/keymaps/via/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
// Copyright 2023 takashicompany (@takashicompany)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

[0] = LAYOUT(
LT(1, KC_ESC), KC_Q, KC_W, KC_E,
KC_TAB, KC_A, KC_S, KC_D,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V,
KC_WH_U, KC_WH_D
),

[1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS,
KC_TRNS,KC_TRNS
),

[2] = LAYOUT(
RGB_TOG, RGB_MOD, KC_TRNS, QK_BOOT,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS,KC_TRNS
)
};
1 change: 1 addition & 0 deletions keyboards/takashicompany/baumkuchen/keymaps/via/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
VIA_ENABLE = yes
31 changes: 31 additions & 0 deletions keyboards/takashicompany/baumkuchen/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Baumkuchen

![takashicompany/baumkuchen](https://i.imgur.com/NS39x44h.png)

Baumkuchen is a 13-key macropad with a radial key layout.
The board can be used as a circuit or as a switch plate by cutting out the keyswitch Pro Micro part.
It is compatible with Cherry MX compatible keyswitches, and a rotary encoder can be optionally installed.
LEDs can also be mounted to make it glow.
The board is reversible, allowing you to choose the arrangement of keys and Pro Micro according to your usage style.

* Keyboard Maintainer: [takashicompany](https://github.com/takashicompany)
* Hardware Supported: Baumkuchen PCB, Pro Micro
* Hardware Availability: https://github.com/takashicompany/baumkuchen

Make example for this keyboard (after setting up your build environment):

make takashicompany/baumkuchen:default

Flashing example for this keyboard:

make takashicompany/baumkuchen:default:flash

See 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).

## Bootloader

Enter the bootloader in 3 ways:

* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
1 change: 1 addition & 0 deletions keyboards/takashicompany/baumkuchen/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# This file intentionally left blank

0 comments on commit f891bcb

Please sign in to comment.