From 9f0dbc21a3bcb815877e321c974c55c5320605c6 Mon Sep 17 00:00:00 2001 From: Seth Date: Sun, 1 Nov 2020 12:46:00 -0600 Subject: [Keyboard] beta support for the Rocketboard-16 macro/num pad (#10688) * Firmware initial commit, still has a few bugs - mainly rotary encoders do not work and needs cleaning up * Fixed the volume control issue and limited the RGB brightness (can be really bright), added the ability to switch LED mode with left encoder click, and added via support (untested) * Remove define that should go in config.h * Removed define that should be in config.h * Removed LTO_ENABLE as suggested - has issues on ARM Co-authored-by: Drashna Jaelre * Added the correct define for OLED screen size * Applied suggested change to remove description Co-authored-by: Ryan * Made suggested change to remove backslashes Co-authored-by: Ryan * Suggested change made to rgblight Co-authored-by: Ryan * Suggested change made to rgblight Co-authored-by: Ryan * Suggested change made to remove backslashes Co-authored-by: Ryan * Suggested change made to rgblight Co-authored-by: Ryan * Update keyboards/rocketboard_16/rocketboard_16.c Co-authored-by: Ryan * Added suggested comments Co-authored-by: Ryan * Made suggested changes to rules file Co-authored-by: Ryan * Added suggested change to rgblight Co-authored-by: Ryan * Added info.json for QMK configurator * Update readme.md * This change makes the firmware work... through magic... seriously, no idea - but it works! * Updated dimming step, OLED functionality, and rules for formatting - Changed the dimming step size for smoother dimming with the reduced range - Added lots of OLED functionality - QMK logo and title at top, num/caps/scroll lock status, and backlight brightness level - Updated the rules.mk file to comply more closely with the formatting guidelines * Fixed tab issues Co-authored-by: Ryan * Updated to use bootmagic lite with the key that usually turns rgb on/off Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/rocketboard_16/config.h | 83 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 keyboards/rocketboard_16/config.h (limited to 'keyboards/rocketboard_16/config.h') diff --git a/keyboards/rocketboard_16/config.h b/keyboards/rocketboard_16/config.h new file mode 100644 index 0000000000..a82514e0b4 --- /dev/null +++ b/keyboards/rocketboard_16/config.h @@ -0,0 +1,83 @@ +/* +Copyright 2020 Seth Bonner + +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 0xB034 +#define PRODUCT_ID 0xFF16 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Rocketboard +#define PRODUCT Rocketboard-16 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 4 + +#define MATRIX_ROW_PINS { A9, B13, B14, B15, B3 } +#define MATRIX_COL_PINS { B8, B9, B10, B11 } +#define DIODE_DIRECTION COL2ROW + +/* Bootmagic key - row 4, col 1 */ +#define BOOTMAGIC_LITE_ROW 4 +#define BOOTMAGIC_LITE_COLUMN 1 + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define RGBLIGHT_ANIMATIONS +#define RGB_DI_PIN A4 +#define RGBLED_NUM 16 +#define RGBLIGHT_LIMIT_VAL 128 +#define RGBLIGHT_VAL_STEP 8 +#define RGBLIGHT_SLEEP + +// OLED stuff +#define OLED_DISPLAY_128X64 + +// Allows for rotary encoder volume control +#define TAP_CODE_DELAY 20 + +/* Encoder stuff */ +#define ENCODERS_PAD_A \ + { A0, A2 } +#define ENCODERS_PAD_B \ + { A1, A3 } + +#define LOCKING_SUPPORT_ENABLE +#define LOCKING_RESYNC_ENABLE + +/* + * 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 -- cgit v1.2.3