aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/hidtech/bastyl/bastyl.c19
-rw-r--r--keyboards/hidtech/bastyl/bastyl.h43
-rw-r--r--keyboards/hidtech/bastyl/config.h40
-rw-r--r--keyboards/hidtech/bastyl/info.json71
-rw-r--r--keyboards/hidtech/bastyl/keymaps/default/keymap.c61
-rw-r--r--keyboards/hidtech/bastyl/readme.md22
-rw-r--r--keyboards/hidtech/bastyl/rules.mk23
7 files changed, 279 insertions, 0 deletions
diff --git a/keyboards/hidtech/bastyl/bastyl.c b/keyboards/hidtech/bastyl/bastyl.c
new file mode 100644
index 000000000..637af1ffe
--- /dev/null
+++ b/keyboards/hidtech/bastyl/bastyl.c
@@ -0,0 +1,19 @@
1/*
2 * Copyright 2020 Quentin LEBASTARD <qlebastard@gmail.com>
3 * Copyright 2020 Anthony MARIN <anthony@hidtech.ca>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#include "bastyl.h"
diff --git a/keyboards/hidtech/bastyl/bastyl.h b/keyboards/hidtech/bastyl/bastyl.h
new file mode 100644
index 000000000..5bacb8bb0
--- /dev/null
+++ b/keyboards/hidtech/bastyl/bastyl.h
@@ -0,0 +1,43 @@
1/*
2 * Copyright 2020 Quentin LEBASTARD <qlebastard@gmail.com>
3 * Copyright 2020 Anthony MARIN <anthony@hidtech.ca>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19
20#pragma once
21#include "quantum.h"
22
23// SWITCHED 91 and 95 - check on left ?
24#define LAYOUT( \
25 k00, k01, k02, k03, k04, k05, k55, k54, k53, k52, k51, k50, \
26 k10, k11, k12, k13, k14, k15, k65, k64, k63, k62, k61, k60, \
27 k20, k21, k22, k23, k24, k25, k75, k74, k73, k72, k71, k70, \
28 k30, k31, k32, k33, k34, k35, k85, k84, k83, k82, k81, k80, \
29 k43, k44, k41, k91, k94, k93, \
30 k45, k42, k92, k95 \
31)\
32{\
33 { k00, k01, k02, k03, k04, k05 }, \
34 { k10, k11, k12, k13, k14, k15 }, \
35 { k20, k21, k22, k23, k24, k25 }, \
36 { k30, k31, k32, k33, k34, k35 }, \
37 { KC_NO, k41, k42, k43, k44, k45 }, \
38 { k50, k51, k52, k53, k54, k55 }, \
39 { k60, k61, k62, k63, k64, k65 }, \
40 { k70, k71, k72, k73, k74, k75 }, \
41 { k80, k81, k82, k83, k84, k85 }, \
42 { KC_NO, k91, k92, k93, k94, k95 }, \
43}
diff --git a/keyboards/hidtech/bastyl/config.h b/keyboards/hidtech/bastyl/config.h
new file mode 100644
index 000000000..ed33d8451
--- /dev/null
+++ b/keyboards/hidtech/bastyl/config.h
@@ -0,0 +1,40 @@
1/*
2 * Copyright 2020 Quentin LEBASTARD <qlebastard@gmail.com>
3 * Copyright 2020 Anthony MARIN <anthony@hidtech.ca>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#pragma once
20#include "config_common.h"
21#define VENDOR_ID 0xA76A
22#define PRODUCT_ID 0x1827
23#define DEVICE_VER 0x0001
24#define MANUFACTURER HID Technologies
25#define PRODUCT Bastyl
26
27#define MATRIX_ROWS 10
28#define MATRIX_COLS 6
29#define DIODE_DIRECTION ROW2COL
30#define MATRIX_ROW_PINS { D7, B5, F7, F6, B6 }
31#define MATRIX_COL_PINS { B4, E6, C6, B1, B3, B2 }
32#define RGB_DI_PIN D2
33#define RGBLED_NUM 38
34#define RGBLIGHT_SPLIT
35#define RGBLIGHT_ANIMATIONS
36#define DEBOUNCE 5
37#define SOFT_SERIAL_PIN D0
38#define LOCKING_SUPPORT_ENABLE
39#define LOCKING_RESYNC_ENABLE
40#define MASTER_RIGHT
diff --git a/keyboards/hidtech/bastyl/info.json b/keyboards/hidtech/bastyl/info.json
new file mode 100644
index 000000000..e8115794e
--- /dev/null
+++ b/keyboards/hidtech/bastyl/info.json
@@ -0,0 +1,71 @@
1{
2 "keyboard_name": "Bastyl",
3 "url": "https://www.hidtech.ca/?product=bastyl-black",
4 "maintainer": "HID-Technologies",
5 "width": 17,
6 "height": 8,
7 "layouts": {
8 "LAYOUT": {
9 "layout": [
10 {"label":"L00", "x":0, "y":0},
11 {"label":"L01", "x":1, "y":0},
12 {"label":"L02", "x":2, "y":0},
13 {"label":"L03", "x":3, "y":0},
14 {"label":"L04", "x":4, "y":0},
15 {"label":"L05", "x":5, "y":0},
16 {"label":"R00", "x":11, "y":0},
17 {"label":"R01", "x":12, "y":0},
18 {"label":"R02", "x":13, "y":0},
19 {"label":"R03", "x":14, "y":0},
20 {"label":"R04", "x":15, "y":0},
21 {"label":"R05", "x":16, "y":0},
22 {"label":"L10", "x":0, "y":1},
23 {"label":"L11", "x":1, "y":1},
24 {"label":"L12", "x":2, "y":1},
25 {"label":"L13", "x":3, "y":1},
26 {"label":"L14", "x":4, "y":1},
27 {"label":"L15", "x":5, "y":1},
28 {"label":"R10", "x":11, "y":1},
29 {"label":"R11", "x":12, "y":1},
30 {"label":"R12", "x":13, "y":1},
31 {"label":"R13", "x":14, "y":1},
32 {"label":"R14", "x":15, "y":1},
33 {"label":"R15", "x":16, "y":1},
34 {"label":"L20", "x":0, "y":2},
35 {"label":"L21", "x":1, "y":2},
36 {"label":"L22", "x":2, "y":2},
37 {"label":"L23", "x":3, "y":2},
38 {"label":"L24", "x":4, "y":2},
39 {"label":"L25", "x":5, "y":2},
40 {"label":"R20", "x":11, "y":2},
41 {"label":"R21", "x":12, "y":2},
42 {"label":"R22", "x":13, "y":2},
43 {"label":"R23", "x":14, "y":2},
44 {"label":"R24", "x":15, "y":2},
45 {"label":"R25", "x":16, "y":2},
46 {"label":"L30", "x":0, "y":3},
47 {"label":"L31", "x":1, "y":3},
48 {"label":"L32", "x":2, "y":3},
49 {"label":"L33", "x":3, "y":3},
50 {"label":"L34", "x":4, "y":3},
51 {"label":"L35", "x":5, "y":3},
52 {"label":"R30", "x":11, "y":3},
53 {"label":"R31", "x":12, "y":3},
54 {"label":"R32", "x":13, "y":3},
55 {"label":"R33", "x":14, "y":3},
56 {"label":"R34", "x":15, "y":3},
57 {"label":"R35", "x":16, "y":3},
58 {"label":"L43", "x":5, "y":4},
59 {"label":"L44", "x":6, "y":4},
60 {"label":"L45", "x":7, "y":4},
61 {"label":"R40", "x":9, "y":4},
62 {"label":"R41", "x":10, "y":4},
63 {"label":"R40", "x":11, "y":4},
64 {"label":"L52", "x":6, "y":5},
65 {"label":"L53", "x":7, "y":5},
66 {"label":"R52", "x":9, "y":5},
67 {"label":"R53", "x":10, "y":5}
68 ]
69 }
70 }
71}
diff --git a/keyboards/hidtech/bastyl/keymaps/default/keymap.c b/keyboards/hidtech/bastyl/keymaps/default/keymap.c
new file mode 100644
index 000000000..d6d291af5
--- /dev/null
+++ b/keyboards/hidtech/bastyl/keymaps/default/keymap.c
@@ -0,0 +1,61 @@
1/*
2 * Copyright 2020 Quentin LEBASTARD <qlebastard@gmail.com>
3 * Copyright 2020 Anthony MARIN <anthony@hidtech.ca>
4 *
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19#include QMK_KEYBOARD_H
20
21const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
22
23 [0] = LAYOUT(
24 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
25//-------------------------------------------------//-----------------------------------------------------------//
26 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS,
27//-------------------------------------------------//-----------------------------------------------------------//
28 KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
29//-------------------------------------------------//-----------------------------------------------------------//
30 KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS,
31//-------------------------------------------------//-----------------------------------------------------------//
32 KC_LCTL, KC_SPC, MO(1), MO(2), KC_ENT, KC_RGUI,
33 KC_HOME, KC_BSPC, KC_DEL, KC_RALT
34 ),
35
36 [1] = LAYOUT(
37 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
38//---------------------------------------------------------//-----------------------------------------------------------//
39 RESET, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS,
40//---------------------------------------------------------//-----------------------------------------------------------//
41 _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE,
42//---------------------------------------------------------//-----------------------------------------------------------//
43 _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_EQL, KC_UNDS,
44//---------------------------------------------------------//-----------------------------------------------------------//
45 KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, KC_RGUI,
46 KC_SPC, KC_BSPC, KC_RCTL, KC_ENT
47 ),
48
49 [2] = LAYOUT(
50 KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
51//---------------------------------------------------------//--------------------------------------------------------------//
52 _______, _______, RGB_RMOD, RGB_TOG, RGB_MOD, KC_LBRC, KC_RBRC, _______, KC_NLCK, KC_INS, KC_SLCK, KC_MUTE,
53//---------------------------------------------------------//--------------------------------------------------------------//
54 _______, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, KC_LPRN, KC_RPRN, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_VOLU,
55//---------------------------------------------------------//--------------------------------------------------------------//
56 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD,
57//---------------------------------------------------------//--------------------------------------------------------------//
58 KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, RESET,
59 KC_SPC, KC_BSPC, KC_RCTL, KC_ENT
60 ),
61};
diff --git a/keyboards/hidtech/bastyl/readme.md b/keyboards/hidtech/bastyl/readme.md
new file mode 100644
index 000000000..f21f030a8
--- /dev/null
+++ b/keyboards/hidtech/bastyl/readme.md
@@ -0,0 +1,22 @@
1# Bastyl
2
3A split ergonomic keyboard.
4
5* Keyboard Maintainer: [HID Technologies](https://github.com/HID-Technologies)
6* Hardware Supported: elite-C V4
7* Hardware Availability: [Hidtech.ca](https://www.hidtech.ca/)
8
9Make example for this keyboard (after setting up your build environment):
10
11 make hidtech/bastyl:default
12
13See 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).
14
15See the [keyboard build instructions](https://hid-technologies.github.io/Bastyl-DIY-instructions/)
16
17
18## Important information regarding the reset
19
20If you modify this firmware, make sure to always have a RESET key that can be triggered using only the master side ! This way you ensure that you can always flash the keyboard, even if you mess up.
21
22Otherwise if you're stuck, open the case and reset manually by shorting Gnd and Rst, or pressing the RST button.
diff --git a/keyboards/hidtech/bastyl/rules.mk b/keyboards/hidtech/bastyl/rules.mk
new file mode 100644
index 000000000..cc88208e3
--- /dev/null
+++ b/keyboards/hidtech/bastyl/rules.mk
@@ -0,0 +1,23 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5BOOTLOADER = atmel-dfu
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
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
15# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
16SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
17# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
18NKRO_ENABLE = no # USB Nkey Rollover
19BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
21BLUETOOTH_ENABLE = no # Enable Bluetooth
22AUDIO_ENABLE = no # Audio output
23SPLIT_KEYBOARD = yes