]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
[Keyboard] Added Cans12er keyboard (#7455)
authorCan Baytok <ctiomega.1@gmail.com>
Sun, 24 Nov 2019 00:56:18 +0000 (01:56 +0100)
committerDrashna Jaelre <drashna@live.com>
Sun, 24 Nov 2019 00:56:18 +0000 (16:56 -0800)
* added cans12er keyboard

* updated readme

Updated the readme to conform with the provided template from the qmk_firmware githubpage

* Update keyboards/cans12er/README.md

Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Changed configuration

Changed the configuration based on the Change Request from PR #7455 made by github user noroadsleft

keyboards/handwired/cans12er/README.md [new file with mode: 0644]
keyboards/handwired/cans12er/cans12er.c [new file with mode: 0644]
keyboards/handwired/cans12er/cans12er.h [new file with mode: 0644]
keyboards/handwired/cans12er/config.h [new file with mode: 0644]
keyboards/handwired/cans12er/keymaps/default/keymap.c [new file with mode: 0644]
keyboards/handwired/cans12er/rules.mk [new file with mode: 0644]

diff --git a/keyboards/handwired/cans12er/README.md b/keyboards/handwired/cans12er/README.md
new file mode 100644 (file)
index 0000000..5ecb2d2
--- /dev/null
@@ -0,0 +1,18 @@
+# Cans12er
+![Cans12er](https://i.imgur.com/ZsO6QSI.jpg)
+
+A 12-key, orthogonal keypad designed by Can!
+
+* Keyboard Maintainer: [Can](https://github.com/canbaytok)
+* Hardware Supported: Pro Micro Atmega32u4
+* Hardware Availability: DIY with the [open-source design files](https://github.com/canbaytok/Cans12er)
+
+Schematic can be found here: [EasyEDA](https://easyeda.com/senordoenermann/mediapad)
+
+Build Instructions can be found here: [canbaytok/Cans12er](https://github.com/canbaytok/Cans12er)
+
+Make example for this keyboard (after setting up your build environment):
+
+    make handwired/cans12er:default
+
+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).
diff --git a/keyboards/handwired/cans12er/cans12er.c b/keyboards/handwired/cans12er/cans12er.c
new file mode 100644 (file)
index 0000000..e74b6a3
--- /dev/null
@@ -0,0 +1 @@
+#include "cans12er.h"
diff --git a/keyboards/handwired/cans12er/cans12er.h b/keyboards/handwired/cans12er/cans12er.h
new file mode 100644 (file)
index 0000000..87a3979
--- /dev/null
@@ -0,0 +1,13 @@
+#pragma once
+
+#include "quantum.h"
+
+#define LAYOUT_ortho_3x4( \
+       K00, K01, K02, K03, \
+       K10, K11, K12, K13, \
+       K20, K21, K22, K23  \
+) { \
+       { K00,   K01,   K02,   K03 }, \
+       { K10,   K11,   K12,   K13 }, \
+       { K20,   K21,   K22,   K23 }  \
+}
diff --git a/keyboards/handwired/cans12er/config.h b/keyboards/handwired/cans12er/config.h
new file mode 100644 (file)
index 0000000..d7bc4c5
--- /dev/null
@@ -0,0 +1,38 @@
+#pragma once
+
+#include "config_common.h"
+
+/* USB Device descriptor parameter */
+#define VENDOR_ID       0xFEED
+#define PRODUCT_ID      0x6060
+#define DEVICE_VER      0x0001
+#define MANUFACTURER    Can
+#define PRODUCT         cans12er
+#define DESCRIPTION     a simple 3x4 keypad. every part can be manufactured at home
+
+/* key matrix size */
+#define MATRIX_ROWS 3
+#define MATRIX_COLS 4
+
+/* key matrix pins */
+#define MATRIX_ROW_PINS { F7, B1, B3 }
+#define MATRIX_COL_PINS { D0, D4, C6, D7 }
+#define UNUSED_PINS
+
+/* COL2ROW or ROW2COL */
+#define DIODE_DIRECTION ROW2COL
+
+/* number of backlight levels */
+
+#ifdef BACKLIGHT_PIN
+#define BACKLIGHT_LEVELS 0
+#endif
+
+/* Set 0 if debouncing isn't needed */
+#define DEBOUNCE 5
+
+/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
+#define LOCKING_SUPPORT_ENABLE
+
+/* Locking resynchronize hack */
+#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/handwired/cans12er/keymaps/default/keymap.c b/keyboards/handwired/cans12er/keymaps/default/keymap.c
new file mode 100644 (file)
index 0000000..864abed
--- /dev/null
@@ -0,0 +1,20 @@
+// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
+// this is the style you want to emulate.
+
+#include QMK_KEYBOARD_H
+
+// Each layer gets a name for readability, which is then used in the keymap matrix below.
+// The underscores don't mean anything - you can have a layer called STUFF or any other name.
+// Layer names don't all need to be of the same length, obviously, and you can also skip them
+// entirely and just use numbers.
+
+#define _KEYPAD 0
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+[_KEYPAD] = LAYOUT_ortho_3x4(
+               KC_A, KC_B, KC_C, KC_D, 
+               KC_E, KC_F, KC_G, KC_H, 
+               KC_I, KC_J, KC_K, KC_L 
+),
+};
diff --git a/keyboards/handwired/cans12er/rules.mk b/keyboards/handwired/cans12er/rules.mk
new file mode 100644 (file)
index 0000000..c6675b6
--- /dev/null
@@ -0,0 +1,32 @@
+# MCU name
+MCU = atmega32u4
+
+# Bootloader selection
+#   Teensy       halfkay
+#   Pro Micro    caterina
+#   Atmel DFU    atmel-dfu
+#   LUFA DFU     lufa-dfu
+#   QMK DFU      qmk-dfu
+#   ATmega32A    bootloadHID
+#   ATmega328P   USBasp
+BOOTLOADER = atmel-dfu
+
+# Build Options
+#   comment out to disable the options.
+#
+BOOTMAGIC_ENABLE = lite      # Virtual DIP switch configuration
+MOUSEKEY_ENABLE = yes       # Mouse keys
+EXTRAKEY_ENABLE = yes       # Audio control and System control
+CONSOLE_ENABLE = no         # Console for debug
+COMMAND_ENABLE = no         # Commands for debug and configuration
+# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
+SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
+# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
+NKRO_ENABLE = yes           # USB Nkey Rollover
+BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
+MIDI_ENABLE = no            # MIDI support
+BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
+AUDIO_ENABLE = no           # Audio output on port C6
+FAUXCLICKY_ENABLE = no      # Use buzzer to emulate clicky switches
+HD44780_ENABLE = no         # Enable support for HD44780 based LCDs
\ No newline at end of file