aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan <tokyovigilante@users.noreply.github.com>2019-12-21 22:01:28 +1100
committerJoel Challis <git@zvecr.com>2019-12-21 11:01:28 +0000
commit05b479d349aafb8298b43fcbfcddc4440336de9c (patch)
tree45cfa98cb221009c948e01a2200bb8255de84fcd
parent52c18ef0265a8bb4b521b787f425c906a9180ef9 (diff)
downloadqmk_firmware-05b479d349aafb8298b43fcbfcddc4440336de9c.tar.gz
qmk_firmware-05b479d349aafb8298b43fcbfcddc4440336de9c.zip
Add TADA68 keymap/rules/config for QMK bootloader (#7679)
* Add TADA68 keymap/rules/config for QMK bootloader * Remove extraneous #DEFINEs * use #pragma rather than include guards Co-Authored-By: fauxpark <fauxpark@gmail.com> * Remove obselete #endif Co-Authored-By: fauxpark <fauxpark@gmail.com> * #undefine DESCRIPTION before redefining Co-Authored-By: fauxpark <fauxpark@gmail.com> * Remove obselete #define Co-Authored-By: fauxpark <fauxpark@gmail.com> Co-authored-by: fauxpark <fauxpark@gmail.com>
-rwxr-xr-xkeyboards/tada68/keymaps/tokyovigilante/config.h25
-rw-r--r--keyboards/tada68/keymaps/tokyovigilante/keymap.c7
-rw-r--r--keyboards/tada68/keymaps/tokyovigilante/layers.json1
-rw-r--r--keyboards/tada68/keymaps/tokyovigilante/readme.md34
-rwxr-xr-xkeyboards/tada68/keymaps/tokyovigilante/rules.mk2
5 files changed, 69 insertions, 0 deletions
diff --git a/keyboards/tada68/keymaps/tokyovigilante/config.h b/keyboards/tada68/keymaps/tokyovigilante/config.h
new file mode 100755
index 000000000..9184bc1f4
--- /dev/null
+++ b/keyboards/tada68/keymaps/tokyovigilante/config.h
@@ -0,0 +1,25 @@
1/*
2Copyright 2012 Jun Wako <wakojun@gmail.com>
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#undef DESCRIPTION
21#define DESCRIPTION QMK keyboard firmware for TADA68 with QMK bootloader
22
23#define QMK_ESC_OUTPUT F0 // usually COL
24#define QMK_ESC_INPUT D0 // usually ROW
25#define QMK_LED B6
diff --git a/keyboards/tada68/keymaps/tokyovigilante/keymap.c b/keyboards/tada68/keymaps/tokyovigilante/keymap.c
new file mode 100644
index 000000000..13159c0d4
--- /dev/null
+++ b/keyboards/tada68/keymaps/tokyovigilante/keymap.c
@@ -0,0 +1,7 @@
1#include QMK_KEYBOARD_H
2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4 [0] = LAYOUT_ansi(KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
5 [1] = LAYOUT_ansi(KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_INS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_TRNS, MO(2), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R),
6 [2] = LAYOUT_ansi(KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO)
7};
diff --git a/keyboards/tada68/keymaps/tokyovigilante/layers.json b/keyboards/tada68/keymaps/tokyovigilante/layers.json
new file mode 100644
index 000000000..d6604042e
--- /dev/null
+++ b/keyboards/tada68/keymaps/tokyovigilante/layers.json
@@ -0,0 +1 @@
[["KC_ESC", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_7", "KC_8", "KC_9", "KC_0", "KC_MINS", "KC_EQL", "KC_BSPC", "KC_GRV", "KC_TAB", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P", "KC_LBRC", "KC_RBRC", "KC_BSLS", "KC_DEL", "KC_CAPS", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "KC_QUOT", "KC_ENT", "KC_PGUP", "KC_LSFT", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_RSFT", "KC_UP", "KC_PGDN", "KC_LCTL", "KC_LGUI", "KC_LALT", "KC_SPC", "KC_RALT", "MO(1)", "KC_RCTL", "KC_LEFT", "KC_DOWN", "KC_RGHT"], ["KC_TRNS", "KC_F1", "KC_F2", "KC_F3", "KC_F4", "KC_F5", "KC_F6", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_F11", "KC_F12", "KC_DEL", "KC_INS", "KC_TRNS", "KC_TRNS", "KC_UP", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_HOME", "KC_TRNS", "KC_LEFT", "KC_DOWN", "KC_RGHT", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_END", "KC_TRNS", "KC_TRNS", "KC_TRNS", "BL_DEC", "BL_TOGG", "BL_INC", "KC_TRNS", "KC_MUTE", "KC_VOLD", "KC_VOLU", "KC_TRNS", "KC_BTN1", "KC_MS_U", "KC_BTN2", "KC_TRNS", "MO(2)", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_MS_L", "KC_MS_D", "KC_MS_R"], ["KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "RESET", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_TRNS", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO", "KC_NO"]] \ No newline at end of file
diff --git a/keyboards/tada68/keymaps/tokyovigilante/readme.md b/keyboards/tada68/keymaps/tokyovigilante/readme.md
new file mode 100644
index 000000000..8544399d6
--- /dev/null
+++ b/keyboards/tada68/keymaps/tokyovigilante/readme.md
@@ -0,0 +1,34 @@
1# TADA68 (65% ATMega32U4 PCB)
2
3The TADA68 comes with a custom firmware based on the LUFA mass storage
4driver, which mounts the user-accessible portion of the flash storage
5as a USB drive. This is prone to failure and can only be accessed by
6hitting the physical reset button on the base of the board, which is
7relatively accessible in an assembled keyboard.
8
9This keymap has some customisation to work with a TADA68 which has been
10ISP-reflashed (using a USBasp or other ISP) to work with the QMK bootloader.
11
12This allows use of dfu-programmer to reflash the firmware in DFU mode, and
13bootloader entry and exit with key-combos.
14
15To build the firmware, set up a build environment according to the standard
16QMK instructions, then run:
17
18```make tada68:tokyovigilante:production```
19
20which will build the bootloader, user firmware, and the combined image `<keyboard>_<keymap>_production.hex`.
21
22Then run
23
24```avrdude -F -c usbasp -p m32u4 -e -U flash:w:tada68_tokyovigilante_production.hex:a -U lfuse:w:0x5E:m -U hfuse:w:0xD9:m -U efuse:w:0xC3:m -U lock:w:0x3F:m```
25
26to copy it to your board (connected to the USBasp or other programmer, replacing the -c and filename parameters as required). The fuse and lock
27bitmaps will enable DFU mode.
28
29Once the board is unplugged and plugged in via USB, the default key-combo to
30enter DFU mode is Fn-Meta-R, then Esc to exit. You can then use
31`make tada68:<keymap>:dfu` to build and flash any other custom keymap you
32like, as the qmk-dfu bootloader can only be replaced using the ISP. This keymap is fairly basic, just make sure any replacement one has a RESET command defined (ideally on a non-default layer).
33
34More information can be found in the QMK docs: <https://docs.qmk.fm>
diff --git a/keyboards/tada68/keymaps/tokyovigilante/rules.mk b/keyboards/tada68/keymaps/tokyovigilante/rules.mk
new file mode 100755
index 000000000..2f7fde3d5
--- /dev/null
+++ b/keyboards/tada68/keymaps/tokyovigilante/rules.mk
@@ -0,0 +1,2 @@
1BOOTLOADER = qmk-dfu
2FIRMWARE_FORMAT = hex