summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJared Giles <jared@crypto.cx>2020-04-08 13:04:39 -0500
committerGitHub <noreply@github.com>2020-04-08 20:04:39 +0200
commita1ffc40b36038b07c7d8878dce1375e0b9584f8b (patch)
tree718ddf3ae5f3073ae8f79a33d63224fbd8defcd4
parent8fe5c718b499fb1a19bc5b49c5c91a6fc21d2477 (diff)
Add Via keymap for BM16-A (#8681)
* Add Via keymap for BM16-A * Apply suggestions from code review Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com> Co-Authored-By: Ryan <fauxpark@gmail.com> * Deleted as per noroadsleft Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Ryan <fauxpark@gmail.com>
-rw-r--r--keyboards/bm16a/config.h4
-rw-r--r--keyboards/bm16a/keymaps/via/keymap.c51
-rw-r--r--keyboards/bm16a/keymaps/via/readme.md1
-rw-r--r--keyboards/bm16a/keymaps/via/rules.mk2
4 files changed, 56 insertions, 2 deletions
diff --git a/keyboards/bm16a/config.h b/keyboards/bm16a/config.h
index fc0405475c..249b57c35a 100644
--- a/keyboards/bm16a/config.h
+++ b/keyboards/bm16a/config.h
@@ -19,8 +19,8 @@
#include "config_common.h"
/* USB Device descriptor parameter */
-#define VENDOR_ID 0xFEED
-#define PRODUCT_ID 0x424D
+#define VENDOR_ID 0x4B50 // "KP"
+#define PRODUCT_ID 0x016A
#define DEVICE_VER 0x0001
#define MANUFACTURER KPrepublic
#define PRODUCT bm16a
diff --git a/keyboards/bm16a/keymaps/via/keymap.c b/keyboards/bm16a/keymaps/via/keymap.c
new file mode 100644
index 0000000000..5c8006759c
--- /dev/null
+++ b/keyboards/bm16a/keymaps/via/keymap.c
@@ -0,0 +1,51 @@
+/* Copyright 2019
+ *
+ * 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
+
+enum layers {
+ _BASE = 0,
+ _FN1,
+ _FN2,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_ortho_4x4(
+ KC_PGUP, KC_HOME, KC_UP, KC_END ,
+ KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT,
+ KC_DOT, KC_VOLU, KC_MPLY, KC_MPRV,
+ MO(1), KC_VOLD, KC_MUTE, KC_MNXT
+ ),
+ [1] = LAYOUT_ortho_4x4(
+ RESET, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+ [2] = LAYOUT_ortho_4x4(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ [3] = LAYOUT_ortho_4x4(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ )
+};
diff --git a/keyboards/bm16a/keymaps/via/readme.md b/keyboards/bm16a/keymaps/via/readme.md
new file mode 100644
index 0000000000..b381108759
--- /dev/null
+++ b/keyboards/bm16a/keymaps/via/readme.md
@@ -0,0 +1 @@
+# Via keymap for bm16a
diff --git a/keyboards/bm16a/keymaps/via/rules.mk b/keyboards/bm16a/keymaps/via/rules.mk
new file mode 100644
index 0000000000..36b7ba9cbc
--- /dev/null
+++ b/keyboards/bm16a/keymaps/via/rules.mk
@@ -0,0 +1,2 @@
+VIA_ENABLE = yes
+LTO_ENABLE = yes