From ad014c2539fefec0313fc936f41e50f841e42501 Mon Sep 17 00:00:00 2001 From: CalciumNitride <46911478+CalciumNitride@users.noreply.github.com> Date: Mon, 18 May 2020 18:28:00 +0800 Subject: [Keyboard] Arabica37 (#8471) * adding arabica37 * jp_keymap * update * try refactor to use split_common * fix and update to use split_common * update and adjust * clean up * update * update * fix keymap.c * update * oled logo * fix info.json * remove pro_micro.h * remove KC_ macro * move font file --- keyboards/arabica37/rev1/config.h | 82 +++++++++++++++++++++++++++++++++++++++ keyboards/arabica37/rev1/rev1.c | 1 + keyboards/arabica37/rev1/rev1.h | 23 +++++++++++ keyboards/arabica37/rev1/rules.mk | 33 ++++++++++++++++ 4 files changed, 139 insertions(+) create mode 100644 keyboards/arabica37/rev1/config.h create mode 100644 keyboards/arabica37/rev1/rev1.c create mode 100644 keyboards/arabica37/rev1/rev1.h create mode 100644 keyboards/arabica37/rev1/rules.mk (limited to 'keyboards/arabica37/rev1') diff --git a/keyboards/arabica37/rev1/config.h b/keyboards/arabica37/rev1/config.h new file mode 100644 index 0000000000..5db7e32fc6 --- /dev/null +++ b/keyboards/arabica37/rev1/config.h @@ -0,0 +1,82 @@ +/* +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x3060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER CalciumNitride +#define PRODUCT Arabica3/7 +#define DESCRIPTION A split keyboard with 3x6 column staggered keys, 1 pinkie key and 3 thumb keys + +#define USE_SERIAL +#define SOFT_SERIAL_PIN D2 + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 8 +#define MATRIX_COLS 7 +#define MATRIX_ROW_PINS { D4, C6, D7, E6 } + +// wiring of each half +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 } +// #define MATRIX_COL_PINS { B2, B3, B1, F7, F6, F5, F4 } //uncomment this line and comment line above if you need to reverse left-to-right key order + +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +// #define BACKLIGHT_LEVELS 3 + +/* 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 + +/* key combination for command */ + + +/* ws2812 RGB LED */ +#define RGB_DI_PIN D3 + +#define RGBLED_NUM 50 // Number of LEDs +#define RGBLED_SPLIT {25, 25} +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +// #define NO_DEBUG + +/* disable print */ +// #define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION diff --git a/keyboards/arabica37/rev1/rev1.c b/keyboards/arabica37/rev1/rev1.c new file mode 100644 index 0000000000..22fc63b0e9 --- /dev/null +++ b/keyboards/arabica37/rev1/rev1.c @@ -0,0 +1 @@ +#include "arabica37.h" diff --git a/keyboards/arabica37/rev1/rev1.h b/keyboards/arabica37/rev1/rev1.h new file mode 100644 index 0000000000..316de77f1d --- /dev/null +++ b/keyboards/arabica37/rev1/rev1.h @@ -0,0 +1,23 @@ +#pragma once + +#include "arabica37.h" + +#include "quantum.h" + +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ + L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ + L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ + L26, L31, L32, R26, R30, R32, \ + L30, R31 \ + ) \ + { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L26, KC_NO, KC_NO, L30, L31, L32 }, \ + { R05, R04, R03, R02, R01, R00 }, \ + { R15, R14, R13, R12, R11, R10 }, \ + { R25, R24, R23, R22, R21, R20 }, \ + { R32, KC_NO, KC_NO, R31, R30, R26 } \ + } diff --git a/keyboards/arabica37/rev1/rules.mk b/keyboards/arabica37/rev1/rules.mk new file mode 100644 index 0000000000..10c5ab28bb --- /dev/null +++ b/keyboards/arabica37/rev1/rules.mk @@ -0,0 +1,33 @@ +# 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 = caterina + +# Build Options +# change yes to no to disable +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # 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 = no # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # 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 + +SPLIT_KEYBOARD = yes -- cgit v1.2.3